const char isaac_dark_version[] = "$Revision: 1.11 $"; const char isaac_dark_date[]="$Date: 2002/02/05 11:26:18 $"; cmdline_spec isaac_dark_cmd[] = { {'a', "average", "Flag to use average or not", 1, "1"}, {'r', "ron", "Flag to use ron or not", 1, "1"}, {'o', "output", "Output file base name", 1, "filename"}, {0, 0, 0, 0, 0} }; int isaac_dark_main(void * d); const char isaac_dark_man[] = "NAME\n" "\tdark - ISAAC dark recipe\n" "\n" "SYNOPSIS\n" "\tisaacp dark [options] in\n" "\n" "DESCRIPTION\n" "\tThis recipe performs successively a dark-avg and then\n" "\ta dark-ron upon the input list. Refer to these two commands\n" "\tfor a description and a list of relevant options.\n" "\n\n" "*** DARK_AVERAGE :\n\n" "NAME\n" "\tdark -a 1 - ISAAC readout noise computation\n" "\n" "SYNOPSIS\n" "\tisaacp dark -a 1 in [-o/--output filename]\n" "\n" "DESCRIPTION\n" "\tThis recipe computes the readout noise on the detector\n" "\tby observing the standard deviation on similar dark frames.\n" "\tSee the algorithm below.\n" "\tThis recipe produces a PAF file compliant with VLT product\n" "\tDICB scheme.\n" "\n" "ALGORITHM\n" "\tThe expected input is a list of dark frames taken within\n" "\tthe same template run. All input frames are expected to have\n" "\tan identical readout mode. The recipe runs sequentially\n" "\tthrough the input list, and every time two frames with\n" "\tidentical DIT, NDIT and readout mode are found, the\n" "\tfollowing computation is performed:\n" "\n" "\tGenerate 100 random windows of size 9x9 pixels in the zone\n" "\tof interest. For each window, compute the standard deviation\n" "\tof the signal. Remember the median value of all computed\n" "\tstandard deviations. The readout noise is:\n" "\n" "\tRON = median * sqrt(ndit/2)\n" "\n" "\tFor the ISAAC SW detector, this process is applied over\n" "\tthe 4 quadrants, yielding 4 RON values. For the ISAAC LW\n" "\tdetector, the whole array is considered, yielding only 1\n" "\tRON value." "\n" "OPTIONS\n" "\t-o or --output 'filename'\n" "\t\tChange the default output base name to 'filename'.\n" "\t\tThe default is 'dark', which will generate a file\n" "\t\tcalled 'dark_ron.paf'.\n" "\n\n" "*** DARK_RON :\n\n" "NAME\n" "\tdark -r 1 - ISAAC master dark creation\n" "\n" "SYNOPSIS\n" "\tisaacp dark -r 1 in [-o/--output filename]\n" "\n" "DESCRIPTION\n" "\tThis recipe creates master darks by averaging dark frames\n" "\tof identical DIT. It expects in input the name of an ASCII\n" "\tlist containing the names of the files to process.\n" "\n" "\tIn a typical dark acquisition for ISAAC, the same template\n" "\tacquires many frames having various DIT values.\n" "\tThe list is sorted out into groups of frames having the\n" "\tsame DIT. A simple linear average is applied per group,\n" "\twithout any rejection. This might be changed in future\n" "\tversions of this recipe.\n" "\n" "\tNotice that groups having one frame only are legal: the\n" "\toutput is then identical to the input frame.\n" "\n" "\tThe default output base name is 'dark', output frames are\n" "\tcalled dark_001.fits, dark_002.fits, etc. If you want to\n" "\tchange the base name you can use the -o/--output option\n" "\ton the command-line. The number of produced frames cannot\n" "\tbe predicted before running the recipe.\n" "\n\n" ;