Coverage for backend/ahuora-compounds/ahuora_property_packages/modular/builder/coolprop_parsers.py: 88%

8 statements  

« prev     ^ index     » next       coverage.py v7.10.7, created at 2026-07-22 05:22 +0000

1from typing import Any, Dict, List 

2from ahuora_compounds.packages.chemsep import ChemsepCompound as Compound 

3from idaes.core import Component 

4from idaes.models.properties.modular_properties.phase_equil.forms import log_fugacity 

5from ahuora_property_packages.types import States 

6from idaes.models.properties.modular_properties.coolprop.coolprop_wrapper import ( 

7 CoolPropWrapper, 

8) 

9 

10 

11 

12def build_coolprop_components(compounds: List[Compound], valid_states: List[States]) -> Dict[str, Any]: 

13 return { 

14 compound.CompoundID.value : { 

15 "type": Component, 

16 "dens_mol_liq_comp": CoolPropWrapper, 

17 "enth_mol_liq_comp": CoolPropWrapper, 

18 "enth_mol_ig_comp": CoolPropWrapper, 

19 "entr_mol_liq_comp": CoolPropWrapper, 

20 "entr_mol_ig_comp": CoolPropWrapper, 

21 "pressure_sat_comp": CoolPropWrapper, 

22 "phase_equilibrium_form": {("Vap", "Liq"): log_fugacity}, 

23 "parameter_data": { 

24 "mw": CoolPropWrapper, 

25 "dens_mol_crit": CoolPropWrapper, 

26 "pressure_crit": CoolPropWrapper, 

27 "temperature_crit": CoolPropWrapper, 

28 "omega": CoolPropWrapper, 

29 }, 

30 } 

31 for compound in compounds 

32 }