Home > pointing > stepbystep_fit.m

stepbystep_fit

PURPOSE ^

[fm,rmssa]=stepbystep_fit(om,ide,obs)

SYNOPSIS ^

function [fm,sa]=stepbystep_fit(om,ide,obs,filename)

DESCRIPTION ^

 [fm,rmssa]=stepbystep_fit(om,ide,obs)

 Fit pointing model data freeing each parameter in turn

CROSS-REFERENCE INFORMATION ^

This function calls: This function is called by:

SOURCE CODE ^

0001 function [fm,sa]=stepbystep_fit(om,ide,obs,filename)
0002 % [fm,rmssa]=stepbystep_fit(om,ide,obs)
0003 %
0004 % Fit pointing model data freeing each parameter in turn
0005 
0006 % Plot residuals against online model
0007 figure(1)
0008   gof = inf;
0009 plot_res(om,ide,obs,filename,gof,1);
0010 
0011 % Start with only online enc zeros
0012 fm=om; fm([1,2,3,4,5,6,7])=0;
0013 
0014 % First off with only encoder zero points free
0015 [fm, sa, gof] = do_fit_opt(fm,[0,0,0,0,0,0,0,1,1],obs,ide);
0016 figure(2)
0017 plot_res(fm,ide,obs,filename,gof,2);
0018 
0019 % Add el tilt free
0020 [fm, sa, gof] = do_fit_opt(fm,[0,0,0,0,1,0,0,1,1],obs,ide);
0021 figure(3)
0022 plot_res(fm,ide,obs,filename,gof,3);
0023 
0024 % Kick out massively bogus points
0025 if(1)
0026   [mva.az,mva.el]=pointing_model(fm,ide.az,ide.el);
0027   sa=spaceangle(obs.az,obs.el,mva.az,mva.el,'deg');
0028   ind=sa<2;
0029   obs=structcut(obs,ind);
0030   ide=structcut(ide,ind);
0031 end
0032 
0033 
0034 % Add collimation free
0035 [fm, sa, gof] = do_fit_opt(fm,[0,0,0,0,1,1,0,1,1],obs,ide);
0036 figure(4)
0037 plot_res(fm,ide,obs,filename,gof,4);
0038 
0039 % Add az tilt free
0040 [fm, sa, gof] = do_fit_opt(fm,[0,0,1,1,1,1,0,1,1],obs,ide);
0041 figure(5)
0042 plot_res(fm,ide,obs,filename,gof,5);
0043 
0044 % Add flexure free
0045 [fm, sa, gof] = do_fit_opt(fm,[1,1,1,1,1,1,0,1,1],obs,ide);
0046 figure(6)
0047 sa1=plot_res(fm,ide,obs,filename,gof,6);
0048 
0049 
0050 % Finally reject points >3 sigma and refit
0051 if(1)
0052   ind=sa<rms(sa)*2;
0053   obsc=structcut(obs,ind);
0054   idec=structcut(ide,ind);
0055   [fm, sa, gof] = do_fit_opt(fm,[1,1,1,1,1,1,0,1,1],obsc,idec);
0056   figure(7)
0057   sa = plot_res(fm,idec,obsc,filename,gof,7);
0058 end
0059 
0060 
0061 return

Generated on Sun 14-Jun-2015 17:12:45 by m2html © 2005