TimeOnSource: Difference between revisions
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
'''Return to [[Analysis Utilities]]''' | '''Return to [[Analysis Utilities]]''' | ||
It is useful to know how much time you spent integrating on source, not including the atmospheric calibration, pointing calibration and sideband ratio calibration. This function computes this value for all fields or each specified field. It then searches for the inter-subscan latency, corrects for it, and prints revised values. It returns an extensive dictionary which includes an item ('minutes_on_science') for the total time spent on science targets, i.e. those scans with intent = OBSERVE_TARGET. It also computes the time spent integrating on source as a percentage of the total elapsed (clock) time of the ms. For convenience, timeOnSource and TimeOnSource are synonyms. | It is useful to know how much time you spent integrating on source, not including the atmospheric calibration, pointing calibration and sideband ratio calibration. This function computes this value for all fields or each specified field. Flagging is ignored. It then searches for the inter-subscan latency, corrects for it, and prints revised values. It returns an extensive dictionary which includes an item ('minutes_on_science') for the total time spent on science targets, i.e. those scans with intent = OBSERVE_TARGET. It also computes the time spent integrating on source as a percentage of the total elapsed (clock) time of the ms. For convenience, timeOnSource and TimeOnSource are synonyms. | ||
Note: The inter-subscan latency is primarily an ALMA issue, and the calculation used here may not be correct for other telescopes. | Note: The inter-subscan latency is primarily an ALMA issue, and the calculation used here may not be correct for other telescopes. |
Latest revision as of 21:10, 11 July 2013
Return to Analysis Utilities
It is useful to know how much time you spent integrating on source, not including the atmospheric calibration, pointing calibration and sideband ratio calibration. This function computes this value for all fields or each specified field. Flagging is ignored. It then searches for the inter-subscan latency, corrects for it, and prints revised values. It returns an extensive dictionary which includes an item ('minutes_on_science') for the total time spent on science targets, i.e. those scans with intent = OBSERVE_TARGET. It also computes the time spent integrating on source as a percentage of the total elapsed (clock) time of the ms. For convenience, timeOnSource and TimeOnSource are synonyms.
Note: The inter-subscan latency is primarily an ALMA issue, and the calculation used here may not be correct for other telescopes.
# In CASA
au.timeOnSource(help=True)
Usage: timeOnSource(ms,field='',includeLatency=False,verbose=True,help=False,vm='')
Returns a list of durations (in sec) on the fields specified, attempting
to detect and account for inter-subscan latency, unless includeLatency=T
in which case it will return the total time from start to end of scan.
Fields can be specified by a single name or ID, or a list of IDs: '2,3,4'.
To speed things up, a ValueMapping instance can be passed in through vm."
Examples
Here is an example of running it with minimal output to the screen.
# In CASA
mydict = au.timeOnSource('X3c1.ms',verbose=F)
Ignoring spectral window [0, 25, 26, 27, 28, 29, 30, 31, 32, 33] because it is WVR related
OBSERVE_TARGET scans = [9, 13, 18, 22, 27, 31, 36]
Clock time = 101.80 min, Total time = 71.3 min, science time = 48.4 min
Latency removed: Total time = 60.0 min, science time = 40.1 min
Here is an example of running it with full output to the screen:
# In CASA
mydict = au.timeOnSource('X3c1.ms')
Running ValueMapping... (this may take a minute)
Ignoring spectral window [0, 25, 26, 27, 28, 29, 30, 31, 32, 33] because it is WVR related
Non-CalAtmosphere, Non-CalPointing, Non-CalSideband scans:
Total time on scan (including inter-subscan latency):
Source 0 = Field 0 = 3c279: 65.7 sec = 1.1 min (1 scan: [5], 2 subscans)
Source 1 = Field 1 = Titan: 66.8 sec = 1.1 min (1 scan: [4], 2 subscans)
Source 2 = Field 2 = TW Hya: 2903.0 sec = 48.4 min (7 scans: [9, 13, 18, 22, 27, 31, 36], 80 subscans)
Source 3 = Field 3 = J1147-382=QSO: 262.7 sec = 4.4 min (4 scans: [8, 16, 25, 34], 8 subscans)
Source 4 = Field 4 = J1037-295=QSO: 981.5 sec = 16.4 min (7 scans: [11, 15, 20, 24, 29, 33, 38], 28 subscans)
OBSERVE_TARGET scans = [9, 13, 18, 22, 27, 31, 36]
Clock time = 101.80 min, Total time = 71.3 min, science time = 48.4 min
My attempt to detect and account for inter-subscan latency:
Source 0 = Field 0 = 3c279: 58.7 sec = 1.0 min (1 scan: [5], 2 subscans)
Source 1 = Field 1 = Titan: 59.9 sec = 1.0 min (1 scan: [4], 2 subscans)
Source 2 = Field 2 = TW Hya: 2407.2 sec = 40.1 min (7 scans: [9, 13, 18, 22, 27, 31, 36], 80 subscans)
Source 3 = Field 3 = J1147-382=QSO: 234.9 sec = 3.9 min (4 scans: [8, 16, 25, 34], 8 subscans)
Source 4 = Field 4 = J1037-295=QSO: 839.2 sec = 14.0 min (7 scans: [11, 15, 20, 24, 29, 33, 38], 28 subscans)
Latency removed: Total time = 60.0 min, science time = 40.1 min
Here is the dictionary returned:
{0: {'field_ids': [0],
'minutes_on_source': 0.97860000928242996,
'minutes_on_source_with_latency': 1.0944000085194905,
'num_of_fields': 1,
'num_of_scans': 1,
'num_of_subscans': [2],
'scans': [5],
'source_name': '3c279'},
1: {'field_ids': [1],
'minutes_on_source': 0.99779998461405439,
'minutes_on_source_with_latency': 1.1135999997456869,
'num_of_fields': 1,
'num_of_scans': 1,
'num_of_subscans': [2],
'scans': [4],
'source_name': 'Titan'},
2: {'field_ids': [2],
'minutes_on_source': 40.119599183400474,
'minutes_on_source_with_latency': 48.384000015258792,
'num_of_fields': 1,
'num_of_scans': 7,
'num_of_subscans': [1, 16, 13, 16, 13, 16, 5],
'scans': [9, 13, 18, 22, 27, 31, 36],
'source_name': 'TW Hya'},
3: {'field_ids': [3],
'minutes_on_source': 3.9143999894460042,
'minutes_on_source_with_latency': 4.3776000022888182,
'num_of_fields': 1,
'num_of_scans': 4,
'num_of_subscans': [2, 2, 2, 2],
'scans': [8, 16, 25, 34],
'source_name': 'J1147-382=QSO'},
4: {'field_ids': [4],
'minutes_on_source': 13.985999981562296,
'minutes_on_source_with_latency': 16.358400026957195,
'num_of_fields': 1,
'num_of_scans': 7,
'num_of_subscans': [4, 4, 4, 4, 4, 4, 4],
'scans': [11, 15, 20, 24, 29, 33, 38],
'source_name': 'J1037-295=QSO'},
'clock_time': 101.80159999290481,
'minutes_on_science': 40.119599183400474,
'minutes_on_science_with_latency': 48.384000015258792,
'num_of_sources': 5,
'percentage_time_on_science': 39.409595906347896,
'source_ids': [0, 1, 2, 3, 4]}