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
GEOGloWS.available_data
— Functionavailable_data()
returns the regions available and their corresponding available dates. See also available_regions()
and available_dates()
GEOGloWS.available_regions
— Functionavailable_regions()
returns returns the available regions.
GEOGloWS.available_dates
— Functionavailable_dates(region::AbstractString)
returns the available forecast dates.
Forecast data
GEOGloWS.forecast_stats
— Functionforecast_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.
GEOGloWS.forecast_ensembles
— Functionforecast_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
GEOGloWS.forecast_records
— Functionforecast_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.
GEOGloWS.forecast_warnings
— Functionforecast_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
GEOGloWS.historic_simulation
— Functionhistoric_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.
GEOGloWS.return_periods
— Functionreturn_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.
GEOGloWS.daily_averages
— Functiondaily_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
GEOGloWS.monthly_averages
— Functionmonthly_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