mirror of
https://github.com/Unidata/python-awips.git
synced 2025-02-24 06:57:56 -05:00
309 lines
10 KiB
Text
309 lines
10 KiB
Text
{
|
|
"cells": [
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {
|
|
"collapsed": false
|
|
},
|
|
"outputs": [],
|
|
"source": [
|
|
"from awips.dataaccess import DataAccessLayer\n",
|
|
"\n",
|
|
"# Set host\n",
|
|
"DataAccessLayer.changeEDEXHost(\"edex-cloud.unidata.ucar.edu\")\n",
|
|
"# Init data request\n",
|
|
"request = DataAccessLayer.newDataRequest()\n",
|
|
"request.setDatatype(\"obs\")\n",
|
|
"request.setLocationNames(\"KBJC\")\n",
|
|
"datatimes = DataAccessLayer.getAvailableTimes(request)\n",
|
|
"time = datatimes[-1].validPeriod\n",
|
|
"\n",
|
|
"# \"presWeather\",\"skyCover\",\"skyLayerBase\"\n",
|
|
"# are multi-dimensional... deal with these later\n",
|
|
"request.setParameters(\n",
|
|
" \"stationName\",\n",
|
|
" \"timeObs\",\n",
|
|
" \"wmoId\",\n",
|
|
" \"autoStationType\",\n",
|
|
" \"elevation\",\n",
|
|
" \"reportType\",\n",
|
|
" \"temperature\",\n",
|
|
" \"tempFromTenths\",\n",
|
|
" \"dewpoint\",\n",
|
|
" \"dpFromTenths\",\n",
|
|
" \"windDir\",\n",
|
|
" \"windSpeed\",\n",
|
|
" \"windGust\",\n",
|
|
" \"visibility\",\n",
|
|
" \"altimeter\",\n",
|
|
" \"seaLevelPress\",\n",
|
|
" \"pressChange3Hour\",\n",
|
|
" \"pressChangeChar\",\n",
|
|
" \"maxTemp24Hour\",\n",
|
|
" \"minTemp24Hour\",\n",
|
|
" \"precip1Hour\",\n",
|
|
" \"precip3Hour\",\n",
|
|
" \"precip6Hour\",\n",
|
|
" \"precip24Hour\"\n",
|
|
")\n",
|
|
"\n",
|
|
"response = DataAccessLayer.getGeometryData(request,times=time)\n",
|
|
"for ob in response:\n",
|
|
" print \"getParameters is\",ob.getParameters()\n",
|
|
" print len(ob.getParameters())\n",
|
|
" #getParameters\n",
|
|
" print ob.getString(\"stationName\"), \"from\", ob.getDataTime().getRefTime()\n",
|
|
" print \"stationName is\",ob.getString(\"stationName\")\n",
|
|
" print \"timeObs is\",ob.getString(\"timeObs\")\n",
|
|
" print \"wmoId is\",ob.getString(\"wmoId\")\n",
|
|
" print \"autoStationType is\",ob.getString(\"autoStationType\")\n",
|
|
" print \"elevation is\",ob.getString(\"elevation\")\n",
|
|
" print \"reportType is\",ob.getString(\"reportType\")\n",
|
|
" print \"temperature is\",ob.getString(\"temperature\")\n",
|
|
" print \"tempFromTenths is\",ob.getString(\"tempFromTenths\")\n",
|
|
" print \"dewpoint is\",ob.getString(\"dewpoint\")\n",
|
|
" print \"dpFromTenths is\",ob.getString(\"dpFromTenths\")\n",
|
|
" print \"windDir is\",ob.getString(\"windDir\")\n",
|
|
" print \"windSpeed is\",ob.getString(\"windSpeed\")\n",
|
|
" print \"windGust is\",ob.getString(\"windGust\")\n",
|
|
" print \"visibility is\",ob.getString(\"visibility\")\n",
|
|
" print \"altimeter is\",ob.getString(\"altimeter\")\n",
|
|
" print \"seaLevelPress is\",ob.getString(\"seaLevelPress\")\n",
|
|
" print \"pressChange3Hour is\",ob.getString(\"pressChange3Hour\")\n",
|
|
" print \"pressChangeChar is\",ob.getString(\"pressChangeChar\")\n",
|
|
" print \"maxTemp24Hour is\",ob.getString(\"maxTemp24Hour\")\n",
|
|
" print \"minTemp24Hour is\",ob.getString(\"minTemp24Hour\")\n",
|
|
" print \"precip1Hour is\",ob.getString(\"precip1Hour\")\n",
|
|
" print \"precip3Hour is\",ob.getString(\"precip3Hour\")\n",
|
|
" print \"precip6Hour is\",ob.getString(\"precip6Hour\")\n",
|
|
" print \"precip24Hour is\",ob.getString(\"precip24Hour\")"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {
|
|
"collapsed": false
|
|
},
|
|
"outputs": [],
|
|
"source": [
|
|
"# multi-dimensional present WX\n",
|
|
"request = DataAccessLayer.newDataRequest()\n",
|
|
"request.setDatatype(\"obs\")\n",
|
|
"request.setLocationNames(\"KBJC\")\n",
|
|
"request.setParameters(\"presWeather\")\n",
|
|
"response = DataAccessLayer.getGeometryData(request,times=time)\n",
|
|
"for ob in response:\n",
|
|
" print \"getParameters is\",ob.getParameters()\n",
|
|
" print ob.getString(\"presWeather\")\n",
|
|
"\n",
|
|
"\n",
|
|
"# multi-dimensional Sky Condition\n",
|
|
"request.setParameters(\"skyCover\", \"skyLayerBase\")\n",
|
|
"response = DataAccessLayer.getGeometryData(request,times=time)\n",
|
|
"for ob in response:\n",
|
|
" print ob.getString(\"skyCover\")\n",
|
|
" print ob.getString(\"skyLayerBase\")"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {},
|
|
"source": [
|
|
"## Synop/Marine"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {
|
|
"collapsed": false
|
|
},
|
|
"outputs": [],
|
|
"source": [
|
|
"from awips.dataaccess import DataAccessLayer\n",
|
|
"\n",
|
|
"request = DataAccessLayer.newDataRequest()\n",
|
|
"request.setDatatype(\"sfcobs\")\n",
|
|
"request.setLocationNames(\"72421\") # Covington, Kentucky (KCVG)\n",
|
|
"\n",
|
|
"request.setParameters(\"stationId\",\"timeObs\",\"elevation\",\"reportType\",\n",
|
|
" \"wx_present\",\"visibility\",\"seaLevelPress\",\"stationPress\",\n",
|
|
" \"pressChange3Hour\",\"pressChangeChar\",\"temperature\",\n",
|
|
" \"dewpoint\",\"seaSurfaceTemp\",\"wetBulb\",\"windDir\",\n",
|
|
" \"windSpeed\",\"equivWindSpeed10m\",\"windGust\",\"precip1Hour\",\n",
|
|
" \"precip6Hour\",\"precip24Hour\" )\n",
|
|
"\n",
|
|
"datatimes = DataAccessLayer.getAvailableTimes(request)\n",
|
|
"time = datatimes[-1].validPeriod\n",
|
|
"\n",
|
|
"response = DataAccessLayer.getGeometryData(request,times=time)\n",
|
|
"print response\n",
|
|
"for ob in response:\n",
|
|
" print \"getParameters is\",ob.getParameters()\n",
|
|
" print len(ob.getParameters())\n"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {},
|
|
"source": [
|
|
"## Profiler"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {
|
|
"collapsed": false
|
|
},
|
|
"outputs": [],
|
|
"source": [
|
|
"MULTI_DIM_PARAMS = set(['vComponent', 'uComponent', 'peakPower', \n",
|
|
" 'levelMode', 'uvQualityCode', 'consensusNum', \n",
|
|
" 'HorizSpStdDev', 'wComponent', 'height', \n",
|
|
" 'VertSpStdDev'])\n",
|
|
"\n",
|
|
"request = DataAccessLayer.newDataRequest(\"profiler\")\n",
|
|
"request.setParameters('numProfLvls', 'elevation', 'windDirSfc', 'validTime', \n",
|
|
" 'windSpeedSfc', 'pressure', 'submode', 'relHumidity', \n",
|
|
" 'profilerId', 'rainRate', 'temperature')\n",
|
|
"request.getParameters().extend(MULTI_DIM_PARAMS)\n",
|
|
"\n",
|
|
"datatimes = DataAccessLayer.getAvailableTimes(request)\n",
|
|
"time = datatimes[-1].validPeriod\n",
|
|
"\n",
|
|
"response = DataAccessLayer.getGeometryData(request,times=time)\n",
|
|
"print response\n",
|
|
"for ob in response:\n",
|
|
" print \"getParameters is\",ob.getParameters()\n",
|
|
" print len(ob.getParameters())"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {},
|
|
"source": [
|
|
"## ACARS"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {
|
|
"collapsed": false
|
|
},
|
|
"outputs": [],
|
|
"source": [
|
|
"request = DataAccessLayer.newDataRequest(\"acars\")\n",
|
|
"request.setParameters(\"tailNumber\", \"receiver\", \"pressure\", \"flightPhase\", \n",
|
|
" \"rollAngleQuality\", \"temp\", \"windDirection\", \"windSpeed\",\n",
|
|
" \"humidity\", \"mixingRatio\", \"icing\")\n",
|
|
"datatimes = DataAccessLayer.getAvailableTimes(request)\n",
|
|
"time = datatimes[-1].validPeriod\n",
|
|
"\n",
|
|
"response = DataAccessLayer.getGeometryData(request,times=time)\n",
|
|
"print response\n",
|
|
"for ob in response:\n",
|
|
" print \"getParameters is\",ob.getParameters()\n",
|
|
" print len(ob.getParameters())"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {},
|
|
"source": [
|
|
"## AIREP"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {
|
|
"collapsed": false
|
|
},
|
|
"outputs": [],
|
|
"source": [
|
|
"request = DataAccessLayer.newDataRequest(\"airep\")\n",
|
|
"request.setParameters(\"id\", \"flightLevel\", \"temp\", \"windDirection\", \"windSpeed\",\n",
|
|
" \"flightWeather\", \"flightHazard\", \"flightConditions\")\n",
|
|
"\n",
|
|
"datatimes = DataAccessLayer.getAvailableTimes(request)\n",
|
|
"time = datatimes[-1].validPeriod\n",
|
|
"\n",
|
|
"response = DataAccessLayer.getGeometryData(request,times=time)\n",
|
|
"print response\n",
|
|
"for ob in response:\n",
|
|
" print \"getParameters is\",ob.getParameters()\n",
|
|
" print len(ob.getParameters())"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {},
|
|
"source": [
|
|
"## PIREP"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {
|
|
"collapsed": false
|
|
},
|
|
"outputs": [],
|
|
"source": [
|
|
"MULTI_DIM_PARAMS = set([\"hazardType\", \n",
|
|
" \"turbType\", \"turbBaseHeight\", \"turbTopHeight\",\n",
|
|
" \"iceType\", \"iceBaseHeight\", \"iceTopHeight\",\n",
|
|
" \"skyCover1\", \"skyCover2\", \"skyBaseHeight\", \"skyTopHeight\"\n",
|
|
" ])\n",
|
|
" \n",
|
|
"request = DataAccessLayer.newDataRequest(\"pirep\")\n",
|
|
"request.setParameters('id', 'flightLevel', 'temp', 'windDirection', 'windSpeed',\n",
|
|
" 'horzVisibility', 'aircraftType', 'weatherGroup')\n",
|
|
"request.getParameters().extend(MULTI_DIM_PARAMS)\n",
|
|
"\n",
|
|
"datatimes = DataAccessLayer.getAvailableTimes(request)\n",
|
|
"time = datatimes[-1].validPeriod\n",
|
|
"\n",
|
|
"response = DataAccessLayer.getGeometryData(request,times=time)\n",
|
|
"print response\n",
|
|
"for ob in response:\n",
|
|
" print \"getParameters is\",ob.getParameters()\n",
|
|
" print len(ob.getParameters())"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {
|
|
"collapsed": true
|
|
},
|
|
"outputs": [],
|
|
"source": []
|
|
}
|
|
],
|
|
"metadata": {
|
|
"kernelspec": {
|
|
"display_name": "Python 2",
|
|
"language": "python",
|
|
"name": "python2"
|
|
},
|
|
"language_info": {
|
|
"codemirror_mode": {
|
|
"name": "ipython",
|
|
"version": 2
|
|
},
|
|
"file_extension": ".py",
|
|
"mimetype": "text/x-python",
|
|
"name": "python",
|
|
"nbconvert_exporter": "python",
|
|
"pygments_lexer": "ipython2",
|
|
"version": "2.7.9"
|
|
}
|
|
},
|
|
"nbformat": 4,
|
|
"nbformat_minor": 0
|
|
}
|