STScI Logo

poleffv stsdas.hst_calib.hsp



poleffv -- Calibrate polarization efficiencies of HSP polaroids.


poleffv intable outtable type refpol


This task calculates polarization efficiencies for up to 20 apertures. The polarization transmission coefficient of each aperture is calculated from measurements taken at three different roll angles (0, +a1, and -a2) according to the following equation:

    Q = [S1 * sin(2*a2) + S2 * sin(2*a1) - S0 * (sin(2*a1) + 
         sin(2*a2))] / [S0 * sin(2*(a1+a2)) - S1 * sin(2*a2) - 
         S2 * sin(2*a1)]

    U = [S1 * (cos(2*a2)- 1 ) - S2 * (cos(2*a1) - 1) + S0 * 
         (cos(2*a1) - cos(2*a2))] / [S0 * sin(2*(a1+a2)) - 
         S1 * sin(2*a2) - S2 * sin(2*a1)]

    i/2 = [S0 * sin(2*(a1+a2)) - S1 * sin(2*a2) - S2 * sin(2*a1)]
          / [sin(2*(a1+a2)) - sin(2*a1) -sin(2*a2)]

where Q and U are the Stokes parameters; S0, S1, and S2 are the observed count rates (corrected for dark signal, etc.) at roll angles 0, +a1, -a2, respectively; i/2 is the "observed" intensity of the target and is equal to:

    i/2 = I * (k1 + k2) / 2

where I is the intensity of the target before the filter (polaroid); and k1 and k2 are the transmission coefficiencies of the two principal axes of the polaroid. Polarization efficiency, the output from this task, is defined as:

    k = (k1 - k2) / (k1 + k2)

and is equal to:

    k = SQRT (Q^2 + U^2) / (reference polarization)

The distribution of roll angles should be such that they cover more than 90 degrees. Ideally, they should be 60 degrees apart. For the same aperture, more than one measurement may be taken at the same roll angle. Also, for the same aperture, input data must have the same target, and be obtained at roughly the same temperature and epoch. In this task, the observed target should be polarized standard stars.

Before actually performing the calculation, the raw digital count rates must be corrected for the dark signal, pre-amp noise, high voltage factor, and dead time according to the following equation:

        scaled digital count rate = (raw digital count rate /
                (1. - raw digital count rate * dead time) -
                dark signal - pre-amplifier noise) /
                high voltage factor

If the analog data is used, then the raw data should be corrected as follows:

        scaled analog count rate = ((raw analog DN - CVC offset) /
                gain factor - pre-amplifier noise - dark signal) /
                high voltage factor

The maximum number of input data points is 2,000.


intable [file name]
Name of the input table. The following columns are needed:

'DETECTOB'      Object detector ID (int).
'APERTOBJ'      Object aperture name (char*10).
'VOLTAGE'       High voltage setting (real).
'VGAIND'        Gain setting (real).
'THRESH'        Discriminator setting (real).
'DET_TEMP'      Detector temperature (real).
'DEA_TEMP'      DEA temperature (real).
'EPOCH'         Epoch of observation (double).
'PTSRCFLG'      Point source flag (char*1).

For digital data, the following columns are also needed:

'DOBJ'		Digital count rate (real).
'DOBJ_ERR'	Mean error of digital count rate (real).

For analog data, the following columns are also needed:

'AOBJ'          Analog reading (real).
'AOBJ_ERR'      Mean error of analog reading (real).

This task also requires the following columns:

'PA_APER'       Position angle of the aperture (real).
'TRGTNAME'      Target name (char*20).
outtable [file name]
Name of the output table produced by poleffv, which will contain the following columns:

'APER_NAME'     Aperture name (char*10).
'PEFF'          Polarization efficiency (real).
'PEFF_ERR'      Error of the polarization efficiency (real).
'DTHETA'        Difference between the reference position angle
		and the observed position angle (real).
'DTHETA_ERR'    Error of the position angle difference (real).
'I'             Intensity of the target (real).
'I_ERR'         Error of the intensity of the target (real).
'TEMPAVE'       Average temperature (real).
'EPOCHAVE'      Average epoch (double).
'TRGTNAME'      Target name (char*20).
type = "digital" [string, allowed values = analog | digital]
Input data type.
refpol [file name]
Standard polarization target table name; this table has the following columns:

'OBJ_NAME_i'    Names of the object, where i is an integer between 
		1 and 5 (char*20).
'FILTER_NAME'   Filter name, e.g., F551 (char*4).
'P'  		Polarization of the target in PERCENT (real).
'P_ERR'		Error of P in PERCENT (real).
'THETA'         Polarization position angle of the target in
                equatorial system, and in degrees (real).
'THETA_ERR'	Error in THETA, in degrees (real).
(cal_tables = "") [string]
Pset name for calibration file parameters. Parameters can be individually changed from the command line or can be edited as a group using :e from eparam or from the cl, eparam cal_tables or simply cal_tables. Details about these parameters are available by typing "help cal_tables".
(save = no) [boolean]
Save the scratch table containing intermediate calibration corrections?

If save = yes, a message will be sent to the terminal and the logfile telling you the name of the scratch table file.

(temp_key = "DET_TEMP") [string]
Column name in the input table where temperature data is stored.


1. Calculate polarization efficiencies from the input data table xpoleffv$input and put the results in the output table ypoleffv$output while saving intermediate result in another local table whose name will be announced to the user. Digital data is used. The reference polarization target table to be used is xpoleffv$refpol.

hs> poleffv "xpoleffv$input" "ypoleffv$output" "digital" \
>>>  "xpoleffv$refpol" save=yes temp_key="TEMP_DET" 




Source Code · Package Help · Search Form · STSDAS