CARMA C++
carma::control::SubarrayControl Interface Reference

The interface to the CARMA subarray controller. More...

import "carma/control/SubarrayControl.idl";

Inheritance diagram for carma::control::SubarrayControl:
carma::control::Drives carma::control::SignalPath carma::util::PhaseSwitching

Public Member Functions

AddAntennaResult addAntenna (in SeqShort carmaAntNoSeq, in boolean skipAntsOwnedByOthers) raises ( carma::util::UserException )
 Adds antennas to this subarray. More...
 
void addBirdie (in unsigned long type, in unsigned short band, in unsigned short input1, in unsigned short input2) raises (carma::util::UserException)
 Manual blank/flag/birdie implementation. More...
 
void addCorrelator (in unsigned long type) raises (carma::util::UserException)
 Add a correlator to be managed by this subarray controller. More...
 
void addScriptHistory (in string value) raises (carma::util::UserException)
 Add a message to the script history, to be emailed out at the end of a track. More...
 
void adjustableDelay (in float offset, in SeqShort carmaAntNoSeq) raises (carma::util::UserException)
 Change the "adjustable delay" for a set of antennas antenna. More...
 
void alarm (in boolean state, in string alarmName) raises (carma::util::UserException)
 Turns the control building alarm on and off. More...
 
void alarm1mm (in boolean state) raises (carma::util::UserException)
 Sets the monitor point Control.subarrayN.alarm1mm to the input value. More...
 
void alarmEnable (in boolean state) raises (carma::util::UserException)
 Disables the control building alarm - no deadman functionality, ignores the alarm(true) command. More...
 
void antennaIFatten (in double power, in short ifNum, in SeqShort carmaAntNoSeq, in boolean invalidateTsys) raises (carma::util::UserException)
 Sets the antenna output IFattenuation (PAM attenuation) More...
 
void antennaIFpower (in double power, in SeqShort carmaAntNoSeq) raises (carma::util::UserException)
 Sets the antenna output IF power level (PAM power level) More...
 
void antennaIFpresetPower (in SeqShort carmaAntNoSeq) raises (carma::util::UserException)
 Sets the antenna output IF power level (PAM power level) to the preset value. More...
 
void antennaInitialized (in boolean state, in SeqShort carmaAntNoSeq) raises (carma::util::UserException)
 Set the antenna initialization flag. More...
 
void antennaOffset (in float east, in float north, in float up, in short carmaAntNo) raises (carma::util::UserException)
 Offset of the phase center for an antenna. More...
 
void aperturePointingConstants (in Aperture ap, in float az, in float el, in float sag, in short carmaAntNo) raises (carma::util::UserException)
 Set aperture pointing constants. More...
 
void appendScriptString (in short index, in string value) raises (carma::util::UserException)
 Append to a script control string variable. More...
 
void applyFlux (in boolean on) raises (carma::util::UserException)
 Control pipeline processing for flux application to data. More...
 
void applyFocus (in boolean on) raises (carma::util::UserException)
 Control pipeline processing for focus distance correction to data. More...
 
void applyTsys (in boolean on) raises (carma::util::UserException)
 Control pipeline processing for tsys application to data. More...
 
void assertCorrelatorConfiguration () raises (carma::util::UserException)
 Assert the astroband configuration to the correlator bands. More...
 
void assignLO (in long loRefNo) raises (carma::util::UserException)
 Assigns a reference LO to this subarray. More...
 
string astrobandCorrelator (in long astrobandNo) raises (carma::util::UserException)
 
void astroBandOnline (in short astrobandNo, in boolean online) raises (carma::util::UserException)
 Mark and astroband online or offline. More...
 
void axisNonintersection (in float offset, in short carmaAntNo) raises (carma::util::UserException)
 Non-intersection of the azimuth and elevatin axes for an antenna. More...
 
AzElSeq azel (in string sourceName, in double minutes) raises (carma::util::UserException)
 An array containing float values of the azimuth and elevation of the source at a specified time. More...
 
AntennaReady bogus (in float numSeconds) raises (carma::util::UserException)
 Internal development command - DO NOT USE. More...
 
void cal (in carma::antenna::common::CalibratorControl::Position cal, in SeqShort carmaAntNoSeq) raises (carma::util::UserException)
 Set calibrator position in antennas. More...
 
void calibrateSpectra (in SeqShort bandNoSeq, in boolean noiseEnabled, in float intTime, in boolean cache, in boolean enable) raises (carma::util::UserException)
 Initiates the correlator hardware bandpass calibration routine, which measures a calibration spectrum and will complex-divide subsequent spectra by it (real-divide for autocorrelation spectra). More...
 
void camera (in carma::antenna::common::SwitchState state, in SeqShort carmaAntNoSeq) raises (carma::util::UserException)
 Turn the camera/flaps/cap for the optical telescope(s) on or off. More...
 
void cancel () raises (carma::util::UserException)
 Cancels any procedure that is currently in progress. More...
 
boolean checkConfig (in boolean quiet) raises (carma::util::UserException)
 Check that the correlator configuration commands (freq and configAstroBand) are self consistent. More...
 
void clearAstroBand (in short astrobandNo) raises (carma::util::UserException)
 Clear the astroBand configuration for the input astroband. More...
 
void clearBirdies (in unsigned long type) raises (carma::util::UserException)
 
void clearScriptAll () raises (carma::util::UserException)
 Clear all script control variables. More...
 
void comment (in string obsComment) raises (carma::util::UserException)
 Insert an observer comment into the data stream. More...
 
void configAstroBand (in short astrobandNo, in string astroBandConf, in carma::util::CorrelatorBandWidthType bandwidth, in double fcenter, in SidebandType sb, in double frest, in double imagefrest, in boolean online, in string transition, in string imageTransition, in carma::util::CorrelatorBitType bits) raises (carma::util::UserException)
 Configures the correlator and sets up the 2nd LO. More...
 
PadOffsets convertBaseline (in double x, in double y, in double z, in short carmaAntNo) raises (carma::util::UserException)
 Convert MIRIAD topocentric antenna positions to pad offsets. More...
 
void delay (in float offset, in short carmaAntNo) raises (carma::util::UserException)
 Set delay offset for 3mm rx path for a specific antenna. More...
 
void delayDifference (in float diff, in short carmaAntNo, in carma::antenna::common::RxControl::Type rx, in BlockDCPolarizationType pol) raises (carma::util::UserException)
 Set receiver delay difference for a specific antenna. More...
 
void disableFaultSystemAlarms (in SeqString inMonitorPointNames) raises ( carma::util::UserException )
 Disable fault system alarms for the given monitor points. More...
 
void doIVcurve (in carma::antenna::common::RxControl::Type rx, in carma::antenna::common::RxControl::Pol_Type pol, in float startVjInMv, in float stopVjInMv, in float stepVjInMv, in unsigned short deltaInMs, in boolean doTotalPower, in SeqShort carmaAntNoSeq) raises ( carma::util::UserException )
 Engineering: Initiate an IVcurve This routine does not block. More...
 
double doppler (in string source) raises (carma::util::UserException)
 Set source to use for doppler tracking. More...
 
void elevLimit (in float limit) raises (carma::util::UserException)
 Sets the elevation limit for source up/down calculation. More...
 
void enableCorrelation (in SeqShort bandNoSeq, in boolean correlationsEnabled) raises (carma::util::UserException)
 Enable or disable correlations on the wideband correlator. More...
 
void equatOffset (in double dra, in double ddec, in SeqShort carmaAntNoSeq, in boolean affectPhaseCenter, in boolean whileIntegrating) raises (carma::util::UserException)
 Defines equatorial offsets in ra and dec from the input source. More...
 
void flattenPhases (in SeqShort bandNoSeq) raises (carma::util::UserException)
 Initiates the correlator hardware phase flattening routine. More...
 
void focusX (in float position, in short carmaAntNo) raises (carma::util::UserException)
 Set x focus position. More...
 
void focusY (in float position, in short carmaAntNo) raises (carma::util::UserException)
 Set y focus position. More...
 
void focusZ (in float position, in short carmaAntNo) raises (carma::util::UserException)
 Set z focus position Suitable for system use, like subarray restoration. More...
 
void freq (in double frest, in SidebandType sb, in double fif, in string doppler, in string transition) raises (carma::util::UserException, carma::util::CancelException)
 The Doppler shifted frest will be mapped to the requested IF frequency. More...
 
void fringeTracking (in boolean on) raises (carma::util::UserException)
 Engineering: Control fringe tracking in the loberotator Fringe tracking stops the fringes and is the normal mode for collecting astronomy data. More...
 
AntennaAssignmentSeq getAntennaAssignments () raises (carma::util::UserException)
 Returns the present antenna assignments for the subarray. More...
 
SeqShort getAstroBandsForConfiguration (in string confName) raises (carma::util::UserException)
 Return a vector of astroband numbers for which a mapping is specified by the named configuration. More...
 
SeqShort getCorrelatorBandNoSeq (in SeqShort astroBandNoSeq, in boolean includeOfflineBands) raises (carma::util::UserException)
 
boolean getInitializationFlag () raises (carma::util::UserException)
 Get state of subarray control initialization flag. More...
 
carma::antenna::common::IVCurve getIVcurve (in short carmaAntNo) raises (carma::util::UserException)
 Engineering: Retrieve results of most recent IV curve on an antenna. More...
 
NearestInfoSeq getNearest (in string source, in float elMin, in float elMax, in SeqString sourceList, in NearestActionType action, in short numReturn, in boolean ignoreNorthSouth, in string coordSys, in boolean optical, in float fluxLimit, in float frequency) raises (carma::util::UserException)
 Search for nearby neighbors of input source, filtering by various criteria and sorted by distance from target. More...
 
RaDecSeq getRaDec (in string sourceName) raises (carma::util::UserException)
 Retrieves source info from catalog and returns RA & DEC as doubles. More...
 
boolean getScriptBool (in short index) raises (carma::util::UserException)
 Get a script control boolean variable. More...
 
double getScriptDouble (in short index) raises (carma::util::UserException)
 Get a script control double variable. More...
 
string getScriptHistory () raises (carma::util::UserException)
 Retrieve all messages from the script history. More...
 
boolean getScriptHistoryFull () raises (carma::util::UserException)
 Query whether the script history is full. More...
 
long getScriptInt (in short index) raises (carma::util::UserException)
 Get a script control integer variable. More...
 
string getScriptName () raises (carma::util::UserException)
 Get the script name from the monitor system. More...
 
ScriptStateType getScriptState () raises (carma::util::UserException)
 Get the script state from the monitor system. More...
 
string getScriptString (in short index) raises (carma::util::UserException)
 Get a script control string variable. More...
 
string getSubarrayName () raises (carma::util::UserException)
 Get the subarray name for this subarrayControl. More...
 
long getSubarrayNo () raises (carma::util::UserException)
 Get the subarray number of this subarrayControl. More...
 
SeqDouble harmonics (in double freq) raises (carma::util::UserException)
 Returns sequence possible harmonics, as pairs refLO and Xband freqs. More...
 
void ifoutLevel (in double level) raises (carma::util::UserException)
 Set if output power level to specified level for all downconverters. More...
 
void ifoutPreset () raises (carma::util::UserException)
 Set input power level to specified level for one downconverter This method and its implementation demonstrate how to handle access to single can modules through a master. More...
 
void ij (in carma::antenna::common::RxControl::Pol_Type pol, in float ij, in short carmaAntNo) raises (carma::util::UserException)
 Engineering command: backdoor for the ovro receivers. More...
 
string info (in string sourceName) raises (carma::util::UserException)
 Retrieves source info from catalog and returns as a string. More...
 
void integrate (in double intTime, in long numInts, in double gap, in boolean science) raises (carma::util::UserException)
 Starts up an integration as soon as possible This version is no frills, just gets pipeline going. More...
 
boolean isCommissioning (in string project) raises (carma::util::UserException)
 Return true if project code is "ctNNN" with ( 0 < NNN < 014 ) OR is a summer school project with csNNN (NNN > 0 ) OR is one of the special projects codes that have default intent. More...
 
boolean isShadowedHaDec (in short carmaAntennaNo, in double hourAngleHours, in double decDegrees, in ShadowingType type, in double diameterFraction) raises (carma::util::UserException)
 
boolean isShadowedNow (in short carmaAntennaNo, in ShadowingType type, in double diameterFraction) raises (carma::util::UserException)
 EML: Adding shadowing calculators for various methods of querying. More...
 
boolean isShadowedSource (in short carmaAntennaNo, in string sourceName, in double lstHours, in ShadowingType type, in double diameterFraction) raises (carma::util::UserException)
 
boolean isUp (in string sourceName) raises (carma::util::UserException)
 Checks whether source is up above the current elevation limit. More...
 
void jyperk (in float gain, in short carmaAntNo) raises (carma::util::UserException)
 Engineering command: Set the gain factor for the given antenna. More...
 
double lineFreq (in string line) raises (carma::util::UserException)
 Gets the frequency for a given molecular line transition. More...
 
void log (in string entry) raises (carma::util::UserException)
 Insert an entry into the control log at INFO level. More...
 
void logError (in string entry) raises (carma::util::UserException)
 Insert an entry into the control log at ERROR level. More...
 
void lrPhase (in float phaseOffset, in short carmaAntNo) raises (carma::util::UserException)
 Engineering: Control phase offsets in the loberotator. More...
 
void lrPhaseOffsetMode (in boolean on) raises (carma::util::UserException)
 Engineering: Control phase offsets in the loberotator The rates and phases are continuous in absolute time These are debugging commands that should not be memorized as part of the system state. More...
 
void lrRate (in float phaseRate, in short carmaAntNo) raises (carma::util::UserException)
 Engineering: Control phase offsets in the loberotator. More...
 
double lst () raises (carma::util::UserException)
 
string lstString () raises (carma::util::UserException)
 
double mjd (in double seconds) raises (carma::util::UserException)
 
void noiseAtten (in unsigned short atten) raises (carma::util::UserException)
 Control the attenuation of the noise source. More...
 
void noisePreset () raises (carma::util::UserException)
 Set noise source output power level to the preset value stored in the module's EEPROM. More...
 
void noiseSource (in boolean state, in boolean isReference) raises (carma::util::UserException)
 Control the state of the noise source. More...
 
void obsblock (in string obsblock) raises (carma::util::UserException)
 Sets the observing block string. More...
 
void optimizeThresholds (in SeqShort bandNoSeq) raises (carma::util::UserException)
 Initiates the correlator hardware threshold optimization routine. More...
 
string ownedCorrelator (in long subarrayNo) raises (carma::util::UserException)
 
void pad (in short padNo, in short carmaAntNo) raises (carma::util::UserException)
 Specify pad on which an antenna resides. More...
 
void padOffset (in float east, in float north, in float up, in short carmaAntNo) raises (carma::util::UserException)
 Specify offset from pad nominal position for an antenna. More...
 
void passiveLO (in double freq) raises (carma::util::UserException)
 Sets the antenna LOs for the Engineering#2 subarray. More...
 
void phaseCenterOffset (in double dra, in double ddec) raises (carma::util::UserException)
 Defines equatorial offset from the source for the subarray phase center. More...
 
void phaseOffset (in float phase, in short bandNo, in short antenna1No, in short antenna2No) raises (carma::util::UserException)
 Set phase offset in pipeline for a single band/baseline, or many. More...
 
void phaseSwitching (in boolean on, in short chanNo) raises (carma::util::UserException)
 Engineering: Control phase switching in the loberotator This is a debugging commands that should not be memorized as part of the system state. More...
 
void pointStatus (in PointStatusType status, in SeqShort carmaAntNoSeq) raises (carma::util::UserException)
 Set the ON/OFF indicator for singledish observations. More...
 
void polarization (in carma::antenna::common::PolarizationControl::State polState, in SeqShort carmaAntNoSeq) raises (carma::util::UserException)
 Set polarization state. More...
 
void project (in string project) raises (carma::util::UserException)
 Sets the project name. More...
 
boolean projectEdit (in string project, in string obsblock, in string subobsblock, in short trial, in carma::observertools::ItemValueSequence ivSeq, in carma::observertools::EditStatus action) raises (carma::util::UserException, carma::observertools::ProjectDatabaseException)
 
void projectOscriptAdd (in string project, in string obsblock, in string subobsblock, in string scriptFile, in string catalogFile) raises (carma::util::UserException)
 
short projectRun (in string projectID, in string obsblock, in string subObsblock, in boolean isCommissioning, in boolean isDualCorr, in string arrayConfig1, in string arrayConfig2, in string scriptFile, in string catalogFile) raises (carma::util::UserException, carma::observertools::ProjectDatabaseException)
 
void psysLevel (in double level) raises (carma::util::UserException)
 Set input power level to specified level for all downconverters. More...
 
void psysPreset (in SeqShort carmaAntNoSeq, in short astroBandNo) raises (carma::util::UserException)
 Set input power level to preset level for all downconverters. More...
 
void qfreq (in double frest, in SidebandType sb, in double fif, in string doppler, in string transition) raises (carma::util::UserException)
 Like freq, except it doesn't wait for the rx to tune, and hence doesn't set power levels. More...
 
void quadmodAtten (in unsigned short atten) raises (carma::util::UserException)
 Control the attenuation of the quadmods. More...
 
string query (in string monitorName) raises (carma::util::UserException, MonitorPointNotFoundException)
 Query the monitor system and return info. More...
 
boolean queryBool (in string monitorPointName) raises (carma::util::UserException, InvalidMonitorDataException, MonitorPointNotFoundException)
 Query the monitor system and return current average value of a boolean MP. More...
 
SeqFloat queryComplex (in string monitorPointName) raises (carma::util::UserException, InvalidMonitorDataException, MonitorPointNotFoundException)
 Query the monitor system and return current average value of a complex MP. More...
 
double queryDouble (in string monitorPointName) raises (carma::util::UserException, InvalidMonitorDataException, MonitorPointNotFoundException)
 Query the monitor system and return current average value of a numeric MP. More...
 
FluxMeasurement queryFlux (in string source, in float freq, in float deltaFreq, in float deltaTime) raises (carma::util::UserException)
 Get the most recent measurement of radio flux of a source. More...
 
long queryInt (in string monitorPointName) raises (carma::util::UserException, InvalidMonitorDataException, MonitorPointNotFoundException)
 Query the monitor system and return current average value. More...
 
float queryMag (in string starName) raises (carma::util::UserException)
 Lookup a star in conf/catalogs/BrightStars.cat and return its magnitude. More...
 
SeqMonitorPointValue queryMonitorPoint (in SeqString monitorComponent) raises (carma::util::UserException)
 Gets values and validity for a sequence of monitor points. More...
 
carma::observertools::ProjectSequence queryProject (in carma::observertools::ItemValueSequence ivSeq) raises (carma::util::UserException, carma::observertools::ProjectDatabaseException)
 
string queryString (in string monitorPointName) raises (carma::util::UserException, InvalidMonitorDataException, MonitorPointNotFoundException)
 Query the monitor system and return current value of a string or enumeration monitor point. More...
 
void radioAperture (in boolean useRadio, in SeqShort carmaAntNoSeq) raises (carma::util::UserException)
 Select aperture. More...
 
void reconnect (in boolean force) raises (carma::util::UserException)
 Attempt to reconnect DOs that have lost their connections. More...
 
void recordPoint (in short carmaAntNo) raises (carma::util::UserException)
 Record optical pointing datapoint for requested antenna. More...
 
void refAtten (in unsigned short atten, in short carmaAntNo) raises (carma::util::UserException)
 Sets reference LO attenuation in the antenna. More...
 
void refreq (in SeqShort carmaAntNoSeq, in boolean retune) raises (carma::util::UserException)
 Relooks the oscillator in an antenna, and optionally retunes the receiver. More...
 
RemoveAntennaResult removeAntenna (in SeqShort carmaAntNoSeq, in boolean skipAntsNotOwnedByMe) raises ( carma::util::UserException )
 Removes antennas from this subarray and puts them in the maintenance subarray. More...
 
void removeBirdie (in unsigned long type, in unsigned short band, in unsigned short input1, in unsigned short input2) raises (carma::util::UserException)
 
void removeCorrelator (in unsigned long type) raises (carma::util::UserException)
 Remove a correlator from control by this subarray controller. More...
 
void resetProjectAndObsblock () raises (carma::util::UserException)
 Reset the project, obsblock, sub-obsblock, and observing constraints their default values. More...
 
void resetTimeSinceLastIntegration () raises (carma::util::UserException)
 Resets the 'time since last integration' timer in the pipeline. More...
 
void restorationInProgress (in boolean restoring) raises (carma::util::UserException)
 Tell the control system that a state restoration is in progress. More...
 
void restoreControlSubsystemFromFile (in string filename) raises (carma::util::UserException)
 Restore ControlSubsystem state from specified persistent file. More...
 
void restoreFaultSystemAlarms (in SeqString inMonitorPointNames) raises ( carma::util::UserException )
 Restore fault system alarms to their default enable states for the given monitor points. More...
 
void rfPower (in boolean state) raises (carma::util::UserException)
 Turn rf power on/off for all downconverters. More...
 
void saveControlSubsystemState (in string filename) raises (carma::util::UserException)
 Save current ControlSubsystem state to a persistent file. More...
 
void sbratio (in float ratio, in SeqShort carmaAntNoSeq) raises (carma::util::UserException)
 Set the sideband gain ratio for a given antenna and band. More...
 
void setAllObsblocks (in string project1, in string obsblock1, in string subObsblock1, in long trial1, in string project2, in string obsblock2, in string subObsblock2, in long trial2) raises (carma::util::UserException)
 Sets the full obsblock name atomically. More...
 
void setAntPosFilename (in string filename) raises ( carma::util::UserException )
 Set antpos filename. More...
 
void setConfigName (in string name) raises (carma::util::UserException)
 Sets the array configuration name. More...
 
void setConstraints (in ImagingType imgType, in short minAnts, in float calMaxTime, in float calMaxRms, in float maxTsys, in float maxRmsPathLength, in float maxTau, in float maxDecor, in float requiredRms) raises (carma::util::UserException)
 Defines the observing constraints that must be met for this obsblock to be observed. More...
 
void setDecimationMode (in DecimationMode mode, in unsigned short astrobandNo) raises (carma::util::UserException)
 Control pipeline processing mode for decimation and end channels. More...
 
void setDefaultConstraints () raises (carma::util::UserException)
 Use the default obsblock observing constraints. More...
 
void setFaultSystemAlarmEnableState (in boolean inStateIsOn) raises ( carma::util::UserException )
 Set the fault system alarm enable state. More...
 
void setFaultSystemDriveErrorPreference (in carma::fault::EffectPreference inPref) raises ( carma::util::UserException )
 Set the drive blanking state in the fault system. More...
 
void setInitializationFlag (in boolean state) raises (carma::util::UserException)
 Set state of subarray control initialization flag. More...
 
void setIntent (in string sourceName, in string purpose, in boolean selfcal, in boolean fastSwitch) raises (carma::util::UserException)
 Define the intent/style of the source observations. More...
 
void setInvalidationForMosaics (in boolean invalidate) raises (carma::util::UserException)
 
void setMonitorPointInvalid (in string name) raises (carma::util::UserException)
 Set a control subsystem monitor point invalid. More...
 
void setMonitorPointReal (in string name, in double value) raises (carma::util::UserException)
 Set value of a control subsystem monitor point (double/float only). More...
 
void setObsblock (in string project, in string obsblock, in string subObsblock, in long trial) raises (carma::util::UserException)
 Sets the full obsblock name atomically. More...
 
void setRepTaskAuto (in long taskIndex, in double auto) raises (carma::util::UserException)
 Set the time interval for automatic execution of the repetitive task. More...
 
void setRepTaskCompleted (in long taskIndex, in double mjd) raises (carma::util::UserException)
 Set the absolute time that the repetitive task was last executed. More...
 
void setRepTaskInterval (in long taskIndex, in double interval) raises (carma::util::UserException)
 Set the time interval for the task repetitition . More...
 
void setRepTaskName (in long taskIndex, in string taskName) raises (carma::util::UserException)
 Set the name of the repetitive task. More...
 
void setRepTaskRemind (in long taskIndex, in double remind) raises (carma::util::UserException)
 Set the reminder interval of the repetitive task. More...
 
void setScriptBool (in short index, in boolean value) raises (carma::util::UserException)
 Set a script control boolean variable. More...
 
void setScriptDouble (in short index, in double value) raises (carma::util::UserException)
 Set a script control double variable. More...
 
void setScriptInt (in short index, in long value) raises (carma::util::UserException)
 Set a script control integer variable. More...
 
void setScriptName (in string name) raises (carma::util::UserException)
 Set the script name in the monitor system. More...
 
void setScriptState (in ScriptStateType state) raises (carma::util::UserException)
 Set the script state in the monitor system. More...
 
void setScriptString (in short index, in string value) raises (carma::util::UserException)
 Set a script control string variable. More...
 
void setTraceLevel (in short traceLevel) raises ( carma::util::UserException )
 Development command - DO NOT USE. More...
 
void signalControlSubsystemRestored () raises (carma::util::UserException)
 Tell the control system that the ControlSubsystem monitor container has been restored from a previously saved file. More...
 
void startTrack () raises (carma::util::UserException)
 
   Tell the control system t} catch ( const util::UserException & ) {
throw;

} catch ( ... More...

 
void storeAntennaIFattenAmbient (in SeqShort carmaAntNoSeq) raises (carma::util::UserException)
 Stores the antenna IF attenuation from PAM1 into the monitor system Useful after the PAM has set it to a specific power level. More...
 
boolean subarrayOwnsCorrelator (in long subarrayNo, in unsigned long type) raises (carma::util::UserException)
 Check if the specified subarray owns the requested correlator. More...
 
boolean subarrayOwnsNoCorrelator (in long subarrayNo) raises (carma::util::UserException)
 
boolean subarrayOwnsSingleCorrelator (in long subarrayNo) raises (carma::util::UserException)
 
void subObsblock (in string subObsblock) raises (carma::util::UserException)
 Sets the sub-observing block string. More...
 
void testAntHandles (in double aSeconds, in double bSeconds, in long whichTest, in double lateAfterSeconds, in SeqShort carmaAntNoSeq) raises ( carma::util::UserException )
 Development command - DO NOT USE. More...
 
string testMessageSize (in unsigned long size) raises (carma::util::UserException)
 
void tilt (in SeqShort carmaAntNoSeq) raises (carma::util::UserException)
 Measure the tilt meter zeros and set This is a procedure that takes several minutes to complete. More...
 
void tiltZeros (in float aftForward, in float leftRight, in short carmaAntNo) raises (carma::util::UserException)
 Set tiltmeter zeros. More...
 
string times () raises (carma::util::UserException)
 
double transitionFreq (in string molecule, in string transition) raises (carma::util::UserException)
 Gets the frequency for a given molecular line transition. More...
 
void trial (in long number) raises (carma::util::UserException)
 Sets the trial number. More...
 
AntennaReady tsys () raises (carma::util::UserException)
 Measure system temperatures Moves in ambient load, waits one second, then returns to sky and waits another second. More...
 
void ucat (in string catalog) raises (carma::util::UserException)
 Set a user catalog. More...
 
void useAdjustableDelay (in boolean useIt, in SeqShort carmaAntNoSeq) raises (carma::util::UserException)
 Engineering command; Tell the DelayEngine whether to use the adjustable delay for a given antenna. More...
 
void useGeometricDelay (in boolean useIt, in SeqShort carmaAntNoSeq) raises (carma::util::UserException)
 Engineering command; Tell the DelayEngine whether to use the geometric delay for a given antenna. More...
 
void useHeightDelay (in boolean useIt, in SeqShort carmaAntNoSeq) raises (carma::util::UserException)
 Engineering command; Tell the DelayEngine whether to use the additional height delay for a given antenna. More...
 
void useIonosphericDelay (in boolean useIt, in SeqShort carmaAntNoSeq) raises (carma::util::UserException)
 Tell the DelayEngine whether to use the ionospheric delay for a given antenna. More...
 
void useThermalDelay (in boolean useIt, in SeqShort carmaAntNoSeq) raises (carma::util::UserException)
 Engineering command; Tell the DelayEngine whether to use the thermal delay for a given antenna. More...
 
void useTroposphericDelay (in boolean useIt, in SeqShort carmaAntNoSeq) raises (carma::util::UserException)
 Engineering command; Tell the DelayEngine whether to use the tropospheric delay for a given antenna. More...
 
void vj (in carma::antenna::common::RxControl::Pol_Type pol, in float vj, in short carmaAntNo) raises (carma::util::UserException)
 Engineering command: backdoor for the ovro receivers. More...
 
ComponentReady wait (in WaitItem item, in SeqShort carmaComponentNoSeq, in float timeout, in WaitCondition condition, in short count) raises (carma::util::UserException, carma::util::CancelException, carma::control::TimeoutException, carma::control::InvalidMonitorDataException)
 Wait for a specific procedure to complete. More...
 
string whazUp () raises (carma::util::UserException)
 Checks status of brightest radio sources and returns as string Previously set elevation limit is used in calculations. More...
 
string whazUpOptical () raises (carma::util::UserException)
 Checks status of brightest optical sources and returns as string Previously set elevation limit is used in calculations. More...
 
float whenDown (in string sourceName) raises (carma::util::UserException)
 Checks how long before source will set, using current elevation limit. More...
 
float whenTransit (in string sourceName) raises (carma::util::UserException)
 Checks how long until/since a source transits, using current elevation limit. More...
 
float whenUp (in string sourceName) raises (carma::util::UserException)
 Checks how long before source will rise, using current elevation limit. More...
 
- Public Member Functions inherited from carma::control::OpticalTelescope
void findCentroid (in unsigned short numFramesPerImage, in unsigned short minValidCentroids, in unsigned short maxCentroidAttempts, in unsigned short numEdgePixels, in unsigned short apertureRadiusPixels, in float pixelThresholdSigma, in boolean subBackground, in boolean normalizeMedian, in SeqShort carmaAntNoSeq) raises (carma::util::UserException)
 Find centroid of star in field of view. More...
 
CentroidResults getCentroidResults (in short carmaAntNo) raises (carma::util::UserException)
 Retrieve centroid results. More...
 
carma::antenna::common::flattenedOpticalImage getImage (in unsigned short numFrames, in boolean subBackground, in boolean normalizeMedian, in boolean normalizeImage, in short carmaAntNo) raises (carma::util::UserException)
 Create and return an image from the input number of frames. More...
 
void setFrameBrightness (in float brightness, in SeqShort carmaAntNoSeq) raises (carma::util::UserException)
 Set frame brightness. More...
 
void setFrameContrast (in float constrast, in SeqShort carmaAntNoSeq) raises (carma::util::UserException)
 Set frame contrast. More...
 
void setFrameDimensions (in short x, in short y, in short x0, in short y0, in SeqShort carmaAntNoSeq) raises (carma::util::UserException)
 Set dimensions of frame returned by the frameGrabber. More...
 
void setFramegrabberResolution (in Resolution fgResolution, in SeqShort carmaAntNoSeq) raises (carma::util::UserException)
 Set the resolution of the framegrabber. More...
 
void setRotationAndFieldsOfView (in float rotationInDegrees, in float azFOVInArcminutes, in float elFOVInArcminutes, in short carmaAntNo) raises (carma::util::UserException)
 Set image rotation and az/el fields of view. More...
 
void takeBackgroundImage (in unsigned short numFrames, in SeqShort carmaAntNoSeq) raises (carma::util::UserException)
 Take background image for future background subtraction. More...
 
- Public Member Functions inherited from carma::control::Drives
void azPointingConstant (in double m1, in short carmaAntNo) raises (carma::util::UserException)
 Set azimuth mount offset This is a convenience method that sets m1 of the ovro model, and equivalent terms for the other models. More...
 
void mountOffset (in double az, in double el, in short carmaAntNo) raises (carma::util::UserException)
 Collimation offset from the mount. More...
 
void move (in double azDegrees, in double elDegrees, in SeqShort carmaAntNoSeq) raises (carma::util::UserException)
 Move antenna(s) to the requested az/el position. More...
 
void moveAz (in double azDegrees, in SeqShort carmaAntNoSeq) raises (carma::util::UserException)
 Move antenna(s) to the requested az position (el unchanged). More...
 
void moveEl (in double elDegrees, in SeqShort carmaAntNoSeq) raises (carma::util::UserException)
 Move antenna(s) to the requested el position. More...
 
void offset (in double azArcmin, in double elArcmin, in SeqShort carmaAntNoSeq) raises (carma::util::UserException)
 Offset from the nominal position. More...
 
void offsetAz (in double azArcmin, in SeqShort carmaAntNoSeq) raises (carma::util::UserException)
 Offset in azimuth from the nominal position, Convenience routine. More...
 
void offsetEl (in double elArcmin, in SeqShort carmaAntNoSeq) raises (carma::util::UserException)
 Offset in elevation from the nominal position, Convenience routine. More...
 
void setBimaMountPointingConstants (in SeqDouble dazCoefs, in SeqDouble delCoefs, in short carmaAntNo) raises ( carma::util::UserException )
 Set bima mount pointing constants. More...
 
void setOvroMountPointingConstants (in double m1, in double m2, in double m3, in double m4, in double m5, in short carmaAntNo) raises ( carma::util::UserException )
 Set ovro mount pointing constants el" = elEncoder + m2 el' = el"+ apertureOffsetEl +apertureSagEl*cos(el") - AFtilt az' = azEncoder + m1 + apertureOffsetAz/cos(el') az = az'+ [m3 + LRtilt - m4*sin(az') - m5*cos(az')]*sin(el')/cos(el') el = el' - m4*cos(az') + m5*sin(az') More...
 
void setSafeRange (in float azLow, in float azHigh, in float elLow, in float elHigh, in SeqShort carmaAntNoSeq) raises (carma::util::UserException)
 Set the azimuth and elevation ranges within which an antenna(s) is safe from collisions with other antennas. More...
 
void setSzaEncoderLimits (in unsigned long azMinCount, in unsigned long azMaxCount, in unsigned long elMinCount, in unsigned long elMaxCount, in short carmaAntNo) raises ( carma::util::UserException )
 
void setSzaEncoderZeros (in double azEncZeroDeg, in double elEncZeroDeg, in short carmaAntNo) raises ( carma::util::UserException )
 
void setSzaMountPointingConstants (in unsigned long azEncoderCountsPerTurn, in unsigned long elEncoderCountsPerTurn, in unsigned long azMinEncoderCount, in unsigned long azMaxEncoderCount, in unsigned long elMinEncoderCount, in unsigned long elMaxEncoderCount, in double azEncoderZeroDegrees, in double elEncoderZeroDegrees, in double haTiltDegrees, in double latTiltDegrees, in double elTiltDegrees, in double opticalXCollimationDegrees, in double opticalYCollimationDegrees, in double opticalFlexureSinDegrees, in double opticalFlexureCosDegrees, in double radioXCollimationDegrees, in double radioYCollimationDegrees, in double radioFlexureSinDegrees, in double radioFlexureCosDegrees, in short carmaAntNo) raises ( carma::util::UserException )
 
void setSzaTilts (in double haTilt, in double latTilt, in double elTilt, in short carmaAntNo) raises ( carma::util::UserException )
 
void snowTrack (in SeqShort carmaAntNoSeq) raises (carma::util::UserException)
 Track the wind in a manner that minimizes snow buildup on antenna backing structures. More...
 
void stop (in SeqShort carmaAntNoSeq) raises (carma::util::UserException)
 Stops the antennas and turns off the drive system. More...
 
void stow (in carma::antenna::common::DriveControl::Position pos, in SeqShort carmaAntNoSeq) raises (carma::util::UserException)
 Stows antennas in the ZENITH, SERVICE, or SAFE position. More...
 
void track (in string source, in SeqShort carmaAntNoSeq, in boolean affectPhaseCenter, in AzWrapMode xzWrapMode, in double time, in boolean overTheTop) raises (carma::util::UserException)
 Track the requested source. More...
 
void trackThreshold (in float threshold, in SeqShort carmaAntNoSeq) raises (carma::util::UserException)
 Sets tracking threshold The tracking threshold is the sky tracking error in beamwidths that is used to determine if the antenna state is TRACK. More...
 
void windTrack (in SeqShort carmaAntNoSeq) raises (carma::util::UserException)
 Track the wind in an antenna specific manner during high winds. More...
 
- Public Member Functions inherited from carma::control::SignalPath
void checkConfigurationSuccess (in short astroBandNo) raises (carma::util::UserException)
 
void checkConfigurationValidity (in short astroBandNo, in string confName) raises (carma::util::UserException)
 
void initializeCableMap (in string fileName) raises (carma::util::UserException)
 
void loadConfiguration (in string fileName, in string confName, in string astroBandConfName) raises (carma::util::UserException)
 
string queryConfiguration () raises (carma::util::UserException)
 
- Public Member Functions inherited from carma::util::PhaseSwitching
void loadPhaseSwitchTable (in long numColumns, in long numRows90, in PhaseTable phaseTable90, in long numRows180, in PhaseTable phaseTable180) raises (carma::util::UserException)
 Phass phaseswitch table. More...
 

Detailed Description

The interface to the CARMA subarray controller.

Definition at line 263 of file SubarrayControl.idl.

Member Function Documentation

AddAntennaResult carma::control::SubarrayControl::addAntenna ( in SeqShort  carmaAntNoSeq,
in boolean  skipAntsOwnedByOthers 
)
raises (carma::util::UserException
)

Adds antennas to this subarray.

Parameters
carmaAntNoSeqSequence of carma antenna numbers. Zero is not allowed.
skipAntsOwnedByOthersWhether to skip or throw an exception for ants in carmaAntNoSeq that are already owned by another subarray
Returns
AddAntennaResult structure detailing what happened.
Exceptions
UserExceptionon illegal carmaAntNo or input range error
void carma::control::SubarrayControl::addBirdie ( in unsigned long  type,
in unsigned short  band,
in unsigned short  input1,
in unsigned short  input2 
)
raises (carma::util::UserException
)

Manual blank/flag/birdie implementation.

void carma::control::SubarrayControl::addCorrelator ( in unsigned long  type)
raises (carma::util::UserException
)

Add a correlator to be managed by this subarray controller.

void carma::control::SubarrayControl::addScriptHistory ( in string  value)
raises (carma::util::UserException
)

Add a message to the script history, to be emailed out at the end of a track.

void carma::control::SubarrayControl::adjustableDelay ( in float  offset,
in SeqShort  carmaAntNoSeq 
)
raises (carma::util::UserException
)

Change the "adjustable delay" for a set of antennas antenna.

Parameters
delayvalue in nanoseconds
carmaAntNoSeqSequence of carma antenna numbers. A sequence of the single value zero means all subarray antennas.
void carma::control::SubarrayControl::alarm ( in boolean  state,
in string  alarmName 
)
raises (carma::util::UserException
)

Turns the control building alarm on and off.

Parameters
stateon=true, off=false
alarmNamedetermines which sound will be played from watch.tab
See Also
alarmEnable
void carma::control::SubarrayControl::alarm1mm ( in boolean  state)
raises (carma::util::UserException
)

Sets the monitor point Control.subarrayN.alarm1mm to the input value.

If set to true, the fault system should trigger the audible alarm. The alarm signals the observer to take action regarding the frequency at which to observe. Either switch from 3mm to 1mm (the weather has improved) or switch from 1mm to 3mm (the weather has deteriorated). A comment on which is which will be written to the RTD composite display based on the current observing frequency.

Parameters
stateenable=true, disable=false
See Also
alarm
void carma::control::SubarrayControl::alarmEnable ( in boolean  state)
raises (carma::util::UserException
)

Disables the control building alarm - no deadman functionality, ignores the alarm(true) command.

Parameters
stateenable=true, disable=false
See Also
alarm
void carma::control::SubarrayControl::antennaIFatten ( in double  power,
in short  ifNum,
in SeqShort  carmaAntNoSeq,
in boolean  invalidateTsys 
)
raises (carma::util::UserException
)

Sets the antenna output IFattenuation (PAM attenuation)

Parameters
attenattenuation in dB
ifNumIF number (1 or 2, 0=both) - also called polarization
carmaAntNoSeqSequence of carma antenna numbers. A sequence containing the single number zero is all antennas.
invalidateTsysOptionally invalidate tsys values.
void carma::control::SubarrayControl::antennaIFpower ( in double  power,
in SeqShort  carmaAntNoSeq 
)
raises (carma::util::UserException
)

Sets the antenna output IF power level (PAM power level)

Parameters
powerpower level in milliwatts
carmaAntNoSeqSequence of carma antenna numbers. A sequence containing the single number zero is all antennas.
void carma::control::SubarrayControl::antennaIFpresetPower ( in SeqShort  carmaAntNoSeq)
raises (carma::util::UserException
)

Sets the antenna output IF power level (PAM power level) to the preset value.

Parameters
carmaAntNoSeqSequence of carma antenna numbers. A sequence containing the single number zero is all antennas.
void carma::control::SubarrayControl::antennaInitialized ( in boolean  state,
in SeqShort  carmaAntNoSeq 
)
raises (carma::util::UserException
)

Set the antenna initialization flag.

Parameters
stateIf true, antenna is initialized, if false, initialization is needed.
carmaAntNoSeqSequence of carma antenna numbers. A sequence containing the single number zero is all antennas currently in the subarray.
void carma::control::SubarrayControl::antennaOffset ( in float  east,
in float  north,
in float  up,
in short  carmaAntNo 
)
raises (carma::util::UserException
)

Offset of the phase center for an antenna.

This is a static parameter that is factored out from the padOffset. For example, the height of the different antenna types is carried here. This is part of the baseline specification.

Parameters
eastoffset in millimeters
northoffset in millimeters
upoffset in millimeters
carmaAntNocarma antenna number
See Also
padOffset

defineState

void carma::control::SubarrayControl::aperturePointingConstants ( in Aperture  ap,
in float  az,
in float  el,
in float  sag,
in short  carmaAntNo 
)
raises (carma::util::UserException
)

Set aperture pointing constants.

These pointing constants are automatically used whenever the associated aperture is selected.

Parameters
apaperture associated with these pointing constants
az(actually cross-elevation) collimation offset in arcmin This offset is an arc on the great circle perpendicular to the nominal source position.
elelevation offset in arcminutes
sagelevation offset in arcminutes Applied as an increment to the request el of sag*cos(el)
carmaAntNocarma antenna number
void carma::control::SubarrayControl::appendScriptString ( in short  index,
in string  value 
)
raises (carma::util::UserException
)

Append to a script control string variable.

There are 20 script control variables with indices 1 to 20.

Parameters
indexindex, 1-20, a value of zero means all
valueinput string; will be silently truncated at 2000 chars
See Also
setScriptString, getScriptString, clearScriptAll
void carma::control::SubarrayControl::applyFlux ( in boolean  on)
raises (carma::util::UserException
)

Control pipeline processing for flux application to data.

When the flux is applied to the noise source it is always scaled by 100 so that the noise source is in percent correlation.

Parameters
onstate, true turns it on
void carma::control::SubarrayControl::applyFocus ( in boolean  on)
raises (carma::util::UserException
)

Control pipeline processing for focus distance correction to data.

Parameters
onstate, true turns it on
void carma::control::SubarrayControl::applyTsys ( in boolean  on)
raises (carma::util::UserException
)

Control pipeline processing for tsys application to data.

Tsys is not applied to integrations on the noise source.

Parameters
onstate, true turns it on
void carma::control::SubarrayControl::assertCorrelatorConfiguration ( )
raises (carma::util::UserException
)

Assert the astroband configuration to the correlator bands.

This method will be required for C3G operation.

void carma::control::SubarrayControl::assignLO ( in long  loRefNo)
raises (carma::util::UserException
)

Assigns a reference LO to this subarray.

Parameters
loRefNoreference LO number, 1-3
Exceptions
UserExceptionon illegal refLO number range error
void carma::control::SubarrayControl::astroBandOnline ( in short  astrobandNo,
in boolean  online 
)
raises (carma::util::UserException
)

Mark and astroband online or offline.

Parameters
bandNoBand number, starting at one.
onlineBoolean indicating whether the band is online or not.
void carma::control::SubarrayControl::axisNonintersection ( in float  offset,
in short  carmaAntNo 
)
raises (carma::util::UserException
)

Non-intersection of the azimuth and elevatin axes for an antenna.

This is a static attribute of an antenna and is part of the baseline specification.

Parameters
offsetaxis non-intersectino offset in millimeters
carmaAntNocarma antenna number

defineState

AzElSeq carma::control::SubarrayControl::azel ( in string  sourceName,
in double  minutes 
)
raises (carma::util::UserException
)

An array containing float values of the azimuth and elevation of the source at a specified time.

Parameters
sourceNameThe source name
minutesThe time in minutes from now at which to compute the azimuth and elevation (negative values allowed).
Returns
a sequence containing the az and el in degrees
Exceptions
UserExceptionif source is not in catalog or if requested time is outside Ephemeris range ~(Jan 2000-Jan 2050).
AntennaReady carma::control::SubarrayControl::bogus ( in float  numSeconds)
raises (carma::util::UserException
)

Internal development command - DO NOT USE.

void carma::control::SubarrayControl::cal ( in carma::antenna::common::CalibratorControl::Position  cal,
in SeqShort  carmaAntNoSeq 
)
raises (carma::util::UserException
)

Set calibrator position in antennas.

Parameters
calcalibration position
carmaAntNoSeqSequence of carma antenna numbers. A sequence of the single value zero means all subarray antennas.
void carma::control::SubarrayControl::calibrateSpectra ( in SeqShort  bandNoSeq,
in boolean  noiseEnabled,
in float  intTime,
in boolean  cache,
in boolean  enable 
)
raises (carma::util::UserException
)

Initiates the correlator hardware bandpass calibration routine, which measures a calibration spectrum and will complex-divide subsequent spectra by it (real-divide for autocorrelation spectra).

This method should be called twice, once with cache=True, enable=False then integrate for a few seconds to output the reference spectrum, then call again with cache=False, enable=True. No-op for COBRA hardware.

Parameters
bandNoSeqSequence of astroband numbers, starting at 1. A list consisting of a single zero means all bands.
intTimeIntegration time in seconds for the calibration. This value will be rounded to the nearest half-second (frame).
noiseEnabledWhether or not to enable the noise source. For instance, you would set this to false if doing bandpass calibration on an astronomical source.
cacheSet to true cache the result for subsequent division.
enableWhether or not to enable bandpass (spectral) calibration (can be used to toggle it on and off)
void carma::control::SubarrayControl::camera ( in carma::antenna::common::SwitchState  state,
in SeqShort  carmaAntNoSeq 
)
raises (carma::util::UserException
)

Turn the camera/flaps/cap for the optical telescope(s) on or off.

This instructs the drive system to use pointing offsets for the optical aperture and to use an optical refraction correction. On ovro antennas it turns the power to camera on/off and controls a lens cap. On bima antennas it controls a flap the to protect the telescope that is transparent to the infra-red so that bright stars can be seen during the daytime. The flap cannot be removed during the day.

Parameters
switchStateon or off
carmaAntNoSeqSequence of carma antenna numbers. A sequence of the single value zero means all subarray antennas.
void carma::control::SubarrayControl::cancel ( )
raises (carma::util::UserException
)

Cancels any procedure that is currently in progress.

Procedures include integration, waits, tilts, etc. If none are in progress it returns quietly.

See Also
integrate
boolean carma::control::SubarrayControl::checkConfig ( in boolean  quiet)
raises (carma::util::UserException
)

Check that the correlator configuration commands (freq and configAstroBand) are self consistent.

Returns true if they are, false if any band cannot be setup (e.g. LO2 out of range).

Parameters
quietif false, throws an exception if there is a configuration error with a message describing the error. If true, does not throw on errors.
See Also
freq, configAstroBand
void carma::control::SubarrayControl::clearAstroBand ( in short  astrobandNo)
raises (carma::util::UserException
)

Clear the astroBand configuration for the input astroband.

Parameters
bandNoBand number, starting at one, zero means all
void carma::control::SubarrayControl::clearScriptAll ( )
raises (carma::util::UserException
)

Clear all script control variables.

There are 4 different types of script control variables, each with 20 elements.

See Also
setScriptBool, getScriptBool
setScriptDouble, getScriptDouble
setScriptInt, getScriptInt
setScriptString, getScriptString
addScriptHistory, getScriptHistory
void carma::control::SubarrayControl::comment ( in string  obsComment)
raises (carma::util::UserException
)

Insert an observer comment into the data stream.

This will set the monitor point Control.SubarrayN.comment to the input string. The comment will end up timestamped in the MIRIAD history file. obsComment The comment string from the observer

void carma::control::SubarrayControl::configAstroBand ( in short  astrobandNo,
in string  astroBandConf,
in carma::util::CorrelatorBandWidthType  bandwidth,
in double  fcenter,
in SidebandType  sb,
in double  frest,
in double  imagefrest,
in boolean  online,
in string  transition,
in string  imageTransition,
in carma::util::CorrelatorBitType  bits 
)
raises (carma::util::UserException
)

Configures the correlator and sets up the 2nd LO.

Blocks (waits) for correlator configuration to be complete. The Doppler shifted frest will be placed in the center of the baseband (0.75GHz). To place the line elsewhere in the baseband, add an offset to frest. This command should be issued for each band. The sideband for the specified rest frequency, after the Doppler shift is applied, is chosen automatically using the 1st LO. The 2nd LO will vary with a Doppler component.
For reference: flo2 = S1*dopplerFactor*frest - S1*flo1 - S2*(0.75) where flo1: first LO freq flo2: second LO freq frest: rest frequency S1: LO1 sideband factor; USB=1, LSB=-1 S2: LO2 sideband factor; USB=1, LSB=-1

Parameters
bandNoBand number, starting at one; zero means all
astroBandConfAstroband configuration, one of "LL","RR","DUALPOL","CARMA23","FULLSTOKES"
bandWidthNew spectral bandwidth, one of:
  • CORR_BW_500MHZ
  • CORR_BW_250MHZ
  • CORR_BW_125MHZ
  • CORR_BW_62MHZ
  • CORR_BW_31MHZ
  • CORR_BW_8MHZ
  • CORR_BW_2MHZ
fcenterrest frequency to map to center of baseband (0.75GHz) and Doppler track
sbsideband of 2nd LO conversion to baseband (SB_LOWER/SB_UPPER/SB_AUTO) USB means IF freq greater than 2nd LO. AUTO will choose LSB if IF freq is < 3.0 GHz
frestrest frequency (GHz) for signal sideband to put in the miriad header to use as a reference in velocity labeling. A value of zero puts nothing in the header.
imagefrestrest frequency (GHz) for image sideband to put in the miriad header to use as a reference in velocity labeling. A value of zero puts nothing in the header.
onlineBoolean indicating whether the band is online or not.
transitionMolecular line transition associated with the rest frequency for the setup sideband.
imageTransitionMolecular line transition associated with the rest frequency for the image sideband.
blockDCpolThe polarization input selection for the block downconverter (ignore for wideband correlator)
bitsThe number of quantization bits for the correlator. This determines the correlator efficiency and number of channels. One of CORR_2BIT, CORR_3BIT, CORR_4BIT This parameter is ignored for COBRA bands which support only 2-bit operation.
Enumerationwhich indicates the correlator FPGA configuration mode: SINGLEPOL, FULLPOL, CARMA23
See Also
freq, checkConfig
PadOffsets carma::control::SubarrayControl::convertBaseline ( in double  x,
in double  y,
in double  z,
in short  carmaAntNo 
)
raises (carma::util::UserException
)

Convert MIRIAD topocentric antenna positions to pad offsets.

The purpose of this method is to conveniently use antenna positions solved for by MIRIAD to update the on-line antenna positions. It takes as input the MIRIAD's antenna positions (XYZ in nanoseconds) and returns East, North, Up offsets in meters from a given pad. The pad is determined by the antenna number of the antenna sitting on it. The ENU offsets may then be passed to the padOffset command to update the on-line antenna positions. Note the static antenna offsets (see antennaOffsets() have already been subtracted off of the returned pad offsets.

Parameters
Xcoordinate in NANOSECONDS
Ycoordinate in NANOSECONDS
Zcoordinate in NANOSECONDS
carmaAntNocarma antenna number
Returns
An array containing East, North, Up offsets in millimeters, the antenna number, and pad number (in that order).
See Also
carma::control::PadOffsets
void carma::control::SubarrayControl::delay ( in float  offset,
in short  carmaAntNo 
)
raises (carma::util::UserException
)

Set delay offset for 3mm rx path for a specific antenna.

Parameters
offsetin nanoseconds
carmaAntNocarma antenna number
See Also
delayDifference

defineState

void carma::control::SubarrayControl::delayDifference ( in float  diff,
in short  carmaAntNo,
in carma::antenna::common::RxControl::Type  rx,
in BlockDCPolarizationType  pol 
)
raises (carma::util::UserException
)

Set receiver delay difference for a specific antenna.

Difference is 1mm minus 3mm delay.

Parameters
diffdelay difference in nanoseconds
carmaAntNocarma antenna number
rxreceiver type
polThe polarization input selection for the receiver
See Also
delay
void carma::control::SubarrayControl::disableFaultSystemAlarms ( in SeqString  inMonitorPointNames)
raises (carma::util::UserException
)

Disable fault system alarms for the given monitor points.

Parameters
inMonitorPointNamessequence of monitor point names
void carma::control::SubarrayControl::doIVcurve ( in carma::antenna::common::RxControl::Type  rx,
in carma::antenna::common::RxControl::Pol_Type  pol,
in float  startVjInMv,
in float  stopVjInMv,
in float  stepVjInMv,
in unsigned short  deltaInMs,
in boolean  doTotalPower,
in SeqShort  carmaAntNoSeq 
)
raises (carma::util::UserException
)

Engineering: Initiate an IVcurve This routine does not block.

This procedure can take several minutes to complete during which time a user can use wait(WAIT_TUNED) to wait on an arbitrary number of antennas or a timeout value.

Parameters
rxreceiver type
polpolarization type for dual pol receivers.
startVjInMvStarting junction voltage in mV (or current in uA).
stopVjInMvEnding junction voltage in mV (or current in uA).
stepVjInMvVoltage step size in mV (or current in uA).
deltaInMsTime between samples in ms (round to nearest 100ms).
carmaAntNoSeqSequence of carma antenna numbers. A sequence of the single value zero means all subarray antennas.
See Also
getIVcurve
double carma::control::SubarrayControl::doppler ( in string  source)
raises (carma::util::UserException
)

Set source to use for doppler tracking.

Velocity and reference frame is gotten from the catalog.

Parameters
sourceThe source to use, or "none" to turn doppler tracking off. Source name is case-insensitive.
Exceptions
UserExceptionif the source does not exist.
Returns
the updated frequency.
void carma::control::SubarrayControl::elevLimit ( in float  limit)
raises (carma::util::UserException
)

Sets the elevation limit for source up/down calculation.

To use the horizon, pass in limit=0; The default elevation limit if this method is not called is 10 degrees.

Parameters
limitelevation limit in degrees
See Also
source, isUp, whenUp, whenDown, whazup, whazupOptical
void carma::control::SubarrayControl::enableCorrelation ( in SeqShort  bandNoSeq,
in boolean  correlationsEnabled 
)
raises (carma::util::UserException
)

Enable or disable correlations on the wideband correlator.

This is used to reduce heat load during high temperature events.

Parameters
bandNoSeqSequence of astroband numbers, starting at 1. A list consisting of a single zero means all bands. correlationsEnabled True to enable correlations, False to disable.
void carma::control::SubarrayControl::equatOffset ( in double  dra,
in double  ddec,
in SeqShort  carmaAntNoSeq,
in boolean  affectPhaseCenter,
in boolean  whileIntegrating 
)
raises (carma::util::UserException
)

Defines equatorial offsets in ra and dec from the input source.

Note that these are sky offsets, not coordinate offsets; to convert a Right Ascension coordinate offset to a sky offset, multiply by cos(dec+ddec). This command has no effect if the antennas are not in equatorial mode. (a warning message is logged in this case). These offsets are set to zero when a new track command is given.

Parameters
draRight Ascension offset, as a sky offset, not coordinate offset, arcmin
ddecDeclination offset, arcmin
carmaAntNoSeqSequence of carma antenna numbers. A sequence of the single value zero means all subarray antennas.
affectPhaseCenterWhether or not to change the phase center/subarray info
whileIntegratingAllow execution while integrating
See Also
track, phaseCenterOffset
Exceptions
UserExceptionif integration is in progress
void carma::control::SubarrayControl::flattenPhases ( in SeqShort  bandNoSeq)
raises (carma::util::UserException
)

Initiates the correlator hardware phase flattening routine.

The noise source will be turned ON. No-op for COBRA hardware.

Parameters
bandNoSeqSequence of astroband numbers, starting at 1. A list consisting of a single zero means all bands.
void carma::control::SubarrayControl::focusX ( in float  position,
in short  carmaAntNo 
)
raises (carma::util::UserException
)

Set x focus position.

Parameters
positionin millimeters - plus is toward increasing azimuth
carmaAntNocarma antenna number
void carma::control::SubarrayControl::focusY ( in float  position,
in short  carmaAntNo 
)
raises (carma::util::UserException
)

Set y focus position.

Parameters
positionin millimeters - plus is toward higher elevation
carmaAntNocarma antenna number
void carma::control::SubarrayControl::focusZ ( in float  position,
in short  carmaAntNo 
)
raises (carma::util::UserException
)

Set z focus position Suitable for system use, like subarray restoration.

Parameters
positionin millimeters - plus is away from the primary
carmaAntNocarma antenna number
See Also
focus
void carma::control::SubarrayControl::freq ( in double  frest,
in SidebandType  sb,
in double  fif,
in string  doppler,
in string  transition 
)
raises (carma::util::UserException,
carma::util::CancelException
)

The Doppler shifted frest will be mapped to the requested IF frequency.

After the initial setup, Doppler tracking will cause small changes in the IF frequency. For engineering work it is sometimes desirable to set LO1 directly; use frest=LO1, sb=USB or LSB, fif=0, doppler=None. For reference: flo1 = dopplerFactor*(frest - S1*fifIni/dopplerFactorIni) where flo1: first LO freq frest: rest frequency fifIni: IF frequency where rest frequency is initially mapped S1: LO1 sideband factor; USB=1, LSB=-1 dopplerFactorIni: Initial doppler factor used for fifIni This command implements the following sequence:

  • Sets LO reference synthesizer in control building
  • Sends LO freq to correlators
  • Sends LO freq to loberotators
  • Sends Yig and Gunn freq to antennas
  • Tells antennas to tune
  • Waits for antennas to tune (BIMA ants leave amb load in)
  • If quick mode, exits right here, with BIMA amb loads in
  • Puts in ambient load
  • Sets antenna IF power level (PAM)
  • Sets downconverter power to preset level
  • Removes ambient load
Parameters
frestRest frequency in GHz
sb1st LO sideband (SB_LOWER/SB_UPPER), upper is fsky > flo
fifIF frequency in GHz where Doppler shifted frest will be placed when command is issued. The if frequency will change by small amounts as the radial velocity changes with time. fif always greater than zero.
dopplerDoppler tracking source; velocity and reference frame will be gotten from catalog for source with this name
transitionName of the molecular line transition used to obtain the rest frequency
See Also
configAstroBand, checkConfig
void carma::control::SubarrayControl::fringeTracking ( in boolean  on)
raises (carma::util::UserException
)

Engineering: Control fringe tracking in the loberotator Fringe tracking stops the fringes and is the normal mode for collecting astronomy data.

If fringe tracking is off, the data will contain the natural fringe rate. This is a debugging commands that should not be memorized as part of the system state.

Parameters
onstate, if true turns on fringe tracking
AntennaAssignmentSeq carma::control::SubarrayControl::getAntennaAssignments ( )
raises (carma::util::UserException
)

Returns the present antenna assignments for the subarray.

Returns
Sequence of antenna assignment structures.
Exceptions
UserExceptionon internal errors
SeqShort carma::control::SubarrayControl::getAstroBandsForConfiguration ( in string  confName)
raises (carma::util::UserException
)

Return a vector of astroband numbers for which a mapping is specified by the named configuration.

SeqShort carma::control::SubarrayControl::getCorrelatorBandNoSeq ( in SeqShort  astroBandNoSeq,
in boolean  includeOfflineBands 
)
raises (carma::util::UserException
)
Returns
a sequence of CorrelatorBand numbers associated with a given astroband.
Parameters
astroBandNoSeqList of astroband numbers
includeOfflineBandsBoolean to indicate whether correlator bands that have been marked offline should be included in the return list. True means include offline bands.
boolean carma::control::SubarrayControl::getInitializationFlag ( )
raises (carma::util::UserException
)

Get state of subarray control initialization flag.

Returns
state of initialization flag
carma::antenna::common::IVCurve carma::control::SubarrayControl::getIVcurve ( in short  carmaAntNo)
raises (carma::util::UserException
)

Engineering: Retrieve results of most recent IV curve on an antenna.

Parameters
carmaAntNoCarma antenna number, zero not allowed.
Returns
IVcurve structure with IV curve data
NearestInfoSeq carma::control::SubarrayControl::getNearest ( in string  source,
in float  elMin,
in float  elMax,
in SeqString  sourceList,
in NearestActionType  action,
in short  numReturn,
in boolean  ignoreNorthSouth,
in string  coordSys,
in boolean  optical,
in float  fluxLimit,
in float  frequency 
)
raises (carma::util::UserException
)

Search for nearby neighbors of input source, filtering by various criteria and sorted by distance from target.

This is useful for, e.g., finding nearby calibrators, optical/radio pointing sources.

Parameters
source- The target source for which to find neighbors A name of 'SUBARRAY' (case insensitive) will try to use the ra/dec of the current phase center for the subarray. If the subarray source name is 'NONE' or invalid then Polaris will be used.
elMin- minimum elevation filter, degrees
elMax- maximum elevation filter, degrees
sourceList- a list of source names to exclude or include in the search, case insensitive. If you don't want to include the targe source, put its name here and choose EXCLUDE for action.
action- either INCLUDE or EXCLUDE the sourceList.
numReturn- the number of neighbor sources to return
ignoreNorthSouth- If false, then check that the target soruce and neighbor source declinations are not on opposite sides of the telescope latitude AND that the sources are not close to transit. This will filter out sources that would cause a change in azimuth wrap.
coordsys- one of "azel" or "radec". "azel" means compute the distance using the closest in true slewing distance, so for instance a large azimuth slew for high elevation sources would be avoided. "radec" means compute the spherical geometric distance.
optical- if true use optical sources, if false use radio sources
fluxLimit- lowest flux (or faintest magnitude in the case of optical sources) to include in the return list.
frequency- For radio sources, use this frequency to lookup a recent flux measurement. Units are GHz. Anything matching frequency+/-55GHz is deemed acceptable – keeping the measurement in the respective waveband. The lookback time is 100 days. This parameter is ignored for optical sources.
See Also
queryFlux
Returns
A list of one or more sources close on the sky to the input source, also matching an additional criteria specified. The return list is sorted in ascending order of distance in degrees from the target source.
See Also
NearestInfo
RaDecSeq carma::control::SubarrayControl::getRaDec ( in string  sourceName)
raises (carma::util::UserException
)

Retrieves source info from catalog and returns RA & DEC as doubles.

Parameters
sourceNamesource name
Returns
a sequence of two doubles containing the RA & DEC in degrees
  • ra/dec, current lst, elevation
  • rise/set time using elevLimit (LST & Local time)
Exceptions
UserExceptionif source is not in catalog
boolean carma::control::SubarrayControl::getScriptBool ( in short  index)
raises (carma::util::UserException
)

Get a script control boolean variable.

There are 20 script control variables with indices 1 to 20. index index, 1-20

See Also
setScriptBool, clearScriptAll
double carma::control::SubarrayControl::getScriptDouble ( in short  index)
raises (carma::util::UserException
)

Get a script control double variable.

There are 20 script control variables with indices 1 to 20. index index, 1-20

See Also
setScriptDouble, clearScriptAll
string carma::control::SubarrayControl::getScriptHistory ( )
raises (carma::util::UserException
)

Retrieve all messages from the script history.

boolean carma::control::SubarrayControl::getScriptHistoryFull ( )
raises (carma::util::UserException
)

Query whether the script history is full.

long carma::control::SubarrayControl::getScriptInt ( in short  index)
raises (carma::util::UserException
)

Get a script control integer variable.

There are 20 script control variables with indices 1 to 20. index index, 1-20

See Also
setScriptInt, clearScriptAll
string carma::control::SubarrayControl::getScriptName ( )
raises (carma::util::UserException
)

Get the script name from the monitor system.

Returns
fully-qualified name
See Also
setScriptName
ScriptStateType carma::control::SubarrayControl::getScriptState ( )
raises (carma::util::UserException
)

Get the script state from the monitor system.

See Also
setScriptName, setScriptState
string carma::control::SubarrayControl::getScriptString ( in short  index)
raises (carma::util::UserException
)

Get a script control string variable.

There are 20 script control variables with indices 1 to 20. index index, 1-20

See Also
setScriptString, clearScriptAll
string carma::control::SubarrayControl::getSubarrayName ( )
raises (carma::util::UserException
)

Get the subarray name for this subarrayControl.

long carma::control::SubarrayControl::getSubarrayNo ( )
raises (carma::util::UserException
)

Get the subarray number of this subarrayControl.

SeqDouble carma::control::SubarrayControl::harmonics ( in double  freq)
raises (carma::util::UserException
)

Returns sequence possible harmonics, as pairs refLO and Xband freqs.

The refLO is the first of the pair, and both are in GHz.

Parameters
freqFirst LO freq in GHz
void carma::control::SubarrayControl::ifoutLevel ( in double  level)
raises (carma::util::UserException
)

Set if output power level to specified level for all downconverters.

Parameters
levelin dBm
Exceptions
UserExceptionon communication error to distributed components
void carma::control::SubarrayControl::ifoutPreset ( )
raises (carma::util::UserException
)

Set input power level to specified level for one downconverter This method and its implementation demonstrate how to handle access to single can modules through a master.

It is not clear that we want to implement this in all possible cases as direct python access may be adequate if this proves to be a debugging exercise rather than an operational requirement.

Parameters
levelin dBm
inputNoinput number starting at one
bandNoband number starting at one
Exceptions
UserExceptionif parameters are out of range void psysLevelSingle(in double level, in short inputNo, in short bandNo) raises(carma::util::UserException); Set IF output power level to preset level for all downconverters.
UserExceptionon communication error to distributed components
void carma::control::SubarrayControl::ij ( in carma::antenna::common::RxControl::Pol_Type  pol,
in float  ij,
in short  carmaAntNo 
)
raises (carma::util::UserException
)

Engineering command: backdoor for the ovro receivers.

Parameters
polReceiver polarization type.
ijjunction current
carmaAntNocarma antenna number
Returns
none
string carma::control::SubarrayControl::info ( in string  sourceName)
raises (carma::util::UserException
)

Retrieves source info from catalog and returns as a string.

Parameters
sourceNamesource name
See Also
elevLimit
Returns
source parameters, including:
  • ra/dec, current lst, elevation
  • rise/set time using elevLimit (LST & Local time)
Exceptions
UserExceptionif source is not in catalog
void carma::control::SubarrayControl::integrate ( in double  intTime,
in long  numInts,
in double  gap,
in boolean  science 
)
raises (carma::util::UserException
)

Starts up an integration as soon as possible This version is no frills, just gets pipeline going.

Parameters
intTimeintegration time in seconds; this will be rounded to the nearest number of half-second frames and must be more than 2 seconds (system load issues).
numIntsnumber of continuous integrations
gapThe size of the gap between records (seconds). Used for OTF mosaicking. A value of zero (or < 0.001) gives contiguous integrations.
scienceWhen true the data are recorded in the visbrick. When false data are not recorded in the visbrick, but self-cal solutions are produced; use this for control system functions such as pointing, focus, etc.
See Also
cancel
Exceptions
UserExceptionif subarray has not been initialized
See Also
setInitializationFlag
boolean carma::control::SubarrayControl::isCommissioning ( in string  project)
raises (carma::util::UserException
)

Return true if project code is "ctNNN" with ( 0 < NNN < 014 ) OR is a summer school project with csNNN (NNN > 0 ) OR is one of the special projects codes that have default intent.

See Also
http://cedarflat.mmarray.org/statistics/test_projects.txt
boolean carma::control::SubarrayControl::isShadowedNow ( in short  carmaAntennaNo,
in ShadowingType  type,
in double  diameterFraction 
)
raises (carma::util::UserException
)

EML: Adding shadowing calculators for various methods of querying.

boolean carma::control::SubarrayControl::isUp ( in string  sourceName)
raises (carma::util::UserException
)

Checks whether source is up above the current elevation limit.

Parameters
sourceNamesource name
Returns
true if source is currently up, false otherwise
See Also
elevLimit
Exceptions
UserExceptionif source is not in catalog
void carma::control::SubarrayControl::jyperk ( in float  gain,
in short  carmaAntNo 
)
raises (carma::util::UserException
)

Engineering command: Set the gain factor for the given antenna.

Note: This command should be deprecated once we have a good measurement of the gain.

Parameters
gainGain in Jy/K, must be greater than 0. For reference, a perfect 10.4m antenna has 32.5 Jy/K.
carmaAntNocarma antenna number
Returns
none

defineState

double carma::control::SubarrayControl::lineFreq ( in string  line)
raises (carma::util::UserException
)

Gets the frequency for a given molecular line transition.

The line must be in the carma line catalog; if not, an exception is thrown. The catalog is in CARMA/conf/catalogs/SpectralLine.cat and has aliases for commonly used lines that this code uses.

Parameters
linespectral line transition name alias, case insensitive examples "CO", "12CO", "12CO(1-0)", "HCN", "C18O(1-0)"
Returns
line frequency in GHz
See Also
void carma::control::SubarrayControl::log ( in string  entry)
raises (carma::util::UserException
)

Insert an entry into the control log at INFO level.

entry The log string

void carma::control::SubarrayControl::logError ( in string  entry)
raises (carma::util::UserException
)

Insert an entry into the control log at ERROR level.

entry The log string

void carma::control::SubarrayControl::lrPhase ( in float  phaseOffset,
in short  carmaAntNo 
)
raises (carma::util::UserException
)

Engineering: Control phase offsets in the loberotator.

Parameters
phaseOffsetphase offset in degrees
carmaAntNocarma antenna number
void carma::control::SubarrayControl::lrPhaseOffsetMode ( in boolean  on)
raises (carma::util::UserException
)

Engineering: Control phase offsets in the loberotator The rates and phases are continuous in absolute time These are debugging commands that should not be memorized as part of the system state.

Parameters
onstate, if true turns on phase offsets
void carma::control::SubarrayControl::lrRate ( in float  phaseRate,
in short  carmaAntNo 
)
raises (carma::util::UserException
)

Engineering: Control phase offsets in the loberotator.

Parameters
rateoffset rate, in Hz
carmaAntNocarma antenna number
double carma::control::SubarrayControl::lst ( )
raises (carma::util::UserException
)
Returns
the current local sidereal time in decimal hours
string carma::control::SubarrayControl::lstString ( )
raises (carma::util::UserException
)
Returns
the current lst as a sexagesimal string
double carma::control::SubarrayControl::mjd ( in double  seconds)
raises (carma::util::UserException
)
Returns
the current Modified Julian Day plus the number of seconds passed in. Return value is in decimal days,
Parameters
secondsNumber of seconds to add from the current MJD.
void carma::control::SubarrayControl::noiseAtten ( in unsigned short  atten)
raises (carma::util::UserException
)

Control the attenuation of the noise source.

Parameters
attenattenuation in dB (integer)

defineState

void carma::control::SubarrayControl::noisePreset ( )
raises (carma::util::UserException
)

Set noise source output power level to the preset value stored in the module's EEPROM.

void carma::control::SubarrayControl::noiseSource ( in boolean  state,
in boolean  isReference 
)
raises (carma::util::UserException
)

Control the state of the noise source.

Parameters
statetrue equals on, false equals off
isReferenceIf true, a reference spectrum is being measured for passband calibration, and the source name will be changed to "NOISEREF". If false, source name will be changed to "NOISE".
void carma::control::SubarrayControl::obsblock ( in string  obsblock)
raises (carma::util::UserException
)

Sets the observing block string.

Note that the dot character is not allowed in observing block strings, since it is the field separator for the full obsblock ID string.

Parameters
obsblock- observing block string identifier, may be alphanumeric.
void carma::control::SubarrayControl::optimizeThresholds ( in SeqShort  bandNoSeq)
raises (carma::util::UserException
)

Initiates the correlator hardware threshold optimization routine.

The noise source will be turned ON. No-op for COBRA hardware.

Parameters
bandNoSeqSequence of astroband numbers, starting at 1. A list consisting of a single zero means all bands.
void carma::control::SubarrayControl::pad ( in short  padNo,
in short  carmaAntNo 
)
raises (carma::util::UserException
)

Specify pad on which an antenna resides.

Parameters
padNopad number starting at one
carmaAntNocarma antenna number
Exceptions
UserExceptionif parameters are out of range or if an error occurs in sending info to distributed components

defineState

void carma::control::SubarrayControl::padOffset ( in float  east,
in float  north,
in float  up,
in short  carmaAntNo 
)
raises (carma::util::UserException
)

Specify offset from pad nominal position for an antenna.

This offset is the result of a baseline solution. Suitable for system use, like subarray restoration.

Parameters
eastoffset in millimeters Shortname:Easterly
northoffset in millimeters
upoffset in millimeters
carmaAntNocarma antenna number Shortname:TheCarmaAntennaNo
See Also
padOffset

CodeGeneration:defineState

void carma::control::SubarrayControl::passiveLO ( in double  freq)
raises (carma::util::UserException
)

Sets the antenna LOs for the Engineering#2 subarray.

This is an internal command sent by the Engineering#1 subarray when its LO is changed. The Eng2 subarray shares the same LO, so it must be told about it.

Parameters
freqin GHz
void carma::control::SubarrayControl::phaseCenterOffset ( in double  dra,
in double  ddec 
)
raises (carma::util::UserException
)

Defines equatorial offset from the source for the subarray phase center.

There is one phase center per subarray. This command does not change antenna tracking; it modifies the phase center used by the delay engine to calculate delays. This command has no effect if the antennas are not in equatorial mode. (a warning message is logged in this case). These offsets are set to zero when a new track command is given. Note that these are sky offsets, not coordinate offsets; to convert a Right Ascension coordinate offset to a sky offset, multiply by cos(dec).

Parameters
draRight Ascension offset, as a sky offset, not coordinate offset, arcmin
ddecDeclination offset, arcmin
See Also
track, equatOffset
Exceptions
UserExceptionif integration is in progress
void carma::control::SubarrayControl::phaseOffset ( in float  phase,
in short  bandNo,
in short  antenna1No,
in short  antenna2No 
)
raises (carma::util::UserException
)

Set phase offset in pipeline for a single band/baseline, or many.

Parameters
phaseOffsetdegrees
bandNoband number, starting at one, zero means all
antenna1No,antennanumber, starting at one, zero means all
antenna2No,antennanumber, starting at one, zero means all
Returns
void carma::control::SubarrayControl::phaseSwitching ( in boolean  on,
in short  chanNo 
)
raises (carma::util::UserException
)

Engineering: Control phase switching in the loberotator This is a debugging commands that should not be memorized as part of the system state.

Parameters
onstate, if true turns on phase switching
chanNochannel number, starting at one, zero is all
void carma::control::SubarrayControl::pointStatus ( in PointStatusType  status,
in SeqShort  carmaAntNoSeq 
)
raises (carma::util::UserException
)

Set the ON/OFF indicator for singledish observations.

This flag may also be useful for interferometric mode, but not required.

Parameters
statusON_SOURCE or OFF_SOURCE
carmaAntNoSeqSequence of carma antenna numbers. A sequence of the single value zero means all subarray antennas.
void carma::control::SubarrayControl::polarization ( in carma::antenna::common::PolarizationControl::State  polState,
in SeqShort  carmaAntNoSeq 
)
raises (carma::util::UserException
)

Set polarization state.

Parameters
polState- polarization state, e.g. RIGHT_CIRC, HORIZONTAL
carmaAntNoSeqSequence of carma antenna numbers. A sequence of the single value zero means all subarray antennas.
void carma::control::SubarrayControl::project ( in string  project)
raises (carma::util::UserException
)

Sets the project name.

Note that the dot character is not allowed in project names, since it is the field separator for the full obsblock ID string.

Parameters
project- project name
void carma::control::SubarrayControl::psysLevel ( in double  level)
raises (carma::util::UserException
)

Set input power level to specified level for all downconverters.

Parameters
levelin dBm
void carma::control::SubarrayControl::psysPreset ( in SeqShort  carmaAntNoSeq,
in short  astroBandNo 
)
raises (carma::util::UserException
)

Set input power level to preset level for all downconverters.

Parameters
carmaAntNoSeqSequence of carma antenna numbers. A sequence containing the single number zero is all antennas.
astroBandNoband number, zero means all
Exceptions
UserExceptionif carmaAntNoSeq or astroBandNo are out of range
void carma::control::SubarrayControl::qfreq ( in double  frest,
in SidebandType  sb,
in double  fif,
in string  doppler,
in string  transition 
)
raises (carma::util::UserException
)

Like freq, except it doesn't wait for the rx to tune, and hence doesn't set power levels.

See Also
freq.
void carma::control::SubarrayControl::quadmodAtten ( in unsigned short  atten)
raises (carma::util::UserException
)

Control the attenuation of the quadmods.

Parameters
attenattenuation in dB (integer)
string carma::control::SubarrayControl::query ( in string  monitorName)
raises (carma::util::UserException,
MonitorPointNotFoundException
)

Query the monitor system and return info.

This method functions similarly to dumpMonitor. Values will have a "g" or "b" appended to them indicating valid or invalid data, respectively. In general, this method should not be used to query an individual string or enumeration monitor point; queryString should be used for that purpose.

If the locally stored monitor data is more than 1 second old, the read will be made to the master monitor system.

Parameters
monitorNameA monitor point or container in the monitor system The name is a case-insensitive full hierarchical name, e.g. ovro4.az.actual A prefix of carma or raw can be used to distinguish between the two different monitor systems, defaulting to carma.
Returns
a string representing the requested data; a single monitor point or a hierarchy of monitor points; any numeric monitor point values are average values. @ throws MonitorPointNotFoundException if Monitor Component does not exist
boolean carma::control::SubarrayControl::queryBool ( in string  monitorPointName)
raises (carma::util::UserException,
InvalidMonitorDataException,
MonitorPointNotFoundException
)

Query the monitor system and return current average value of a boolean MP.

If the locally stored monitor data is more than 1 second old, the read will be made to the master monitor system.

Parameters
monitorPointNameA complex monitor point name
See Also
query()
Exceptions
UserExceptionif monitor point is not a MonitorPointBool.
MonitorPointNotFoundExceptionif MP is not found
InvalidMonitorDataExceptionif MP data is invalid
SeqFloat carma::control::SubarrayControl::queryComplex ( in string  monitorPointName)
raises (carma::util::UserException,
InvalidMonitorDataException,
MonitorPointNotFoundException
)

Query the monitor system and return current average value of a complex MP.

If the locally stored monitor data is more than 1 second old, the read will be made to the master monitor system.

Parameters
monitorPointNameA complex monitor point name
See Also
query()
Exceptions
UserExceptionif monitor point is not a MonitorPointComplex.
MonitorPointNotFoundExceptionif MP is not found
InvalidMonitorDataExceptionif MP data is invalid
double carma::control::SubarrayControl::queryDouble ( in string  monitorPointName)
raises (carma::util::UserException,
InvalidMonitorDataException,
MonitorPointNotFoundException
)

Query the monitor system and return current average value of a numeric MP.

If the locally stored monitor data is more than 1 second old, the read will be made to the master monitor system.

Parameters
monitorPointNameA monitor point name
See Also
query()
Exceptions
UserExceptionif monitor point is not a double or float.
MonitorPointNotFoundExceptionif MP is not found
InvalidMonitorDataExceptionif MP data is invalid
FluxMeasurement carma::control::SubarrayControl::queryFlux ( in string  source,
in float  freq,
in float  deltaFreq,
in float  deltaTime 
)
raises (carma::util::UserException
)

Get the most recent measurement of radio flux of a source.

The method will search in conf/catalogs/FluxSource.cat for the named source. Windows in both frequency and time and time are allowed, and the closest match in frequency-time phase space is returned.

Parameters
sourceSource name, case insensitive
freqfiducial frequency, GHz
deltaFreqhalf-width in frequency to search for matches, in GHz. Frequency searched will be freq +/- deltafreq. Zero means match any frequency.
deltaTimewidth in time to search for matches, in days before 'now'. Zero means match any time.
Returns
A structure containing the details of the flux measurement:
[name, flux, frequency, days since measurement, date of measurement].
See Also
FluxMeasurement
This method will throw an exception if there is no match.
long carma::control::SubarrayControl::queryInt ( in string  monitorPointName)
raises (carma::util::UserException,
InvalidMonitorDataException,
MonitorPointNotFoundException
)

Query the monitor system and return current average value.

If the locally stored monitor data is more than 1 second old, the read will be made to the master monitor system.

Parameters
monitorPointNameA monitor point name
See Also
query()
Exceptions
UserExceptionif monitor point is not a bool, char, byte, short, or int.
MonitorPointNotFoundExceptionif MP is not found
InvalidMonitorDataExceptionif MP data is invalid
float carma::control::SubarrayControl::queryMag ( in string  starName)
raises (carma::util::UserException
)

Lookup a star in conf/catalogs/BrightStars.cat and return its magnitude.

Parameters
starNameThe star name. The match is case-insensitive.
Returns
the V magnitude of the named star.
This method will throw an exception with error message "Could not find matching entry [starName]" if the star name is not in BrightStars.cat
SeqMonitorPointValue carma::control::SubarrayControl::queryMonitorPoint ( in SeqString  monitorComponent)
raises (carma::util::UserException
)

Gets values and validity for a sequence of monitor points.

Parameters
monitorComponenta sequence of string names of monitor points or monitor containers. If it is a container, it will be expanded to all of the monitor points directly contained. The final sequence of returned values are structures of monitor points, including values, types, validities, and whether the input name could be found. If a name is not found it is included with a default value and marked as not found.
string carma::control::SubarrayControl::queryString ( in string  monitorPointName)
raises (carma::util::UserException,
InvalidMonitorDataException,
MonitorPointNotFoundException
)

Query the monitor system and return current value of a string or enumeration monitor point.

If the type is enumeration, then its string representation is returned. If the locally stored monitor data is more than 1 second old, the read will be made to the master monitor system.

Parameters
monitorPointNameA monitor point name
See Also
query()
Exceptions
UserExceptionif monitor point is not a double or float.
MonitorPointNotFoundExceptionif MP is not found
InvalidMonitorDataExceptionif MP data is invalid
void carma::control::SubarrayControl::radioAperture ( in boolean  useRadio,
in SeqShort  carmaAntNoSeq 
)
raises (carma::util::UserException
)

Select aperture.

This is normally done by freq or by turning on/off the optical cameras. But for some special experiments finer control is required. Use with caution. This selects pointing constants associated with the requested aperture. Does not change any optics, just pointing.

Parameters
useRadioif true then use radio model for current rx/freq
carmaAntNoSeqSequence of carma antenna numbers. A sequence of the single value zero means all subarray antennas.
void carma::control::SubarrayControl::reconnect ( in boolean  force)
raises (carma::util::UserException
)

Attempt to reconnect DOs that have lost their connections.

Parameters
forcetrue will force all DOs to be reconnected instead of only ones that have lost their connection.
void carma::control::SubarrayControl::recordPoint ( in short  carmaAntNo)
raises (carma::util::UserException
)

Record optical pointing datapoint for requested antenna.

Parameters
carmaAntNocarma antenna number
void carma::control::SubarrayControl::refAtten ( in unsigned short  atten,
in short  carmaAntNo 
)
raises (carma::util::UserException
)

Sets reference LO attenuation in the antenna.

Parameters
attenreference LO attenuation, [0-31] dB
carmaAntNocarma antenna number
void carma::control::SubarrayControl::refreq ( in SeqShort  carmaAntNoSeq,
in boolean  retune 
)
raises (carma::util::UserException
)

Relooks the oscillator in an antenna, and optionally retunes the receiver.

This can sometimes recover a dropped lock. Retuning can take up to two minutes on the 6m antennas.

Parameters
carmaAntNoSeqSequence of carma antenna numbers. A sequence containing the single number zero is all antennas.
retunea boolean that controls whether the receiver is retuned
See Also
freq
RemoveAntennaResult carma::control::SubarrayControl::removeAntenna ( in SeqShort  carmaAntNoSeq,
in boolean  skipAntsNotOwnedByMe 
)
raises (carma::util::UserException
)

Removes antennas from this subarray and puts them in the maintenance subarray.

Parameters
carmaAntNoSeqSequence of carma antenna numbers. A sequence of the single value zero means all subarray antennas.
skipAntsNotOwnedByMeWhether to skip or throw an exception for ant in carmaAntNoSeq that are not owned by this subarray
Returns
RemoveAntennaResult structure detailing what happened.
Exceptions
UserExceptionon illegal carmaAntNo
void carma::control::SubarrayControl::removeCorrelator ( in unsigned long  type)
raises (carma::util::UserException
)

Remove a correlator from control by this subarray controller.

void carma::control::SubarrayControl::resetProjectAndObsblock ( )
raises (carma::util::UserException
)

Reset the project, obsblock, sub-obsblock, and observing constraints their default values.

void carma::control::SubarrayControl::resetTimeSinceLastIntegration ( )
raises (carma::util::UserException
)

Resets the 'time since last integration' timer in the pipeline.

This is effectively a dummy integration that can be inserted into optical pointing, tilts, etc

void carma::control::SubarrayControl::restorationInProgress ( in boolean  restoring)
raises (carma::util::UserException
)

Tell the control system that a state restoration is in progress.

This command is used to distinguish between setting new system parameters and restoring old ones from saved state. This is necessary as the commands make no distinction between restoring old values and setting new ones. Note this must be called after restoration is complete.

Parameters
restoringTrue if restoration is in progress, false otherwise.
void carma::control::SubarrayControl::restoreControlSubsystemFromFile ( in string  filename)
raises (carma::util::UserException
)

Restore ControlSubsystem state from specified persistent file.

Use the specified file to restore the state of the ControlSubsystem. Keep in mind that this routine does not restore the state of the subarray itself, but rather just the state of the control subsystem reflected in the file. The onus of state restoration is passed on to client code (probably python) using the restored state of the monitor control points.

Parameters
filenameName of file to restore state from.
Exceptions
UserExceptionon IO error.
See Also
saveControlSubsystemState
void carma::control::SubarrayControl::restoreFaultSystemAlarms ( in SeqString  inMonitorPointNames)
raises (carma::util::UserException
)

Restore fault system alarms to their default enable states for the given monitor points.

Parameters
inMonitorPointNamessequence of monitor point names
void carma::control::SubarrayControl::rfPower ( in boolean  state)
raises (carma::util::UserException
)

Turn rf power on/off for all downconverters.

Turning off the rf power makes all fringes go away (except the noise source), so use this with extreme caution.

Parameters
statetrue=on, false=off
Exceptions
UserExceptionon communication error to distributed components
void carma::control::SubarrayControl::saveControlSubsystemState ( in string  filename)
raises (carma::util::UserException
)

Save current ControlSubsystem state to a persistent file.

Save the current state of the control subsystem to the specified file. This file can later be used to restore the state of the ControlSubsystem.

Parameters
filenameName of file to save state to.
Exceptions
UserExceptionon IO error.
See Also
restoreControlSubsystemFromFile
void carma::control::SubarrayControl::sbratio ( in float  ratio,
in SeqShort  carmaAntNoSeq 
)
raises (carma::util::UserException
)

Set the sideband gain ratio for a given antenna and band.

The ratio is defined as (USB/LSB), and does not include the atmosphere.

Parameters
ratioThe ratio for this band and antenna
carmaAntNoSeqSequence of carma antenna numbers. A sequence of the single value zero means all subarray antennas.

defineState

void carma::control::SubarrayControl::setAllObsblocks ( in string  project1,
in string  obsblock1,
in string  subObsblock1,
in long  trial1,
in string  project2,
in string  obsblock2,
in string  subObsblock2,
in long  trial2 
)
raises (carma::util::UserException
)

Sets the full obsblock name atomically.

Parameters
project1- project name
obsblock1- obsblock name
subObsblock1- subObsblock name
trial1- trial number
project2- project name
obsblock2- obsblock name
subObsblock2- subObsblock name
trial2- trial number
void carma::control::SubarrayControl::setAntPosFilename ( in string  filename)
raises (carma::util::UserException
)

Set antpos filename.

The antpos filename is used to indicated which file was last used to for system baseline solutions.

Parameters
filenameAntpos filename.
See Also
convertBaseline
void carma::control::SubarrayControl::setConfigName ( in string  name)
raises (carma::util::UserException
)

Sets the array configuration name.

Parameters
name- array configuration name
void carma::control::SubarrayControl::setConstraints ( in ImagingType  imgType,
in short  minAnts,
in float  calMaxTime,
in float  calMaxRms,
in float  maxTsys,
in float  maxRmsPathLength,
in float  maxTau,
in float  maxDecor,
in float  requiredRms 
)
raises (carma::util::UserException
)

Defines the observing constraints that must be met for this obsblock to be observed.

The defaults are meant to be extremes such that any observation will meet the default criteria. As a recommended practice, users should override these defaults with values specific to their science target. Inputs:

Parameters
imgTypeImaging type. IMG means maximize imaging fidelity, SNR means maximize signal-to-noise.
minAntsMinimum number of antennas
calMaxTimeMaximum time in minutes per calibrator-source cycle to spend integrating on the calibrator
calMaxTimeMaximum rms noise in Jansky per calibrator-source cycle to obtain for the calibrator. This will correspond to a minimum integration time, based on the system temperature at the time of the observation.
maxTsysmaximum system temperature allowed for the observation to proceed.
maxRmsPathMaximum rms atmospheric path length in microns allowed for the observation to proceed. This will be compared against the output of the phase monitor. Too small a value may greatly reduce the likelihood of the obsblock being observed.
maxTauMaximum 225 GHz opacity allowed for the observation to proceed. This will be compared against the output of the opacity monitor (aka tipper), or if the tipper is unavailable to computed tau225 from the weather station. Too small a value may greatly reduce the likelihood of the obsblock being observed.
maxDecorMaximum signal decorrelation desired for this observation. This is measured by taking the ratio of the scalar average to the vector average of the gain calibrator visibilities. A value of 0 means no decorrelation, a value of 1 means complete decorrelation. Too small a value may greatly reduce the likelihood of the obsblock being observed.
requiredRmsDesired rms noise in Jansky on the science target.
void carma::control::SubarrayControl::setDecimationMode ( in DecimationMode  mode,
in unsigned short  astrobandNo 
)
raises (carma::util::UserException
)

Control pipeline processing mode for decimation and end channels.

A spectrum with 65 channels, based on 129 lags, would have the following number of channels:

  • DECIMATION_ON 32
  • DECIMATION_OFF_KEEP_END_CHANS 65
  • DECIMATION_OFF_DROP_END_CHANS 63
Parameters
modedecimation mode
astrobandNoastroband number, one is first, zero is all in the subarray.
void carma::control::SubarrayControl::setDefaultConstraints ( )
raises (carma::util::UserException
)

Use the default obsblock observing constraints.

void carma::control::SubarrayControl::setFaultSystemAlarmEnableState ( in boolean  inStateIsOn)
raises (carma::util::UserException
)

Set the fault system alarm enable state.

Parameters
inStateIsOnstate to set
void carma::control::SubarrayControl::setFaultSystemDriveErrorPreference ( in carma::fault::EffectPreference  inPref)
raises (carma::util::UserException
)

Set the drive blanking state in the fault system.

Parameters
inStateIsOnstate to set
void carma::control::SubarrayControl::setInitializationFlag ( in boolean  state)
raises (carma::util::UserException
)

Set state of subarray control initialization flag.

Parameters
stateIf state if true, the subarray is initialized
void carma::control::SubarrayControl::setIntent ( in string  sourceName,
in string  purpose,
in boolean  selfcal,
in boolean  fastSwitch 
)
raises (carma::util::UserException
)

Define the intent/style of the source observations.

Parameters
sourceName- The source in question
purpose- String indicating purpose of the observation. Choices are:
B   -   Bandpass calibration
F   -   Flux calibration
G   -   Gain (phase and/or amp) calibration
P   -   Polarization calibration
S   -   Science target
O   -   Other
For multi-purpose source, you may concatenate the characters, e.g. BFP. If unset, this defaults to O (other).
void carma::control::SubarrayControl::setMonitorPointInvalid ( in string  name)
raises (carma::util::UserException
)

Set a control subsystem monitor point invalid.

Useful for testing.

Parameters
nameHierarchical control monitor point name, without the leading 'Control.', case insensitive.
void carma::control::SubarrayControl::setMonitorPointReal ( in string  name,
in double  value 
)
raises (carma::util::UserException
)

Set value of a control subsystem monitor point (double/float only).

Useful for debugging or fixing broken state.

Parameters
nameHierarchical control monitor point name, without the leading 'Control.', case insensitive, for a double or float monitor point.
valueValue of monitor point
void carma::control::SubarrayControl::setObsblock ( in string  project,
in string  obsblock,
in string  subObsblock,
in long  trial 
)
raises (carma::util::UserException
)

Sets the full obsblock name atomically.

Parameters
project- project name
obsblock- obsblock name
subObsblock- subObsblock name
trial- trial number
void carma::control::SubarrayControl::setRepTaskAuto ( in long  taskIndex,
in double  auto 
)
raises (carma::util::UserException
)

Set the time interval for automatic execution of the repetitive task.

Parameters
taskIndextask index, starting at zero
autotime interval for automatic execution
void carma::control::SubarrayControl::setRepTaskCompleted ( in long  taskIndex,
in double  mjd 
)
raises (carma::util::UserException
)

Set the absolute time that the repetitive task was last executed.

Parameters
taskIndextask index, starting at zero
mjdabsolute time of last execution, as an MJD
void carma::control::SubarrayControl::setRepTaskInterval ( in long  taskIndex,
in double  interval 
)
raises (carma::util::UserException
)

Set the time interval for the task repetitition .

Parameters
taskIndextask index, starting at zero
intervaltime interval in days
void carma::control::SubarrayControl::setRepTaskName ( in long  taskIndex,
in string  taskName 
)
raises (carma::util::UserException
)

Set the name of the repetitive task.

Parameters
taskIndextask index, starting at zero
taskNamethe name of the task, string
void carma::control::SubarrayControl::setRepTaskRemind ( in long  taskIndex,
in double  remind 
)
raises (carma::util::UserException
)

Set the reminder interval of the repetitive task.

Parameters
taskIndextask index, starting at zero
remindreminder interval in days
void carma::control::SubarrayControl::setScriptBool ( in short  index,
in boolean  value 
)
raises (carma::util::UserException
)

Set a script control boolean variable.

There are 20 script control variables with indices 1 to 20.

Parameters
indexindex, 1-20, a value of zero means all
valuevalue
See Also
getScriptBool, clearScriptAll
void carma::control::SubarrayControl::setScriptDouble ( in short  index,
in double  value 
)
raises (carma::util::UserException
)

Set a script control double variable.

There are 20 script control variables with indices 1 to 20.

Parameters
indexindex, 1-20, a value of zero means all
valuevalue
See Also
getScriptDouble, clearScriptAll
void carma::control::SubarrayControl::setScriptInt ( in short  index,
in long  value 
)
raises (carma::util::UserException
)

Set a script control integer variable.

There are 20 script control variables with indices 1 to 20.

Parameters
indexindex, 1-20, a value of zero means all
valuevalue
See Also
getScriptInt, clearScriptAll
void carma::control::SubarrayControl::setScriptName ( in string  name)
raises (carma::util::UserException
)

Set the script name in the monitor system.

Parameters
name
See Also
getScriptName
void carma::control::SubarrayControl::setScriptState ( in ScriptStateType  state)
raises (carma::util::UserException
)

Set the script state in the monitor system.

Parameters
statescript state (COMPLETED, RUNNING, CRASHED)
See Also
setScriptName, getScriptState
void carma::control::SubarrayControl::setScriptString ( in short  index,
in string  value 
)
raises (carma::util::UserException
)

Set a script control string variable.

There are 20 script control variables with indices 1 to 20.

Parameters
indexindex, 1-20, a value of zero means all
valueinput string; will be silently truncated at 2000 chars
See Also
appendScriptString, getScriptString, clearScriptAll
void carma::control::SubarrayControl::setTraceLevel ( in short  traceLevel)
raises (carma::util::UserException
)

Development command - DO NOT USE.

Note
Using this to increase the trace level in the RTS above 0 will severely stress the acc machine. If you must use it in the RTS then use it sparingly and only for very brief periods of time.
void carma::control::SubarrayControl::signalControlSubsystemRestored ( )
raises (carma::util::UserException
)

Tell the control system that the ControlSubsystem monitor container has been restored from a previously saved file.

WARNING: This should only be called by the state restoration daemon.

void carma::control::SubarrayControl::startTrack ( )
raises (carma::util::UserException
)

   Tell the control system t} catch ( const util::UserException & ) {
throw;

} catch ( ...

) { rethrowCaughtAsUser(); Just in case rethrowCaughtAsUser() is broken throw util::UserException( "rethrowCaughtAsUser() is broken", FILE, LINE ); } hat a new track has been started. The control system will stash a timestamp for this event that will be used to generate an MP.

void carma::control::SubarrayControl::storeAntennaIFattenAmbient ( in SeqShort  carmaAntNoSeq)
raises (carma::util::UserException
)

Stores the antenna IF attenuation from PAM1 into the monitor system Useful after the PAM has set it to a specific power level.

Parameters
carmaAntNoSeqSequence of carma antenna numbers. A sequence containing the single number zero is all antennas.
boolean carma::control::SubarrayControl::subarrayOwnsCorrelator ( in long  subarrayNo,
in unsigned long  type 
)
raises (carma::util::UserException
)

Check if the specified subarray owns the requested correlator.

void carma::control::SubarrayControl::subObsblock ( in string  subObsblock)
raises (carma::util::UserException
)

Sets the sub-observing block string.

This is just another nested observing block. Note that the dot character is not allowed in observing block strings, since it is the field separator for the full obsblock ID string.

Parameters
subObsblock- sub-observing block string identifier, may be alphanumeric.
void carma::control::SubarrayControl::testAntHandles ( in double  aSeconds,
in double  bSeconds,
in long  whichTest,
in double  lateAfterSeconds,
in SeqShort  carmaAntNoSeq 
)
raises (carma::util::UserException
)

Development command - DO NOT USE.

void carma::control::SubarrayControl::tilt ( in SeqShort  carmaAntNoSeq)
raises (carma::util::UserException
)

Measure the tilt meter zeros and set This is a procedure that takes several minutes to complete.

Parameters
carmaAntNoSeqSequence of carma antenna numbers. A sequence of the single value zero means all subarray antennas.
void carma::control::SubarrayControl::tiltZeros ( in float  aftForward,
in float  leftRight,
in short  carmaAntNo 
)
raises (carma::util::UserException
)

Set tiltmeter zeros.

Parameters
aftForwardthe aft/forward zero in arcminutes
leftRightthe left/right zero in arcminutes
carmaAntNocarma antenna number
string carma::control::SubarrayControl::times ( )
raises (carma::util::UserException
)
Returns
the current lst, UT and local time as a string;
double carma::control::SubarrayControl::transitionFreq ( in string  molecule,
in string  transition 
)
raises (carma::util::UserException
)

Gets the frequency for a given molecular line transition.

The line must be in the carma line catalog; if not, an exception is thrown. The catalog is in CARMA/conf/catalogs/SpectralLine.cat. Examples of molecule,transition parameters: "HCN","1-0,F=2-1" "CO", "1-0"

Parameters
moleculethe molecule, case insensitive
transitionspectral line transition for the molecule
Returns
line frequency in GHz
See Also
lineFreq
void carma::control::SubarrayControl::trial ( in long  number)
raises (carma::util::UserException
)

Sets the trial number.

Parameters
numbertrial number
AntennaReady carma::control::SubarrayControl::tsys ( )
raises (carma::util::UserException
)

Measure system temperatures Moves in ambient load, waits one second, then returns to sky and waits another second.

The system will automatically update the system temperature in the monitor stream.

Returns
a sequence of two sequences, the first containing the completed carma antenna numbers and the second the non-completed carma antenna numbers. Completion is defined as having the cal in the correct position in both cases before the timeout.
Todo:
define a method to fetch the system temperatures
void carma::control::SubarrayControl::ucat ( in string  catalog)
raises (carma::util::UserException
)

Set a user catalog.

This is an alternate catalog of sources that will be searched BEFORE the system catalog. When a valid user catalog is set, the requested source is looked up the user catalog; if not found, it is then looked up in the system catalog. The specified catalog must exist in /array/rt/cjjjj To unset user catalog searching set user catalog to none:
 <tt.s.ucat('none')

Parameters
catalogThe catalog name.
void carma::control::SubarrayControl::useAdjustableDelay ( in boolean  useIt,
in SeqShort  carmaAntNoSeq 
)
raises (carma::util::UserException
)

Engineering command; Tell the DelayEngine whether to use the adjustable delay for a given antenna.

Parameters
useItTrue or false value.
carmaAntNoSeqSequence of carma antenna numbers. A sequence of the single value zero means all subarray antennas.
Returns
none.
See Also
Equation 23 of interferometry design document.
void carma::control::SubarrayControl::useGeometricDelay ( in boolean  useIt,
in SeqShort  carmaAntNoSeq 
)
raises (carma::util::UserException
)

Engineering command; Tell the DelayEngine whether to use the geometric delay for a given antenna.

Parameters
useItTrue or false value.
carmaAntNoSeqSequence of carma antenna numbers. A sequence of the single value zero means all subarray antennas.
Returns
none.
See Also
Equation 23 of interferometry design document.
void carma::control::SubarrayControl::useHeightDelay ( in boolean  useIt,
in SeqShort  carmaAntNoSeq 
)
raises (carma::util::UserException
)

Engineering command; Tell the DelayEngine whether to use the additional height delay for a given antenna.

Parameters
useItTrue or false value.
carmaAntNoSeqSequence of carma antenna numbers. A sequence of the single value zero means all subarray antennas.
Returns
none.
See Also
Equation 19of interferometry design document.
void carma::control::SubarrayControl::useIonosphericDelay ( in boolean  useIt,
in SeqShort  carmaAntNoSeq 
)
raises (carma::util::UserException
)

Tell the DelayEngine whether to use the ionospheric delay for a given antenna.

Parameters
useItTrue or false value.
carmaAntNoSeqSequence of carma antenna numbers. A sequence of the single value zero means all subarray antennas.
Returns
none.
See Also
Equation 23 of interferometry design document.
void carma::control::SubarrayControl::useThermalDelay ( in boolean  useIt,
in SeqShort  carmaAntNoSeq 
)
raises (carma::util::UserException
)

Engineering command; Tell the DelayEngine whether to use the thermal delay for a given antenna.

Parameters
useItTrue or false value.
carmaAntNoSeqSequence of carma antenna numbers. A sequence of the single value zero means all subarray antennas.
Returns
none.
See Also
Equation 23 of interferometry design document.
void carma::control::SubarrayControl::useTroposphericDelay ( in boolean  useIt,
in SeqShort  carmaAntNoSeq 
)
raises (carma::util::UserException
)

Engineering command; Tell the DelayEngine whether to use the tropospheric delay for a given antenna.

Parameters
useItTrue or false value.
carmaAntNoSeqSequence of carma antenna numbers. A sequence of the single value zero means all subarray antennas.
Returns
none.
See Also
Equation 23 of interferometry design document.
void carma::control::SubarrayControl::vj ( in carma::antenna::common::RxControl::Pol_Type  pol,
in float  vj,
in short  carmaAntNo 
)
raises (carma::util::UserException
)

Engineering command: backdoor for the ovro receivers.

Parameters
vjjunction voltage
carmaAntNocarma antenna number
Returns
none
ComponentReady carma::control::SubarrayControl::wait ( in WaitItem  item,
in SeqShort  carmaComponentNoSeq,
in float  timeout,
in WaitCondition  condition,
in short  count 
)
raises (carma::util::UserException,
carma::util::CancelException,
carma::control::TimeoutException,
carma::control::InvalidMonitorDataException
)

Wait for a specific procedure to complete.

The wait completes when ANY or ALL of the items are ready, or if the timeout value is exceeded.

Parameters
itemspecific procedure to wait on , such as INTERVAL, ONSOURCE, TUNED, CALIBRATOR, INTEG, TILT, CENTROID, or OPTICS.
carmaComponentNoSeqSequence of carma antenna OR band numbers. A sequence of the single value zero means all subarray antennas or correlator bands.
timeoutvalue in seconds, zero or less inhibits timeout
conditionANY or ALL of the antennas are complete. Also COUNT for a specific number of antennas. This parameter is only used for ONSOURCE. See return value.
countA count of the number of antennas to wait on. This parameter is only used when the wait item is TRACKING and the condition is COUNT. If the count is more than the number of antennas in the antenna sequence, then it will wait for all antennas and not throw an exception. If count is negative, it will wait for all except the number in the negative count. For example, count=-2 will wait until all antennas except 2 are on source. If waiting for ONSOURCE and the noise source has been selected then the wait is considered successful on the first check. If waiting for INTERVAL the method blocks for the timeout value.
Exceptions
TimeoutExceptionand InvalidMonitorDataException The InvalidMonitorDataException is thrown when there are twenty-four consecutive bad monitor frames for an antenna.
UserExceptionif the wait is cancelled by the cancel() command.
Returns
a sequence of two sequences, the first containing the completed carma antenna numbers and the second the non-completed carma antenna numbers. The return has no meaning for non-antenna based waits, such as INTEG.
string carma::control::SubarrayControl::whazUp ( )
raises (carma::util::UserException
)

Checks status of brightest radio sources and returns as string Previously set elevation limit is used in calculations.

Returns
LST, elevLimit, and source parameters, including:
  • source name
  • ra/dec
  • up or down
  • current elevation
  • rise/set time using elevLimit (LST & Local Time)
See Also
elevLimit
Exceptions
UserExceptionif source is not in catalog
string carma::control::SubarrayControl::whazUpOptical ( )
raises (carma::util::UserException
)

Checks status of brightest optical sources and returns as string Previously set elevation limit is used in calculations.

Returns
See Also
whazup
elevLimit
Exceptions
UserExceptionif source is not in catalog
float carma::control::SubarrayControl::whenDown ( in string  sourceName)
raises (carma::util::UserException
)

Checks how long before source will set, using current elevation limit.

Parameters
sourceNamesource name
Returns
length of time before source will set, in minutes. For sources that don't set below the limit, 1440 (24hrs) is returned If the source has already set, zero is returned.
See Also
elevLimit
Exceptions
UserExceptionif source is not in catalog
float carma::control::SubarrayControl::whenTransit ( in string  sourceName)
raises (carma::util::UserException
)

Checks how long until/since a source transits, using current elevation limit.

Parameters
sourceNamesource name
Returns
The number of minutes until the source transits. Positive value indicates the source has not yet transited. Negative value indicates the source has already transited and abs(value) is the minutes since transit.
See Also
elevLimit
Exceptions
UserExceptionif source is not in catalog
float carma::control::SubarrayControl::whenUp ( in string  sourceName)
raises (carma::util::UserException
)

Checks how long before source will rise, using current elevation limit.

Parameters
sourceNamesource name
Returns
length of time before source will rise, in minutes.

For sources that don't rise above the limit, 1440 (24hrs) is returned If the source has already risen, zero is returned.

See Also
elevLimit
Exceptions
UserExceptionif source is not in catalog

The documentation for this interface was generated from the following file: