MIRA as in the current version is still under development. Parts of its capabilities depend on the work done for other program libraries (CLASS90, TELCAL, PAKO). Comments and suggestions from users are welcome, and will be a valuable tool to further improve MIRA.
MIRA in its current version is exclusively used to reduce data written in the new IMBFITS raw data format. For old raw data, the old data processing software (OTFCAL) will be kept and maintained.
As soon as MIRA is fully integrated into as the standard heterodyne data processing software for the new control system, it will further evolve to provide tools for imaging with heterodyne receiver arrays.
This is a summary of recent changes in MIRA:
mira_pro:reduce.mirahas been commited to the CVS.
MIRA\CAL: the calibration parameters of all frontend-backend combinations are computed.
MIRA\VIEW [ifb] [/CAL] [/GAINS] [/PHASES] [/SIGNAL] [/MAP]
MIRA\SOLVE [pointing|focus] [ifb]changed to
MIRA\SOLVE [ifb]. Whether a pointing is to be solved or a focus is automatically determined from the observing procedure of the current scan.
mira_pro:p_plot_*.miracan now be retrieved from SIC's command stack (concerns
MIRA\SOLVE: for pointings, the execution can be halted after the subscan fits with QUIT.
FIND /NEW(for online data processing). Only new data are put into the index list. If no new data are found, the index list remains unchanged.
LIST /LONG. The telescope name is suppressed in any case. Note that the scan number is now listed in the first column, and the observation number in the last one.
\MIRA\VARIABLE LIST r).
/FEBE ALLwrites all frontend-backend combinations into the CLASS output file, starting with the observation identification number (if specified, otherwise successively increased by default).
YOFFSETi (with to , where is the number of offsets from the catalogue position) are accomodated in MIRA's
SCAN%DATAsection.The resulting offset is in
reduceSpec.mira. See section 2.1 for details.
MIRA\VIEW. First the data is fully shown, and the interactive cursor is called to define a rectangle to be zoomed in. The axis labels are correspondingly updated.
MIRA\VIEW /MAP /ZOOMcan be used to plot a subset of data. In the subset display, the range of
ONpositions covered by the subscan(s) is indicated.
/OFF: the default weight mode for on-the-fly maps is now
AVER(taking an average of all available off-source subscans). Option
NONEdoes not remove any off-source signal, but concatenates the spectral basebands.
jbaseband number) now becomes an array of character strings (instead of integer flags). See section 5 for details.
MIRA\CAL: if the setup of the backends used for an observation is not strictly the same as for the previous (or, for offline data processing, the subsequent) calibration, MIRA complained about an inconsistent calibration. In version 1.4, MIRA looks whether a calibration is available for exactly the same spectral charactersistics. If so, the calibration is applied, even if the number of the backend part has changed. If no calibration with the same spectral characteristics is available, MIRA issues a warning, and flags those data as uncalibrated.
FIND /OBSERVED. Otherwise, MIRA entered into a state of confusion and crashed when such a scan was read with
MIRA\SCAN. In version 1.4, this is not so anymore: in case of ambigous scan numbers, the user is asked to enter the desired observing date (if nothing is entered,
MIRA\SCANreturns to the command prompt, allowing to opt for the solution using
continue. So, the pause was switched off in version 1.3. In version 1.4, it can be activated using MIRA's logical flag
doPause(yes or .true. for interactive offline MIRA sessions, if the user wants to have a close look at the pointing subscans).
MIRA\SOLVEcommand has been upgraded to correctly handle blanked values for either backend counts or equivalent temperature scales.
MIRA\VIEW /PHASE idPhase irec.
idPhasecan be one of the character strings
ON, OFF, LOAD, SKY, HOT, COLD, FLO, FHI. The specified phase is averaged across the whole scan, unless a special record is specified with
mira.exe @onlineDataProcessing projId scan obsDate calScan obsDateCal
projIdis the Pico Veleta project id (e.g. 203-04),
scanthe scan number to be reduced,
obsDatethe corresponding observing date (format yyymmdd),
calScanthe scan number of the calibration scan (may be 0 if no calibration is to be done), and
obsDateCalthe observing date of the calibration scan (can be different from
obsDate). The MIRA SIC procedures
MIRA\SCANhas a new option
/TRACKING trackingError. If specified, all backend data with azimuth or elevation tracking errors larger than
trackingErrorare flagged, i.e. attributed the blanking value for raw data.
CAL /GRIDis plotted in blue.
WRITEhave new options for HERA pixels. See online help for details.
FINDis too slow for online data processing if used for large data archives. There are two solutions: either use
SCANwithout a previous
FIND, or at least one of the following options:
FIND /OBSERVED yyyy-mm-dd,
FIND /SCANis fastest).
FINDto load a scan ! MIRA command
SCANloads a scan, even if no index list exists. In case the scan number is ambigeous, MIRA takes by default the last observing date found (otherwise you have to use
FIND /OBSERVED). See the online help for details.
odp.mira. It essentially does the same job as the online data processing triggered by the NCS coordinator, but is more interactive. Use:
@ odp iRef idScan, where
iRefis the frontend-backend combination to be used for pointings and focus solutions, and
idScanis the scan to be reduced. The output CLASS file is called spectra.30m, in order to avoid confusion with spectraOdp.30m (produced by the coordinator).
SCAN(see MIRA language help).
MIRA\OVERRIDEallows to manually set the load temperatures and beam and forward efficiencies to values different from the entries in the imbFits raw data file. For details, please read the MIRA language internal help.
WRITE /SUBSCANis not needed anymore). See the MIRA language internal help, comand
MIRA\WRITE, for details.
CMODE = 10) or not (
CMODE = 0). See the MIRA language internal help, command
MIRA\CAL, for details.
MIRA\VIEWgets a new option
/XPOLfor viewing the amplitude and phase of the cross correlation of orthogonally polarized receivers (for VESPA data in XPOL mode).
LISThas been simplified: the structure
LIST2etc. For details see section 5.2.11.
VIEW /CALnow also issues the calibration and weather parameters on the GREG display (so they become visible even if MIRA is used in automatic mode in the background). For HERA data, these parameters are only displayed if option
VIEW /CAL /PIXELis used (otherwise the plots are overcharged).
FIND /NEWnow behaves differently: if new data are found, they are appended to the index list (if existing). This allos to load scans that are not in the index list, but whose data files are already written to disk (i.e. avoids a new FIND command in order to get those data).
/SHOWfor MIRA command
FILE /SHOWdisplays the names of the current input and output files (if openend, otherwise a warning message is issued).
GAIN[IMAGE]for MIRA command
VIEW /PHASE, yield the flux and its error. A baseline linearly depending on elapsed time is automatically fitted by MIRA at the on-off subtraction of
MIRA\FIND, for selecting data from one or several projects, and for writing the total integration time of the observtions of the current index list into a hidden file .stat. Mainly for observing pool administration.
LIST /PROJECTincludes the project number into the index list.
PAKO\CAL /SKY NOare also plotted, and relevant calibration parameters are indicated on MIRA's graphical display.
LIST /REDUCEwrite a procedure for off-line data reduction, instead of listing the data. For details see the MIRA language documentation.
CAL /OFFalso uses the OTF dumps as reference (masking the source). Works with OTF maps sufficiently exceeding the emission region.
SCAN. For calibration scans only. Allows to keep the opacity fixed and calculates the corresponding atmospheric model (instead of computing that corresponding to the measured sky emission temperature). Mainly used for skydips (see next item).
totalPower = a.[1-exp(-tauZenith.airMass)]+bwith fit parameters
tauZenith. Then calibrate the skydip with the atmospheric model corresponding to the measured zenith opacity, and derive the forward efficiency from the fit parameters
VIEWfor visualizing the antenna speed, fast and slow traces. For identifying bad antenna data.
OVERRIDEnow allows to set the calibration parameters once for a whole MIRA session, until
OVERRIDE /RESET. After reset, a new calibration has to be read.
VIEW /TRACESnow also shows the antenna mount drive dumps between the subscans (the previous versions only showed those data actually used for interpolation to the backend record times). To this end, a new structure has been created that can be examined and visualized via its SIC copy in
ANTENNA%ENCODER_AZ_EL(encoder values for azimuth, elevation and their timestamp) and
calCheck(logical SIC variable) can be used to switch off the consistency check for an observation and its associated calibration measurement (default:
let calCheck .false.if you connect more than one part of the same backend to the same receiver, with identical spectral setup. With
let calCheck = .true.\, MIRA tries to find for an observation the corresponding spectral backend part in the calibration data, even if its number has changed (e.g. because a backend part was dropped between the calibration and observation).
CAL ifb /FEBECAL jfballows the user to calibrate the frontend-backend unit ifb with the channel gains and calibration temperature of frontend-backend unit jfb (for particular circumstances only, e.g. inconsistent calibrations).
SOLVE ifb jfbcomputes the alignment of frontend
jfbwith respect to frontend
ifb, and writes the results into an ASCII file alignment.dat (or appends them to it, if existing). The receiver alignment is computed from fits to the difference signal (rather from the differences between fit signals). The results are plotted for a Nasmyth focus cabin.
FREQUENCYare supported, but still experimental. Please contact the author for further enquiries.
FLAGallows to flag selected basebands, channels, HERA pixels, records or subscans (e.g. to solve pointings with a bad subscan) .
LIST /FLUXprepares an ASCII table with pointing fluxes in the current index list (calibrated in Ta* if the index list contains calibrations).
let writeXML yes.
scan /pwv value. Preparations for EMIR nomenclature.
DOPPLERin the spectroscopy section, and the observatory velocity with respect to the local standard of rest ( if the observator recedes from the LSR).
list /flux argumentproduces an ASCII output file with continuum fluxes (where argument is the backend name, e.g. 1MHz).
list /fluxdeduces pointing fluxes, using the continuum backends, as before.
cal /off /masknow also works with option
/off time. Syntax for
/mask d1 [d2 d3 d4 ...]has changed: if only argument d1 is given, this is the number of OTF dumps at the start and end of each OTF subscan used as atmospheric refernce. If (d1,d2), (d3,d4), etc. are given pairwise this is to indicate the respective first and last OTF dump framing the source (up to 5 masks allowed, i.e. 10 arguments).
cal all /gains /off none /tcal
VIEW ifb1 ifb2for concatenating subbands
ifb1, ifb2, or
VIEW ifb1 to ifb2for concatenating all subbands between
badLevel, this is the level with respect to median total power at which spectral channels are blanked, default: factor 20 above or below median).
view ifb /phase iphasenow is the following:
iphase = 1, 2,...shows only total power phase
iphase. For one of
iphase = on, off(for continuum on-offs) or
iphase = sky, load(for beam-switched scans)
iphaseis the leading phase in the signal difference.
MIRA\overridenow also allows us to change the weather data (e.g. if the weather stations fails and if wrong weather data are written into the imbfits files). Use:
override tamb[_p_humid] Tamb Pambwhere
Pambare the values for the ambient outside temperature and pressure ( C and hPa, respectively) e.g. measured by hand or
*to remain unchanged).
gag_may09at the 30m telescope are written with the following convention:
doppler = -vSource(Obs)/clight, where
vSource(Obs)is the source velocity in the observatory frame, in the same sign convention as in Astro (vSource(Obs) < 0 for source approaching observatory).
flagBSwSpikesallows to automatically blank spikes with abnormally short integration times (shorter than actual values, hence normalization wrong, resulting in spikes). Default: .false. (works both for old and EMIR data).
dateEndare the start and end times of a given subscan, as written into the imbfits raw data (i.e., unlike
subScanEnd, not filtered by the safeguards in Mira's subroutine syncData).
CAL /off NONEwas specified,
MIRA\WRITEwrites both on-source and reference spectra to the output CLASS file.
timingCheck(logical flag, default: yes). Allows to switch off the automatic avoidance of hazardous extrapolation of antenna trace data). For details see section 5.1.
traceExtrapolation(logical flag, default: yes). Only for
timingCheck = no. Enables extrapolation of fast and slow traces before or after scan start, respectively end, and points in time that still contain valid backend data. For details see section 5.1.
MIRA\SCANselect backends from index list for reading and further processing (default: all backends).
/DROPdrops the selected backends from the list of data to be read and processed.