EarthSciData.DataFrequencyInfoType

Information about the temporal frequency of archived data.

  • start: Beginning of time of the time series.

  • frequency: Interval between each record.

  • centerpoints: Time representing the temporal center of each record.

source
EarthSciData.DataSetInterpolatorType

DataSetInterpolators are used to interpolate data from a FileSet to represent a given time and location. Data is loaded (and downloaded) lazily, so the first time you use it on a for a given dataset and time period it may take a while to load. Each time step is downloaded and loaded as it is needed during the simulation and cached on the hard drive at the path specified by the \$EARTHSCIDATADIR environment variable, or in a scratch directory if that environment variable has not been specified. The interpolator will also cache data in memory representing the data records for the times immediately before and after the current time step.

varname is the name of the variable to interpolate. default_time is the time to use when initializing the interpolator. spatial_ref is the spatial reference system that the simulation will be using. stream specifies whether the data should be streamed in as needed or loaded all at once.

source
EarthSciData.FileSetType

An interface for types describing a dataset, potentially comprised of multiple files.

To satisfy this interface, a type must implement the following methods:

  • relpath(::FileSet, ::DateTime)
  • url(::FileSet, ::DateTime)
  • localpath(::FileSet, t::DateTime)
  • DataFrequencyInfo(::FileSet)::DataFrequencyInfo
  • loadmetadata(::FileSet, varname)::MetaData
  • loadslice!(cache::AbstractArray, ::FileSet, ::DateTime, varname)
  • varnames(::FileSet)
  • get_geometry(::FileSet, ::MetaData) (Returns the geometry of the data)
source
EarthSciData.GEOSFPFileSetType

GEOS-FP data as archived for use with GEOS-Chem classic.

Domain options (as of 2022-01-30):

  • 4x5
  • 0.125x0.15625_AS
  • 0.125x0.15625_EU
  • 0.125x0.15625_NA
  • 0.25x0.3125
  • 0.25x0.3125_AF
  • 0.25x0.3125_AS
  • 0.25x0.3125_CH
  • 0.25x0.3125_EU
  • 0.25x0.3125_ME
  • 0.25x0.3125_NA
  • 0.25x0.3125_OC
  • 0.25x0.3125_RU
  • 0.25x0.3125_SA
  • 0.5x0.625
  • 0.5x0.625_AS
  • 0.5x0.625_CH
  • 0.5x0.625_EU
  • 0.5x0.625_NA
  • 2x2.5
  • 4x5
  • C180
  • C720
  • NATIVE
  • c720

Possible filetypes are:

  • :A1
  • :A3cld
  • :A3dyn
  • :A3mstC
  • :A3mstE
  • :I3

See http://geoschemdata.wustl.edu/ExtData/ for current options.

source
EarthSciData.MetaDataType

Information about a data array.

  • coords: The locations associated with each data point in the array.

  • unit_str: Physical units of the data, e.g. m s⁻¹.

  • description: Description of the data.

  • dimnames: Dimensions of the data, e.g. (lat, lon, layer).

  • varsize: Dimension sizes of the data, e.g. (180, 360, 30).

  • native_sr: The spatial reference system of the data, e.g. "+proj=longlat +datum=WGS84 +no_defs" for lat-lon data.

  • xdim: The index number of the x-dimension (e.g. longitude)

  • ydim: The index number of the y-dimension (e.g. latitude)

  • zdim: The index number of the z-dimension (e.g. vertical level)

  • staggering: Grid staggering for each dimension. (true=edge-aligned, false=center-aligned)

source
EarthSciData.NetCDFOutputterType

Create an EarthSciMLBase.Operator to write simulation output to a NetCDF file.

  • filepath::String: The path of the NetCDF file to write to

  • file::Any: The netcdf dataset

  • vars::Any: The netcdf variables corresponding to the state variables

  • tvar::Any: The netcdf variable for time

  • h::Int64: Current time index for writing

  • time_interval::AbstractFloat: Simulation time interval (in seconds) at which to write to disk

  • extra_vars::AbstractVector: Extra observed variables to write to disk

  • extra_var_fs::AbstractVector: Functions to get the extra vars

  • grid::Any: Spatial grid specification

  • dtype::Any: Data type of the output

  • tref::Any: Reference time for the simulation, used to convert to Unix time

source
EarthSciData.GEOSFPMethod
GEOSFP(domain, domaininfo; name, stream)

A data loader for GEOS-FP data as archived for use with GEOS-Chem classic.

Domain options (as of 2022-01-30):

  • 4x5
  • 0.125x0.15625_AS
  • 0.125x0.15625_EU
  • 0.125x0.15625_NA
  • 0.25x0.3125
  • 0.25x0.3125_AF
  • 0.25x0.3125_AS
  • 0.25x0.3125_CH
  • 0.25x0.3125_EU
  • 0.25x0.3125_ME
  • 0.25x0.3125_NA
  • 0.25x0.3125_OC
  • 0.25x0.3125_RU
  • 0.25x0.3125_SA
  • 0.5x0.625
  • 0.5x0.625_AS
  • 0.5x0.625_CH
  • 0.5x0.625_EU
  • 0.5x0.625_NA
  • 2x2.5
  • 4x5
  • C180
  • C720
  • NATIVE
  • c720

The native data type for this dataset is Float32.

stream specifies whether the data should be streamed in as needed or loaded all at once.

See http://geoschemdata.wustl.edu/ExtData/ for current data domain options.

source
EarthSciData.NEI2016MonthlyEmisMethod
NEI2016MonthlyEmis(sector, domaininfo; scale, name, stream)

A data loader for CMAQ-formatted monthly US National Emissions Inventory data for year 2016, available from: https://gaftp.epa.gov/Air/emismod/2016/v1/gridded/monthly_netCDF/. The emissions here are monthly averages, so there is no information about diurnal variation etc.

The emissions are returned as mixing ratios in units of kg/kg/s by converting from the native flux density (kg/m²/s) using:

mixing_ratio = flux / (g0_100 * delp_dry_surface)

where g0100 ≈ 10.197 kg/m² and delpdry_surface is the dry pressure thickness (physically unit in hPa, but here is unitless) that varies spatially across the domain.

scale is a scaling factor to apply to the emissions data. The default value is 1.0.

stream specifies whether the data should be streamed in as needed or loaded all at once.

Conservative regridding (via ConservativeRegridding.jl) is used by default to map emissions from the native NEI Lambert Conformal Conic grid to the simulation domain grid, preserving total emissions mass.

source
EarthSciData.create_interp_equationMethod
create_interp_equation(
    itp,
    filename,
    t,
    t_ref,
    coords;
    wrapper_f
)

Create an equation that interpolates the given dataset at the given time and location. filename is an identifier for the dataset, and t is the time variable. wrapper_f can specify a function to wrap the interpolated value, for example eq -> eq / 2 to divide the interpolated value by 2.

source
EarthSciData.data2vecormatMethod

Convert an N-D array to a 2-D matrix with where the horizontal dimensions are rows and the vertical dimension is the columns. If the input is 2-D, it is converted to a vector.

source
EarthSciData.dayofweek_itp_COMethod
dayofweek_itp_CO(t, lon)

Day of week interpolation function that returns the scale factor for a given time. Returns different emission scaling factors based on the day of week.

source
EarthSciData.delp_dry_surface_itpMethod
delp_dry_surface_itp(lon, lat)

Interpolate the delpdrysurface field at a given longitude and latitude. Returns the dry pressure thickness value in Pa.

source
EarthSciData.diurnal_itpMethod
diurnal_itp(t, lon)

Diurnal interpolation function that returns the scale factor for a given time. Returns different emission scaling factors based on the hour of day.

source
EarthSciData.interp!Method
interp!(itp, t, locs)

Return the value of the given variable from the given dataset at the given time and location.

source
EarthSciData.knots2rangeFunction

Convert a vector of evenly spaced grid points to a range. The reltol parameter specifies the relative tolerance for the grid spacing, which is necessary to account for different numbers of days in each month and things like that.

source
EarthSciData.loadslice!Method
loadslice!(data, fs, t, varname)

Load the NEI data for the given variable name at the given time. This loads data in kg/s/m^2 units on the NEI source grid for regridding.

source
EarthSciData.partialderivatives_δPδlev_geosfpMethod
partialderivatives_δPδlev_geosfp(geosfp; default_lev)

Return a function to calculate coefficients to multiply the δ(u)/δ(lev) partial derivative operator by to convert a variable named u from δ(u)/δ(lev)toδ(u)/δ(P), i.e. from vertical level number to pressure in hPa. The return format iscoordinateindex => conversionfactor`.

source
EarthSciData.regridderMethod

Create a regridding function for the given file set, metadata, and domain. If any dimensions are staggered, use interpolation; otherwise, use conservative regridding. extrapolate_type specifies the extrapolation method for interpolation; it is only used when interpolation is selected.

source
EarthSciData.relpathMethod
relpath(fs, t)

File path on the server relative to the host root; also path on local disk relative to ENV["EARTHSCIDATADIR"] (or a scratch directory if that environment variable is not set).

source
EarthSciData.relpathMethod
relpath(fs, t)

File path on the server relative to the host root; also path on local disk relative to ENV["EARTHSCIDATADIR"].

source