main
Cizz22 6 months ago
parent b9282ee985
commit cc6f05c905

@ -206,7 +206,7 @@ async def save_simulation_result(
"""Save the simulation result"""
avaiable_nodes = {
node.node_name: node
f"{node.node_type}:{node.node_name}": node
for node in await get_all_aeros_node(db_session=db_session, schematic_name=schematic_name)
}
calc_objects = []
@ -215,11 +215,13 @@ async def save_simulation_result(
try:
for result in calc_result:
node = avaiable_nodes.get(result["nodeName"], None)
node_type = "RegularNode" if result["nodeType"] == "RegularNode" else "SchematicNode"
node = avaiable_nodes.get(f"{node_type}:{result['nodeName']}", None)
if not node:
if result["nodeType"] != "RegularNode" and result["nodeType"] != "Schematic":
continue
node = await get_or_save_node(
db_session=db_session, node_data=result, type="calc"
)
@ -263,7 +265,8 @@ async def save_simulation_result(
calc_objects.append(calc_result)
for result in plot_result:
node = avaiable_nodes.get(result["nodeName"], None)
node_type = "RegularNode" if result["nodeType"] == "RegularNode" else "SchematicNode"
node = avaiable_nodes.get(f"{node_type}:{result['nodeName']}", None)
if not node:
if result["nodeType"] != "RegularNode" and result["nodeType"] != "Schematic":
continue

@ -39,9 +39,9 @@ async def get_model_data(*, db_session: DbSession, simulation_id: Optional[UUID]
availability = (main_calc_data.availability) * 100
# Equivalent Forced Outage Rate (EFOR)
EFOR = (main_calc_data.total_downtime / total_time) * 100
EFOR = (main_calc_data.total_cm_downtime / total_time) * 100
EAF = (main_calc_data.production / main_calc_data.ideal_production) * 100
EAF = (main_calc_data.availability - (main_calc_data.total_cm_downtime / total_time) - (main_calc_data.total_oh_downtime / total_time)) * 100
powerplant_reliability = {
"COAL HANDLING (CHS)": 98,

Loading…
Cancel
Save