chore: remove deprecated flow_boundary and update docs to match new architecture

This commit is contained in:
Sepehr
2026-03-01 20:00:09 +01:00
parent 20700afce8
commit d88914a44f
105 changed files with 11222 additions and 2994 deletions

View File

@@ -0,0 +1,121 @@
{
"name": "Chiller MCHX Condensers - Démonstration CLI",
"description": "Démontre l'utilisation des MchxCondenserCoil (4 coils) et FloodedEvaporator dans le pipeline CLI. Utilise des Placeholder pour simuler compresseur et vanne. Topology linéaire pour compatibilité CLI graphe.",
"fluid": "R134a",
"circuits": [
{
"id": 0,
"components": [
{
"type": "Placeholder",
"name": "comp_0",
"n_equations": 2
},
{
"type": "MchxCondenserCoil",
"name": "mchx_0a",
"ua": 15000.0,
"coil_index": 0,
"n_air": 0.5,
"t_air_celsius": 35.0,
"fan_speed_ratio": 1.0
},
{
"type": "MchxCondenserCoil",
"name": "mchx_0b",
"ua": 15000.0,
"coil_index": 1,
"n_air": 0.5,
"t_air_celsius": 35.0,
"fan_speed_ratio": 0.8
},
{
"type": "Placeholder",
"name": "exv_0",
"n_equations": 2
},
{
"type": "FloodedEvaporator",
"name": "evap_0",
"ua": 20000.0,
"refrigerant": "R134a",
"secondary_fluid": "MEG",
"target_quality": 0.7
}
],
"edges": [
{ "from": "comp_0:outlet", "to": "mchx_0a:inlet" },
{ "from": "mchx_0a:outlet", "to": "mchx_0b:inlet" },
{ "from": "mchx_0b:outlet", "to": "exv_0:inlet" },
{ "from": "exv_0:outlet", "to": "evap_0:inlet" },
{ "from": "evap_0:outlet", "to": "comp_0:inlet" }
]
},
{
"id": 1,
"components": [
{
"type": "Placeholder",
"name": "comp_1",
"n_equations": 2
},
{
"type": "MchxCondenserCoil",
"name": "mchx_1a",
"ua": 15000.0,
"coil_index": 2,
"n_air": 0.5,
"t_air_celsius": 35.0,
"fan_speed_ratio": 1.0
},
{
"type": "MchxCondenserCoil",
"name": "mchx_1b",
"ua": 15000.0,
"coil_index": 3,
"n_air": 0.5,
"t_air_celsius": 35.0,
"fan_speed_ratio": 0.9
},
{
"type": "Placeholder",
"name": "exv_1",
"n_equations": 2
},
{
"type": "FloodedEvaporator",
"name": "evap_1",
"ua": 20000.0,
"refrigerant": "R134a",
"secondary_fluid": "MEG",
"target_quality": 0.7
}
],
"edges": [
{ "from": "comp_1:outlet", "to": "mchx_1a:inlet" },
{ "from": "mchx_1a:outlet", "to": "mchx_1b:inlet" },
{ "from": "mchx_1b:outlet", "to": "exv_1:inlet" },
{ "from": "exv_1:outlet", "to": "evap_1:inlet" },
{ "from": "evap_1:outlet", "to": "comp_1:inlet" }
]
}
],
"solver": {
"strategy": "newton",
"max_iterations": 100,
"tolerance": 1e-6
},
"metadata": {
"note": "Demo MCHX 4 coils + FloodedEvap 2 circuits via CLI",
"mchx_coil_0_fan": "100% (design point)",
"mchx_coil_1_fan": "80% (anti-override actif)",
"mchx_coil_2_fan": "100% (design point)",
"mchx_coil_3_fan": "90%",
"glycol_type": "MEG 35%",
"t_air_celsius": 35.0
}
}

View File

@@ -0,0 +1,159 @@
{
"name": "Chiller Air-Glycol 2 Circuits - Screw Economisé + MCHX",
"description": "Machine frigorifique 2 circuits indépendants. R134a, condenseurs MCHX (4 coils, air 35°C), évaporateurs noyés (MEG 35%, 12→7°C), compresseurs vis économisés VFD.",
"fluid": "R134a",
"circuits": [
{
"id": 0,
"components": [
{
"type": "ScrewEconomizerCompressor",
"name": "screw_0",
"fluid": "R134a",
"nominal_frequency_hz": 50.0,
"mechanical_efficiency": 0.92,
"economizer_fraction": 0.12,
"mf_a00": 1.20,
"mf_a10": 0.003,
"mf_a01": -0.002,
"mf_a11": 0.00001,
"pw_b00": 55000.0,
"pw_b10": 200.0,
"pw_b01": -300.0,
"pw_b11": 0.5,
"p_suction_bar": 3.2,
"h_suction_kj_kg": 400.0,
"p_discharge_bar": 12.8,
"h_discharge_kj_kg": 440.0,
"p_eco_bar": 6.4,
"h_eco_kj_kg": 260.0
},
{
"type": "MchxCondenserCoil",
"name": "mchx_0a",
"ua": 15000.0,
"coil_index": 0,
"n_air": 0.5,
"t_air_celsius": 35.0,
"fan_speed_ratio": 1.0
},
{
"type": "MchxCondenserCoil",
"name": "mchx_0b",
"ua": 15000.0,
"coil_index": 1,
"n_air": 0.5,
"t_air_celsius": 35.0,
"fan_speed_ratio": 1.0
},
{
"type": "Placeholder",
"name": "exv_0",
"n_equations": 2
},
{
"type": "FloodedEvaporator",
"name": "evap_0",
"ua": 20000.0,
"refrigerant": "R134a",
"secondary_fluid": "MEG",
"target_quality": 0.7
}
],
"edges": [
{ "from": "screw_0:outlet", "to": "mchx_0a:inlet" },
{ "from": "mchx_0a:outlet", "to": "mchx_0b:inlet" },
{ "from": "mchx_0b:outlet", "to": "exv_0:inlet" },
{ "from": "exv_0:outlet", "to": "evap_0:inlet" },
{ "from": "evap_0:outlet", "to": "screw_0:inlet" }
]
},
{
"id": 1,
"components": [
{
"type": "ScrewEconomizerCompressor",
"name": "screw_1",
"fluid": "R134a",
"nominal_frequency_hz": 50.0,
"mechanical_efficiency": 0.92,
"economizer_fraction": 0.12,
"mf_a00": 1.20,
"mf_a10": 0.003,
"mf_a01": -0.002,
"mf_a11": 0.00001,
"pw_b00": 55000.0,
"pw_b10": 200.0,
"pw_b01": -300.0,
"pw_b11": 0.5,
"p_suction_bar": 3.2,
"h_suction_kj_kg": 400.0,
"p_discharge_bar": 12.8,
"h_discharge_kj_kg": 440.0,
"p_eco_bar": 6.4,
"h_eco_kj_kg": 260.0
},
{
"type": "MchxCondenserCoil",
"name": "mchx_1a",
"ua": 15000.0,
"coil_index": 2,
"n_air": 0.5,
"t_air_celsius": 35.0,
"fan_speed_ratio": 1.0
},
{
"type": "MchxCondenserCoil",
"name": "mchx_1b",
"ua": 15000.0,
"coil_index": 3,
"n_air": 0.5,
"t_air_celsius": 35.0,
"fan_speed_ratio": 1.0
},
{
"type": "Placeholder",
"name": "exv_1",
"n_equations": 2
},
{
"type": "FloodedEvaporator",
"name": "evap_1",
"ua": 20000.0,
"refrigerant": "R134a",
"secondary_fluid": "MEG",
"target_quality": 0.7
}
],
"edges": [
{ "from": "screw_1:outlet", "to": "mchx_1a:inlet" },
{ "from": "mchx_1a:outlet", "to": "mchx_1b:inlet" },
{ "from": "mchx_1b:outlet", "to": "exv_1:inlet" },
{ "from": "exv_1:outlet", "to": "evap_1:inlet" },
{ "from": "evap_1:outlet", "to": "screw_1:inlet" }
]
}
],
"solver": {
"strategy": "fallback",
"max_iterations": 150,
"tolerance": 1e-6,
"timeout_ms": 5000,
"verbose": false
},
"metadata": {
"refrigerant": "R134a",
"application": "Air-cooled chiller",
"glycol_type": "MEG 35%",
"glycol_inlet_celsius": 12.0,
"glycol_outlet_celsius": 7.0,
"ambient_air_celsius": 35.0,
"nominal_capacity_kw": 400.0,
"n_coils": 4,
"n_circuits": 2
}
}

View File

@@ -0,0 +1,159 @@
{
"name": "Chiller Air-Glycol - Screw MCHX Run (Compatible)",
"description": "Simulation chiller 2 circuits avec ScrewEconomizerCompressor et MchxCondenserCoil. Les composants utilisent les n_equations compatibles avec le graphe (2 par arête).",
"fluid": "R134a",
"circuits": [
{
"id": 0,
"components": [
{
"type": "ScrewEconomizerCompressor",
"name": "screw_0",
"fluid": "R134a",
"nominal_frequency_hz": 50.0,
"mechanical_efficiency": 0.92,
"economizer_fraction": 0.12,
"mf_a00": 1.20,
"mf_a10": 0.003,
"mf_a01": -0.002,
"mf_a11": 0.00001,
"pw_b00": 55000.0,
"pw_b10": 200.0,
"pw_b01": -300.0,
"pw_b11": 0.5,
"p_suction_bar": 3.2,
"h_suction_kj_kg": 400.0,
"p_discharge_bar": 12.8,
"h_discharge_kj_kg": 440.0,
"p_eco_bar": 6.4,
"h_eco_kj_kg": 260.0
},
{
"type": "MchxCondenserCoil",
"name": "mchx_0a",
"ua": 15000.0,
"coil_index": 0,
"n_air": 0.5,
"t_air_celsius": 35.0,
"fan_speed_ratio": 1.0
},
{
"type": "MchxCondenserCoil",
"name": "mchx_0b",
"ua": 15000.0,
"coil_index": 1,
"n_air": 0.5,
"t_air_celsius": 35.0,
"fan_speed_ratio": 1.0
},
{
"type": "Placeholder",
"name": "exv_0",
"n_equations": 2
},
{
"type": "FloodedEvaporator",
"name": "evap_0",
"ua": 20000.0,
"refrigerant": "R134a",
"secondary_fluid": "MEG",
"target_quality": 0.7
}
],
"edges": [
{ "from": "screw_0:outlet", "to": "mchx_0a:inlet" },
{ "from": "mchx_0a:outlet", "to": "mchx_0b:inlet" },
{ "from": "mchx_0b:outlet", "to": "exv_0:inlet" },
{ "from": "exv_0:outlet", "to": "evap_0:inlet" },
{ "from": "evap_0:outlet", "to": "screw_0:inlet" }
]
},
{
"id": 1,
"components": [
{
"type": "ScrewEconomizerCompressor",
"name": "screw_1",
"fluid": "R134a",
"nominal_frequency_hz": 50.0,
"mechanical_efficiency": 0.92,
"economizer_fraction": 0.12,
"mf_a00": 1.20,
"mf_a10": 0.003,
"mf_a01": -0.002,
"mf_a11": 0.00001,
"pw_b00": 55000.0,
"pw_b10": 200.0,
"pw_b01": -300.0,
"pw_b11": 0.5,
"p_suction_bar": 3.2,
"h_suction_kj_kg": 400.0,
"p_discharge_bar": 12.8,
"h_discharge_kj_kg": 440.0,
"p_eco_bar": 6.4,
"h_eco_kj_kg": 260.0
},
{
"type": "MchxCondenserCoil",
"name": "mchx_1a",
"ua": 15000.0,
"coil_index": 2,
"n_air": 0.5,
"t_air_celsius": 35.0,
"fan_speed_ratio": 1.0
},
{
"type": "MchxCondenserCoil",
"name": "mchx_1b",
"ua": 15000.0,
"coil_index": 3,
"n_air": 0.5,
"t_air_celsius": 35.0,
"fan_speed_ratio": 1.0
},
{
"type": "Placeholder",
"name": "exv_1",
"n_equations": 2
},
{
"type": "FloodedEvaporator",
"name": "evap_1",
"ua": 20000.0,
"refrigerant": "R134a",
"secondary_fluid": "MEG",
"target_quality": 0.7
}
],
"edges": [
{ "from": "screw_1:outlet", "to": "mchx_1a:inlet" },
{ "from": "mchx_1a:outlet", "to": "mchx_1b:inlet" },
{ "from": "mchx_1b:outlet", "to": "exv_1:inlet" },
{ "from": "exv_1:outlet", "to": "evap_1:inlet" },
{ "from": "evap_1:outlet", "to": "screw_1:inlet" }
]
}
],
"solver": {
"strategy": "fallback",
"max_iterations": 200,
"tolerance": 1e-4,
"timeout_ms": 10000,
"verbose": false
},
"metadata": {
"refrigerant": "R134a",
"application": "Air-cooled chiller, screw with economizer",
"glycol_type": "MEG 35%",
"glycol_inlet_celsius": 12.0,
"glycol_outlet_celsius": 7.0,
"ambient_air_celsius": 35.0,
"n_coils": 4,
"n_circuits": 2,
"design_capacity_kw": 400
}
}

View File

@@ -0,0 +1,68 @@
{
"name": "Chiller Screw Economisé MCHX - Validation",
"description": "Fichier de validation pour tester le parsing du config sans lancer la simulation",
"fluid": "R134a",
"circuits": [
{
"id": 0,
"components": [
{
"type": "ScrewEconomizerCompressor",
"name": "screw_0"
},
{
"type": "Placeholder",
"name": "splitter_0",
"n_equations": 1
},
{
"type": "MchxCondenserCoil",
"name": "mchx_0a",
"ua": 15000.0,
"coil_index": 0,
"t_air_celsius": 35.0
},
{
"type": "MchxCondenserCoil",
"name": "mchx_0b",
"ua": 15000.0,
"coil_index": 1,
"t_air_celsius": 35.0
},
{
"type": "Placeholder",
"name": "merger_0",
"n_equations": 1
},
{
"type": "Placeholder",
"name": "exv_0",
"n_equations": 2
},
{
"type": "FloodedEvaporator",
"name": "evap_0",
"ua": 20000.0,
"refrigerant": "R134a",
"secondary_fluid": "MEG",
"target_quality": 0.7
}
],
"edges": [
{ "from": "screw_0:outlet", "to": "splitter_0:inlet" },
{ "from": "splitter_0:out_a", "to": "mchx_0a:inlet" },
{ "from": "splitter_0:out_b", "to": "mchx_0b:inlet" },
{ "from": "mchx_0a:outlet", "to": "merger_0:in_a" },
{ "from": "mchx_0b:outlet", "to": "merger_0:in_b" },
{ "from": "merger_0:outlet", "to": "exv_0:inlet" },
{ "from": "exv_0:outlet", "to": "evap_0:inlet" },
{ "from": "evap_0:outlet", "to": "screw_0:inlet" }
]
}
],
"solver": {
"strategy": "fallback",
"max_iterations": 100,
"tolerance": 1e-6
}
}