Coverage for backend/flowsheetInternals/unitops/config/objects/turbine_config.py: 100%

14 statements  

« prev     ^ index     » next       coverage.py v7.10.7, created at 2025-11-06 23:27 +0000

1from common.config_types import * 

2from common.config_utils import * 

3from common.config_generator import generate_config 

4 

5# Define the properties as dicts for the default turbine: 

6 

7deltaP_inverted = PropertyType(displayName="Pressure Drop", type="numeric", unitType="pressure") 

8efficiency_isentropic = PropertyType( 

9 displayName="Isentropic Efficiency", type="numeric", unitType="ratio" 

10) 

11work_mechanical = PropertyType( 

12 displayName="Mechanical Work", type="numeric", unitType="heatflow" 

13) 

14efficiency_motor = PropertyType( 

15 displayName="Motor Efficiency", 

16 value=1, 

17 type="numeric", 

18 unit="dimensionless", 

19 unitType="ratio", 

20) 

21work_electrical = PropertyType( 

22 displayName="Electrical Work", 

23 value=0, 

24 type="numeric", 

25 unit="kW", 

26 unitType="heatflow", 

27) 

28default_properties = [ 

29 ("deltaP_inverted", deltaP_inverted), 

30 ("efficiency_isentropic", efficiency_isentropic), 

31 ("work_mechanical", work_mechanical), 

32 ("efficiency_motor", efficiency_motor), 

33 ("work_electrical", work_electrical), 

34] 

35 

36properties_default = dict(default_properties) 

37 

38default = PropertySetType( 

39 type="stateVars", 

40 displayName="Properties", 

41 stateVars=("work_mechanical", "efficiency_isentropic", "efficiency_motor"), 

42) 

43property_set_groups_default = [("default", default)] 

44 

45key_properties_default = [ 

46 "deltaP_inverted", 

47] 

48 

49turbine_config: ObjectType = generate_config( 

50 "Turbine", 

51 None, 

52 properties_default, 

53 property_set_groups_default, 

54 None, 

55 key_properties_default, 

56)