modcal
C MODCAL SOURCE CHAT 05/01/13 01:47:31 5004 $ ,XIREB,XNREB,IREBCO,IREBDI,XDEP2,TDEP,UREEL,U $ ,IZSH,DTREEL,XCON2,XARI2,TARI,DTNEW,ITEST1,ITEST2,LTEST) *************************************************************************** *** SP 'MODCAL' : traite les cas ou calibrage particule via 'CALIDT' est *** inefficace (cas ou pt calibré invariant et hors maille). 'MODCAL' *** recalibre le saut convectif seul sans tenir compte du saut dspersif. *** *** APPELES 1 = aucun *** APPELES 2 = 'CALIDT', 'LIEUPT' *** *** E = 'EPSILO' marge relative acceptée position % element *** 'NDIM' dimension de l'espace *** 'ITYG' entier caracterisant la geometrie de l'element *** 'XINTER' coord reelles du pt intersection du calibrage *** 'XNORMA' vecteur unitaire normal du calibrage *** 'XIREB' pt d'impact sur la face impermeable *** 'XNREB' vecteur normal à la face impermeable *** 'IREBCO' vaut 1 si rebond lors de la convection, 0 sinon *** 'IREBDI' vaut 1 si rebond lors de la diffusion, 0 sinon *** 'XDEP2' coord reelles depart particule avt calibrage *** 'TDEP' tps reel depart particule avt calibrage *** 'UREEL' vecteur "vitesse convective" du calibrage *** 'U' vecteur "vitesse diffusive" du calibrage *** 'IZSH' segment content coord reelles noeuds, fcts forme et base *** 'DTREEL' pas de tps réel de calcul avancée particule *** *** E/S = 'XCON2' nouvelles coord reelles apres convection *** 'XARI2' nouvelles coord reelles arrivee particule *** 'TARI' nouveau tps reel d'arrivee particule *** 'DTNEW' pas de tps avancee particule au cours traitement *** 'ITEST1' vaut 1 si calib sur conv seule donne dt coherent, 0 sinon *** 'ITEST2' vaut 1 si nveau pt arrivee appartient à maille, 0 sinon *** 'LTEST' vaut 1 si 1er essai calibrage, 0 si 2eme essai *** *** ORIGINE = CYRIL NOU *************************************************************************** IMPLICIT INTEGER(I-N) IMPLICIT REAL*8 (A-H,O-Z) SEGMENT IZSH REAL*8 SHP(6,MNO9),SHY(12,MNO9),XYZL(3,MNO9) ENDSEGMENT DIMENSION XINTER(3),XNORMA(3),XDEP2(3),XCON2(3),XARI2(3) DIMENSION UZERO(3),UREEL(3),U(3),XIREB(3),XNREB(3),xcon(3) *** on cree un vecteur "vitesse diffusive" nul DO 10 I=1,NDIM UZERO(I)=0.D0 10 CONTINUE *** traitement consistant a recalibrer sur convec seule (m vecteur vitesse) $ ,XIREB,XNREB,IREBCO,IREBDI,XDEP2,TDEP,UREEL $ ,UZERO,DTREEL,LTEST,DTNEW,XCON2,XARI2,TARI,ITEST1) *** saut diffusif avec m vecteur vitesse diff si pas d'echec calibrage DO 20 I=1,NDIM XARI2(I)=XCON2(I)+U(I)*SQRT(DTNEW) 20 CONTINUE *** localisation nouveau pt arrivee apres traitement à 0 pres RETURN END
© Cast3M 2003 - Tous droits réservés.
Mentions légales