# Demo Voyager PRA data # See vap+bin:http://www-pw.physics.uiowa.edu/voyager/data/pra/v1790205?rank2=6:262&recLength=528&type=ushort&byteOrder=big # See http://vmo.nasa.gov/vxo/metadata.php?id=spase://VWO/NumericalData/Voyager1/PRA/VG1_PRA_High_Jupiter_PT48S sensor= getParam( 'sensor', 'left', 'sensor antenna', ['left','right'] ) ff= getParam( 'resourceURI', 'http://www-pw.physics.uiowa.edu/voyager/data/pra/v1790205', 'Default file to read' ) if ( sensor=='left' ): # See (NOTE 128 channels for Hi-band; 70 channels for Lo-band) rank2= '6:134' elif ( sensor=='right' ): rank2= '134:262' ttag= getDataSet( 'vap+bin:%s?rank2=1:3&recLength=528&type=int&byteOrder=big' % ff ) ymd= ttag[:,0] year= floor( ymd / 10000 ) % 100 month= floor( ymd / 100 ) % 100 day= floor( ymd / 1 ) % 100 msec= ttag[:,1] tt= toTimeDataSet(year,month,day,None,None,None,msec*1000000) tunits= tt.property(QDataSet.UNITS) tt.putProperty( QDataSet.VALID_MIN, tunits.parse( '1901-01-01T00:00' ).doubleValue( tunits ) ) data= getDataSet( 'vap+bin:%s?rank2=%s&recLength=528&type=ushort&byteOrder=big' % ( ff, rank2 ) ) vgr= ff[-7:-6] #307.2 kHz intervals from 1.2 MHz to 40.4 MHz. yy= reverse( linspace( 1.2, 40.4, 128 ) ) yy.putProperty( QDataSet.UNITS, Units.megaHertz ) yy.putProperty( QDataSet.LABEL, 'High Band Recv Approx (%{UNITS})' ) data= link( tt, yy, data ) data.putProperty( QDataSet.TITLE, 'Voyager %s Planetary Radio Astronomy (PRA) Highband receiver: %s' % ( vgr, sensor ) ) from org.virbo.dataset.SemanticOps import lookupUnits data.putProperty( QDataSet.UNITS, lookupUnits('millibels') ) data.putProperty( QDataSet.LABEL, '%{UNITS}' )