API

GEOGloWS.jl API

The GEOGloWS.jl API sends requests to the GEOGloWS ECMWF Streamflow service and formats the returned data into Julia Types. For more in depth documentation on specific methods that this package interfaces with, see the official GEOGloWS Documention.

Model run data

available_data()

returns the regions available and their corresponding available dates. See also available_regions() and available_dates()

available_regions()

returns returns the available regions.

available_dates(region::AbstractString)

returns the available forecast dates.

Forecast data

forecast_stats(parameters::AbstractDict{Symbol,<:Any})

returns statistics calculated from 51 forecast ensemble members.

forecast_stats(reach_id::Int; return_format::Symbol = :csv)

returns statistics calculated from 51 forecast ensemble members.

forecast_stats(reach_id::Int,date::AbstractString; return_format::Symbol = :csv)

returns statistics calculated from 51 forecast ensemble members.

forecast_stats(reach_id::Int,date::TimeType; return_format::Symbol = :csv)

returns statistics calculated from 51 forecast ensemble members.

forecast_stats(lat::Real, lon::Real; return_format::Symbol = :csv)

returns statistics calculated from 51 forecast ensemble members.

forecast_stats(lat::Real, lon::Real, date::AbstractString; return_format::Symbol = :csv)

returns statistics calculated from 51 forecast ensemble members.

forecast_stats(lat::Real, lon::Real, date::TimeType; return_format::Symbol = :csv)

returns statistics calculated from 51 forecast ensemble members.

forecast_ensembles(parameters::AbstractDict{Symbol,<:Any})

returns a timeseries for each of the 51 normal forecast ensemble members and the 52nd higher resolution forecast

forecast_ensembles(reach_id::Int; return_format::Symbol = :csv)

returns a timeseries for each of the 51 normal forecast ensemble members and the 52nd higher resolution forecast

forecast_ensembles(reach_id::Int, date::AbstractString; return_format::Symbol = :csv)

returns a timeseries for each of the 51 normal forecast ensemble members and the 52nd higher resolution forecast

forecast_ensembles(reach_id::Int, date::TimeType; return_format::Symbol = :csv)

returns a timeseries for each of the 51 normal forecast ensemble members and the 52nd higher resolution forecast

forecast_ensembles(lat::Real, lon::Real; return_format::Symbol = :csv)

returns a timeseries for each of the 51 normal forecast ensemble members and the 52nd higher resolution forecast

forecast_ensembles(lat::Real, lon::Real, date::AbstractString; return_format::Symbol = :csv)

returns a timeseries for each of the 51 normal forecast ensemble members and the 52nd higher resolution forecast

forecast_ensembles(lat::Real, lon::Real, date::TimeType; return_format::Symbol = :csv)

returns a timeseries for each of the 51 normal forecast ensemble members and the 52nd higher resolution forecast

forecast_records(parameters::AbstractDict{Symbol,<:Any})

retrieves the rolling record of the mean of the forecasted streamflow during the first 24 hours of each day's forecast. That is, each day day after the streamflow forecasts are computed, the average of first 8 of the 3-hour timesteps are recorded to a csv.

forecast_records(reach_id::Int; return_format::Symbol = :csv)

retrieves the rolling record of the mean of the forecasted streamflow during the first 24 hours of each day's forecast. That is, each day day after the streamflow forecasts are computed, the average of first 8 of the 3-hour timesteps are recorded to a csv.

forecast_records(lat::Real, lon::Real; return_format::Symbol = :csv)

retrieves the rolling record of the mean of the forecasted streamflow during the first 24 hours of each day's forecast. That is, each day day after the streamflow forecasts are computed, the average of first 8 of the 3-hour timesteps are recorded to a csv.

forecast_records(reach_id::Int, start_date::TimeType, end_date::TimeType; return_format::Symbol = :csv,)

retrieves the rolling record of the mean of the forecasted streamflow during the first 24 hours of each day's forecast. That is, each day day after the streamflow forecasts are computed, the average of first 8 of the 3-hour timesteps are recorded to a csv.

forecast_records(reach_id::Int, start_date::AbstractString, end_date::AbstractString; return_format::Symbol = :csv,)

retrieves the rolling record of the mean of the forecasted streamflow during the first 24 hours of each day's forecast. That is, each day day after the streamflow forecasts are computed, the average of first 8 of the 3-hour timesteps are recorded to a csv.

forecast_records(lat::Real, lon::Real, start_date::TimeType, end_date::TimeType; return_format::Symbol = :csv,)

retrieves the rolling record of the mean of the forecasted streamflow during the first 24 hours of each day's forecast. That is, each day day after the streamflow forecasts are computed, the average of first 8 of the 3-hour timesteps are recorded to a csv.

forecast_records(lat::Real, lon::Real, start_date::AbstractString, end_date::AbstractString; return_format::Symbol = :csv,)

retrieves the rolling record of the mean of the forecasted streamflow during the first 24 hours of each day's forecast. That is, each day day after the streamflow forecasts are computed, the average of first 8 of the 3-hour timesteps are recorded to a csv.

forecast_warnings(parameters::AbstractDict{Symbol,<:Any})

returns a csv created to summarize the potential return period level flow events coming to the reaches in a specified region. The CSV contains a column for the reach_id, lat of the reach, lon of the reach, maximum forecasted flow in the next 15 day forecast, and a column for each of the return periods (2, 10, 20, 25, 50, 100) which will contain the date when the forecast is first expected to pass that threshold

forecast_warnings(; return_format::Symbol = :csv)

returns a csv created to summarize the potential return period level flow events coming to the reaches in a specified region. The CSV contains a column for the reach_id, lat of the reach, lon of the reach, maximum forecasted flow in the next 15 day forecast, and a column for each of the return periods (2, 10, 20, 25, 50, 100) which will contain the date when the forecast is first expected to pass that threshold

forecast_warnings(date::TimeType; return_format::Symbol = :csv)

returns a csv created to summarize the potential return period level flow events coming to the reaches in a specified region. The CSV contains a column for the reach_id, lat of the reach, lon of the reach, maximum forecasted flow in the next 15 day forecast, and a column for each of the return periods (2, 10, 20, 25, 50, 100) which will contain the date when the forecast is first expected to pass that threshold

forecast_warnings(region::AbstractString; return_format::Symbol = :csv)

returns a csv created to summarize the potential return period level flow events coming to the reaches in a specified region. The CSV contains a column for the reach_id, lat of the reach, lon of the reach, maximum forecasted flow in the next 15 day forecast, and a column for each of the return periods (2, 10, 20, 25, 50, 100) which will contain the date when the forecast is first expected to pass that threshold

forecast_warnings(region::AbstractString, date::TimeType; return_format::Symbol = :csv)

returns a csv created to summarize the potential return period level flow events coming to the reaches in a specified region. The CSV contains a column for the reach_id, lat of the reach, lon of the reach, maximum forecasted flow in the next 15 day forecast, and a column for each of the return periods (2, 10, 20, 25, 50, 100) which will contain the date when the forecast is first expected to pass that threshold

forecast_warnings(region::AbstractString, date::AbstractString; return_format::Symbol = :csv)

returns a csv created to summarize the potential return period level flow events coming to the reaches in a specified region. The CSV contains a column for the reach_id, lat of the reach, lon of the reach, maximum forecasted flow in the next 15 day forecast, and a column for each of the return periods (2, 10, 20, 25, 50, 100) which will contain the date when the forecast is first expected to pass that threshold

Historic data

historic_simulation(parameters::AbstractDict{Symbol,<:Any})

returns simulated streamflow data based on the ERA-5 dataset. A successful response will return a time series with date-value pairs.

historic_simulation(reach_id::Int; return_format::Symbol = :csv)

returns simulated streamflow data based on the ERA-5 dataset. A successful response will return a time series with date-value pairs.

historic_simulation(lat::Real, lon::Real; return_format::Symbol = :csv)

returns simulated streamflow data based on the ERA-5 dataset. A successful response will return a time series with date-value pairs.

return_periods(parameters::AbstractDict{Symbol,<:Any})

returns the 2, 5, 10, 25, 50, and 100 year return period based on the 40-years simulated streamflow data and using the Gumbel Method. A successful response will return key-value pairs for earch return period along with metadata.

return_periods(reach_id::Int; return_format::Symbol = :csv, forcing::Symbol = :era_5,)

returns the 2, 5, 10, 25, 50, and 100 year return period based on the 40-years simulated streamflow data and using the Gumbel Method. A successful response will return key-value pairs for earch return period along with metadata.

return_periods(lat::Real, lon::Real; return_format::Symbol = :csv, forcing::Symbol = :era_5,)

returns the 2, 5, 10, 25, 50, and 100 year return period based on the 40-years simulated streamflow data and using the Gumbel Method. A successful response will return key-value pairs for earch return period along with metadata.

daily_averages(parameters::AbstractDict{Symbol,<:Any})

returns the average flow for each day of the year for the Historic Simulation

daily_averages(reach_id::Int; return_format::Symbol = :csv)

returns the average flow for each day of the year for the Historic Simulation

daily_averages(lat::Real, lon::Real; return_format::Symbol = :csv)

returns the average flow for each day of the year for the Historic Simulation

monthly_averages(parameters::AbstractDict{Symbol,<:Any})

returns the average flow for each month of the year for the Historic Simulation

monthly_averages(reach_id::Int; return_format::Symbol = :csv)

returns the average flow for each month of the year for the Historic Simulation

monthly_averages(lat::Real, lon::Real; return_format::Symbol = :csv)

returns the average flow for each month of the year for the Historic Simulation