Representations#
SingleMomentMode#
-
class SingleMomentMode#
Single moment log-normal particle size distribution representation.
Represents a single moment log-normal distribution for aerosol or cloud particle size distributions. Characterized by a geometric mean radius and geometric standard deviation.
Public Functions
-
SingleMomentMode() = delete#
-
inline SingleMomentMode(const std::string &prefix, const std::vector<micm::Phase> &phases)#
-
inline SingleMomentMode(const std::string &prefix, const std::vector<micm::Phase> &phases, const double geometric_mean_radius, const double geometric_standard_deviation)#
-
inline std::tuple<std::size_t, std::size_t> StateSize() const#
-
inline std::set<std::string> StateVariableNames() const#
-
inline std::set<std::string> StateParameterNames() const#
-
inline std::string Species(const micm::Phase &phase, const micm::Species &species) const#
-
inline std::map<std::string, double> DefaultParameters() const#
-
inline std::string GeometricMeanRadius() const#
-
inline std::string GeometricStandardDeviation() const#
-
inline void SetDefaultParameters(auto &state) const#
-
inline std::map<std::string, std::size_t> NumPhaseInstances() const#
-
inline std::map<std::string, std::set<std::string>> PhaseStatePrefixes() const#
Returns a map of phase names to sets of state variable prefixes associated with that phase The prefix does not include the phase or species names, and each prefix must be unique across all representations.
- Returns:
Map of phase names to sets of state variable prefixes
-
template<typename DenseMatrixPolicy>
inline AerosolPropertyProvider<DenseMatrixPolicy> GetPropertyProvider(AerosolProperty property, const auto &state_parameter_indices, const auto &state_variable_indices, const std::string &target_phase_name = "") const# Returns a provider for the requested aerosol property.
- Template Parameters:
DenseMatrixPolicy – The dense matrix type used for state data
- Parameters:
property – The aerosol property to provide
state_parameter_indices – Map of parameter names to column indices
state_variable_indices – Map of variable names to column indices
target_phase_name – Phase name for PhaseVolumeFraction (required if multi-phase)
-
SingleMomentMode() = delete#
TwoMomentMode#
-
class TwoMomentMode#
Two moment log-normal particle size distribution representation.
Represents a two moment log-normal distribution for aerosol or cloud particle size distributions. Characterized by number concentration, geometric mean radius, and geometric standard deviation.
Public Functions
-
TwoMomentMode() = delete#
-
inline TwoMomentMode(const std::string &prefix, const std::vector<micm::Phase> &phases)#
-
inline TwoMomentMode(const std::string &prefix, const std::vector<micm::Phase> &phases, const double geometric_standard_deviation)#
-
inline std::tuple<std::size_t, std::size_t> StateSize() const#
-
inline std::set<std::string> StateVariableNames() const#
-
inline std::set<std::string> StateParameterNames() const#
-
inline std::string Species(const micm::Phase &phase, const micm::Species &species) const#
-
inline std::map<std::string, double> DefaultParameters() const#
-
inline std::string NumberConcentration() const#
-
inline std::string GeometricStandardDeviation() const#
-
inline void SetDefaultParameters(auto &state) const#
-
inline std::map<std::string, std::size_t> NumPhaseInstances() const#
-
inline std::map<std::string, std::set<std::string>> PhaseStatePrefixes() const#
Returns a map of phase names to sets of state variable prefixes associated with that phase The prefix does not include the phase or species names, and each prefix must be unique across all representations.
- Returns:
Map of phase names to sets of state variable prefixes
-
template<typename DenseMatrixPolicy>
inline AerosolPropertyProvider<DenseMatrixPolicy> GetPropertyProvider(AerosolProperty property, const auto &state_parameter_indices, const auto &state_variable_indices, const std::string &target_phase_name = "") const# Returns a provider for the requested aerosol property.
-
TwoMomentMode() = delete#
UniformSection#
-
class UniformSection#
Sectional particle size distribution representation with uniform sections.
Represents a sectional distribution with uniform sections for aerosol or cloud particle size distributions. Each section is characterized by a fixed size range and variable total volume. Number concentrations are derived from the total volume and section size.
Public Functions
-
UniformSection() = delete#
-
inline UniformSection(const std::string &prefix, const std::vector<micm::Phase> &phases)#
-
inline UniformSection(const std::string &prefix, const std::vector<micm::Phase> &phases, const double minimum_radius, const double maximum_radius)#
-
inline std::tuple<std::size_t, std::size_t> StateSize() const#
-
inline std::set<std::string> StateVariableNames() const#
-
inline std::set<std::string> StateParameterNames() const#
-
inline std::string Species(const micm::Phase &phase, const micm::Species &species) const#
-
inline std::map<std::string, double> DefaultParameters() const#
-
inline std::string MinRadius() const#
-
inline std::string MaxRadius() const#
-
inline void SetDefaultParameters(auto &state) const#
-
inline std::map<std::string, std::size_t> NumPhaseInstances() const#
-
inline std::map<std::string, std::set<std::string>> PhaseStatePrefixes() const#
Returns a map of phase names to sets of state variable prefixes associated with that phase The prefix does not include the phase or species names, and each prefix must be unique across all representations.
- Returns:
Map of phase names to sets of state variable prefixes
-
template<typename DenseMatrixPolicy>
inline AerosolPropertyProvider<DenseMatrixPolicy> GetPropertyProvider(AerosolProperty property, const auto &state_parameter_indices, const auto &state_variable_indices, const std::string &target_phase_name = "") const# Returns a provider for the requested aerosol property.
-
UniformSection() = delete#