%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% This function calculates the instrument Stokes parameters from the dataF register. The d.antenna0.receiver.dataF register is then updated with the Stokes parameters. The columns of the dataF register are: [I Q U V] OGK, 3 Nov 2011 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0001 function d = calculateStokes_filtered(d) 0002 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 0003 % This function calculates the instrument Stokes parameters from the 0004 % dataF register. The d.antenna0.receiver.dataF register is then updated 0005 % with the Stokes parameters. The columns of the dataF register are: 0006 % [I Q U V] 0007 % 0008 % OGK, 3 Nov 2011 0009 % 0010 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 0011 0012 if size(d.antenna0.receiver.dataF,2) ~= 4 0013 display('calculateStokes_filtered:: dataF register is of the wrong size'); 0014 return; 0015 end 0016 0017 dataF = d.antenna0.receiver.dataF; 0018 0019 d.antenna0.receiver.dataF = zeros(size(d.antenna0.receiver.dataF,1),4); 0020 0021 d.antenna0.receiver.dataF(:,1) = dataF(:,1) + dataF(:,4); 0022 d.antenna0.receiver.dataF(:,2) = dataF(:,2); 0023 d.antenna0.receiver.dataF(:,3) = dataF(:,3); 0024 d.antenna0.receiver.dataF(:,4) = dataF(:,1) - dataF(:,4); 0025 0026 end