SURFLIB_REMOVE_IP

Remove instrumental polarisation

Description:

Remove the instrumental polarisation signal from the data The following formula is used:

New flux = Measured flux / (1 + %age IP )

IP = %age polarisation cos (4waveplate - 2 IP angle)

where %age polarisation and IP angle vary linearly with elevation.

This is an approximation of

Actual flux = measured flux - mean flux %age IP

where IP = P (1 + cos (4 WP - 2 THETA ) ) because the mean flux can not be calculated trivially since the bolometers are jiggling on and off the source

This routine corrects the data point for each bolometer by looking up the IP data in the supplied array. Only one set of bolometers can be processed at any one time (since the elevation of the array changes during the observation). The routine should be called repeatedly for each time/elevation.

Invocation

CALL SURFLIB_REMOVE_IP( ELEVATION, NUM_CHAN, NUM_ADC, N_BOLS, WPLATE_ANG, BOL_CHAN, BOL_ADC, BOL_IP_DATA, BOL_DATA, STATUS)

Arguments

ELEVATION = DOUBLE (Given)
Elevation of the source (radians)
NUM_CHAN = INTEGER (Given)
Number of channels per A/D card
NUM_ADC = INTEGER (Given)
the number of A/D cards
N_BOLS = INTEGER (Given)
the actual number of bolometers
WPLATE_ANG = REAL (Given)
nasmyth angle of waveplate for these data (degrees)
BOL_CHAN (N_BOLS) = INTEGER (Given)
channel numbers of bolometers
BOL_ADC (N_BOLS) = INTEGER (Given)
ADC numbers of bolometers
BOL_IP_DATA( 8, NUM_CHAN, NUM_ADC ) = REAL (Given)
The IP data. This array contains the ip data for each bolometer (specified by a combination of CHAN and ADC). The 4 slices represent: P0, Pslope, Theta0 and ThetaSlope The last 4 slices represent variance of each data point All angles are in radians.
BOL_DATA (N_BOLS) = REAL (Given and returned)
bolometer data
BOL_VAR ( N_BOLS ) = REAL (Given and returned)
variance of bolometer data
STATUS = INTEGER (Given and returned)
global status

Notes:

Copyright

Copyright ©1995,1996,1997,1998,1999 Particle Physics and Astronomy Research Council. All Rights Reserved.