| 123456789101112131415161718192021222324252627282930313233343536373839 |
- import numpy as np
- try:
- import pymc as pm
- except:
- pass
- from .._model._base import BaseModel
- class BaseComponents(BaseModel):
-
- CONSTANT = {
- 'T_offset' : 273.15,
- 'h_ads' : 2200, # kJ/kg 吸附热(文献中硅胶约为2100–2300 kJ/kg,接近水蒸气冷凝潜热)
- 'c_p_air' : 1.05, # kJ/kg·K 空气比热容
- 'c_p_v' : 1.84, # kJ/kg·K 水蒸气比热容
- 'c_p_water': 4.18, # kJ/kg·K 水比热容(约4.18)
- 'rho_air' : 1.184, # kg/m3 取了25度下的空气密度
- }
-
- def __init__(self) -> None:
- super().__init__()
-
- def get_func_by_engine(engine:str) -> dict:
- if engine == 'pymc':
- EXP = pm.math.exp
- WHERE = pm.math.switch
- GT = pm.math.gt
- LT = pm.math.lt
- else:
- EXP = np.exp
- WHERE = np.where
- GT = np.greater
- LT = np.less
- return {
- 'EXP' : EXP,
- 'WHERE' : WHERE,
- 'GT' : GT,
- 'LT' : LT,
- }
|