Cours en ligne et simulateur de thermodynamique appliquée

Génération des équations d'un modèle Thermoptim de cycle à vapeur

Modèle Thermoptim

Il s'agit d'un cycle très simple dont le synoptique est donné ci-dessous :

Synoptique d'un cycle à vapeur

Les fichiers de schéma et de projet sont donnés ci-dessous. Attention, ils nécessitent d'utiliser Thermoptim en version anglaise, c'est-à-dire avec le fichier inth2.zip de cette langue.

steam_light.dia

steam_light.prj

Équations brutes générées

Il y en a 53. Elles sont données dans ce fichier.

steam_light.eq

Redondances

Il n'y a pas de redondance identifiée.

Variables non initialisées

L'algorithme détecte qu'il manque une information pour que le problème ait une solution, ce qui est cohérent avec le fait qu'il n'y a que 53 variables.

Variables that do not appear to the left of the '=' sign:

T_3

T_3 n'est pas fournie, alors qu'il s'agit de la température de surchauffe, qui est une donnée ne pouvant pas être déduite des autres paramètres. Il faudra donc la rajouter dans la liste d'équations à traiter.

Liste des groupes d'équations

Une fois l'équation manquante rajoutée, l'analyse des équations peut être recommencée. Elle permet de mettre en évidence les différents groupes d'équations qui peuvent être résolues simplement.

Groupe 1

Group 1 (14 Variables) : [dTsat_1, x_3b, p_2, x_3a, p_4, m_dot_pump, T_3, xv_4, x_1, etaT_pump, etaT_turbine, xl_4, dTsat_3b, dTsat_3a]

Group 1 (Equations):

etaT_pump = 1.0

p_2 = 128.0

etaT_turbine = 0.9

xl_4 = 0.

xv_4 = 1.

p_4 = 0.0356

x_1 = 0.0

dTsat_1 = 0.0

x_3a = 0.0

dTsat_3a = 0.0

x_3b = 1.0

dTsat_3b = 0.0

m_dot_pump = 1.0

T_3 = 447

On retrouve bien ici toutes les équations fournissant les données du problème, y compris T_3.

Groupe 2

Group 2 (3 Variables) : [m_dot_economizer, p_1, p_3a]

Group 2 (Equations):

p_1 = p_4

m_dot_economizer = m_dot_pump

p_3a = p_2

Ce deuxième groupe correspond à des équations permettant de calculer les nouvelles variables par simple substitution de celles du premier groupe.

Groupe 3

Group 3 (4 Variables) : [m_dot_evaporator, T_1, p_3b, T_3a]

Group 3 (Equations):

m_dot_evaporator = m_dot_economizer

p_3b = p_3a

T_1 = calcTsat("water";P = p_1;X = x_1)+dTsat_1

T_3a = calcTsat("water";P = p_3a;X = x_3a)+dTsat_3a

Ce troisième groupe correspond à des équations permettant de calculer les nouvelles variables par simple substitution de celles du premier et du deuxième groupes. Ici la propagation du débit dans le circuit.

Le processus se répète dans les groupes suivants.

Équations non résolues

On obtient in fine comme équations non résolues la liste suivante :

Unresolved Equations: 14

Q_dot_economizer = m_dot_economizer*(h_3a - h_2)

v_2 = calcV_PH("water";P = p_2 ;H = h_2)

h_2 = h_1 + v_2*(p_2 - p_1)/100.

T_2 = calcT_PH("water";P = p_2 ;H = h_2)

W_dot_pump = m_dot_pump*(h_2 - h_1)

Tl_4 = T_4- 0.01

Tv_4 = T_4+ 0.01

hl_4 = calcH_TPx("water";T = Tl_4;P = p_4;X = xl_4)

hv_4 = calcH_TPx("water";T = Tv_4;P = p_4;X = xv_4)

x_4 = (h_4 - hl_4)/(hv_4 - hl_4)

T_4 = calcTsat("water";P = p_4 ;X = x_4)

useful_Energy = W_dot_pump + W_dot_turbine

purchased_Energy = Q_dot_superheater + Q_dot_evaporator + Q_dot_economizer

eta_global = abs(useful_Energy/purchased_Energy)

Ce sont celles qui soit dépendent des propriétés du fluide, soit ne peuvent pas être directement résolues.

Les 14 variables manquantes sont aussi identifiées.

Conversion au format d'Interactive Thermodynamics

Interactive Thermodynamics est un solveur mis à disposition par MM. Moran, Shapiro et Mmes Boettner et Bailey comme complément de leur livre « Fundamentals of Engineering Thermodynamics, 8th Edition » qui peut être téléchargé librement.

La conversion permet d'obtenir un fichier qui peut être traité par le solveur.

Les équations de calcul des propriétés de fluide converties à ce format sont données ci-dessous, les autres restant inchangées :

//Equation: 6

h_3 = h_PT("water",p_3,T_3)// Enthalpy

//Equation: 14

s_1 = s_Ph("water",p_1,h_1) // Upstream point - 1 - Downstream point - 2

//Equation: 15

hs_2 = h_Ps("water",p_2,s_1) // Downstream point - 2

//Equation: 17

v_2 = v_Ph("water",p_2,h_2) // Downstream point volume -

//Equation: 18

h_2 = h_1 + v_2*(p_2 - p_1)/100. // Liquid compression

//Equation: 19

T_2 = T_Ph("water",p_2,h_2) // Downstream point - 2

//Equation: 23

s_3 = s_Ph("water",p_3,h_3) // Upstream point - 3 - Downstream point - 4

//Equation: 24

hs_4 = h_Ps("water",p_4,s_3) // Downstream point - 4

//Equation: 26

h_4 = h_3 - etaT_turbine*(h_3 - hs_4) // Upstream point - 3 - Downstream point - 4

//Equation: 31

hl_4 = hsat_Px("water",p_4,xl_4)// Saturated liquid enthalpy

//Equation: 32

hv_4 = hsat_Px("water",p_4,xv_4)// Saturated vapor enthalpy

//Equation: 34

T_4 = Tsat_P("water",p_4) // Downstream point - 4

//Equation: 35

s_4 = s_Ph("water",p_4,h_4) // Entropy

//Equation: 40

T_1 = Tsat_P("water",p_1)+dTsat_1// set Tsat (Celsius)

//Equation: 41

h_1 = hsat_Px("water",p_1,x_1)// Enthalpy

//Equation: 44

T_3a = Tsat_P("water",p_3a)+dTsat_3a// set Tsat (Celsius)

//Equation: 45

h_3a = hsat_Px("water",p_3a,x_3a)// Enthalpy

T_3b = Tsat_P("water",p_3b)+dTsat_3b// set Tsat (Celsius)

//Equation: 49

h_3b = hsat_Px("water",p_3b,x_3b)// Enthalpy

Le fichier complet pouvant être résolu dans Interactive Thermodynamics est fourni ci-dessous.

steam_light_IT.eq

Conversion au format d'EES

EES est un solveur développé par f-Chart, qui nécessite de disposer d'une licence.

La conversion permet d'obtenir un fichier qui peut être traité par le solveur.

Les équations de calcul des propriétés de fluide converties à ce format sont données ci-dessous, les autres restant inchangées :

//Equation: 6

h_3 = enthalpy(Water;P = p_3;T = T_3)// Enthalpy

//Equation: 14

s_1 = entropy(Water;P = p_1;H = h_1) // Upstream point - 1 - Downstream point - 2

//Equation: 15

hs_2 = enthalpy(Water;P = p_2;S = s_1) // Downstream point - 2

//Equation: 17

v_2 = volume(Water;P = p_2;H = h_2) // Downstream point volume -

//Equation: 18

h_2 = h_1 + v_2*(p_2 - p_1)/100, // Liquid compression

//Equation: 19

T_2 = temperature(Water;P = p_2;H = h_2) // Downstream point - 2

//Equation: 23

s_3 = entropy(Water;P = p_3;H = h_3) // Upstream point - 3 - Downstream point - 4

//Equation: 24

hs_4 = enthalpy(Water;P = p_4;S = s_3) // Downstream point - 4

//Equation: 26

h_4 = h_3 - etaT_turbine*(h_3 - hs_4) // Upstream point - 3 - Downstream point - 4

//Equation: 31

hl_4 = enthalpy(Water;P = p_4;X = xl_4)// Saturated liquid enthalpy

//Equation: 32

hv_4 = enthalpy(Water;P = p_4;X = xv_4)// Saturated vapor enthalpy

//Equation: 34

T_4 = t_sat(Water;P = p_4) // Downstream point - 4

//Equation: 35

s_4 = entropy(Water;P = p_4;H = h_4) // Entropy

//Equation: 40

T_1 = t_sat(Water;P = p_1)+dTsat_1// set Tsat (Celsius)

//Equation: 41

h_1 = enthalpy(Water;P = p_1;X = x_1)// Enthalpy

//Equation: 44

T_3a = t_sat(Water;P = p_3a)+dTsat_3a// set Tsat (Celsius)

//Equation: 45

h_3a = enthalpy(Water;P = p_3a;X = x_3a)// Enthalpy

//Equation: 48

T_3b = t_sat(Water;P = p_3b)+dTsat_3b// set Tsat (Celsius)

//Equation: 49

h_3b = enthalpy(Water;P = p_3b;X = x_3b)// Enthalpy

Le fichier complet pouvant être résolu dans EES est fourni ci-dessous.

steam_light_EES.eq

Autres exemples non commentés

Cycle de réacteur nucléaire REP avec prélèvement

Synoptique d'un cycle de réacteur nucléaire REP avec prélèvement

PWR_Extract.dia

PWR_Extract.prj

Fichier des équations brutes (177 équations)

PWR_Extract.eq

fichier exécutable dans IT

PWR_Extract_IT.eq

fichier exécutable dans EES

PWR_Extract_EES.eq

Copyright R. Gicquel v 2024.5

Réalisé avec Scenari (nouvelle fenêtre)