rayen
C RAYEN SOURCE CB215821 24/04/12 21:17:03 11897 C ********************************************************** C **** OPERATEUR RAYE **** C **** **** C **** SYNTAXE : CH2 = RAYE MODL1 CHAM1 CHAM2 **** C **** ou **** C **** CH2 = RAYE MODL1 CHAM1 CHAM2 CHAM3 **** C **** (PREC) **** C **** 'TABS' VAL **** C **** MODL1 : type MMODEL **** C **** MCHEL1 : type MCHELM **** C **** MCHEL2 : type MCHELM **** C **** MCHEL3 : type MCHELM **** C **** PREC : flottant **** C **** VAL : flottant (T milieu absorbant)**** C **** **** C Rayonnement en milieu transparent dans une cavité **** C 2 possibilités: **** C 1- calcul de la matrice de rayonnement **** C Phi = R. T**4 **** C 2- calcul de la temperature Trad **** C Phi = emis.sigma.(T**4-Trad**4) **** C ********************************************************** IMPLICIT INTEGER(I-N) IMPLICIT REAL*8 (A-H,O-Z) C ********************************************************** C **** Entree des includes **** C ********************************************************** -INC PPARAM -INC CCOPTIO -INC SMCHAML -INC SMMODEL C ********************************************************** C **** Declaration des variables du probleme **** C ********************************************************** POINTEUR MODL.MMODEL POINTEUR CHAME.MCHELM, CHAMF.MCHELM, CHAMT.MCHELM CHARACTER*8 TYPE CHARACTER*4 MOTCLE C POINTEUR IMCHFA.MCHAML C ********************************************************** C **** Lecture des entrees **** C ********************************************************** KABS=0 KMATR=1 IF (IIMPI.GE.4) WRITE(6,*) 'DEBUT DE RAYT.ESO' if(mchel3.ne.0) then segact mchel2 kabs=0 kmatr=0 do io=1,mchel2.imache(/1) mchaml=mchel2.ichaml(io) segact mchaml do ia=1,nomche(/2) if( nomche(ia).eq.'TABS' ) then kabs=1 melval=ielval(ia) segact melval Tabs= velche(1,1) go to 1 endif enddo 1 continue enddo endif * write(6,*) ' kmatr kabs ' , kmatr , kabs * write(6,*) ' errj , tabs ' , errj , tabs IF(KMATR.EQ.1) THEN C Calcul de la matrice de rayonnement C ********************************************************** C **** Verification sur l'egalite des supports des **** C **** differents champs. **** C ********************************************************** C ********************************************************** C **** Reconnaissance des deux CHAMELEM **** C **** MCHEL1 contient les facteurs de forme **** C **** MCHEL2 contient les emissivites **** C ********************************************************** SEGACT MCHEL1, MCHEL2 IF ((MCHEL1.TITCHE).NE.'MATRICE DE RAYONNEMENT') THEN CHAME = MCHEL1 CHAMF = MCHEL2 ELSE CHAME = MCHEL2 CHAMF = MCHEL1 ENDIF C ********************************************************** C **** Conversion des MCHELM en matrices **** C ********************************************************** C ********************************************************** C **** Calcul de la matrice de rayonnement associe **** C ********************************************************** IF (IIMPI.GE.3) THEN ENDIF C ********************************************************** C **** Conversion du resultat en un MCHELM **** C ********************************************************** LTITR = 0 C ********************************************************** C **** Ecriture des resultats **** C ********************************************************** mchel4=mchel3 ELSE C Calcul de la temperature Trad C ********************************************************** C **** Verification sur l'egalite des supports des **** C **** differents champs. **** C ********************************************************** C ********************************************************** C **** Reconnaissance des deux CHAMELEM **** C **** MCHEL1 contient les facteurs de forme **** C **** MCHEL2 contient les emissivites par element)**** C **** MCHEL3 contient les temperatures par element*** C ********************************************************** SEGACT MCHEL1, MCHEL2, MCHEL3 IF ((MCHEL1.TITCHE).EQ.'MATRICE DE RAYONNEMENT') THEN CHAMF = MCHEL1 IF((MCHEL2.TITCHE).EQ.'CARACTERISTIQUES') THEN CHAME = MCHEL2 CHAMT = MCHEL3 ELSE CHAME = MCHEL3 CHAMT = MCHEL2 ENDIF ELSEIF((MCHEL1.TITCHE).EQ.'CARACTERISTIQUES') THEN CHAME = MCHEL1 IF((MCHEL2.TITCHE).EQ.'MATRICE DE RAYONNEMENT') THEN CHAMF = MCHEL2 CHAMT = MCHEL3 ELSE CHAMF = MCHEL3 CHAMT = MCHEL2 ENDIF ELSE CHAMT = MCHEL1 IF((MCHEL2.TITCHE).EQ.'MATRICE DE RAYONNEMENT') THEN CHAMF = MCHEL2 CHAME = MCHEL3 ELSE CHAMF = MCHEL3 CHAME = MCHEL2 ENDIF ENDIF C ********************************************************** C **** Conversion des MCHELM en matrices **** C ********************************************************** C ********************************************************** C **** Calcul du tableau TRAD **** C ********************************************************** C ********************************************************** C **** Conversion du resultat en un MCHELM **** C ********************************************************** C WRITE(6,*) ' infoel',INFOEL C on ne traite pas les coques INFOEL = 0 C ********************************************************** C **** Ecriture des resultats **** C ********************************************************** ENDIF IF (IIMPI.GE.4) WRITE(6,*) 'FIN RAYT OK' END
© Cast3M 2003 - Tous droits réservés.
Mentions légales