def cv_equations(control_volume_dimensions, info_dict):
key_list = control_volume_dimensions[0].keys()
equation_dict = {}
variable_list = []
compatibility = 0
for key in key_list:
balance_eq = 0
if key != 'Direction':
for path in control_volume_dimensions:
if key == 'Total':
balance_eq = sp.Add(balance_eq, sp.Mul(path['Direction'], path[key]))
else:
if path[key] != 0:
balance_eq = sp.Add(balance_eq, sp.Mul(path['Direction'], sp.Mul(path['Total'], path[key])))
equation_dict[key] = balance_eq
for key_eq, eq in equation_dict.items():
variable_count = eq.atoms(sp.Symbol)
for var in variable_count:
if var not in variable_list:
variable_list.append(var)
for info_number, info_equation in info_dict.items():
info_equation_variables = info_equation.atoms(sp.Symbol)
for variable in info_equation_variables:
if variable in variable_list:
compatibility += 1
if compatibility == len(info_equation_variables):
equation_dict[info_number] = info_equation
compatibility = 0
return equation_dict
MaterialsBalance.py 文件源码
python
阅读 17
收藏 0
点赞 0
评论 0
评论列表
文章目录