fix: resolve CLI solver state dimension mismatch
Removed mathematical singularity in HeatExchanger models (q_hot - q_cold = 0 was redundant) causing them to incorrectly request 3 equations without internal variables. Fixed ScrewEconomizerCompressor internal_state_len to perfectly align with the solver dimensions.
This commit is contained in:
@@ -91,6 +91,11 @@ pub enum FluidKind {
|
||||
}
|
||||
|
||||
/// A set of known incompressible fluid identifiers (case-insensitive prefix match).
|
||||
///
|
||||
/// Recognises the fluid names used by CoolProp's incompressible backend, including:
|
||||
/// - Plain names: `Water`, `Glycol`, `Brine`, `MEG`, `PEG`
|
||||
/// - CoolProp mixture prefix: `INCOMP::*`
|
||||
/// - Systematic glycol names: `EthyleneGlycol`, `PropyleneGlycol`
|
||||
pub(crate) fn is_incompressible(fluid: &str) -> bool {
|
||||
let f = fluid.to_lowercase();
|
||||
f.starts_with("water")
|
||||
@@ -100,6 +105,9 @@ pub(crate) fn is_incompressible(fluid: &str) -> bool {
|
||||
|| f.starts_with("ethyleneglycol")
|
||||
|| f.starts_with("propyleneglycol")
|
||||
|| f.starts_with("incompressible")
|
||||
|| f.starts_with("meg")
|
||||
|| f.starts_with("peg")
|
||||
|| f.starts_with("incomp::")
|
||||
}
|
||||
|
||||
// ─────────────────────────────────────────────────────────────────────────────
|
||||
|
||||
Reference in New Issue
Block a user