particula.particles.activity_factories¶
activity_factories
¶
Activity strategy factories for calculating activity and partial pressure of species in a mixture of liquids.
ActivityFactory
¶
Bases: StrategyFactoryABC[Union[ActivityIdealMassBuilder, ActivityIdealMolarBuilder, ActivityKappaParameterBuilder], Union[ActivityIdealMass, ActivityIdealMolar, ActivityKappaParameter]]
Factory for creating activity strategy builders for liquid mixtures.
This class supports various strategies (e.g., mass-ideal, molar-ideal, kappa-parameter) to compute activity and partial pressures of species based on Raoult's Law or kappa hygroscopic parameter.
Methods:
-
get_builders–Provides a mapping from strategy type to its corresponding builder.
-
get_strategy–Validates inputs and returns a strategy instance for the specified strategy type (e.g., 'mass_ideal', 'molar_ideal', or 'kappa_parameter').
Returns:
-
–
- ActivityStrategy: Instance configured for the chosen activity approach.
Raises:
-
-ValueError–If the strategy type is unknown or if required parameters are missing or invalid.
Examples:
import particula as par
factory = par.particles.ActivityFactory()
strategy = factory.get_strategy("mass_ideal")
result = strategy.activity([1.0, 2.0, 3.0])
# result -> ...
References: - "Raoult's Law," Wikipedia.
get_builders
¶
get_builders()
Return a mapping of strategy types to their corresponding builders.
Returns:
-
–
dict[str, Any]: A dictionary mapping the activity strategy type
-
–
(e.g., 'mass_ideal', 'molar_ideal', 'kappa_parameter') to a builder
-
–
instance.
Examples:
```py title="Builders Retrieval Example" factory = ActivityFactory() builder_map = factory.get_builders() mass_ideal_builder = builder_map["mass_ideal"]
mass_ideal_builder -> ActivityIdealMassBuilder()¶
Source code in particula/particles/activity_factories.py
68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 | |