Skip to content
Sindbad.Types Module
julia
Types

The Types module consolidates and organizes all the types used in the SINDBAD framework into a central location. This ensures a single source for type definitions, promoting consistency and reusability across all SINDBAD packages. It also provides helper functions and utilities for working with these types.

Purpose

This module serves as the backbone for type definitions in SINDBAD, ensuring modularity and extensibility. It provides a unified hierarchy for SINDBAD-specific types and includes utilities for introspection, type manipulation, and documentation.

Dependencies

External (third-party)

  • InteractiveUtils: Interactive exploration and debugging helpers.

  • Base.Docs: Documentation utilities for type introspection.

Included Files

  • LandTypes.jl: Types for land variables and land/array structures used during model execution.

  • ArrayTypes.jl: Specialized array types for efficient data handling.

  • InputTypes.jl: Types for input data/configuration (forcing/observation metadata and wiring).

  • SimulationTypes.jl: Types representing simulation setup/configuration and results.

  • ParameterOptimizationTypes.jl: Types for optimization workflows (algorithms, options, cost hooks).

  • MachineLearningTypes.jl: Types supporting machine-learning workflows and data structures.

Notes

  • The Types module serves as the backbone for type definitions in SINDBAD, ensuring modularity and extensibility.

  • Each type is documented with its purpose via the purpose function, making it easier for developers to understand and extend the framework.

  • The SindbadTypes abstract type serves as the base for all Julia types in the SINDBAD framework.

Examples

  1. Querying type purpose:
julia
using Sindbad.Types
purpose(BayesOptKMaternARD5)  # Returns the purpose string for the type
  1. Working with SINDBAD types:
julia
using Sindbad.Types
# All SINDBAD types are available through this module

Functions

Types

ActivationType

Sindbad.Types.ActivationType Type

ActivationType

Abstract type for activation functions used inMachine Learningmodels

Type Hierarchy

ActivationType <: MachineLearningTypes <: SindbadTypes <: Any


Extended help

Available methods/subtypes:

  • CustomSigmoid: Use a custom sigmoid activation function. In this case, the k_σ parameter in ml_model sections of the settings is used to control the steepness of the sigmoid function.

  • FluxRelu: Use Flux.jl ReLU activation function

  • FluxSigmoid: Use Flux.jl Sigmoid activation function

  • FluxTanh: Use Flux.jl Tanh activation function


AllForwardModels

Sindbad.Types.AllForwardModels Type

AllForwardModels

Use all forward models for spinup

Type Hierarchy

AllForwardModels <: SpinupMode <: SpinupTypes <: SindbadTypes <: Any


ArrayTypes

Sindbad.Types.ArrayTypes Type

ArrayTypes

Abstract type for all array types in SINDBAD

Type Hierarchy

ArrayTypes <: SindbadTypes <: Any


Extended help

Available methods/subtypes:

  • ModelArrayType: Abstract type for internal model array types in SINDBAD

    • ModelArrayArray: Use standard Julia arrays for model variables

    • ModelArrayStaticArray: Use StaticArrays for model variables

    • ModelArrayView: Use array views for model variables

  • OutputArrayType: Abstract type for output array types in SINDBAD

    • OutputArray: Use standard Julia arrays for output

    • OutputMArray: Use MArray for output

    • OutputSizedArray: Use SizedArray for output

    • OutputYAXArray: Use YAXArray for output


ArrayView

Sindbad.Types.ArrayView Type
julia
ArrayView{T,N,S<:AbstractArray{<:Any,N}}

Fields:

  • s::S: The underlying array being viewed.

  • groupname::Symbol: The name of the group containing the array.

  • arrayname::Symbol: The name of the array being accessed.


BackendNetcdf

Sindbad.Types.BackendNetcdf Type

BackendNetcdf

Use NetCDF format for input data

Type Hierarchy

BackendNetcdf <: DataFormatBackend <: InputTypes <: SindbadTypes <: Any


BackendZarr

Sindbad.Types.BackendZarr Type

BackendZarr

Use Zarr format for input data

Type Hierarchy

BackendZarr <: DataFormatBackend <: InputTypes <: SindbadTypes <: Any


BayesOptKMaternARD5

Sindbad.Types.BayesOptKMaternARD5 Type

BayesOptKMaternARD5

Bayesian Optimization using Matern 5/2 kernel with Automatic Relevance Determination from BayesOpt.jl

Type Hierarchy

BayesOptKMaternARD5 <: ParameterOptimizationMethod <: ParameterOptimizationTypes <: SindbadTypes <: Any


CMAEvolutionStrategyCMAES

Sindbad.Types.CMAEvolutionStrategyCMAES Type

CMAEvolutionStrategyCMAES

Covariance Matrix Adaptation Evolution Strategy (CMA-ES) from CMAEvolutionStrategy.jl

Type Hierarchy

CMAEvolutionStrategyCMAES <: ParameterOptimizationMethod <: ParameterOptimizationTypes <: SindbadTypes <: Any


CalcFoldFromSplit

Sindbad.Types.CalcFoldFromSplit Type

CalcFoldFromSplit

Use a split of the data to calculate the folds for cross-validation. The default wat to calculate the folds is by splitting the data into k-folds. In this case, the split is done on the go based on the values given in ml_training.split_ratios and n_folds.

Type Hierarchy

CalcFoldFromSplit <: MachineLearningTrainingType <: MachineLearningTypes <: SindbadTypes <: Any


ConcatData

Missing docstring.

Missing docstring for ConcatData. Check Documenter's build log for details.


CostMethod

Sindbad.Types.CostMethod Type

CostMethod

Abstract type for cost calculation methods in SINDBAD

Type Hierarchy

CostMethod <: ParameterOptimizationTypes <: SindbadTypes <: Any


Extended help

Available methods/subtypes:

  • CostModelObs: cost calculation between model output and observations

  • CostModelObsLandTS: cost calculation between land model output and time series observations

  • CostModelObsMT: multi-threaded cost calculation between model output and observations

  • CostModelObsPriors: cost calculation between model output, observations, and priors. NOTE THAT THIS METHOD IS JUST A PLACEHOLDER AND DOES NOT CALCULATE PRIOR COST PROPERLY YET


CostModelObs

Sindbad.Types.CostModelObs Type

CostModelObs

cost calculation between model output and observations

Type Hierarchy

CostModelObs <: CostMethod <: ParameterOptimizationTypes <: SindbadTypes <: Any


CostModelObsLandTS

Sindbad.Types.CostModelObsLandTS Type

CostModelObsLandTS

cost calculation between land model output and time series observations

Type Hierarchy

CostModelObsLandTS <: CostMethod <: ParameterOptimizationTypes <: SindbadTypes <: Any


CostModelObsMT

Sindbad.Types.CostModelObsMT Type

CostModelObsMT

multi-threaded cost calculation between model output and observations

Type Hierarchy

CostModelObsMT <: CostMethod <: ParameterOptimizationTypes <: SindbadTypes <: Any


CostModelObsPriors

Sindbad.Types.CostModelObsPriors Type

CostModelObsPriors

cost calculation between model output, observations, and priors. NOTE THAT THIS METHOD IS JUST A PLACEHOLDER AND DOES NOT CALCULATE PRIOR COST PROPERLY YET

Type Hierarchy

CostModelObsPriors <: CostMethod <: ParameterOptimizationTypes <: SindbadTypes <: Any


CustomSigmoid

Sindbad.Types.CustomSigmoid Type

CustomSigmoid

Use a custom sigmoid activation function. In this case, the k_σ parameter in ml_model sections of the settings is used to control the steepness of the sigmoid function.

Type Hierarchy

CustomSigmoid <: ActivationType <: MachineLearningTypes <: SindbadTypes <: Any


DataAggrOrder

Sindbad.Types.DataAggrOrder Type

DataAggrOrder

Abstract type for data aggregation order in SINDBAD

Type Hierarchy

DataAggrOrder <: ParameterOptimizationTypes <: SindbadTypes <: Any


Extended help

Available methods/subtypes:

  • SpaceTime: Aggregate data first over space, then over time

  • TimeSpace: Aggregate data first over time, then over space


DataFormatBackend

Sindbad.Types.DataFormatBackend Type

DataFormatBackend

Abstract type for input data backends in SINDBAD

Type Hierarchy

DataFormatBackend <: InputTypes <: SindbadTypes <: Any


Extended help

Available methods/subtypes:

  • BackendNetcdf: Use NetCDF format for input data

  • BackendZarr: Use Zarr format for input data


DoAggrObs

Missing docstring.

Missing docstring for DoAggrObs. Check Documenter's build log for details.


DoCalcCost

Sindbad.Types.DoCalcCost Type

DoCalcCost

Enable cost calculation between model output and observations

Type Hierarchy

DoCalcCost <: RunFlag <: SimulationTypes <: SindbadTypes <: Any


DoFilterNanPixels

Sindbad.Types.DoFilterNanPixels Type

DoFilterNanPixels

Enable filtering of NaN values in spatial data

Type Hierarchy

DoFilterNanPixels <: RunFlag <: SimulationTypes <: SindbadTypes <: Any


DoNotAggrObs

Missing docstring.

Missing docstring for DoNotAggrObs. Check Documenter's build log for details.


DoNotCalcCost

Sindbad.Types.DoNotCalcCost Type

DoNotCalcCost

Disable cost calculation between model output and observations

Type Hierarchy

DoNotCalcCost <: RunFlag <: SimulationTypes <: SindbadTypes <: Any


DoNotFilterNanPixels

Sindbad.Types.DoNotFilterNanPixels Type

DoNotFilterNanPixels

Disable filtering of NaN values in spatial data

Type Hierarchy

DoNotFilterNanPixels <: RunFlag <: SimulationTypes <: SindbadTypes <: Any


DoNotOutputAll

Sindbad.Types.DoNotOutputAll Type

DoNotOutputAll

Disable output of all model variables

Type Hierarchy

DoNotOutputAll <: OutputStrategy <: SimulationTypes <: SindbadTypes <: Any


DoNotRunForward

Sindbad.Types.DoNotRunForward Type

DoNotRunForward

Disable forward model run

Type Hierarchy

DoNotRunForward <: RunFlag <: SimulationTypes <: SindbadTypes <: Any


DoNotRunOptimization

Sindbad.Types.DoNotRunOptimization Type

DoNotRunOptimization

Disable model parameter optimization

Type Hierarchy

DoNotRunOptimization <: RunFlag <: SimulationTypes <: SindbadTypes <: Any


DoNotSaveInfo

Sindbad.Types.DoNotSaveInfo Type

DoNotSaveInfo

Disable saving of model information

Type Hierarchy

DoNotSaveInfo <: RunFlag <: SimulationTypes <: SindbadTypes <: Any


DoNotSaveSingleFile

Sindbad.Types.DoNotSaveSingleFile Type

DoNotSaveSingleFile

Save output variables in separate files

Type Hierarchy

DoNotSaveSingleFile <: OutputStrategy <: SimulationTypes <: SindbadTypes <: Any


DoNotSpatialWeight

Missing docstring.

Missing docstring for DoNotSpatialWeight. Check Documenter's build log for details.


DoNotSpinupTEM

Sindbad.Types.DoNotSpinupTEM Type

DoNotSpinupTEM

Disable terrestrial ecosystem model spinup

Type Hierarchy

DoNotSpinupTEM <: RunFlag <: SimulationTypes <: SindbadTypes <: Any


DoNotStoreSpinup

Sindbad.Types.DoNotStoreSpinup Type

DoNotStoreSpinup

Disable storing of spinup results

Type Hierarchy

DoNotStoreSpinup <: RunFlag <: SimulationTypes <: SindbadTypes <: Any


DoNotUseForwardDiff

Sindbad.Types.DoNotUseForwardDiff Type

DoNotUseForwardDiff

Disable forward mode automatic differentiation

Type Hierarchy

DoNotUseForwardDiff <: RunFlag <: SimulationTypes <: SindbadTypes <: Any


DoOutputAll

Sindbad.Types.DoOutputAll Type

DoOutputAll

Enable output of all model variables

Type Hierarchy

DoOutputAll <: OutputStrategy <: SimulationTypes <: SindbadTypes <: Any


DoRunForward

Sindbad.Types.DoRunForward Type

DoRunForward

Enable forward model run

Type Hierarchy

DoRunForward <: RunFlag <: SimulationTypes <: SindbadTypes <: Any


DoRunOptimization

Sindbad.Types.DoRunOptimization Type

DoRunOptimization

Enable model parameter optimization

Type Hierarchy

DoRunOptimization <: RunFlag <: SimulationTypes <: SindbadTypes <: Any


DoSaveInfo

Sindbad.Types.DoSaveInfo Type

DoSaveInfo

Enable saving of model information

Type Hierarchy

DoSaveInfo <: RunFlag <: SimulationTypes <: SindbadTypes <: Any


DoSaveSingleFile

Sindbad.Types.DoSaveSingleFile Type

DoSaveSingleFile

Save all output variables in a single file

Type Hierarchy

DoSaveSingleFile <: OutputStrategy <: SimulationTypes <: SindbadTypes <: Any


DoSpatialWeight

Missing docstring.

Missing docstring for DoSpatialWeight. Check Documenter's build log for details.


DoSpinupTEM

Sindbad.Types.DoSpinupTEM Type

DoSpinupTEM

Enable terrestrial ecosystem model spinup

Type Hierarchy

DoSpinupTEM <: RunFlag <: SimulationTypes <: SindbadTypes <: Any


DoStoreSpinup

Sindbad.Types.DoStoreSpinup Type

DoStoreSpinup

Enable storing of spinup results

Type Hierarchy

DoStoreSpinup <: RunFlag <: SimulationTypes <: SindbadTypes <: Any


DoUseForwardDiff

Sindbad.Types.DoUseForwardDiff Type

DoUseForwardDiff

Enable forward mode automatic differentiation

Type Hierarchy

DoUseForwardDiff <: RunFlag <: SimulationTypes <: SindbadTypes <: Any


EnzymeGrad

Sindbad.Types.EnzymeGrad Type

EnzymeGrad

Use Enzyme.jl for automatic differentiation

Type Hierarchy

EnzymeGrad <: MachineLearningGradType <: MachineLearningTypes <: SindbadTypes <: Any


EtaScaleA0H

Sindbad.Types.EtaScaleA0H Type

EtaScaleA0H

scale carbon pools using diagnostic scalars for ηH and c_remain

Type Hierarchy

EtaScaleA0H <: SpinupMode <: SpinupTypes <: SindbadTypes <: Any


EtaScaleA0HCWD

Sindbad.Types.EtaScaleA0HCWD Type

EtaScaleA0HCWD

scale carbon pools of CWD (cLitSlow) using ηH and set vegetation pools to c_remain

Type Hierarchy

EtaScaleA0HCWD <: SpinupMode <: SpinupTypes <: SindbadTypes <: Any


EtaScaleAH

Sindbad.Types.EtaScaleAH Type

EtaScaleAH

scale carbon pools using diagnostic scalars for ηH and ηA

Type Hierarchy

EtaScaleAH <: SpinupMode <: SpinupTypes <: SindbadTypes <: Any


EtaScaleAHCWD

Sindbad.Types.EtaScaleAHCWD Type

EtaScaleAHCWD

scale carbon pools of CWD (cLitSlow) using ηH and scale vegetation pools by ηA

Type Hierarchy

EtaScaleAHCWD <: SpinupMode <: SpinupTypes <: SindbadTypes <: Any


EvolutionaryCMAES

Sindbad.Types.EvolutionaryCMAES Type

EvolutionaryCMAES

Evolutionary version of CMA-ES optimization from Evolutionary.jl

Type Hierarchy

EvolutionaryCMAES <: ParameterOptimizationMethod <: ParameterOptimizationTypes <: SindbadTypes <: Any


FiniteDiffGrad

Sindbad.Types.FiniteDiffGrad Type

FiniteDiffGrad

Use FiniteDiff.jl for finite difference calculations

Type Hierarchy

FiniteDiffGrad <: MachineLearningGradType <: MachineLearningTypes <: SindbadTypes <: Any


FiniteDifferencesGrad

Sindbad.Types.FiniteDifferencesGrad Type

FiniteDifferencesGrad

Use FiniteDifferences.jl for finite difference calculations

Type Hierarchy

FiniteDifferencesGrad <: MachineLearningGradType <: MachineLearningTypes <: SindbadTypes <: Any


FluxDenseNN

Sindbad.Types.FluxDenseNN Type

FluxDenseNN

simple dense neural network model implemented in Flux.jl

Type Hierarchy

FluxDenseNN <: MachineLearningModelType <: MachineLearningTypes <: SindbadTypes <: Any


FluxRelu

Sindbad.Types.FluxRelu Type

FluxRelu

Use Flux.jl ReLU activation function

Type Hierarchy

FluxRelu <: ActivationType <: MachineLearningTypes <: SindbadTypes <: Any


FluxSigmoid

Sindbad.Types.FluxSigmoid Type

FluxSigmoid

Use Flux.jl Sigmoid activation function

Type Hierarchy

FluxSigmoid <: ActivationType <: MachineLearningTypes <: SindbadTypes <: Any


FluxTanh

Sindbad.Types.FluxTanh Type

FluxTanh

Use Flux.jl Tanh activation function

Type Hierarchy

FluxTanh <: ActivationType <: MachineLearningTypes <: SindbadTypes <: Any


ForcingWithTime

Sindbad.Types.ForcingWithTime Type

ForcingWithTime

Forcing variable with time dimension

Type Hierarchy

ForcingWithTime <: ForcingTime <: InputTypes <: SindbadTypes <: Any


ForcingWithoutTime

Sindbad.Types.ForcingWithoutTime Type

ForcingWithoutTime

Forcing variable without time dimension

Type Hierarchy

ForcingWithoutTime <: ForcingTime <: InputTypes <: SindbadTypes <: Any


ForwardDiffGrad

Sindbad.Types.ForwardDiffGrad Type

ForwardDiffGrad

Use ForwardDiff.jl for automatic differentiation

Type Hierarchy

ForwardDiffGrad <: MachineLearningGradType <: MachineLearningTypes <: SindbadTypes <: Any


GSAMethod

Sindbad.Types.GSAMethod Type

GSAMethod

Abstract type for global sensitivity analysis methods in SINDBAD

Type Hierarchy

GSAMethod <: ParameterOptimizationTypes <: SindbadTypes <: Any


Extended help

Available methods/subtypes:

  • GSAMorris: Morris method for global sensitivity analysis

  • GSASobol: Sobol method for global sensitivity analysis

  • GSASobolDM: Sobol method with derivative-based measures for global sensitivity analysis


GSAMorris

Sindbad.Types.GSAMorris Type

GSAMorris

Morris method for global sensitivity analysis

Type Hierarchy

GSAMorris <: GSAMethod <: ParameterOptimizationTypes <: SindbadTypes <: Any


GSASobol

Sindbad.Types.GSASobol Type

GSASobol

Sobol method for global sensitivity analysis

Type Hierarchy

GSASobol <: GSAMethod <: ParameterOptimizationTypes <: SindbadTypes <: Any


GSASobolDM

Sindbad.Types.GSASobolDM Type

GSASobolDM

Sobol method with derivative-based measures for global sensitivity analysis

Type Hierarchy

GSASobolDM <: GSAMethod <: ParameterOptimizationTypes <: SindbadTypes <: Any


GroupView

Sindbad.Types.GroupView Type
julia
GroupView{S}

Fields:

  • groupname::Symbol: The name of the group being accessed.

  • s::S: The underlying data structure containing the group.


InputArray

Sindbad.Types.InputArray Type

InputArray

Use standard Julia arrays for input data

Type Hierarchy

InputArray <: InputArrayBackend <: InputTypes <: SindbadTypes <: Any


InputArrayBackend

Sindbad.Types.InputArrayBackend Type

InputArrayBackend

Abstract type for input data array types in SINDBAD

Type Hierarchy

InputArrayBackend <: InputTypes <: SindbadTypes <: Any


Extended help

Available methods/subtypes:

  • InputArray: Use standard Julia arrays for input data

  • InputKeyedArray: Use keyed arrays for input data

  • InputNamedDimsArray: Use named dimension arrays for input data

  • InputYaxArray: Use YAXArray for input data


InputKeyedArray

Sindbad.Types.InputKeyedArray Type

InputKeyedArray

Use keyed arrays for input data

Type Hierarchy

InputKeyedArray <: InputArrayBackend <: InputTypes <: SindbadTypes <: Any


InputNamedDimsArray

Sindbad.Types.InputNamedDimsArray Type

InputNamedDimsArray

Use named dimension arrays for input data

Type Hierarchy

InputNamedDimsArray <: InputArrayBackend <: InputTypes <: SindbadTypes <: Any


InputTypes

Sindbad.Types.InputTypes Type

InputTypes

Abstract type for input data and processing related options in SINDBAD

Type Hierarchy

InputTypes <: SindbadTypes <: Any


Extended help

Available methods/subtypes:

  • DataFormatBackend: Abstract type for input data backends in SINDBAD

    • BackendNetcdf: Use NetCDF format for input data

    • BackendZarr: Use Zarr format for input data

  • ForcingTime: Abstract type for forcing variable types in SINDBAD

    • ForcingWithTime: Forcing variable with time dimension

    • ForcingWithoutTime: Forcing variable without time dimension

  • InputArrayBackend: Abstract type for input data array types in SINDBAD

    • InputArray: Use standard Julia arrays for input data

    • InputKeyedArray: Use keyed arrays for input data

    • InputNamedDimsArray: Use named dimension arrays for input data

    • InputYaxArray: Use YAXArray for input data

  • SpatialSubsetter: Abstract type for spatial subsetting methods in SINDBAD

    • SpaceID: Use site ID (all caps) for spatial subsetting

    • SpaceId: Use site ID (capitalized) for spatial subsetting

    • Spaceid: Use site ID for spatial subsetting

    • Spacelat: Use latitude for spatial subsetting

    • Spacelatitude: Use full latitude for spatial subsetting

    • Spacelon: Use longitude for spatial subsetting

    • Spacelongitude: Use full longitude for spatial subsetting

    • Spacesite: Use site location for spatial subsetting


InputYaxArray

Sindbad.Types.InputYaxArray Type

InputYaxArray

Use YAXArray for input data

Type Hierarchy

InputYaxArray <: InputArrayBackend <: InputTypes <: SindbadTypes <: Any


LandTypes

Sindbad.Types.LandTypes Type

LandTypes

Abstract type for land related types that are typically used in preparing objects for model runs in SINDBAD

Type Hierarchy

LandTypes <: SindbadTypes <: Any


Extended help

Available methods/subtypes:

  • LandWrapperType: Abstract type for land wrapper types in SINDBAD

    • GroupView: Represents a group of data within a LandWrapper, allowing access to specific groups of variables.

    • LandWrapper: Wraps the nested fields of a NamedTuple output of SINDBAD land into a nested structure of views that can be easily accessed with dot notation.

  • PreAlloc: Abstract type for preallocated land helpers types in prepTEM of SINDBAD

    • PreAllocArray: use a preallocated array for model output

    • PreAllocArrayAll: use a preallocated array to output all land variables

    • PreAllocArrayFD: use a preallocated array for finite difference (FD) hybrid experiments

    • PreAllocArrayMT: use arrays of nThreads size for land model output for replicates of multiple threads

    • PreAllocStacked: save output as a stacked vector of land using map over temporal dimension

    • PreAllocTimeseries: save land output as a preallocated vector for time series of land

    • PreAllocYAXArray: use YAX arrays for model output


LandWrapper

Sindbad.Types.LandWrapper Type
julia
LandWrapper{S}

Fields:

  • s::S: The underlying NamedTuple or data structure being wrapped.

LoadFoldFromFile

Sindbad.Types.LoadFoldFromFile Type

LoadFoldFromFile

Use precalculated data to load the folds for cross-validation. In this case, the data path has to be set under ml_training.fold_path and ml_training.which_fold. The data has to be in the format of a jld2 file with the following structure: /folds/0, /folds/1, /folds/2, ... /folds/n_folds. Each fold has to be a tuple of the form (train_indices, test_indices).

Type Hierarchy

LoadFoldFromFile <: MachineLearningTrainingType <: MachineLearningTypes <: SindbadTypes <: Any


LossModelObsMachineLearning

Sindbad.Types.LossModelObsMachineLearning Type

LossModelObsMachineLearning

Loss function using metrics between the predicted model and observation as defined in optimization.json

Type Hierarchy

LossModelObsMachineLearning <: MachineLearningTrainingType <: MachineLearningTypes <: SindbadTypes <: Any


MachineLearningGradType

Sindbad.Types.MachineLearningGradType Type

MachineLearningGradType

Abstract type for automatic differentiation or finite differences for gradient calculations

Type Hierarchy

MachineLearningGradType <: MachineLearningTypes <: SindbadTypes <: Any


Extended help

Available methods/subtypes:

  • EnzymeGrad: Use Enzyme.jl for automatic differentiation

  • FiniteDiffGrad: Use FiniteDiff.jl for finite difference calculations

  • FiniteDifferencesGrad: Use FiniteDifferences.jl for finite difference calculations

  • ForwardDiffGrad: Use ForwardDiff.jl for automatic differentiation

  • PolyesterForwardDiffGrad: Use PolyesterForwardDiff.jl for automatic differentiation

  • ZygoteGrad: Use Zygote.jl for automatic differentiation


MachineLearningModelType

Sindbad.Types.MachineLearningModelType Type

MachineLearningModelType

Abstract type for machine learning models used in SINDBAD

Type Hierarchy

MachineLearningModelType <: MachineLearningTypes <: SindbadTypes <: Any


Extended help

Available methods/subtypes:

  • FluxDenseNN: simple dense neural network model implemented in Flux.jl

MachineLearningOptimizerType

Sindbad.Types.MachineLearningOptimizerType Type

MachineLearningOptimizerType

Abstract type for optimizers used for trainingMachine Learningmodels in SINDBAD

Type Hierarchy

MachineLearningOptimizerType <: MachineLearningTypes <: SindbadTypes <: Any


Extended help

Available methods/subtypes:

  • OptimisersAdam: Use Optimisers.jl Adam optimizer for trainingMachine Learningmodels in SINDBAD

  • OptimisersDescent: Use Optimisers.jl Descent optimizer for trainingMachine Learningmodels in SINDBAD


MachineLearningTrainingType

Sindbad.Types.MachineLearningTrainingType Type

MachineLearningTrainingType

Abstract type for training a hybrid algorithm in SINDBAD

Type Hierarchy

MachineLearningTrainingType <: MachineLearningTypes <: SindbadTypes <: Any


Extended help

Available methods/subtypes:

  • CalcFoldFromSplit: Use a split of the data to calculate the folds for cross-validation. The default wat to calculate the folds is by splitting the data into k-folds. In this case, the split is done on the go based on the values given in ml_training.split_ratios and n_folds.

  • LoadFoldFromFile: Use precalculated data to load the folds for cross-validation. In this case, the data path has to be set under ml_training.fold_path and ml_training.which_fold. The data has to be in the format of a jld2 file with the following structure: /folds/0, /folds/1, /folds/2, ... /folds/n_folds. Each fold has to be a tuple of the form (train_indices, test_indices).

  • LossModelObsMachineLearning: Loss function using metrics between the predicted model and observation as defined in optimization.json

  • MixedGradient: Use a mixed gradient approach for training using gradient from multiple methods and combining them with pullback from zygote


MachineLearningTypes

Sindbad.Types.MachineLearningTypes Type

MachineLearningTypes

Abstract type for types in machine learning related methods in SINDBAD

Type Hierarchy

MachineLearningTypes <: SindbadTypes <: Any


Extended help

Available methods/subtypes:

  • ActivationType: Abstract type for activation functions used inMachine Learningmodels

    • CustomSigmoid: Use a custom sigmoid activation function. In this case, the k_σ parameter in ml_model sections of the settings is used to control the steepness of the sigmoid function.

    • FluxRelu: Use Flux.jl ReLU activation function

    • FluxSigmoid: Use Flux.jl Sigmoid activation function

    • FluxTanh: Use Flux.jl Tanh activation function

  • MachineLearningGradType: Abstract type for automatic differentiation or finite differences for gradient calculations

    • EnzymeGrad: Use Enzyme.jl for automatic differentiation

    • FiniteDiffGrad: Use FiniteDiff.jl for finite difference calculations

    • FiniteDifferencesGrad: Use FiniteDifferences.jl for finite difference calculations

    • ForwardDiffGrad: Use ForwardDiff.jl for automatic differentiation

    • PolyesterForwardDiffGrad: Use PolyesterForwardDiff.jl for automatic differentiation

    • ZygoteGrad: Use Zygote.jl for automatic differentiation

  • MachineLearningModelType: Abstract type for machine learning models used in SINDBAD

    • FluxDenseNN: simple dense neural network model implemented in Flux.jl
  • MachineLearningOptimizerType: Abstract type for optimizers used for trainingMachine Learningmodels in SINDBAD

    • OptimisersAdam: Use Optimisers.jl Adam optimizer for trainingMachine Learningmodels in SINDBAD

    • OptimisersDescent: Use Optimisers.jl Descent optimizer for trainingMachine Learningmodels in SINDBAD

  • MachineLearningTrainingType: Abstract type for training a hybrid algorithm in SINDBAD

    • CalcFoldFromSplit: Use a split of the data to calculate the folds for cross-validation. The default wat to calculate the folds is by splitting the data into k-folds. In this case, the split is done on the go based on the values given in ml_training.split_ratios and n_folds.

    • LoadFoldFromFile: Use precalculated data to load the folds for cross-validation. In this case, the data path has to be set under ml_training.fold_path and ml_training.which_fold. The data has to be in the format of a jld2 file with the following structure: /folds/0, /folds/1, /folds/2, ... /folds/n_folds. Each fold has to be a tuple of the form (train_indices, test_indices).

    • LossModelObsMachineLearning: Loss function using metrics between the predicted model and observation as defined in optimization.json

    • MixedGradient: Use a mixed gradient approach for training using gradient from multiple methods and combining them with pullback from zygote


MetricMaximum

Sindbad.Types.MetricMaximum Type

MetricMaximum

Take maximum value across spatial dimensions

Type Hierarchy

MetricMaximum <: SpatialMetricAggr <: ParameterOptimizationTypes <: SindbadTypes <: Any


MetricMinimum

Sindbad.Types.MetricMinimum Type

MetricMinimum

Take minimum value across spatial dimensions

Type Hierarchy

MetricMinimum <: SpatialMetricAggr <: ParameterOptimizationTypes <: SindbadTypes <: Any


MetricSpatial

Sindbad.Types.MetricSpatial Type

MetricSpatial

Apply spatial aggregation to metrics

Type Hierarchy

MetricSpatial <: SpatialMetricAggr <: ParameterOptimizationTypes <: SindbadTypes <: Any


MetricSum

Sindbad.Types.MetricSum Type

MetricSum

Sum values across spatial dimensions

Type Hierarchy

MetricSum <: SpatialMetricAggr <: ParameterOptimizationTypes <: SindbadTypes <: Any


MixedGradient

Sindbad.Types.MixedGradient Type

MixedGradient

Use a mixed gradient approach for training using gradient from multiple methods and combining them with pullback from zygote

Type Hierarchy

MixedGradient <: MachineLearningTrainingType <: MachineLearningTypes <: SindbadTypes <: Any


ModelArrayArray

Sindbad.Types.ModelArrayArray Type

ModelArrayArray

Use standard Julia arrays for model variables

Type Hierarchy

ModelArrayArray <: ModelArrayType <: ArrayTypes <: SindbadTypes <: Any


ModelArrayStaticArray

Sindbad.Types.ModelArrayStaticArray Type

ModelArrayStaticArray

Use StaticArrays for model variables

Type Hierarchy

ModelArrayStaticArray <: ModelArrayType <: ArrayTypes <: SindbadTypes <: Any


ModelArrayType

Sindbad.Types.ModelArrayType Type

ModelArrayType

Abstract type for internal model array types in SINDBAD

Type Hierarchy

ModelArrayType <: ArrayTypes <: SindbadTypes <: Any


Extended help

Available methods/subtypes:

  • ModelArrayArray: Use standard Julia arrays for model variables

  • ModelArrayStaticArray: Use StaticArrays for model variables

  • ModelArrayView: Use array views for model variables


ModelArrayView

Sindbad.Types.ModelArrayView Type

ModelArrayView

Use array views for model variables

Type Hierarchy

ModelArrayView <: ModelArrayType <: ArrayTypes <: SindbadTypes <: Any


NlsolveFixedpointTrustregionCEco

Sindbad.Types.NlsolveFixedpointTrustregionCEco Type

NlsolveFixedpointTrustregionCEco

use a fixed-point nonlinear solver with trust region for carbon pools (cEco)

Type Hierarchy

NlsolveFixedpointTrustregionCEco <: SpinupMode <: SpinupTypes <: SindbadTypes <: Any


NlsolveFixedpointTrustregionCEcoTWS

Sindbad.Types.NlsolveFixedpointTrustregionCEcoTWS Type

NlsolveFixedpointTrustregionCEcoTWS

use a fixed-point nonlinear solver with trust region for both cEco and TWS

Type Hierarchy

NlsolveFixedpointTrustregionCEcoTWS <: SpinupMode <: SpinupTypes <: SindbadTypes <: Any


NlsolveFixedpointTrustregionTWS

Sindbad.Types.NlsolveFixedpointTrustregionTWS Type

NlsolveFixedpointTrustregionTWS

use a fixed-point nonlinearsolver with trust region for Total Water Storage (TWS)

Type Hierarchy

NlsolveFixedpointTrustregionTWS <: SpinupMode <: SpinupTypes <: SindbadTypes <: Any


ODEAutoTsit5Rodas5

Sindbad.Types.ODEAutoTsit5Rodas5 Type

ODEAutoTsit5Rodas5

use the AutoVern7(Rodas5) method from DifferentialEquations.jl for solving ODEs

Type Hierarchy

ODEAutoTsit5Rodas5 <: SpinupMode <: SpinupTypes <: SindbadTypes <: Any


ODEDP5

Sindbad.Types.ODEDP5 Type

ODEDP5

use the DP5 method from DifferentialEquations.jl for solving ODEs

Type Hierarchy

ODEDP5 <: SpinupMode <: SpinupTypes <: SindbadTypes <: Any


ODETsit5

Sindbad.Types.ODETsit5 Type

ODETsit5

use the Tsit5 method from DifferentialEquations.jl for solving ODEs

Type Hierarchy

ODETsit5 <: SpinupMode <: SpinupTypes <: SindbadTypes <: Any


OptimBFGS

Sindbad.Types.OptimBFGS Type

OptimBFGS

Broyden-Fletcher-Goldfarb-Shanno (BFGS) from Optim.jl

Type Hierarchy

OptimBFGS <: ParameterOptimizationMethod <: ParameterOptimizationTypes <: SindbadTypes <: Any


OptimLBFGS

Sindbad.Types.OptimLBFGS Type

OptimLBFGS

Limited-memory Broyden-Fletcher-Goldfarb-Shanno (L-BFGS) from Optim.jl

Type Hierarchy

OptimLBFGS <: ParameterOptimizationMethod <: ParameterOptimizationTypes <: SindbadTypes <: Any


OptimisersAdam

Sindbad.Types.OptimisersAdam Type

OptimisersAdam

Use Optimisers.jl Adam optimizer for trainingMachine Learningmodels in SINDBAD

Type Hierarchy

OptimisersAdam <: MachineLearningOptimizerType <: MachineLearningTypes <: SindbadTypes <: Any


OptimisersDescent

Sindbad.Types.OptimisersDescent Type

OptimisersDescent

Use Optimisers.jl Descent optimizer for trainingMachine Learningmodels in SINDBAD

Type Hierarchy

OptimisersDescent <: MachineLearningOptimizerType <: MachineLearningTypes <: SindbadTypes <: Any


OptimizationBBOadaptive

Sindbad.Types.OptimizationBBOadaptive Type

OptimizationBBOadaptive

Black Box Optimization with adaptive parameters from Optimization.jl

Type Hierarchy

OptimizationBBOadaptive <: ParameterOptimizationMethod <: ParameterOptimizationTypes <: SindbadTypes <: Any


OptimizationBBOxnes

Sindbad.Types.OptimizationBBOxnes Type

OptimizationBBOxnes

Black Box Optimization using Natural Evolution Strategy (xNES) from Optimization.jl

Type Hierarchy

OptimizationBBOxnes <: ParameterOptimizationMethod <: ParameterOptimizationTypes <: SindbadTypes <: Any


OptimizationBFGS

Sindbad.Types.OptimizationBFGS Type

OptimizationBFGS

BFGS optimization with box constraints from Optimization.jl

Type Hierarchy

OptimizationBFGS <: ParameterOptimizationMethod <: ParameterOptimizationTypes <: SindbadTypes <: Any


OptimizationFminboxGradientDescent

Sindbad.Types.OptimizationFminboxGradientDescent Type

OptimizationFminboxGradientDescent

Gradient descent optimization with box constraints from Optimization.jl

Type Hierarchy

OptimizationFminboxGradientDescent <: ParameterOptimizationMethod <: ParameterOptimizationTypes <: SindbadTypes <: Any


OptimizationFminboxGradientDescentFD

Sindbad.Types.OptimizationFminboxGradientDescentFD Type

OptimizationFminboxGradientDescentFD

Gradient descent optimization with box constraints using forward differentiation from Optimization.jl

Type Hierarchy

OptimizationFminboxGradientDescentFD <: ParameterOptimizationMethod <: ParameterOptimizationTypes <: SindbadTypes <: Any


OptimizationGCMAESDef

Sindbad.Types.OptimizationGCMAESDef Type

OptimizationGCMAESDef

Global CMA-ES optimization with default settings from Optimization.jl

Type Hierarchy

OptimizationGCMAESDef <: ParameterOptimizationMethod <: ParameterOptimizationTypes <: SindbadTypes <: Any


OptimizationGCMAESFD

Sindbad.Types.OptimizationGCMAESFD Type

OptimizationGCMAESFD

Global CMA-ES optimization using forward differentiation from Optimization.jl

Type Hierarchy

OptimizationGCMAESFD <: ParameterOptimizationMethod <: ParameterOptimizationTypes <: SindbadTypes <: Any


OptimizationMultistartOptimization

Sindbad.Types.OptimizationMultistartOptimization Type

OptimizationMultistartOptimization

Multi-start optimization to find global optimum from Optimization.jl

Type Hierarchy

OptimizationMultistartOptimization <: ParameterOptimizationMethod <: ParameterOptimizationTypes <: SindbadTypes <: Any


OptimizationNelderMead

Sindbad.Types.OptimizationNelderMead Type

OptimizationNelderMead

Nelder-Mead simplex optimization method from Optimization.jl

Type Hierarchy

OptimizationNelderMead <: ParameterOptimizationMethod <: ParameterOptimizationTypes <: SindbadTypes <: Any


OptimizationQuadDirect

Sindbad.Types.OptimizationQuadDirect Type

OptimizationQuadDirect

Quadratic Direct optimization method from Optimization.jl

Type Hierarchy

OptimizationQuadDirect <: ParameterOptimizationMethod <: ParameterOptimizationTypes <: SindbadTypes <: Any


OutputArray

Sindbad.Types.OutputArray Type

OutputArray

Use standard Julia arrays for output

Type Hierarchy

OutputArray <: OutputArrayType <: ArrayTypes <: SindbadTypes <: Any


OutputArrayType

Sindbad.Types.OutputArrayType Type

OutputArrayType

Abstract type for output array types in SINDBAD

Type Hierarchy

OutputArrayType <: ArrayTypes <: SindbadTypes <: Any


Extended help

Available methods/subtypes:

  • OutputArray: Use standard Julia arrays for output

  • OutputMArray: Use MArray for output

  • OutputSizedArray: Use SizedArray for output

  • OutputYAXArray: Use YAXArray for output


OutputMArray

Sindbad.Types.OutputMArray Type

OutputMArray

Use MArray for output

Type Hierarchy

OutputMArray <: OutputArrayType <: ArrayTypes <: SindbadTypes <: Any


OutputSizedArray

Sindbad.Types.OutputSizedArray Type

OutputSizedArray

Use SizedArray for output

Type Hierarchy

OutputSizedArray <: OutputArrayType <: ArrayTypes <: SindbadTypes <: Any


OutputStrategy

Sindbad.Types.OutputStrategy Type

OutputStrategy

Abstract type for model output strategies in SINDBAD

Type Hierarchy

OutputStrategy <: SimulationTypes <: SindbadTypes <: Any


Extended help

Available methods/subtypes:

  • DoNotOutputAll: Disable output of all model variables

  • DoNotSaveSingleFile: Save output variables in separate files

  • DoOutputAll: Enable output of all model variables

  • DoSaveSingleFile: Save all output variables in a single file


OutputYAXArray

Sindbad.Types.OutputYAXArray Type

OutputYAXArray

Use YAXArray for output

Type Hierarchy

OutputYAXArray <: OutputArrayType <: ArrayTypes <: SindbadTypes <: Any


ParallelizationPackage

Sindbad.Types.ParallelizationPackage Type

ParallelizationPackage

Abstract type for using different parallelization packages in SINDBAD

Type Hierarchy

ParallelizationPackage <: SimulationTypes <: SindbadTypes <: Any


Extended help

Available methods/subtypes:

  • QbmapParallelization: Use Qbmap for parallelization

  • ThreadsParallelization: Use Julia threads for parallelization


ParameterOptimizationMethod

Sindbad.Types.ParameterOptimizationMethod Type

ParameterOptimizationMethod

Abstract type for optimization methods in SINDBAD

Type Hierarchy

ParameterOptimizationMethod <: ParameterOptimizationTypes <: SindbadTypes <: Any


Extended help

Available methods/subtypes:

  • BayesOptKMaternARD5: Bayesian Optimization using Matern 5/2 kernel with Automatic Relevance Determination from BayesOpt.jl

  • CMAEvolutionStrategyCMAES: Covariance Matrix Adaptation Evolution Strategy (CMA-ES) from CMAEvolutionStrategy.jl

  • EvolutionaryCMAES: Evolutionary version of CMA-ES optimization from Evolutionary.jl

  • OptimBFGS: Broyden-Fletcher-Goldfarb-Shanno (BFGS) from Optim.jl

  • OptimLBFGS: Limited-memory Broyden-Fletcher-Goldfarb-Shanno (L-BFGS) from Optim.jl

  • OptimizationBBOadaptive: Black Box Optimization with adaptive parameters from Optimization.jl

  • OptimizationBBOxnes: Black Box Optimization using Natural Evolution Strategy (xNES) from Optimization.jl

  • OptimizationBFGS: BFGS optimization with box constraints from Optimization.jl

  • OptimizationFminboxGradientDescent: Gradient descent optimization with box constraints from Optimization.jl

  • OptimizationFminboxGradientDescentFD: Gradient descent optimization with box constraints using forward differentiation from Optimization.jl

  • OptimizationGCMAESDef: Global CMA-ES optimization with default settings from Optimization.jl

  • OptimizationGCMAESFD: Global CMA-ES optimization using forward differentiation from Optimization.jl

  • OptimizationMultistartOptimization: Multi-start optimization to find global optimum from Optimization.jl

  • OptimizationNelderMead: Nelder-Mead simplex optimization method from Optimization.jl

  • OptimizationQuadDirect: Quadratic Direct optimization method from Optimization.jl


ParameterOptimizationTypes

Sindbad.Types.ParameterOptimizationTypes Type

ParameterOptimizationTypes

Abstract type for optimization related functions and methods in SINDBAD

Type Hierarchy

ParameterOptimizationTypes <: SindbadTypes <: Any


Extended help

Available methods/subtypes:

  • CostMethod: Abstract type for cost calculation methods in SINDBAD

    • CostModelObs: cost calculation between model output and observations

    • CostModelObsLandTS: cost calculation between land model output and time series observations

    • CostModelObsMT: multi-threaded cost calculation between model output and observations

    • CostModelObsPriors: cost calculation between model output, observations, and priors. NOTE THAT THIS METHOD IS JUST A PLACEHOLDER AND DOES NOT CALCULATE PRIOR COST PROPERLY YET

  • DataAggrOrder: Abstract type for data aggregation order in SINDBAD

    • SpaceTime: Aggregate data first over space, then over time

    • TimeSpace: Aggregate data first over time, then over space

  • GSAMethod: Abstract type for global sensitivity analysis methods in SINDBAD

    • GSAMorris: Morris method for global sensitivity analysis

    • GSASobol: Sobol method for global sensitivity analysis

    • GSASobolDM: Sobol method with derivative-based measures for global sensitivity analysis

  • ParameterOptimizationMethod: Abstract type for optimization methods in SINDBAD

    • BayesOptKMaternARD5: Bayesian Optimization using Matern 5/2 kernel with Automatic Relevance Determination from BayesOpt.jl

    • CMAEvolutionStrategyCMAES: Covariance Matrix Adaptation Evolution Strategy (CMA-ES) from CMAEvolutionStrategy.jl

    • EvolutionaryCMAES: Evolutionary version of CMA-ES optimization from Evolutionary.jl

    • OptimBFGS: Broyden-Fletcher-Goldfarb-Shanno (BFGS) from Optim.jl

    • OptimLBFGS: Limited-memory Broyden-Fletcher-Goldfarb-Shanno (L-BFGS) from Optim.jl

    • OptimizationBBOadaptive: Black Box Optimization with adaptive parameters from Optimization.jl

    • OptimizationBBOxnes: Black Box Optimization using Natural Evolution Strategy (xNES) from Optimization.jl

    • OptimizationBFGS: BFGS optimization with box constraints from Optimization.jl

    • OptimizationFminboxGradientDescent: Gradient descent optimization with box constraints from Optimization.jl

    • OptimizationFminboxGradientDescentFD: Gradient descent optimization with box constraints using forward differentiation from Optimization.jl

    • OptimizationGCMAESDef: Global CMA-ES optimization with default settings from Optimization.jl

    • OptimizationGCMAESFD: Global CMA-ES optimization using forward differentiation from Optimization.jl

    • OptimizationMultistartOptimization: Multi-start optimization to find global optimum from Optimization.jl

    • OptimizationNelderMead: Nelder-Mead simplex optimization method from Optimization.jl

    • OptimizationQuadDirect: Quadratic Direct optimization method from Optimization.jl

  • ParameterScaling: Abstract type for parameter scaling methods in SINDBAD

    • ScaleBounds: Scale parameters relative to their bounds

    • ScaleDefault: Scale parameters relative to default values

    • ScaleNone: No parameter scaling applied

  • SpatialDataAggr: Abstract type for spatial data aggregation methods in SINDBAD

  • SpatialMetricAggr: Abstract type for spatial metric aggregation methods in SINDBAD

    • MetricMaximum: Take maximum value across spatial dimensions

    • MetricMinimum: Take minimum value across spatial dimensions

    • MetricSpatial: Apply spatial aggregation to metrics

    • MetricSum: Sum values across spatial dimensions


ParameterScaling

Sindbad.Types.ParameterScaling Type

ParameterScaling

Abstract type for parameter scaling methods in SINDBAD

Type Hierarchy

ParameterScaling <: ParameterOptimizationTypes <: SindbadTypes <: Any


Extended help

Available methods/subtypes:

  • ScaleBounds: Scale parameters relative to their bounds

  • ScaleDefault: Scale parameters relative to default values

  • ScaleNone: No parameter scaling applied


PolyesterForwardDiffGrad

Sindbad.Types.PolyesterForwardDiffGrad Type

PolyesterForwardDiffGrad

Use PolyesterForwardDiff.jl for automatic differentiation

Type Hierarchy

PolyesterForwardDiffGrad <: MachineLearningGradType <: MachineLearningTypes <: SindbadTypes <: Any


PreAlloc

Sindbad.Types.PreAlloc Type

PreAlloc

Abstract type for preallocated land helpers types in prepTEM of SINDBAD

Type Hierarchy

PreAlloc <: LandTypes <: SindbadTypes <: Any


Extended help

Available methods/subtypes:

  • PreAllocArray: use a preallocated array for model output

  • PreAllocArrayAll: use a preallocated array to output all land variables

  • PreAllocArrayFD: use a preallocated array for finite difference (FD) hybrid experiments

  • PreAllocArrayMT: use arrays of nThreads size for land model output for replicates of multiple threads

  • PreAllocStacked: save output as a stacked vector of land using map over temporal dimension

  • PreAllocTimeseries: save land output as a preallocated vector for time series of land

  • PreAllocYAXArray: use YAX arrays for model output


PreAllocArray

Sindbad.Types.PreAllocArray Type

PreAllocArray

use a preallocated array for model output

Type Hierarchy

PreAllocArray <: PreAlloc <: LandTypes <: SindbadTypes <: Any


PreAllocArrayAll

Sindbad.Types.PreAllocArrayAll Type

PreAllocArrayAll

use a preallocated array to output all land variables

Type Hierarchy

PreAllocArrayAll <: PreAlloc <: LandTypes <: SindbadTypes <: Any


PreAllocArrayFD

Sindbad.Types.PreAllocArrayFD Type

PreAllocArrayFD

use a preallocated array for finite difference (FD) hybrid experiments

Type Hierarchy

PreAllocArrayFD <: PreAlloc <: LandTypes <: SindbadTypes <: Any


PreAllocArrayMT

Sindbad.Types.PreAllocArrayMT Type

PreAllocArrayMT

use arrays of nThreads size for land model output for replicates of multiple threads

Type Hierarchy

PreAllocArrayMT <: PreAlloc <: LandTypes <: SindbadTypes <: Any


PreAllocStacked

Sindbad.Types.PreAllocStacked Type

PreAllocStacked

save output as a stacked vector of land using map over temporal dimension

Type Hierarchy

PreAllocStacked <: PreAlloc <: LandTypes <: SindbadTypes <: Any


PreAllocTimeseries

Sindbad.Types.PreAllocTimeseries Type

PreAllocTimeseries

save land output as a preallocated vector for time series of land

Type Hierarchy

PreAllocTimeseries <: PreAlloc <: LandTypes <: SindbadTypes <: Any


PreAllocYAXArray

Sindbad.Types.PreAllocYAXArray Type

PreAllocYAXArray

use YAX arrays for model output

Type Hierarchy

PreAllocYAXArray <: PreAlloc <: LandTypes <: SindbadTypes <: Any


QbmapParallelization

Sindbad.Types.QbmapParallelization Type

QbmapParallelization

Use Qbmap for parallelization

Type Hierarchy

QbmapParallelization <: ParallelizationPackage <: SimulationTypes <: SindbadTypes <: Any


RunFlag

Sindbad.Types.RunFlag Type

RunFlag

Abstract type for model run configuration flags in SINDBAD

Type Hierarchy

RunFlag <: SimulationTypes <: SindbadTypes <: Any


Extended help

Available methods/subtypes:

  • DoCalcCost: Enable cost calculation between model output and observations

  • DoFilterNanPixels: Enable filtering of NaN values in spatial data

  • DoNotCalcCost: Disable cost calculation between model output and observations

  • DoNotFilterNanPixels: Disable filtering of NaN values in spatial data

  • DoNotRunForward: Disable forward model run

  • DoNotRunOptimization: Disable model parameter optimization

  • DoNotSaveInfo: Disable saving of model information

  • DoNotSpinupTEM: Disable terrestrial ecosystem model spinup

  • DoNotStoreSpinup: Disable storing of spinup results

  • DoNotUseForwardDiff: Disable forward mode automatic differentiation

  • DoRunForward: Enable forward model run

  • DoRunOptimization: Enable model parameter optimization

  • DoSaveInfo: Enable saving of model information

  • DoSpinupTEM: Enable terrestrial ecosystem model spinup

  • DoStoreSpinup: Enable storing of spinup results

  • DoUseForwardDiff: Enable forward mode automatic differentiation


SSPDynamicSSTsit5

Sindbad.Types.SSPDynamicSSTsit5 Type

SSPDynamicSSTsit5

use the SteadyState solver with DynamicSS and Tsit5 methods

Type Hierarchy

SSPDynamicSSTsit5 <: SpinupMode <: SpinupTypes <: SindbadTypes <: Any


SSPSSRootfind

Sindbad.Types.SSPSSRootfind Type

SSPSSRootfind

use the SteadyState solver with SSRootfind method

Type Hierarchy

SSPSSRootfind <: SpinupMode <: SpinupTypes <: SindbadTypes <: Any


ScaleBounds

Sindbad.Types.ScaleBounds Type

ScaleBounds

Scale parameters relative to their bounds

Type Hierarchy

ScaleBounds <: ParameterScaling <: ParameterOptimizationTypes <: SindbadTypes <: Any


ScaleDefault

Sindbad.Types.ScaleDefault Type

ScaleDefault

Scale parameters relative to default values

Type Hierarchy

ScaleDefault <: ParameterScaling <: ParameterOptimizationTypes <: SindbadTypes <: Any


ScaleNone

Sindbad.Types.ScaleNone Type

ScaleNone

No parameter scaling applied

Type Hierarchy

ScaleNone <: ParameterScaling <: ParameterOptimizationTypes <: SindbadTypes <: Any


SelSpinupModels

Sindbad.Types.SelSpinupModels Type

SelSpinupModels

run only the models selected for spinup in the model structure

Type Hierarchy

SelSpinupModels <: SpinupMode <: SpinupTypes <: SindbadTypes <: Any


SimulationTypes

Sindbad.Types.SimulationTypes Type

SimulationTypes

Abstract type for model simulation run flags and experimental setup and simulations in SINDBAD

Type Hierarchy

SimulationTypes <: SindbadTypes <: Any


Extended help

Available methods/subtypes:

  • OutputStrategy: Abstract type for model output strategies in SINDBAD

    • DoNotOutputAll: Disable output of all model variables

    • DoNotSaveSingleFile: Save output variables in separate files

    • DoOutputAll: Enable output of all model variables

    • DoSaveSingleFile: Save all output variables in a single file

  • ParallelizationPackage: Abstract type for using different parallelization packages in SINDBAD

    • QbmapParallelization: Use Qbmap for parallelization

    • ThreadsParallelization: Use Julia threads for parallelization

  • RunFlag: Abstract type for model run configuration flags in SINDBAD

    • DoCalcCost: Enable cost calculation between model output and observations

    • DoFilterNanPixels: Enable filtering of NaN values in spatial data

    • DoNotCalcCost: Disable cost calculation between model output and observations

    • DoNotFilterNanPixels: Disable filtering of NaN values in spatial data

    • DoNotRunForward: Disable forward model run

    • DoNotRunOptimization: Disable model parameter optimization

    • DoNotSaveInfo: Disable saving of model information

    • DoNotSpinupTEM: Disable terrestrial ecosystem model spinup

    • DoNotStoreSpinup: Disable storing of spinup results

    • DoNotUseForwardDiff: Disable forward mode automatic differentiation

    • DoRunForward: Enable forward model run

    • DoRunOptimization: Enable model parameter optimization

    • DoSaveInfo: Enable saving of model information

    • DoSpinupTEM: Enable terrestrial ecosystem model spinup

    • DoStoreSpinup: Enable storing of spinup results

    • DoUseForwardDiff: Enable forward mode automatic differentiation


SpaceID

Sindbad.Types.SpaceID Type

SpaceID

Use site ID (all caps) for spatial subsetting

Type Hierarchy

SpaceID <: SpatialSubsetter <: InputTypes <: SindbadTypes <: Any


SpaceId

Sindbad.Types.SpaceId Type

SpaceId

Use site ID (capitalized) for spatial subsetting

Type Hierarchy

SpaceId <: SpatialSubsetter <: InputTypes <: SindbadTypes <: Any


SpaceTime

Sindbad.Types.SpaceTime Type

SpaceTime

Aggregate data first over space, then over time

Type Hierarchy

SpaceTime <: DataAggrOrder <: ParameterOptimizationTypes <: SindbadTypes <: Any


Spaceid

Sindbad.Types.Spaceid Type

Spaceid

Use site ID for spatial subsetting

Type Hierarchy

Spaceid <: SpatialSubsetter <: InputTypes <: SindbadTypes <: Any


Spacelat

Sindbad.Types.Spacelat Type

Spacelat

Use latitude for spatial subsetting

Type Hierarchy

Spacelat <: SpatialSubsetter <: InputTypes <: SindbadTypes <: Any


Spacelatitude

Sindbad.Types.Spacelatitude Type

Spacelatitude

Use full latitude for spatial subsetting

Type Hierarchy

Spacelatitude <: SpatialSubsetter <: InputTypes <: SindbadTypes <: Any


Spacelon

Sindbad.Types.Spacelon Type

Spacelon

Use longitude for spatial subsetting

Type Hierarchy

Spacelon <: SpatialSubsetter <: InputTypes <: SindbadTypes <: Any


Spacelongitude

Sindbad.Types.Spacelongitude Type

Spacelongitude

Use full longitude for spatial subsetting

Type Hierarchy

Spacelongitude <: SpatialSubsetter <: InputTypes <: SindbadTypes <: Any


Spacesite

Sindbad.Types.Spacesite Type

Spacesite

Use site location for spatial subsetting

Type Hierarchy

Spacesite <: SpatialSubsetter <: InputTypes <: SindbadTypes <: Any


SpatialDataAggr

Sindbad.Types.SpatialDataAggr Type

SpatialDataAggr

Abstract type for spatial data aggregation methods in SINDBAD

Type Hierarchy

SpatialDataAggr <: ParameterOptimizationTypes <: SindbadTypes <: Any


SpatialMetricAggr

Sindbad.Types.SpatialMetricAggr Type

SpatialMetricAggr

Abstract type for spatial metric aggregation methods in SINDBAD

Type Hierarchy

SpatialMetricAggr <: ParameterOptimizationTypes <: SindbadTypes <: Any


Extended help

Available methods/subtypes:

  • MetricMaximum: Take maximum value across spatial dimensions

  • MetricMinimum: Take minimum value across spatial dimensions

  • MetricSpatial: Apply spatial aggregation to metrics

  • MetricSum: Sum values across spatial dimensions


SpatialSubsetter

Sindbad.Types.SpatialSubsetter Type

SpatialSubsetter

Abstract type for spatial subsetting methods in SINDBAD

Type Hierarchy

SpatialSubsetter <: InputTypes <: SindbadTypes <: Any


Extended help

Available methods/subtypes:

  • SpaceID: Use site ID (all caps) for spatial subsetting

  • SpaceId: Use site ID (capitalized) for spatial subsetting

  • Spaceid: Use site ID for spatial subsetting

  • Spacelat: Use latitude for spatial subsetting

  • Spacelatitude: Use full latitude for spatial subsetting

  • Spacelon: Use longitude for spatial subsetting

  • Spacelongitude: Use full longitude for spatial subsetting

  • Spacesite: Use site location for spatial subsetting


SpinupMode

Sindbad.Types.SpinupMode Type

SpinupMode

Abstract type for model spinup modes in SINDBAD

Type Hierarchy

SpinupMode <: SpinupTypes <: SindbadTypes <: Any


Extended help

Available methods/subtypes:

  • AllForwardModels: Use all forward models for spinup

  • EtaScaleA0H: scale carbon pools using diagnostic scalars for ηH and c_remain

  • EtaScaleA0HCWD: scale carbon pools of CWD (cLitSlow) using ηH and set vegetation pools to c_remain

  • EtaScaleAH: scale carbon pools using diagnostic scalars for ηH and ηA

  • EtaScaleAHCWD: scale carbon pools of CWD (cLitSlow) using ηH and scale vegetation pools by ηA

  • NlsolveFixedpointTrustregionCEco: use a fixed-point nonlinear solver with trust region for carbon pools (cEco)

  • NlsolveFixedpointTrustregionCEcoTWS: use a fixed-point nonlinear solver with trust region for both cEco and TWS

  • NlsolveFixedpointTrustregionTWS: use a fixed-point nonlinearsolver with trust region for Total Water Storage (TWS)

  • ODEAutoTsit5Rodas5: use the AutoVern7(Rodas5) method from DifferentialEquations.jl for solving ODEs

  • ODEDP5: use the DP5 method from DifferentialEquations.jl for solving ODEs

  • ODETsit5: use the Tsit5 method from DifferentialEquations.jl for solving ODEs

  • SSPDynamicSSTsit5: use the SteadyState solver with DynamicSS and Tsit5 methods

  • SSPSSRootfind: use the SteadyState solver with SSRootfind method

  • SelSpinupModels: run only the models selected for spinup in the model structure

  • Spinup_TWS: Spinup spinup_mode for Total Water Storage (TWS)

  • Spinup_cEco: Spinup spinup_mode for cEco

  • Spinup_cEco_TWS: Spinup spinup_mode for cEco and TWS


SpinupSequence

Sindbad.Types.SpinupSequence Type

SpinupSequence

Basic Spinup sequence without time aggregation

Type Hierarchy

SpinupSequence <: SpinupTypes <: SindbadTypes <: Any


SpinupSequenceWithAggregator

Sindbad.Types.SpinupSequenceWithAggregator Type

SpinupSequenceWithAggregator

Spinup sequence with time aggregation for corresponding forcingtime series

Type Hierarchy

SpinupSequenceWithAggregator <: SpinupTypes <: SindbadTypes <: Any


SpinupTypes

Sindbad.Types.SpinupTypes Type

SpinupTypes

Abstract type for model spinup related functions and methods in SINDBAD

Type Hierarchy

SpinupTypes <: SindbadTypes <: Any


Extended help

Available methods/subtypes:

  • SpinupMode: Abstract type for model spinup modes in SINDBAD

    • AllForwardModels: Use all forward models for spinup

    • EtaScaleA0H: scale carbon pools using diagnostic scalars for ηH and c_remain

    • EtaScaleA0HCWD: scale carbon pools of CWD (cLitSlow) using ηH and set vegetation pools to c_remain

    • EtaScaleAH: scale carbon pools using diagnostic scalars for ηH and ηA

    • EtaScaleAHCWD: scale carbon pools of CWD (cLitSlow) using ηH and scale vegetation pools by ηA

    • NlsolveFixedpointTrustregionCEco: use a fixed-point nonlinear solver with trust region for carbon pools (cEco)

    • NlsolveFixedpointTrustregionCEcoTWS: use a fixed-point nonlinear solver with trust region for both cEco and TWS

    • NlsolveFixedpointTrustregionTWS: use a fixed-point nonlinearsolver with trust region for Total Water Storage (TWS)

    • ODEAutoTsit5Rodas5: use the AutoVern7(Rodas5) method from DifferentialEquations.jl for solving ODEs

    • ODEDP5: use the DP5 method from DifferentialEquations.jl for solving ODEs

    • ODETsit5: use the Tsit5 method from DifferentialEquations.jl for solving ODEs

    • SSPDynamicSSTsit5: use the SteadyState solver with DynamicSS and Tsit5 methods

    • SSPSSRootfind: use the SteadyState solver with SSRootfind method

    • SelSpinupModels: run only the models selected for spinup in the model structure

    • Spinup_TWS: Spinup spinup_mode for Total Water Storage (TWS)

    • Spinup_cEco: Spinup spinup_mode for cEco

    • Spinup_cEco_TWS: Spinup spinup_mode for cEco and TWS

  • SpinupSequence: Basic Spinup sequence without time aggregation

  • SpinupSequenceWithAggregator: Spinup sequence with time aggregation for corresponding forcingtime series


Spinup_TWS

Sindbad.Types.Spinup_TWS Type

Spinup_TWS

Spinup spinup_mode for Total Water Storage (TWS)

Type Hierarchy

Spinup_TWS <: SpinupMode <: SpinupTypes <: SindbadTypes <: Any


Spinup_cEco

Sindbad.Types.Spinup_cEco Type

Spinup_cEco

Spinup spinup_mode for cEco

Type Hierarchy

Spinup_cEco <: SpinupMode <: SpinupTypes <: SindbadTypes <: Any


Spinup_cEco_TWS

Sindbad.Types.Spinup_cEco_TWS Type

Spinup_cEco_TWS

Spinup spinup_mode for cEco and TWS

Type Hierarchy

Spinup_cEco_TWS <: SpinupMode <: SpinupTypes <: SindbadTypes <: Any


ThreadsParallelization

Sindbad.Types.ThreadsParallelization Type

ThreadsParallelization

Use Julia threads for parallelization

Type Hierarchy

ThreadsParallelization <: ParallelizationPackage <: SimulationTypes <: SindbadTypes <: Any


TimeSpace

Sindbad.Types.TimeSpace Type

TimeSpace

Aggregate data first over time, then over space

Type Hierarchy

TimeSpace <: DataAggrOrder <: ParameterOptimizationTypes <: SindbadTypes <: Any


ZygoteGrad

Sindbad.Types.ZygoteGrad Type

ZygoteGrad

Use Zygote.jl for automatic differentiation

Type Hierarchy

ZygoteGrad <: MachineLearningGradType <: MachineLearningTypes <: SindbadTypes <: Any