diff --git a/ThermofluidStream/Media/myMedia/Air/MoistAir.mo b/ThermofluidStream/Media/myMedia/Air/MoistAir.mo index 8dac15fe..a5d1e4bd 100644 --- a/ThermofluidStream/Media/myMedia/Air/MoistAir.mo +++ b/ThermofluidStream/Media/myMedia/Air/MoistAir.mo @@ -1277,13 +1277,19 @@ end thermalConductivity; end f_nonlinear; algorithm - T := Modelica.Math.Nonlinear.solveOneNonlinearEquation( - function f_nonlinear(p=p, s=s, X=X[1:nX]), 190, 647); + if size(X, 1) == nX then + T := Modelica.Math.Nonlinear.solveOneNonlinearEquation( + function f_nonlinear(p=p, s=s, X=X), 190, 647); + else + T := Modelica.Math.Nonlinear.solveOneNonlinearEquation( + function f_nonlinear(p=p, s=s, X=cat(1,X[1:nXi],{1 - sum(X[1:nXi])})), 190, 647); + end if; annotation (Documentation(info=" Temperature is computed from pressure, specific entropy and composition via numerical inversion of function s_pTX. ", revisions="

2012-01-12 Stefan Wischhusen: Initial Release.

+

2026-04-08 Corentin Lepais: Correct algorithm to add X[Air] to the vector X if size(X,1) is different from nX.

")); end T_psX;