gme.sat.poes

Module: gme.sat.poes

Classes:
  • poesRec
Functions:
  • readPoes()
  • readPoesFtp()
  • mapPoesMongo()
  • overlayPoesTed()
gme.sat.poes.mapPoesMongo(sYear, eYear=None)[source]

This function reads poes data from the NOAA NGDC FTP server via anonymous FTP connection and maps it to the mongodb.

Warning

In general, nobody except the database admins will need to use this function

Args:
  • sYear (int): the year to begin mapping data
  • [eYear] (int or None): the end year for mapping data. if this is None, eYear will be sYear
Returns:
  • Nothing.
Example:
gme.sat.mapPoesMongo(2004)

written by AJ, 20130131

gme.sat.poes.overlayPoesBnd(baseMapObj, axisHandle, startTime, coords='geo', hemi=1, equBnd=True, polBnd=False)[source]

This function reads POES TED data with in +/- 45min of the given time, fits the auroral oval boundaries and overlays them on a map object. The poleward boundary is not accurate all the times due to lesser number of satellite passes identifying it.

Args:
  • baseMapObj (datetime or None): the map object you want data to be overlayed on.
  • axisHandle (datetime or None): the Axis Handle used.
  • startTime (datetime or None): the starttime you want data for. If endTime is not given overlays data from satellites with in +/- 45 min of the startTime

  • [coords] (list or None): Coordinates of the map object on which you want data to be overlayed on. Default ‘geo’

  • [hemi] (list or None): Hemisphere of the map object on which you want data to be overlayed on. Value is 1 for northern hemisphere and -1 for the southern hemisphere.Default 1

  • [equBnd] (list or None): If this is True the equatorward auroral oval boundary fit from the TED data is overlayed on the map object. Default True
    • [polBnd] (list or None): If this is True the poleward auroral oval boundary fit from the TED data is overlayed on the map object. Default False
Returns:
POES TED data is overlayed on the map object. If no data is found, None is returned.
Example:
import datetime as dt
poesList = gme.sat.overlayPoesTed(MapObj, sTime=dt.datetime(2011,3,4,4))

written by Bharat Kunduri, 20130216

gme.sat.poes.overlayPoesTed(baseMapObj, axisHandle, startTime, endTime=None, coords='geo', hemi=1, folat=[45.0, 90.0], satNum=None, param='ted', scMin=-3.0, scMax=0.5)[source]

This function overlays POES TED data onto a map object.

Args:
  • baseMapObj (datetime or None): the map object you want data to be overlayed on.
  • axisHandle (datetime or None): the Axis Handle used.
  • startTime (datetime or None): the starttime you want data for. If endTime is not given overlays data from satellites with in +/- 45 min of the startTime
  • [endTime] (datetime or None): the latest time you want data for. if this is None, data from satellites with in +/- 45 min of the startTime is overlayed. default = None
  • [satnum] (int): the satellite you want data for. eg 17 for noaa17. if this is None, data for all satellites will be returned. default = None
  • [coords] (str): Coordinates of the map object on which you want data to be overlayed on, ‘geo’, ‘mag’, ‘mlt’. Default ‘geo’
  • [hemi] (list or None): Hemisphere of the map object on which you want data to be overlayed on. Value is 1 for northern hemisphere and -1 for the southern hemisphere.Default 1
[folat] (list or None): if this is not None, it must be a 2-element list of numbers, [a,b]. In this case, only data with latitude values in the range [a,b] will be returned. default = None
  • [param] (str): the name of the poes parameter to be plotted. default=’ted’
Returns:
POES TED data is overlayed on the map object. If no data is found, None is returned.
Example:
import datetime as dt
poesList = gme.sat.overlayPoesTed(MapObj, sTime=dt.datetime(2011,3,4,4))

written by Bharat Kunduri, 20130216

class gme.sat.poes.poesRec(ftpLine=None, dbDict=None, satnum=None, header=None)[source]

a class to represent a record of poes data. Extends gmeBase.gmeData. Insight on the class members can be obtained from the NOAA NGDC site. Note that Poes data is available from 1998-present day (or whatever the latest NOAA has uploaded is). The data are the 16-second averages

Members:
  • time (datetime): an object identifying which time these data are for
  • info (str): information about where the data come from. Please be courteous and give credit to data providers when credit is due.
  • dataSet (str): the name of the data set
  • satnum (ind): the noaa satellite number
  • sslat (float): Geographic Latitude of sub-satellite point, degrees
  • sslon (float): Geographic Longitude of sub-satellite point, degrees
  • folat (float): Geographic Latitude of foot-of-field-line, degrees
  • folon (float): Geographic Longitude of foot-of-field-line, degrees
  • lval (float): L-value
  • mlt (float): Magnetic local time of foot-of-field-line, degrees
  • pas0 (float): MEPED-0 pitch angle at satellite, degrees
  • pas90 (float): MEPED-90 pitch angle at satellite, degrees
  • mep0e1 (float): MEPED-0 > 30 keV electrons, counts/sec
  • mep0e2 (float): MEPED-0 > 100 keV electrons, counts/sec
  • mep0e3 (float): MEPED-0 > 300 keV electrons, counts/sec
  • mep0p1 (float):MEPED-0 30 keV to 80 keV protons, counts/sec
  • mep0p2 (float): MEPED-0 80 keV to 240 keV protons, counts/sec
  • mep0p3 (float): 240 kev to 800 keV protons, counts/sec
  • mep0p4 (float): MEPED-0 800 keV to 2500 keV protons, counts/sec
  • mep0p5 (float): MEPED-0 2500 keV to 6900 keV protons, counts/sec
  • mep0p6 (float): MEPED-0 > 6900 keV protons, counts/sec,
  • mep90e1 (float): MEPED-90 > 30 keV electrons, counts/sec,
  • mep90e2 (float): MEPED-90 > 100 keV electrons, counts/sec
  • mep90e3 (float): MEPED-90 > 300 keV electrons, counts/sec
  • mep90p1 (float): MEPED-90 30 keV to 80 keV protons, counts/sec
  • mep90p2 (float): MEPED-90 80 keV to 240 keV protons, counts/sec
  • mep90p3 (float): MEPED-90 240 kev to 800 keV protons, counts/sec,
  • mep90p4 (float): MEPED-90 800 keV to 2500 keV protons, counts/sec
  • mep90p5 (float): MEPED-90 2500 keV to 6900 keV protons, counts/sec
  • mep90p6 (float):MEPED-90 > 6900 keV protons, counts/sec
  • mepomp6 (float): MEPED omni-directional > 16 MeV protons, counts/sec
  • mepomp7 (float): MEPED omni-directional > 36 Mev protons, counts/sec
  • mepomp8 (float): MEPED omni-directional > 70 MeV protons, counts/sec
  • mepomp9 (float): MEPED omni-directional >= 140 MeV protons
  • ted (float): TED, Total Energy Detector Average, ergs/cm2/sec
  • echar (float): TED characteristic energy of electrons, eV
  • pchar (float): TED characteristic energy of protons, eV
  • econtr (float): TED electron contribution, Electron Energy/Total Energy

Note

If any of the members have a value of None, this means that they could not be read for that specific time

Methods:
  • parseFtp()
Example:
emptyPoesObj = gme.sat.poesRec()

written by AJ, 20130131

parseFtp(line, header)[source]

This method is used to convert a line of poes data read from the NOAA NGDC FTP site into a poesRec object.

Note

In general, users will not need to worry about this.

Belongs to: poesRec

Args:
  • line (str): the ASCII line from the FTP server
Returns:
  • Nothing.
Example:
myPoesObj.parseFtp(ftpLine)

written by AJ, 20130131

gme.sat.poes.readPoes(sTime, eTime=None, satnum=None, folat=None, folon=None, ted=None, echar=None, pchar=None)[source]

This function reads poes data. First, it will try to get it from the mongodb, and if it can’t find it, it will look on the NOAA NGDC FTP server using readPoesFtp(). The data are 16-second averages

Args:
  • sTime (datetime or None): the earliest time you want data for
  • [eTime] (datetime or None): the latest time you want data for. if this is None, end Time will be 1 day after sTime. default = None
  • [satnum] (int): the satellite you want data for. eg 17 for noaa17. if this is None, data for all satellites will be returned. default = None
  • [satnum] (list or None): if this is not None, it must be a 2-element list of numbers, [a,b]. In this case, only data with bx values in the range [a,b] will be returned. default = None
  • [folat] (list or None): if this is not None, it must be a 2-element list of numbers, [a,b]. In this case, only data with bx values in the range [a,b] will be returned. default = None
  • [folon] (list or None): if this is not None, it must be a 2-element list of numbers, [a,b]. In this case, only data with bye values in the range [a,b] will be returned. default = None
  • [ted] (list or None): if this is not None, it must be a 2-element list of numbers, [a,b]. In this case, only data with bze values in the range [a,b] will be returned. default = None
  • [echar] (list or None): if this is not None, it must be a 2-element list of numbers, [a,b]. In this case, only data with bym values in the range [a,b] will be returned. default = None
  • [pchar] (list or None): if this is not None, it must be a 2-element list of numbers, [a,b]. In this case, only data with bzm values in the range [a,b] will be returned. default = None
Returns:
  • poesList (list or None): if data is found, a list of poesRec objects matching the input parameters is returned. If no data is found, None is returned.
Example:
import datetime as dt
poesList = gme.sat.readPoes(sTime=dt.datetime(2011,1,1),eTime=dt.datetime(2011,6,1),folat=[60,80])

written by AJ, 20130131

gme.sat.poes.readPoesFtp(sTime, eTime=None)[source]

This function reads poes data from the NOAA NGDC server via anonymous FTP connection.

Warning

You should not use this. Use the general function readPoes() instead.

Args:
  • sTime (datetime): the earliest time you want data for
  • [eTime] (datetime or None): the latest time you want data for. if this is None, eTime will be equal 1 day after sTime. default = None
Returns:
  • poesList (list or None): if data is found, a list of poesRec objects matching the input parameters is returned. If no data is found, None is returned.
Example:
import datetime as dt
poesList = gme.sat.readpoesFtp(dt.datetime(2011,1,1,1,50),eTime=dt.datetime(2011,1,1,10,0))

written by AJ, 20130128

gme.sat.poes

alias of gme.sat.poes

Previous topic

gme.sat.rbsp

Next topic

gme.isr

This Page