[updated 8.Sep.2008]

Librairie cordom > Fichier adim.f

Qui appelle adim ?

line
      SUBROUTINE ADIM (NOMDOM,NMCSTE,NIVIMP)
line
  Auteurs : O.DeBayser (Juillet 1994)
  Derniere modification : D.Martin (13 Juillet 1997)
  Version 1.0.0
 
  Adimensionalisation  des coordonnees du domaine
 
 -- Arguments --
  NOMDOM Nom du domaine 
  NMCSTE Nom de la constante d'adimensionalisation
  NIVIMP Niveau d'impression
line
      CHARACTER*(*) NOMDOM,NMCSTE
      INTEGER       NIVIMP
 
      INCLUDE 'CONTEX'
      INCLUDE 'ALLOC'
 
      INTEGER  INTDON,INTTYP,KELCHN
      INTEGER  MCMDOM,MCTRDO,LGERDO,NBDOMK,LGCANO,NCHDOM
     &        ,MCDONN,MCMDON,LGEDON,NBDONN,INCDON,NCHDON,MCESTE,MCRSTE
     &        ,NUCSTE,ITYDON,NIVE,ITYPDO
     &        ,NUDFRO,NUKFRO,JGEOME,JNDMIX,JNDEXC,JDLHRC,NVFRON,JNDEXL
     &        ,JDLHRL,JVNUML,NVCORC,INUTI2,NBTRDO,JIVDOM,IATRDO
     &        ,LGCOOR,MCCORE,MCCORA,IACORE,J
      REAL     RLCSTE
      CHARACTER     ERCODE*120,NOM*16
      COMMON/FORMAH/ERCODE
line
      CALL PRFXMJ (1,'*Adim  *')
 
      CALL TBAR6 (ERCODE,'#OMDOM',1,MCMDOM,'#TERDO',1,MCTRDO
     &                  ,'$DONNE',1,MCDONN,'#OMDON',1,MCMDON
     &                  ,'$ECSTE',1,MCESTE,'$RCSTE',1,MCRSTE)
      CALL SDEXDB(IST(MCTRDO),LGERDO,NBDOMK,LGCANO,NCHDOM)              !utilite
      CALL SDEXDB(IST(MCDONN),LGEDON,NBDONN,INCDON,NCHDON)              !utilite
 
      Recherche de la constante d'adimensionalisation
      NUCSTE=KELCHN(NMCSTE,AST(MCMDON),NBDONN,NCHDON)                   !utilite
      CALL SDEXCO(NUCSTE,IST(MCDONN),ITYDON,NIVE,ITYPDO)                !utilite
      NOM=NMCSTE
      IF(ITYDON.NE.INTDON('CONSTANTE'))                      CALL BAISE !utilite
     *('La donnee de nom '//NOM(:NCHDON)//' n''est pas une constante!') !utilite
      IF (ITYPDO.NE.INTTYP('REEL').AND.ITYPDO.NE.INTTYP('ENTIER'))
     &   CALL BAISE
     &            ('la constante d''adim. doit etre entiere ou reelle') !utilite
 
      RLCSTE=1.
      IF (ITYPDO.EQ.INTTYP ('ENTIER')) THEN                             !utilite
         RLCSTE=REAL(IST(MCESTE+NIVE))
      ELSEIF (ITYPDO.EQ.INTTYP ('REEL')) THEN                           !utilite
         RLCSTE=RST(MCRSTE+NIVE)
      END IF
 
      Recherche des caracteristiques du domaine frontiere
      CALL KLDOMN (NOMDOM,0,0,IST(MCTRDO),AST(MCMDOM),NBDOMG
     &            ,NUKFRO,IATRDO)
      CALL GETDOR (IST(MCTRDO+IATRDO),NUDFRO,NUKFRO,JGEOME,JNDMIX,JNDEXC
     &           ,JDLHRC,NVFRON,JNDEXL,JDLHRL,JVNUML,NVCORC,INUTI2
     &           ,NBTRDO,JIVDOM)
 
      Recherche du tableau des coordonnees
      CALL TBRR1  (ERCODE,'&CORNE',NVCORC,LGCOOR)
      Creation du tableau resultat
      CALL TBCREE ('&CORNA',NVCORC,2,LGCOOR,'c')
 
      CALL TBAR2 (ERCODE,'&CORNE',NVCORC,MCCORE,'&CORNA',NVCORC,MCCORA)
 
      Adimensionalisation des coordonnees sur le domaine
      IACORE=MCCORE
      DO 10 J=MCCORA,MCCORA+LGCOOR-1
         RST(J)=RST(IACORE)/RLCSTE
         IACORE=IACORE+1
10    CONTINUE
 
      IF(NIVIMP.GT.0) CALL PRCOOR(NDIM,LGCOOR/NDIM,RST(MCCORA)
     &                                        ,' Cornoa',NIVIMP,IMPSDR) !prsd
      CALL TBSAVE('&CORNE',NVCORC)
      CALL TBSAVE('&CORNA',NVCORC)
 
      CALL PRFXMJ (-1,'*Adim  *')
                                                                    END !Adim
line
top

adim est appelé dans (5 procédures)

calcoef.f (A_mode_guide) calnoy.f (ccalgre) eqdisp.f (A_mode_guide)
fiprim.f (A_mode_guide) ptfixe.f (A_mode_guide)  

top