Mercurial > hg > ltpda
view m-toolbox/test/test_timedomainfit.m @ 31:a26669b59d7e database-connection-manager
Update LTPDAworkbench
author | Daniele Nicolodi <nicolodi@science.unitn.it> |
---|---|
date | Mon, 05 Dec 2011 16:20:06 +0100 |
parents | f0afece42f48 |
children |
line wrap: on
line source
% Test file for ltpda_timedomain fit. This does a noise subtraction from % engineering model data. % % M Hewitson 18-03-07 % % $Id: test_timedomainfit.m,v 1.2 2008/07/29 15:11:44 ingo Exp $ % %% Load data into analysis objects disp('*** Loading data....') x12 = ao('~/frommario/Data/x12.txt'); %x12 phi1 = ao('~/frommario/Data/phi1.txt'); %phi1 eta1 = ao('~/frommario/Data/eta1.txt'); %eta1 phi12 = ao('~/frommario/Data/phi12.txt'); %phi12 eta12 = ao('~/frommario/Data/eta12.txt'); %eta12 disp('*** Done.') % get the sample frequency for designing bandpass filter d1 = x12.data; fs = d1.fs; %% Load bandpass pl = plist(); pl = append(pl, param('type', 'bandpass')); % pl = append(pl, param('fs', fs)); pl = append(pl, param('fc', [0.003 0.03])); pl = append(pl, param('order', 2)); bp = miir(pl); %% Filter data and remove startup transients % parameter list for split() % to remove startup transient of filters spl = plist(param('times', [1000 2000])); % parameter list for filter() fpl = plist(param('filter', bp)); % filter and split data x12f = split(filter(x12, fpl), spl); phi1f = split(filter(phi1, fpl), spl); eta1f = split(filter(eta1, fpl), spl); phi12f = split(filter(phi12, fpl), spl); eta12f = split(filter(eta12, fpl), spl); %% Make Timedomainfit coeffsAO = timedomainfit(x12f, phi1f, eta1f, phi12f, eta12f); %% Make linear combination x12_fit = lincom(phi1, eta1, phi12, eta12, coeffsAO); x12ns = x12 - x12_fit; %% Make LPSD of each % Window function w = specwin('Kaiser', 10, 150); % parameter list for lpsd pl = plist(); pl = append(pl, param('Kdes', 100)); pl = append(pl, param('Kmin', 2)); pl = append(pl, param('Jdes', 500)); pl = append(pl, param('Win', w)); pl = append(pl, param('order', 1)); % LPSD of filtered x12 x12fxx = lpsd(x12f, pl); x12xx = lpsd(x12, pl); x12nsxx = lpsd(x12ns, pl); %% Plot results iplot([x12fxx x12xx x12nsxx]) legend('Bandpassed X12', 'X12', 'X12 with noise subtracted'); %% figure plot(x12ns.hist) %% save(x12fxx, 'x12fxx.xml'); save(x12xx, 'x12xx.xml'); save(x12nsxx, 'x12nsxx.xml'); return %% Reproduce from history % Write an m-file from AO ao2m(x12nsxx, 'test.m'); %% now run it test figure plot(a1) figure plot(a1.hist)