das-developers / das2dlm Goto Github PK
View Code? Open in Web Editor NEWIDL binary extension das2 client
License: GNU Lesser General Public License v2.1
IDL binary extension das2 client
License: GNU Lesser General Public License v2.1
The server=dsdf end point is not directly supported in the das2dlm API. Adding a wrapper for this end-point would allow users to discover the extra sub-values that can be transmitted to a server. For some datasets, such as Juno/WAV/Survey these are particularly useful.
Though a full catalog-node query interface (as supported by das2py) would be more useful for auto-GUI's, a general structure output function would be handy. The presumed function interface would be
das2c_srcinfo(sServer, sPath)
The following example (dataset: Cassini/Ephemeris/Jupiter) results in unknown error in IDL 8.7.2 on Windows:
requestUrl = 'http://planet.physics.uiowa.edu/das/das2Server?server=dataset&dataset=Cassini/Ephemeris/Jupiter&start_time=2000-12-29T00:00:00&end_time=2000-12-31T00:00:00&interval=60'
query = das2c_readhttp(requestUrl)
Output:
% DAS2C_READHTTP: %s
% Execution halted at: $MAIN$
All other Cassini/Ephemeris/datasets seems to be working fine
das2dlm functions return !null when some action couldn't complete so that higher level programs could gracefully handle problems.
Unfortunately, the !null system variable was not introduced into IDL until version 8.0. For compatibility with old versions of IDL, the API will have to throw messages or return something other then !null for invalid requests.
SPEDAS team would like to acquire Juno data using das2dlm. However, some of the repositories are protected by password, for example:
http://jupiter.physics.uiowa.edu/das/server?server=dataset&dataset=Juno/JED/ProtonSpectra&start_time=2016-242&end_time=2016-243&ascii=1
It would be great to add HTTP authorization feature.
Query parameters are not being saved in the DAS2_RESULT structure for unknown keywords. This is a bug.
As subject says, IDL crashes on calling das2c_data when das2 dataset have no data.
Request URL that cause the propblem: http://planet.physics.uiowa.edu/das/das2Server?server=dataset&dataset=Cassini/MAG/Differential_C11&start_time=2013-01-01&end_time=2013-01-02&ascii=1
[00]000414<stream compression="none" version="2.2" >
<properties String:title="Pre-Release: MAG Difference Field%{xCacheResInfo}"
String:xLabel="SCET (UTC)"
String:yScaleType="linear"
DatumRange:xCacheRange="2013-01-01T00:00:00.000 to 2013-01-02T00:00:00.000 UTC"
String:xCacheResInfo=" (Intrinsic Resolution)"
String:sourceId="das2_ascii"/>
</stream>
[01]000365<packet>
<x type="time24" units="us2000">
</x>
<y name="radial" type="ascii14" units="nT">
<properties String:yLabel="dB!bR!n (C11)"/>
</y>
<y name="southward" type="ascii14" units="nT">
<properties String:yLabel="dB!bΘ!n (C11)"/>
</y>
<y name="azimuthal" type="ascii14" units="nT">
<properties String:yLabel="B!bΦ!n"/>
</y>
</packet>
[xx]000127<exception type="NoDataInInterval" message="No FGM data in the interval 2013-01-01T00:00:00.000 to 2013-01-02T00:00:00.000" />
IDL code to reproduces the error:
; Tesh of the Cassini/MAG/Differential_C11 data set
url = 'http://planet.physics.uiowa.edu/das/das2Server?server=dataset'
dataset = 'dataset=Cassini/MAG/Differential_C11'
time1 = 'start_time=2013-01-01'
time2 = 'end_time=2013-01-02'
requestUrl = url + '&' + dataset + '&' + time1 + '&' + time2
print, requestUrl
; Qeury
query = das2c_readhttp(requestUrl)
; Get dataset
ds = das2c_datasets(query, 0)
; inspect
print, ds, /IMPLIED_PRINT
; Pdims
pdims = das2c_pdims(ds);
; inspect
print, pdims, /IMPLIED_PRINT
;stop
p = das2c_pdims(ds, 'time') ; physical dimension
v = das2c_vars(p, 'center') ; variable
d = das2c_data(v) ; data
res = das2c_free(query)
end
The script that reproduces the error:
das2dlm_load_cassini_mag_dc11.zip
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.