demorest / evla_mcast Goto Github PK
View Code? Open in Web Editor NEWCode for receiving and parsing EVLA M&C multicast messages
Code for receiving and parsing EVLA M&C multicast messages
I realized that I don't actually know how the scan configuration's "sky_center_freq" is defined:
https://github.com/realfastvla/evla_mcast/blob/f2628955952b64b491b8cf4cb45e285271703527/evla_mcast/scan_config.py#L438.
Is that the center of the subband or channel 0?
I was just starting up realfast code to parse the multicast messages. While waiting for my observation to start, I noticed the following stream of evla_mcast logging messages:
2017-10-25 15:00:28 INFO evla_mcast.mcast_clients Retrieving vci from http://mccc:8081/configDoc?id=test_bins_004.58051.84851416667.79
2017-10-25 15:00:28 INFO evla_mcast.scan_config Received obs doc
2017-10-25 15:00:28 INFO evla_mcast.scan_config Assuming one or more doc was already parsed
2017-10-25 15:00:58 INFO evla_mcast.mcast_clients Read obs configId=test_bins_004.58051.84851416667.79, seq=111147
2017-10-25 15:00:58 INFO evla_mcast.mcast_clients Retrieving vci from http://mccc:8081/configDoc?id=test_bins_004.58051.84851416667.79
2017-10-25 15:00:58 INFO evla_mcast.scan_config Received obs doc
2017-10-25 15:00:58 INFO evla_mcast.scan_config Assuming one or more doc was already parsed
2017-10-25 15:01:28 INFO evla_mcast.mcast_clients Read obs configId=test_bins_004.58051.84851416667.81, seq=111148
2017-10-25 15:01:28 INFO evla_mcast.mcast_clients Retrieving vci from http://mccc:8081/configDoc?id=test_bins_004.58051.84851416667.81
2017-10-25 15:01:28 INFO evla_mcast.scan_config Received obs doc
2017-10-25 15:01:28 INFO evla_mcast.scan_config Assuming one or more doc was already parsed
2017-10-25 15:01:58 INFO evla_mcast.mcast_clients Read obs configId=test_bins_004.58051.84851416667.81, seq=111149
2017-10-25 15:01:58 INFO evla_mcast.mcast_clients Retrieving vci from http://mccc:8081/configDoc?id=test_bins_004.58051.84851416667.81
2017-10-25 15:01:58 INFO evla_mcast.scan_config Received obs doc
2017-10-25 15:01:58 INFO evla_mcast.scan_config Assuming one or more doc was already parsed
2017-10-25 15:02:28 INFO evla_mcast.mcast_clients Read obs configId=test_bins_004.58051.84851416667.83, seq=111150
There seems to be a pattern of printing configId with a suffix (scan index?) that repeats. Then it skips the next one. The result is that only odd suffixes are printed. Is that part of the observing pattern for this script or a sign of a problem in how start/stop times are identified?
It would be nice to catch telcal messages in real time, rather than parsing from ascii files on disk.
We would like to parse the OTF intent for a given scan. Making it a property would be best for users of config objects.
(adding this formally after busy week discussion)
The scan configuration is currently defined for a single vci+obs+ant combination. Support for two (or more?) obs docs would allow us to measure start and stop times for a scan. This would make vysmaw commensal applications much easier to write.
The main outcome may be a new property "stopTime".
The end of an SB is marked by special "FINISH" scans. These are not actual scans in which data is taken, but an Obs document comes in with some special metadata denoting the end of the block. Right now nothing special is done with these in the controller but that should probably be changed.
This problem seems to be special to some obs docs I've seen during testing. Mostly, things work, but a recent observation for program 17A-283 (using recirculation?) failed with this error:
Traceback (most recent call last):
File "/home/cbe-master/realfast/anaconda/envs/development/lib/python2.7/site-packages/evla_mcast/mcast_clients.py", line 68, in handle_read
self.parse()
File "/home/cbe-master/realfast/anaconda/envs/development/lib/python2.7/site-packages/evla_mcast/mcast_clients.py", line 95, in parse
.format(obs.attrib['configId'], obs.attrib['seq']))
File "src/lxml/lxml.etree.pyx", line 2452, in lxml.etree._Attrib.__getitem__ (src/lxml/lxml.etree.c:70080)
KeyError: 'configId'
This attribute is read by a logging statement in the ObsClient parse function.
Is there something special about some programs that produces nonstandard obs docs?
I'm creating a scan config objects and got confused by some of the property names. I interpreted scan_config.npol as the number of pols, but it seems to refer to a pulsar mode (and npol can change between subbands, so I should have known better anyway).
It may help to go over the properties on the top level and per subband for clarity.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.