[2089] | 1 | !* |
---|
| 2 | ! ------------------------------------------------------------------ |
---|
| 3 | #ifdef DOC |
---|
| 4 | |
---|
| 5 | ! CE COMDECK CONTIENT DEUX GROUPES DE FONCTIONS THERMODYNAMIQUES : |
---|
| 6 | |
---|
| 7 | ! * LE PREMIER (RLV,RLS,RLF,ESW,ESS,ES) CORRESPOND A DES |
---|
| 8 | ! FONCTIONS ABSOLUES (OU INTRINSEQUES) QUI DOIVENT ETRE UTILISEES |
---|
| 9 | ! POUR TOUT CE QUI CONCERNE LE MONDE REEL (DONNEES OBSERVEES ET |
---|
| 10 | ! SORTIES DESTINEES A ETRE COMPAREES A DE TELLES DONNEES). |
---|
| 11 | |
---|
| 12 | ! * LE SECOND (FOEW,FODLEW,FOQS,FODQS,FOLH) CORRESPOND AU MONDE |
---|
| 13 | ! DE LA PHYSIQUE DU MODELE (ET PAR CONSEQUENT DE TOUTE LES PARTIES |
---|
| 14 | ! DU CODE QUI DOIVENT ETRE COMPATIBLES AVEC CETTE PHYSIQUE : |
---|
| 15 | ! ANALYSE/DYNAMIQUE/POST-PROCESSING ... ). LES DIFFERENCES ENTRE LES |
---|
| 16 | ! DEUX GROUPES VIENNENT, DANS LA CONFIGURATION ACTUELLE DE LA |
---|
| 17 | ! PHYSIQUE, DES POINTS SUIVANTS : |
---|
| 18 | ! - CALCULS RELATIFS A LA VARIABLE Q DU MODELE |
---|
| 19 | ! - CALCULS DE DERIVATION PAR RAPPORT A LA TEMPERATURE |
---|
| 20 | ! - ABSENCE D'ETATS HORS-EQUILIBRE = UNE SEULE CHALEUR LATENTE |
---|
| 21 | ! DE FUSION |
---|
| 22 | ! - POSSIBILITE DE TRAVAILLER SANS LA PHASE GLACE = INDICE DE |
---|
| 23 | ! TEST BINAIRE. |
---|
| 24 | |
---|
| 25 | ! ------------------------------------------------------------------ |
---|
| 26 | #endif |
---|
| 27 | ! ABSOLUTE THERMODYNAMICAL FUNCTIONS . |
---|
| 28 | |
---|
| 29 | |
---|
| 30 | ! RLV : LATENT HEAT OF VAPOURISATION |
---|
| 31 | ! RLS : LATENT HEAT OF SUBLIMATION |
---|
| 32 | ! RLF : LATENT HEAT OF FUSION |
---|
| 33 | ! ESW : SATURATION IN PRESENCE OF WATER |
---|
| 34 | ! ESS : SATURATION IN PRESENCE OF ICE |
---|
| 35 | ! ES : SATURATION (IF T>RTT THEN WATER ; IF T<RTT THEN ICE) |
---|
| 36 | ! INPUT (FOR ALL SIX FUNCTIONS) : PTARG = TEMPERATURE . |
---|
| 37 | REAL_B :: RLV,RLS,RLF,ESW,ESS,ES |
---|
| 38 | REAL_B :: PTARG |
---|
| 39 | |
---|
| 40 | RLV(PTARG)=RLVTT+(RCPV-RCW)*(PTARG-RTT) |
---|
| 41 | RLS(PTARG)=RLSTT+(RCPV-RCS)*(PTARG-RTT) |
---|
| 42 | RLF(PTARG)=RLS(PTARG)-RLV(PTARG) |
---|
| 43 | ESW(PTARG)=EXP(RALPW-RBETW/PTARG-RGAMW*LOG(PTARG)) |
---|
| 44 | ESS(PTARG)=EXP(RALPS-RBETS/PTARG-RGAMS*LOG(PTARG)) |
---|
| 45 | ES (PTARG)=EXP(& |
---|
| 46 | &(RALPW+RALPD*MAX(_ZERO_,SIGN(_ONE_,RTT-PTARG)))& |
---|
| 47 | &-(RBETW+RBETD*MAX(_ZERO_,SIGN(_ONE_,RTT-PTARG)))/PTARG & |
---|
| 48 | &-(RGAMW+RGAMD*MAX(_ZERO_,SIGN(_ONE_,RTT-PTARG)))*LOG(PTARG)) |
---|
| 49 | |
---|
| 50 | ! ------------------------------------------------------------------ |
---|
| 51 | ! FONCTIONS THERMODYNAMIQUES : FONCTIONS DEFINIES DE LA PHYSIQUE . |
---|
| 52 | |
---|
| 53 | |
---|
| 54 | ! FONCTION DE LA TENSION DE VAPEUR SATURANTE . |
---|
| 55 | ! INPUT : PTARG = TEMPERATURE |
---|
| 56 | ! PDELARG = 0 SI EAU (QUELQUE SOIT PTARG) |
---|
| 57 | ! 1 SI GLACE (QUELQUE SOIT PTARG). |
---|
| 58 | REAL_B :: FOEW |
---|
| 59 | REAL_B :: PDELARG |
---|
| 60 | FOEW ( PTARG,PDELARG ) = EXP (& |
---|
| 61 | &( RALPW+PDELARG*RALPD )& |
---|
| 62 | &- ( RBETW+PDELARG*RBETD ) / PTARG & |
---|
| 63 | &- ( RGAMW+PDELARG*RGAMD ) * LOG(PTARG) ) |
---|
| 64 | |
---|
| 65 | ! FONCTION DERIVEE DU LOGARITHME NEPERIEN DE LA PRECEDENTE (FOEW) . |
---|
| 66 | ! INPUT : PTARG = TEMPERATURE |
---|
| 67 | ! PDELARG = 0 SI EAU (QUELQUE SOIT PTARG) |
---|
| 68 | ! 1 SI GLACE (QUELQUE SOIT PTARG). |
---|
| 69 | REAL_B :: FODLEW |
---|
| 70 | FODLEW ( PTARG,PDELARG ) = (& |
---|
| 71 | &( RBETW+PDELARG*RBETD )& |
---|
| 72 | &- ( RGAMW+PDELARG*RGAMD ) * PTARG )& |
---|
| 73 | &/ ( PTARG*PTARG ) |
---|
| 74 | |
---|
| 75 | ! FONCTION HUMIDITE SPECIFIQUE SATURANTE . |
---|
| 76 | ! INPUT : PESPFAR = RAPPORT FOEW SUR PRESSION. |
---|
| 77 | REAL_B :: FOQS |
---|
| 78 | REAL_B :: PESPFAR |
---|
| 79 | FOQS ( PESPFAR ) = PESPFAR / ( _ONE_+RETV*MAX(_ZERO_,& |
---|
| 80 | &(_ONE_-PESPFAR)) ) |
---|
| 81 | |
---|
| 82 | ! FONCTION DERIVEE EN TEMPERATURE DE LA PRECEDENTE (FOQS) . |
---|
| 83 | ! INPUT : PQSFARG = FOQS |
---|
| 84 | ! PESPFAR = RAPPORT FOEW SUR PRESSION |
---|
| 85 | ! PDLEFAR = FODLEW. |
---|
| 86 | REAL_B :: FODQS |
---|
| 87 | REAL_B :: PQSFARG,PDLEFAR |
---|
| 88 | FODQS ( PQSFARG,PESPFAR,PDLEFAR ) = ( PQSFARG & |
---|
| 89 | &* (_ONE_-PQSFARG)*PDLEFAR ) / (_ONE_-PESPFAR) |
---|
| 90 | |
---|
| 91 | ! FONCTION CHALEUR LATENTE . |
---|
| 92 | ! INPUT : PTARG = TEMPERATURE |
---|
| 93 | ! PDELARG = 0 SI EAU (QUELQUE SOIT PTARG) |
---|
| 94 | ! 1 SI GLACE (QUELQUE SOIT PTARG). |
---|
| 95 | REAL_B :: FOLH |
---|
| 96 | FOLH ( PTARG,PDELARG ) = RV * (& |
---|
| 97 | &( RBETW+PDELARG*RBETD )& |
---|
| 98 | &- ( RGAMW+PDELARG*RGAMD ) * PTARG ) |
---|
| 99 | ! ------------------------------------------------------------------ |
---|
| 100 | |
---|