[updated 8.Sep.2008]

Librairie momeutil > Fichier mo2lsf.f

Qui appelle mo2lsf ?

line
      SUBROUTINE MO2LSF (NDIM  ,NBTEL ,NCACAR,NDSD,NCOPNP
     &                  ,IANOP5,NOP5  ,IAMAIL,MAIL,MAIC,MAII,MAIJ
     &                  ,LGMDOM,NBDOMG,NCHDOM,AST,IST)
line
  Auteur : D.Martin (Avril 1993)
  Derniere modification : D.Martin (20 avril 2007)
  Version 3
 
  Construction des #ISTEL pour les domaines de Melina de dimension 2 en 3D
 
  NDIM   dimension d'espace
  NBTEL  nombre d'elements du maillage
  NCACAR
  NDSD   plus grand numero de sous-domaine
  NCOPNP indique la coincidence sommets-noeuds
  IANOP5 adresse de l'element courant dans le tableau NOP5
  NOP5   tableau NOP5 de la structure NOPO de Modulef
  IAMAIL adresse de l'element courant dans le tableau MAIL
  MAIL   tableau MAIL de description des elements
  MAIC   tableau MAIC de description des types d'elements
  MAII   tableau MAII
  MAIJ   tableau MAIJ
  LGMDOM longueur du tableau de caracteres des noms de domaine
  NBDOMG nombre de domaine (au sens de Melina)
  NCHDOM nombre de caracteres maximum par nom de domaine
  AST    super-tableau de caracteres de Melina
  IST    super-tableau de Melina, version entiere
line
      CHARACTER     AST(*)
      INTEGER       NDIM,NBTEL,NCACAR,NDSD,NCOPNP,IANOP5,NOP5(*)
     &             ,IAMAIL,MAIL(*),MAIC(*),MAII(*),MAIJ(*)
     &             ,LGMDOM,NBDOMG,NCHDOM,IST(*)
 
      CHARACTER*5   LEYTUN
      INTEGER       MENUTY
      INTEGER       NCGE,NMAE,NDSDE,NBNE,NTYE,NTALIR,INING
     &             ,NUTYLE,LAGHER,KCLASS,NBSOMT,NBARET,NBFACE,NBDL
     &             ,NBNEFL,NBDLFL,NBNEAL,NBDLAL,NUTYAV,L
     &             ,MEMEMO,IAA
      CHARACTER ERCODE*120,CRETAB*2,CRELIS
      COMMON/FORMAH/ERCODE
line
      CALL PRFXMJ (1,'*Mo2Lsf*')
 
      NUTYAV =0
      CRETAB='Y '
      CRELIS='N'
      DO 1 L=1,NBTEL
         CALL MOATRL (IANOP5,NOP5,IAMAIL,MAIL,MAIC,NCACAR 
     &               ,NCGE,NMAE,NDSDE,NBNE,NTYE,NTALIR)                 !mo2me
         NUTYLE=MENUTY (NDIM,NCGE,NBNE)                                 !momeutil
         IF (NUTYLE.NE.NUTYAV) THEN
	           CALL ELEMNB (NUTYLE,LAGHER,KCLASS,NBSOMT,NBARET
     &                    ,NBFACE,NBNE,NBDL,NBNEAL,NBDLAL,NBNEFL,NBDLFL)!ef3d
            CALL TBAR1  (ERCODE,'#umemo',0  ,MEMEMO)
            CALL FME2MO (LEYTUN(NUTYLE),NBFACE,IST(MEMEMO))             !momeutil
            NUTYAV=NUTYLE
         ENDIF
         CALL MORIP1 (IANOP5,NOP5,IAMAIL,MAIL,MAII,MAIJ,NCOPNP,NBNE     !mo2me
     &               ,NTYE,NTALIR)
         IF (NMAE.GT.0) THEN 
            IF (IANOP5.GT.0) THEN
               INING = NOP5(IANOP5)
               IF(INING.EQ.1) THEN
                  CALL MELIS2 (NDIM,2,NBFACE,NOP5(IANOP5+1)
     &                        ,NDSD,NDSDE,NBTEL,L
     &                        ,NBNE,NBDL,NBNEFL,NBDLFL
     &                        ,LGMDOM,NBDOMG,NCHDOM,AST,IST,CRETAB)     !mo2me
                  CRELIS='Y'
               ENDIF
               IANOP5=IANOP5+NMAE
            ELSEIF (IAMAIL.GT.0) THEN
               INING = MAIL(IAMAIL)
               IF (INING.EQ.1) THEN
                  CALL MELIS2 (NDIM,2,NBFACE,MAIL(IAMAIL+1)
     &                        ,NDSD,NDSDE,NBTEL,L
     &                        ,NBNE,NBDL,NBNEFL,NBDLFL
     &                        ,LGMDOM,NBDOMG,NCHDOM,AST,IST,CRETAB)     !mo2me
                  CRELIS='Y'
               ENDIF
               IAMAIL=IAMAIL+NMAE
            ENDIF
         ENDIF
1     CONTINUE
      IF (CRELIS.EQ.'Y'.AND.CRETAB(2:2).EQ.'Y')WRITE(*,10000) '*Mo2Lsf*'
      CALL PRFXMJ (-1,'*Mo2Lsf*')
line
10000 FORMAT(/T2,A8,' Construction des #ISTEL surfaciques'/)
line
 -- File history
  Version 3 : D.Martin (20 avril 2007)
  - suppression argument NDSR inutile (arg. de MELIS2)
  Version 2 : D.Martin (04 juillet 2005)
line
                                                                    END !Mo2Lsf

line
top

mo2lsf est appelé dans (2 procédures)

top