Definition of the access functions that are developed in Eubrewnet
The users with the right permissions have access to some functions to directly get the information stored in the database. The root of the access functions is the same for all http://eubrewnet.aemet.es/eubrewnet/data/. From this point users can select different function. As Example Get DS.
The DS database access function provides the Direct Sun individual measures enhanced by information from their summaries and if they are between correct Mercury Lamp Tests.
Description of the DS Get Function:
There is a Get Function Table with a summary of the available functions to access stored data and their links as example. The extended documentation for each function can be directly access from the table using the links in the column Long Description.
For products, the Eubrewnet provides an interface for processing by demand. The Process Function Table gives a summary of the available process functions. Even the data providers can force a process and database stored data update using the update interface. The Update Function Table sumarizes the available functions. Providers can force only the update of the products of their Brewers.
There are some common inputs for the functions as the parameter format or the list of common inputs (as the brewerid and dates) wich can be used in almost every function. The description can be found in the COMMON SECTION.
Examples of the use of the functions are provided for Matlab 2013A, Matlab 2015A and Python in the EXAMPLE SECTION.
For security purposes user authentication has been added to this tools and their use is registered.
The access functions provide four different ways of data access using the format input parameter.
Format input | Description | Example |
---|---|---|
jsonM | JSON matrix formed by lists of lists (default value). The first list is formed by the value names and the following lists are the query outputs | Get DS by default |
jsonO | JSON object of lists, where each key is the value name and its value is the time sorted list of them | Get DS with jsonO format |
text | Human readable comma separated values where first row is the value names and the following are the query outputs | Get DS with text format |
csv | CSV direct download where first row are the value names and the following are the query outputs | Get DS with text format |
Almost all functions accept the following input options:
Parameter | Description | Example |
---|---|---|
brewerid | Brewer identification number | Get function with brewerid input parameter |
date | Date in YYYY-MM-DD or JJJYY format | Get function with date input parameter |
enddate | Date in YYYY-MM-DD or JJJYY format. If provided, the function will return the query in a date range | Get function with enddate input parameter |
fields | Comma separated list of fields to write in the output. You can use myfields* to select all fields starting with myfields | O3L1_5 output with just the ''gmt'' and ''o3'' fields |
For selected functions, passing the &means=xk
variable in the URL will return the mean of all the output fields in the period specified by xk
, where x
is a number and k
is any of min
, h
(hours), d
(days), or M
(months). The output includes two extra fields, stats_nobs
, with the number of measurements which have been used to calculate the mean, and stats_std_o3
with the standard deviation of the ozone over the specified period. Examples:
Function | Short Description | Long Description | Link |
---|---|---|---|
DS | Returns DS measures | DS | Get DS |
DSS | Returns the DS summaries | DSS | Get DSS |
ZS | Returns ZS measures | ZS | Get ZS |
ZSS | Returns the ZS summaries | ZSS | Get ZSS |
FM | Returns FM measures | FM | Get FM |
FMS | Returns the FM summaries | FMS | Get FMS |
SL | Returns SL measures | SL | Get SL |
SLS | Returns the SL summaries | SLS | Get SLS |
ConfigbyDate | Returns the available Configuration | ConfigbyDate | Get Config by Date |
HK | Returns housekeeping Details | HK | Get HK |
HG | Returns the mercury lamp tests | HG | Get HG |
HP | Returns the grating synchronisation tests | HP | Get HP |
FV | Returns the FV tests | FV | Get FV |
BFV | Returns the FV tests (from B file) | BFV | Get BFV |
AP | Returns the AP tests (from B file) | AP | Get AP |
BHeader | Returns the B File Header with INST values | BHeader | Get BHeader |
DTO3 | Returns the DTO3 tests (from B file) | DTO3 | Get DTO3 |
RSO3 | Returns the RSO3 tests (from B file) | RSO3 | Get RSO3 |
ActiveBrewers | Returns the number of Brewers whith at least one SL test by dates | HG | Get HG |
FileStatus | Returns the status of the received files | FileStatus | Get FileStatus |
ActiveBrewers | Returns the number of Active Brewers | ActiveBrewers | Get ActiveBrewers |
Umkehr | Returns the Umkehr measures | Umkehr | Get Umkehr |
BfilesbyLocation | Returns the Available B files for a range of locations | BfilesbyLocation | Get Bfiles by Location |
BrewerLocation | Returns the changes in location of a Brewer | BrewerLocation | Get Brewer Location |
AVG | Returns the available AVG measures | AVG | Get AVG |
CO | Return comments from the B files | CO | Get comments |
bfiletimes | Returns the time span included in a bfile | bfiletimes | Get bfile time span |
The list of available AVGS access functions is:
File | Table definition | Access function |
---|---|---|
apnavg | apnavg definition | apnavg access function |
apoavg | apoavg definition | apoavg access function |
dtnavg | dtnavg definition | dtnavg access function |
dtoavg | dtoavg definition | dtoavg access function |
fmnavg | fmnavg definition | fmnavg access function |
fmoavg | fmoavg definition | fmoavg access function |
h2oavg | h2oavg definition | h2oavg access function |
hgoavg | hgoavg definition | hgoavg access function |
mioavg | mioavg definition | mioavg access function |
nonavg | nonavg definition | nonavg access function |
opavg | opavg definition | opavg access function |
ozoavg | ozoavg definition | ozoavg access function |
rsnavg | rsnavg definition | rsnavg access function |
rsoavg | rsoavg definition | rsoavg access function |
scoavg | scoavg definition | scoavg access function |
slnavg | slnavg definition | slnavg access function |
sloavg | sloavg definition | sloavg access function |
uvoavg | uvoavg definition | uvoavg access function |
fioavg | fioavg definition | fioavg access function |
CO
brewerid
: see Brewerid in common inputsdate
: see Date in common inputsenddate
: see Enddate in common inputskeyword
: return only the comments than contain this keywordformat
: see Formatbrewerid
gmt
comment
bfiletimes
brewerid
: see Brewerid in common inputsdate
: see Date in common inputsenddate
: see Enddate in common inputsformat
: see Formatbrewerid
bfile
: jjjyy value in the name of the bfilegmt
: UTC time of the first CO comment in the bfileendgmt
: UTC time of the last CO comment in the bfilesolartime
: solar time corresponding to gmt
endsolartime
: solar time corresponding to endgmt
longitude
: longitude of the Brewer locationbfileid
: id used by EUBREWNET to identify the bfileThe output of the GET functions is stored in Eubrewnet's database, from where it's retrieved on each function call with little further processing. They are faster than their equivalent PROCESS functions, which process the data in real time, usually starting from the previous level. Whenever possible, GET functions should be used instead of the PROCESS equivalents.
Function | Short Description | Long Description | Link |
---|---|---|---|
O3L1 | Returns the Level 1 of Ozone | O3L1 | Get O3L1 |
O3L1_5 | Returns the Level 1.5 of Ozone | O3L1_5 | Get O3L1_5 |
O3L2_0 | Returns the Level 2.0 of Ozone | O3L2_0 | Get O3L2_0 |
O3L1ZS | Returns the Level 1 of the Zenith Sky Ozone | O3L1ZS | Get O3ZS |
O3L1_5ZS | Returns the Level 1.5 of the Zenith Sky Ozone | O3L1_5ZS | Get O3L1_5ZS |
O3L2_0ZS | Returns the Level 2.0 of the Zenith Sky Ozone | O3L2_0ZS | Get O3L2_0ZS |
O3L1byStation, O3L1_5byStation, and O3L2_0byStation | For the requested station, returns the L1, L1_5 or L2_0 ozone product | O3L1byStation, O3L1_5byStation, and O3L2_0byStation | Get O3L1_5byStation |
O3L1ALLbyStation, O3L1_5ALLbyStation, and O3L2_0ALLbyStation | For the requested station, returns the L1, L1_5 or L2_0 ozone product, with both DS and ZS measurements | O3L1ALLbyStation, O3L1_5ALLbyStation, and O3L2_0ALLbyStation | Get O3L1_5ALLbyStation |
O3L1PRIObyStation, O3L1_5PRIObyStation, and O3L2_0PRIObyStation | For the requested station, returns the L1, L1_5 or L2_0 ozone product, with both DS and ZS measurements – the latter only if no DS measurements are available in the day | O3L1PRIObyStation, O3L1_5PRIObyStation, and O3L2_0PRIObyStation | Get O3L1_5PRIObyStation |
UNCL1 and UNCL1_V2 | Returns the Uncertainty L1 products for the standard and V2 Ozone algorithms | UNCL1 and UNCL1_V2 | Get UNCL1, Get UNCL1_V2 |
UNCL1_5 and UNCL1_5_V2 | Returns the Uncertainty L1.5 products for the standard and V2 Ozone algorithms | UNCL1_5 and UNCL1_5_V2 | Get UNCL1_5, Get UNCL1_5_V2 |
UNCL1byStation, UNCL1_V2byStation, UNCL1_5byStation and UNCL1_5_V2byStation | For the requested station, returns the Uncertainty L1 or L1.5 products for the standard or V2 Ozone algorithms | UNCL1byStation, UNCL1_V2byStation, UNCL1_5byStation, and UNCL1_5_V2byStation | Get UNCL1_5byStation |
In Products Description Ozone Level 1 there is a summary table with the output of this product
In Products Description Ozone Level 1.5 there is a summary table with product content
In Products Description Ozone Level 2.0 there is a summary table with the output of this product
gaw_id
or woudc_id
: GAW or WOUDC ID of the stationdate
: see Date in common inputsenddate
: see Enddate in common inputsformat
: see Formatmeans
: see meansgaw_id
or woudc_id
: GAW or WOUDC ID of the stationdate
: see Date in common inputsenddate
: see Enddate in common inputsformat
: see Formatmeans
: see meansobscode
: a numeric code indicating whether the observation corresponds to a DS (0) or ZS (3) measurementpriority
input option below)gaw_id
or woudc_id
: GAW or WOUDC ID of the stationdate
: see Date in common inputsenddate
: see Enddate in common inputsformat
: see Formatmeans
: see meanspriority
: set the priority of mesaurements' types. By default, this is set to DS,ZS
, but the user can also select ZS,DS
to show the DS measurements when no ZS are available in the dayobscode
: a numeric code indicating whether the observation corresponds to a DS (0) or ZS (3) measurementbrewerid
: this is the ID of the Brewer. This follows the format described in Brewerid in common inputsdate
: see Date in common inputsenddate
: see Enddate in common inputsformat
: see Formatbrewerid
: ID of the Brewerdate
: date in YYYY-MM-DD formatname
: station's nameid
: Eubrewnet's internal station IDlatitude
: station's latitude in +N degreeslongitude
: station's longitude in +W degreesheight
: station's altitude in metershteff_fun
: climatological series usedh_eff
: ozone effective altitude in kme_h_eff
: uncertainty of the ozone effective altitude in kmt_eff
: effective temperature in Ke_t_eff
: uncertainty of the effective temperature in Kpress
: station's pressure in mbare_press
: uncertainty of the station's pressure in mbarheff_r
: Rayleigh effective altitude in kme_heff_r
: uncertainty of the Rayleigh effective altitude in kmh_error_m
: difference between the ERA5 and TOMS effective altitudesh_error_std
: standard deviation of the ERA5-TOMS difference of effective altitudest_error_m
: difference between the ERA5 and TOMS effective temperaturest_error_std
: standard deviation of the ERA5-TOMS difference of effective temperaturesbrewerid
: see Brewerid in common inputsdate
: see Date in common inputsenddate
: see Enddate in common inputsformat
: see Formatcombined
: total combined uncertainty in DUsystematic
: systematic component of the uncertainty in DUrandom
: random component of the uncertainty in DUunc_flag
: flag describing wether default or Brewer-specific configuration parameters have been used, see this table.brewerid
: see Brewerid in common inputsdate
: see Date in common inputsenddate
: see Enddate in common inputsformat
: see Formatcombined
: total combined uncertainty in DUsystematic
: systematic component of the uncertainty in DUrandom
: random component of the uncertainty in DUunc_flag
: flag describing wether default or Brewer-specific configuration parameters have been used (flag values up to 2048), and if L1.5 corrections are included (flag values starting at 4096), see this table.gaw_id
or woudc_id
: GAW or WOUDC ID of the stationdate
: see Date in common inputsenddate
: see Enddate in common inputsformat
: see Formatmeans
: see meansThe main output of the PROCESS functions is the same as their GET equivalents, but here the calculation is done in real time, usually starting from the previous level. This makes the PROCESS functions much slower, so we recommend using the GET equivalents when available.
Function | Description | Help | Example |
---|---|---|---|
O3L1 | Returns the Level 1 of Ozone | O3L1 | Process O3L1 |
O3L1_5 | Returns the Level 1.5 of Ozone | O3L1_5 | Process O3L1_5 |
O3L2_0 | Returns the Level 2.0 of Ozone | O3L2_0 | Process O3L2_0 |
UNCL1 and UNCL1_V2 | Returns L1 uncertatinty for the standard and V2 Ozone algorithms | UNCL1 and UNCL1_V2 | Process UNCL1 Process UNCL1_V2 |
UNCL1_5 and UNCL1_5_V2 | Returns L1.5 uncertatinty for the standard and V2 Ozone algorithms | UNCL1_5 and UNCL1_5_V2 | Process UNCL1_5 Process UNCL1_5_V2 |
TempCoef | Returns SL Temperature analysis | TempCoef | Process TempCoef |
In Products Description Ozone Level 1 there is a table with a summary of this function's output
In Products Description Ozone Level 1.5 there is a table with a summary of this function's output
In Products Description Ozone Level 2.0 there is a table with summary of this function's output
brewerid
: see Brewerid in common inputsdate
: see Date in common inputsenddate
: see Enddate in common inputsformat
: see Formatcombined
: total combined uncertainty in DUsystematic
: systematic component of the uncertainty in DUrandom
: random component of the uncertainty in DUunc_flag
: flag describing wether default or Brewer-specific configuration parameters have been used, see this table.u_dt_f0
, u_dt_f1
, u_dt_f2
, u_dt_f3
, u_dt_f4
, u_dt_f5
: Uncertainty of the Dead Time Corrected Operational-Wavelength counts per second for slits 0, 1, 2, 3, 4, and 5 (does not include the Rayleigh correction)u_temp_r6
: Uncertainty of the Temperature Corrected Operational counts per second for R6 (does not include the Rayleigh correction) in R6 unitsu_a1_xsec_v1
(u_a1_xsec_v2
): Uncertainty of the absorption cross section component in (atm-cm)-1 unitsu_a1_grad_v1
(u_a1_grad_v2
): Uncertainty of the effective temperature gradient component in (atm-cm)-1 unitsu_a1_step_v1
(u_a1_step_v2
): Uncertainty of the wavelength gradient component in (atm-cm)-1 unitsu_a1_v1
(u_a1_v2)
: Uncertainty of the ozone absorption coefficient in (atm-cm)-1 unitsairmass_rayleigh_uncertainty
: Uncertainty of the Rayleigh Airmassairmass_uncertainty
(airmass_uncertainty_v2
): Uncertainty of the Ozone Airmasszenith_angle_uncertainty
: Uncertainty of the Solar Zenith Angle in degreesu_ms9_v1
(u_ms9_v2
): Second double ratio uncertainty in R6 unitsu_b
(u_b_v2
): Uncertainty of the weighted Rayleigh scattering coefficients in cm-1brewerid
: see Brewerid in common inputsdate
: see Date in common inputsenddate
: see Enddate in common inputsformat
: see Formatcombined
: total combined uncertainty in DUsystematic
: systematic component of the uncertainty in DUrandom
: random component of the uncertainty in DUunc_flag
: flag describing wether default or Brewer-specific configuration parameters have been used (flag values up to 2048), and if L1.5 corrections are included (flag values starting at 4096), see this table.debug
input argument, the output additionally contains the following variables:etco3rate
: ETC in R6 unitso3o3rate
: ozone absorption coefficient (A1) in (atm-cm)-1ms9
: second double ratio in R6 unitsc_etc
: ETC sensitivity component of the combined uncertainty in DUc_meas
: Measurement sensitivity component of the combined uncertainty in DUc_b
: Rayleigh coefficient sensitivity component of the combined uncertainty in DUc_pressure
: Pressure sensitivity component of the combined uncertainty in DUc_rayleigh_airmass
: Rayleigh airmass sensitivity component of the combined uncertainty in DUc_a1
: Ozone Absorption coefficient sensitivity component of the combined uncertainty in DUc_airmass
: Ozone airmass sensitivity component of the combined uncertainty in DUu_ms9
: Uncertainty of the MS9 double-ratio (corrected by Rayleigh scattering) in R6 unitsu_a1
: Uncertainty of the ozone absorption coefficient in (atm-cm)-1airmass_uncertainty
: Uncertainty of the Ozone Airmassu_sl_corr
: Uncertainty of the correction associated to the Standard Lamp in DUu_etc_corr
: Uncertainty of the correction associated to the Filter Non-Linearity in DUu_st_corr
: Uncertainty of the correction associated to the Stray Light in DUe_etco3rate_v1
(e_etco3rate_v2
): ETC error from the Brewer configuration in R6 units&rejected
option in the url.
The following table describes the values of the unc_flag
field found in the UNCL1 and UNCL1_V2 and UNCL1_5 and UNCL1_5_V2 functions
Correction | Component | Type | Flag | Default Value | Units | Source |
---|---|---|---|---|---|---|
Dead Time | Measurement | Systematic | 1 | 1E-9 | sec | Fountoulakis et al., AMT 9(4), 1799-1816 (2016) |
Temperature Coeff. | Measurement | Systematic | 2 | 0.093578 | counts/s/ºC | Campaign maximum |
Sun Scan | Measurement | Systematic | 4 | 0.02262 | %MS9/step | Campaign maximum |
Time (SZA) | Measurement | Systematic | 8 | 1 | sec | Software |
Ozone Eff. Temperature (V1) | Absorption | Random | 16 | 3.95 | ºC | Climatology |
Ozone Eff. Temperature (V2) | Absorption | Random | 16 | 1.56 | ºC | Climatology |
Temperature Grad. | Absorption | Random | 32 | 0.0149 | (atm-cm)-1/K | Dispersion |
Wavelength Grad. (V1) | Absorption | Random | 64 | -0.00102 | (atm-cm)-1/step | Dispersion |
Wavelength Grad. (V2) | Absorption | Random | 64 | -0.00097 | (atm-cm)-1/step | Dispersion |
Rayleigh Eff. Altitude | Rayleigh airmass | Random | 128 | 0.5 | km | Constant |
Ozone Eff. Altitude (V1) | Ozone airmass | Random | 256 | 0.75 | km | Climatology |
Ozone Eff. Altitude (V2) | Ozone airmass | Random | 256 | 0.54 | km | Climatology |
Rayleigh Scatt. Coeff. (V1) | Scattering Coeff | Systematic | 512 | 1 | % | hard-coded |
Rayleigh Scatt. Coeff. (V2) | Scattering Coeff | Systematic | 512 | 0.002 | % | Bodhaine et al., Journal of Atmospheric and Oceanic Technology, 16(11), 1854-1861 (1999) |
Pressure | Pressure | Random | 1024 | 15 | milibars | Climatology |
ETC (V1) | ETC | Systematic | 2048 | 15 | R6 | Campaing Mean |
ETC (V2) | ETC | Systematic | 2048 | 15 | R6 | Campaing Mean |
Standard Lamp (V1) | Standard Lamp | Systematic | 4096 | Yes/No | Dobson Units | |
Standard Lamp (V2) | Standard Lamp | Systematic | 4096 | Yes/No | Dobson Units | |
Filter No-Linearity (V1) | Filter No-Linearity | Systematic | 8192 | Yes/No | Dobson Units | |
Filter No-Linearity (V2) | Filter No-Linearity | Systematic | 8192 | Yes/No | Dobson Units | |
Stray Light (V1) | Stray Light | Systematic | 16384 | Yes/No | Dobson Units | |
Stray Light (V2) | Stray Light | Systematic | 16384 | Yes/No | Dobson Units |
The following table describes the values of the filter_flag
field found in the UNCL1_5 and UNCL1_5_V2 functions. Note the values below 1024 correspond to the standard ozone ''filter_flag''
Name | Set when | Value |
---|---|---|
FLAG_OZONE_STD_FILT | Ozone standard deviation above 2.5 (ds) or 5 (zs), unless another values is set in the configuration | 1 |
FLAG_AIRMASS_FILT | above airmass 3.5 (brewers affected by straylight) or 6 (straylight correction provided or MKIII), unless another value is set in the configuration | 2 |
FLAG_HG_FILT | no valid HG | 4 |
FLAG_MIN_FILT | below min Ozone Value, as set in the configuration | 8 |
FLAG_MAX_FILT | above max Ozone Value, as set in the configuration | 16 |
FLAG_BLACKLIST | date and time included in the Exclusion List | 32 |
FLAG_U_O3 | outside the [0,25] limit for the combined uncertainty of individual measurements | 1024 |
FLAG_U_O3_SYS | outside the [0,25] limit for the systematic uncertainty of individual measurements | 2048 |
FLAG_U_O3_RAN | outside the [0,25] limit for the random uncertainty of individual measurements | 4096 |
These functions use the PROCESS functions to update Eubrewnet's database, so that the data is available to the GET functions. This process is automatically done when a configuration is updated, so users do not need to directly access these functions.
O3L1 | Update the Database content for the Level 1 of Ozone | O3L1 | Update O3L1 |
---|---|---|---|
O3L1_5 | Update the Database content for 1.5 of Ozone | O3L1_5 | Update O3L1_5 |
O3L2_0 | Update the Database content for 2.0 of Ozone | O3L2_0 | Update O3L2_0 |
Data with a non-zero filter_flag
value will not be included in the O3L1_5 and AODL1_5 output unless &rejected
is added included in the URL. For example, the output of
only shows data with filter_flag
equal to zero, whereas
includes observations with filter_flag values of 1, 2, 3, 6…, which will would have been hidden were it not for the &reject
included in the URL
The filter_flag
values correspond to the following conditions and variables:
Flag type | Flag name | Description | Value |
---|---|---|---|
Ozone data filter | FLAG_OZONE_STD_FILT | Above the ozone standard deviation threshold | 1 |
Ozone data filter | FLAG_AIRMASS_FILT | Above max airmass | 2 |
Ozone data filter | FLAG_HG_FILT | Wrong HG | 4 |
Ozone data filter | FLAG_MIN_FILT | Below Min Ozone Value | 8 |
Ozone data filter | FLAG_MAX_FILT | Above Max Ozone Value | 16 |
Ozone data filter | FLAG_BLACKLIST | Date in Exclusion List | 32 |
Uncertainty data filter | FLAG_U_O3 | outside the [0,25] limit for combined uncertainty | 1024 |
Uncertainty data filter | FLAG_U_O3_SYS | outside the [0,25] limit for systematic uncertainty | 2048 |
Uncertainty data filter | FLAG_U_O3_RAN | outside the [0,25] limit for random uncertainty | 4096 |
You can also omit any of these data filters adding allowfilter=xxx[,yyy]
to the URL, where xxx
is one of the Flag names in the above table. Note you can pass more than one Flag name, separating them by commas. Capitalization is not taken into account.
Thus for example, if the last URL is changed to
both the FLAG_OZONE_STD_FILT and FLAG_HG_FILT data filters will be ignored and all the data will have a filter_flag
value of 0.
last_measurement
brewerid
or gaw_id
, to return the data of a specific Brewer or of all the Brewers present at a station, respectivelybrewerid
, last command
@time when the last command was run
, ozone value
@time of the Direct Sun summary
157, hk@14:49:54, dss:289.1@14:46:22 183, co@14:40:40, dss:286.8@12:06:03 185, co@14:24:57, dss:283.9@10:45:09 257, hk@14:50:02, dss:289.1@14:48:14 258, hk@14:48:17, dss:283.3@14:42:50