flam
C FLAM SOURCE CB215821 20/11/25 13:29:02 10792 SUBROUTINE FLAM CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC IMPLICIT INTEGER(I-N) IMPLICIT REAL*8 (A-H,O-Z) C REAL*8 MH2,MO2,MN2,MH2O C DATA Rg,MH2,MO2,MN2,MH2O/8.313D0,2.0D-3,32.0D-3,28.0D-3,18.0D-3/ C DATA RRH2,RRO2,RRN2,RRH2O/4156.5D0,259.8D0,296.9D0,461.8D0/ -INC PPARAM -INC CCOPTIO -INC CCREEL C- -INC SMCHPOI -INC SMLREEL C POINTEUR MYH2.MCHPOI,MYO2.MCHPOI,MYN2.MCHPOI,MYH2O.MCHPOI, 1 MTEMP.MCHPOI,MQ.MCHPOI,MRHO.MCHPOI,MCV.MCHPOI,MR.MCHPOI, 2 MZK.MCHPOI,MZE.MCHPOI,MYH2u.MCHPOI,MTSEUI.MCHPOI, 3 MZH2.MCHPOI,MZO2.MCHPOI,MZN2.MCHPO,MZH2O.MCHPOI POINTEUR NYH2.MPOVAL,NYO2.MPOVAL,NYN2.MPOVAL,NYH2O.MPOVAL, 1 NTEMP.MPOVAL,NQ.MPOVAL,NRHO.MPOVAL,NCV.MPOVAL,NR.MPOVAL, 2 NZK.MPOVAL,NZE.MPOVAL,NYH2u.MPOVAL,NTSEUI.MPOVAL, 3 NZH2.MPOVAL,NZO2.MPOVAL,NZN2.MPOVAL,NZH2O.MPOVAL C PARAMETER (NBOPT=8) PARAMETER (NBCV=2) PARAMETER (NBINT=2) PARAMETER (NBMOD=2) CHARACTER*8 MOTOP,TOPTIO(NBOPT),COPTIO(NBCV),TYPE,MODEL CHARACTER*8 IOPTIO(NBINT),MODREC(NBMOD) DATA TOPTIO/'LAMINAIR','EBU ','ARRHENIU','RECOMBIN', 1 'RECOMB0D','HEAVYSID','CREBCOM','CREBCOM2'/ DATA COPTIO/'LINEAIRE','QUADRATI'/ DATA MODREC/'SIEMENS ','HEATER '/ C C================================== C Lecture de l'option de combustion C================================== C C C====================================================== C Branchements sur les différents modèles de combustion C====================================================== C C================================= C Cas de la déflagration laminaire C================================= C IF (IP .EQ. 1) THEN C C Lecture des paramètres C IF (IRET.EQ.0) RETURN IF (IRET.EQ.0) RETURN C C Lecture de l'option sur la forme des Cv C IF (IP .EQ. 0) THEN RETURN ENDIF IF ( MOTOP .EQ. 'LINEAIRE') THEN NCVOPT = 1 ELSEIF( MOTOP .EQ. 'QUADRATI') THEN NCVOPT = 2 ENDIF C IF (IRET.EQ.0) RETURN IF (IRET.EQ.0) RETURN IF (IRET.EQ.0) RETURN IF (IRET.EQ.0) RETURN IF (IRET.EQ.0) RETURN IF (IRET.EQ.0) RETURN IF (IRET.EQ.0) RETURN C C Activation champoints et vérification des pointeurs C IF (IGEO.NE.IGEO0) THEN WRITE(IOIMP,100) RETURN ENDIF IF (IGEO.NE.IGEO0) THEN WRITE(IOIMP,100) RETURN ENDIF IF (IGEO.NE.IGEO0) THEN WRITE(IOIMP,100) RETURN ENDIF IF (IGEO.NE.IGEO0) THEN WRITE(IOIMP,100) RETURN ENDIF IF (IGEO.NE.IGEO0) THEN WRITE(IOIMP,100) RETURN ENDIF IF (IGEO.NE.IGEO0) THEN WRITE(IOIMP,100) RETURN ENDIF IF (IGEO.NE.IGEO0) THEN WRITE(IOIMP,100) RETURN ENDIF C C Création et activation des chpoints résultats C NC=1 C C Nombre de Points du Maillage C NBPT = NRHO.VPOCHA(/1) C C Calcul des nouvelles concentrations et de l'énergie libérée C 1 NYO2.VPOCHA,NYN2.VPOCHA,NYH2O.VPOCHA,NTEMP.VPOCHA, 2 NZH2.VPOCHA,NZO2.VPOCHA,NZN2.VPOCHA,NZH2O.VPOCHA, 3 NQ.VPOCHA,Dt,NCVOPT) C C Ecriture des chpoints résultats C C C Désactivation des segments C SEGDES NZH2,NZO2,NZN2,NZH2O,NQ,NRHO,NCV,NR,NYH2 SEGDES NYO2,NYN2,NYH2O,NTEMP C C C================================== C Cas de la déflagration turbulente C================================== C ELSEIF( IP .EQ. 2) THEN C C Lecture des paramètres C IF (IRET.EQ.0) RETURN IF (IRET.EQ.0) RETURN C C Lecture de l'option sur la forme des Cv C IF(IP .EQ. 0) THEN RETURN ENDIF IF ( MOTOP .EQ. 'LINEAIRE') THEN NCVOPT = 1 ELSEIF( MOTOP .EQ. 'QUADRATI') THEN NCVOPT = 2 ENDIF C IF (IRET.EQ.0) RETURN IF (IRET.EQ.0) RETURN IF (IRET.EQ.0) RETURN IF (IRET.EQ.0) RETURN IF (IRET.EQ.0) RETURN IF (IRET.EQ.0) RETURN IF (IRET.EQ.0) RETURN C paramètres spécifiques à l'option choisie IF (IRET.EQ.0) RETURN IF (IRET.EQ.0) RETURN IF (IRET.EQ.0) RETURN IF (IRET.EQ.0) RETURN IF (IRET.EQ.0) CMIN=1.D-4 C C Activation champoints et vérification des pointeurs C IF (IGEO.NE.IGEO0) THEN WRITE(IOIMP,100) RETURN ENDIF IF (IGEO.NE.IGEO0) THEN WRITE(IOIMP,100) RETURN ENDIF IF (IGEO.NE.IGEO0) THEN WRITE(IOIMP,100) RETURN ENDIF IF (IGEO.NE.IGEO0) THEN WRITE(IOIMP,100) RETURN ENDIF IF (IGEO.NE.IGEO0) THEN WRITE(IOIMP,100) RETURN ENDIF IF (IGEO.NE.IGEO0) THEN WRITE(IOIMP,100) RETURN ENDIF IF (IGEO.NE.IGEO0) THEN WRITE(IOIMP,100) RETURN ENDIF IF (IGEO.NE.IGEO0) THEN WRITE(IOIMP,100) RETURN ENDIF IF (IGEO.NE.IGEO0) THEN WRITE(IOIMP,100) RETURN ENDIF IF (IGEO.NE.IGEO0) THEN WRITE(IOIMP,100) RETURN ENDIF C C Création et activation des chpoints résultats C NC=1 C C Nombre de Points C NBPT = NRHO.VPOCHA(/1) C 1 NYO2.VPOCHA,NYN2.VPOCHA,NYH2O.VPOCHA,NTEMP.VPOCHA, 2 NZK.VPOCHA,NZE.VPOCHA,NYH2u.VPOCHA, 3 NZH2.VPOCHA,NZO2.VPOCHA,NZN2.VPOCHA,NZH2O.VPOCHA, 4 NQ.VPOCHA,C_EBU,Dt,CMIN,NCVOPT) C C Ecriture des chpoints résultats C C C Désactivation des segments C SEGDES NZH2,NZO2,NZN2,NZH2O,NQ,NRHO,NCV,NR,NYH2 SEGDES NYO2,NYN2,NYH2O,NTEMP,NZK,NZE,NYH2u C C=================================== C Cas de la loi d'Arrhénius générale C=================================== C ELSEIF( IP .EQ. 3) THEN C C=================================== C Maquette CREBCOM C=================================== C ELSEIF( IP .EQ. 7) THEN IF(IERR.NE.0)RETURN C C====================================== C Maquette CREBCOM, modele non-homogene C====================================== C ELSEIF( IP .EQ. 8) THEN IF(IERR.NE.0)RETURN C C============================================ C Combustion catalytique : modèle recombineur C============================================ C ELSEIF((IP .EQ. 4) .OR. (IP .EQ. 5)) THEN C C Lecture des paramètres C YH2MOY : flottant : Fraction massique moyenne de H2 à l'entrée du PAR C YO2MOY : flottant : Fraction massique moyenne de O2 à l'entrée du PAR C YN2MOY : flottant : Fraction massique moyenne de N2 à l'entrée du PAR C YH2OMOY : flottant : Fraction massique moyenne de H2O à l'entrée du PAR C YHEMOY : flottant : Fraction massique moyenne de HE à l'entrée du PAR C YCO2MOY : flottant : Fraction massique moyenne de CO2 à l'entrée du PAR C YCOMOY : flottant : Fraction massique moyenne de CO à l'entrée du PAR C TMOY : flottant : Température moyenne du gaz à l'entrée du PAR (K) C TPLA : flottant : Température moyenne des plaques du PAR (K) C PRESS : flottant : Pression moyenne autour du PAR (Pa) C DT : flottant : Pas de temps (s) C KALP : entier : Flag pour correction du coefficient d'échange C comme dans RALOC (voir fla009.eso) IF (IRET.EQ.0) RETURN IF (IRET.EQ.0) RETURN IF (IRET.EQ.0) RETURN IF (IRET.EQ.0) RETURN IF (IRET.EQ.0) RETURN IF (IRET.EQ.0) RETURN IF (IRET.EQ.0) RETURN IF (IRET.EQ.0) RETURN IF (IRET.EQ.0) RETURN IF (IRET.EQ.0) RETURN IF (IRET.EQ.0) RETURN IF (IRET.EQ.0) RETURN C Lecture du modèle de PAR à choisir parmi 'SIEMENS ' ou 'HEATER ' C MODEL : CHAR*8 : Nom du modèle de PAR IF (IRET.EQ.0) RETURN IF (IQ.EQ.1) THEN C Lecture des paramètres A et B du modele recombineur 'SIEMENS ' C (loi lineaire en pression) IF (IRET.EQ.0) RETURN IF (IRET.EQ.0) RETURN IF (IRET.EQ.0) RETURN IF (IRET.EQ.0) RETURN IF (IRET.EQ.0) RETURN JG = 5 SEGINI MLREEL C C Calcul des conditions de sortie, de la temperature des plaques et du C débit dans le PAR (arret si débit ou température des plaques négatif) & YCO2MOY,YCOMOY,PRESS,TMOY, & TS,TPLA,DEB,YH2SOR,YO2SOR,YN2SOR,YH2OSOR,YHESOR, & YCO2SOR,YCOSOR,XH2ONF,EFF,Dt,KALP,IQ,MLREEL,IHI) ELSEIF (IQ.EQ.2) THEN C Lecture de la puissance du recombineur thermique (modèle 'HEATER ') IF (IRET.EQ.0) RETURN IF (IRET.EQ.0) RETURN IF (IRET.EQ.0) RETURN IF (IRET.EQ.0) RETURN JG = 4 SEGINI MLREEL C C Calcul des conditions de sortie, de la temperature des plaques et du C débit dans le HEATER (arret si débit ou température des plaques négatif) & YCO2MOY,YCOMOY,PRESS,TMOY, & TS,TPLA,DEB,YH2SOR,YO2SOR,YN2SOR,YH2OSOR,YHESOR, & YCO2SOR,YCOSOR,Dt,KALP,IQ,MLREEL,IHI) ENDIF IF (IHI .LT. 0) THEN RETURN ENDIF C C Ecriture des paramètres C XH2ONF : flottant : Flag pour l'allumage (négatif si le PAR est ON) C EFF : flottant : Efficacité du PAR (0.6 ou 1 suivant deficit en O2) C DEB : flottant : Débit au travers du PAR (en kg/s) C TPLA : flottant : Température moyenne des plaques du PAR (en K) C TS : flottant : Température moyenne du gaz en sortie du PAR (en K) C YCOSOR : flottant : Fraction massique moyenne de CO en sortie du PAR C YCO2SOR : flottant : Fraction massique moyenne de CO2 en sortie du PAR C YHESOR : flottant : Fraction massique moyenne de HE en sortie du PAR C YH2OSOR : flottant : Fraction massique moyenne de H2O en sortie du PAR C YN2SOR : flottant : Fraction massique moyenne de N2 en sortie du PAR C YO2SOR : flottant : Fraction massique moyenne de O2 en sortie du PAR C YH2SOR : flottant : Fraction massique moyenne de H2 en sortie du PAR IF (IQ .EQ. 1) THEN ELSE C VERIF : Pour le modèle thermique, les compositions entrée/sortie sont égales ENDIF C C=================================== C Cinetique de type HEAVYSIDE C=================================== C ELSEIF( IP .EQ. 6) THEN C ELSE C C******* Message d'erreur standard C Tentative d'utilisation d'une option non implémentée C 251 2 C RETURN ENDIF C C RETURN 100 FORMAT(2X,'Les CHPOINTs n''ont pas le meme SPG') END
© Cast3M 2003 - Tous droits réservés.
Mentions légales