Activity Strategies¶
Particula Index / Particula / Particles / Activity Strategies
Auto-generated documentation for particula.particles.activity_strategies module.
ActivityIdealMass¶
Show source in activity_strategies.py:115
Calculate ideal activity based on mass fractions.
This strategy utilizes mass fractions to determine the activity, consistent with the principles outlined in Raoult's Law.
References¶
Mass Based Raoult's Law
Signature¶
class ActivityIdealMass(ActivityStrategy): ...
See also¶
ActivityIdealMass().activity¶
Show source in activity_strategies.py:125
Calculate the activity of a species based on mass concentration.
Arguments¶
mass_concentration
- Concentration of the species in kilograms per cubic meter (kg/m^3).
Returns¶
Union[float,
NDArray[np.float64]] - Activity of the particle, unitless.
Signature¶
def activity(
self, mass_concentration: Union[float, NDArray[np.float64]]
) -> Union[float, NDArray[np.float64]]: ...
ActivityIdealMolar¶
Show source in activity_strategies.py:79
Calculate ideal activity based on mole fractions.
This strategy uses mole fractions to compute the activity, adhering to the principles of Raoult's Law.
Arguments¶
molar_mass (Union[float, NDArray[np.float64]]): Molar mass of the species [kg/mol]. A single value applies to all species if only one is provided.
References¶
Molar Raoult's Law
Signature¶
class ActivityIdealMolar(ActivityStrategy):
def __init__(self, molar_mass: Union[float, NDArray[np.float64]] = 0.0): ...
See also¶
ActivityIdealMolar().activity¶
Show source in activity_strategies.py:97
Calculate the activity of a species based on mass concentration.
Arguments¶
mass_concentration
- Concentration of the species in kilograms per cubic meter (kg/m^3).
Returns¶
Union[float,
NDArray[np.float64]] - Activity of the species, unitless.
Signature¶
def activity(
self, mass_concentration: Union[float, NDArray[np.float64]]
) -> Union[float, NDArray[np.float64]]: ...
ActivityIdealVolume¶
Show source in activity_strategies.py:141
Calculate ideal activity based on volume fractions.
This strategy uses volume fractions to compute the activity, following the principles of Raoult's Law.
References¶
Volume Based Raoult's Law
Signature¶
class ActivityIdealVolume(ActivityStrategy):
def __init__(self, density: Union[float, NDArray[np.float64]] = 0.0): ...
See also¶
ActivityIdealVolume().activity¶
Show source in activity_strategies.py:155
Calculate the activity of a species based on mass concentration.
Arguments¶
mass_concentration
- Concentration of the species in kilograms per cubic meter (kg/m^3).density
- Density of the species in kilograms per cubic meter (kg/m^3).
Returns¶
Union[float,
NDArray[np.float64]] - Activity of the particle, unitless.
Signature¶
def activity(
self, mass_concentration: Union[float, NDArray[np.float64]]
) -> Union[float, NDArray[np.float64]]: ...
ActivityKappaParameter¶
Show source in activity_strategies.py:176
Non-ideal activity strategy based on the kappa hygroscopic parameter.
This strategy calculates the activity using the kappa hygroscopic parameter, a measure of hygroscopicity. The activity is determined by the species' mass concentration along with the hygroscopic parameter.
Arguments¶
kappa
- Kappa hygroscopic parameter, unitless. Includes a value for water which is excluded in calculations.density
- Density of the species in kilograms per cubic meter (kg/m^3).molar_mass
- Molar mass of the species in kilograms per mole (kg/mol).water_index
- Index of water in the mass concentration array.
Signature¶
class ActivityKappaParameter(ActivityStrategy):
def __init__(
self,
kappa: NDArray[np.float64] = np.array([0.0], dtype=np.float64),
density: NDArray[np.float64] = np.array([0.0], dtype=np.float64),
molar_mass: NDArray[np.float64] = np.array([0.0], dtype=np.float64),
water_index: int = 0,
): ...
See also¶
ActivityKappaParameter().activity¶
Show source in activity_strategies.py:205
Calculate the activity of a species based on mass concentration.
Arguments¶
mass_concentration
- Concentration of the species in kilograms per cubic meter (kg/m^3).
Returns¶
Union[float,
NDArray[np.float64]] - Activity of the particle, unitless.
References¶
Petters, M. D., & Kreidenweis, S. M. (2007). A single parameter representation of hygroscopic growth and cloud condensation nucleus activity. Atmospheric Chemistry and Physics, 7(8), 1961-1971. DOI, see EQ 2 and 7.
Signature¶
def activity(
self, mass_concentration: Union[float, NDArray[np.float64]]
) -> Union[float, NDArray[np.float64]]: ...
ActivityStrategy¶
Show source in activity_strategies.py:22
Abstract base class for vapor pressure strategies.
This interface is used for implementing strategies based on particle activity calculations, specifically for calculating vapor pressures.
Methods¶
get_name
- Return the type of the activity strategy.activity
- Calculate the activity of a species.partial_pressure
- Calculate the partial pressure of a species in the mixture.
Signature¶
class ActivityStrategy(ABC): ...
ActivityStrategy().activity¶
Show source in activity_strategies.py:35
Calculate the activity of a species based on its mass concentration.
Arguments¶
mass_concentration
- Concentration of the species [kg/m^3]
Returns¶
float or NDArray[float]: Activity of the particle, unitless.
Signature¶
@abstractmethod
def activity(
self, mass_concentration: Union[float, NDArray[np.float64]]
) -> Union[float, NDArray[np.float64]]: ...
ActivityStrategy().get_name¶
Show source in activity_strategies.py:48
Return the type of the activity strategy.
Signature¶
def get_name(self) -> str: ...
ActivityStrategy().partial_pressure¶
Show source in activity_strategies.py:52
Calculate the vapor pressure of species in the particle phase.
This method computes the vapor pressure based on the species' activity considering its pure vapor pressure and mass concentration.
Arguments¶
pure_vapor_pressure
- Pure vapor pressure of the species in pascals (Pa).mass_concentration
- Concentration of the species in kilograms per cubic meter (kg/m^3).
Returns¶
Union[float,
NDArray[np.float64]] - Vapor pressure of the particle in pascals (Pa).
Signature¶
def partial_pressure(
self,
pure_vapor_pressure: Union[float, NDArray[np.float64]],
mass_concentration: Union[float, NDArray[np.float64]],
) -> Union[float, NDArray[np.float64]]: ...