part6i
C PART6I SOURCE CB215821 16/04/11 12:39:59 8899 C Cette subroutine est l'interface de PART6 et peut etre appelee en C parallele pour le partitionnement ARLEQUIN d'un MMODEL C Creation 18/09/2015 C Createur CB215821 C Historique des Corrections apportees : C - C - C - IMPLICIT INTEGER(I-N) IMPLICIT REAL*8 (A-H,O-Z) -INC PPARAM -INC CCOPTIO -INC SMELEME SEGMENT SSREF C NBZON : Nombre de ZONES demandees C NBSM : Nombre de IMODEL du MMODEL C ISREF : Tableau indiquant si la sous-zone contient ou non des elements C IMELE : Tableau avec les references des MELEME SIMPLES de chaque ZONE C IMODE : Tableau avec les references des IMODEL ELEMENTAIRES de chaque ZONE C NBELE : Tableau indiquant le nombre d'elements reellement present dans le MELEME SIMPLE en COURS C MTA : Tableau avec les references des MMODEL de chaque ZONE C IPOS : Tableau indiquant le nombre de IMODEL contenus dans les MMODEL de chaque ZONE INTEGER ISREF(NBZON,NBSM) INTEGER IMELE(NBZON,NBSM) INTEGER IMODE(NBZON,NBSM) INTEGER NBELE(NBZON) INTEGER MTA (NBZON) INTEGER IPOS (NBZON) ENDSEGMENT C Declaration du COMMON pour le travail en parallele COMMON/part6c/NBTHR,SSREF,JA,IPT2,NBNN,NBELEM,ISOUS,NBZONE DO 40 J = ithr,NBELEM,NBTHR C Boucle sur les elements du MELEME a partitionner par pas de SOUS-ZONES C Determination de la ZONE d'appartenance IZ=MOD(J+JA,NBZONE) IF (IZ .EQ. 0) THEN IZ = NBZONE ENDIF C Determination du numero d'element dans la ZONE d'appartenance JF = ((J - 1) / NBZONE) + 1 C Chargement du bon MELEME SIMPLE dans la bonne ZONE IPT5 = IMELE(IZ,ISOUS) IPT5.ICOLOR(JF)=IPT2.ICOLOR(J) C Boucle sur la connectivite des elements DO 50 II=1,IPT2.NUM(/1) IPT5.NUM(II,JF)=IPT2.NUM(II,J) 50 CONTINUE C Enregistrement du nombre maximum d'element de la Sous Ref pour toutes les Zones IF (J .GT. (NBELEM - NBZONE)) THEN NBELE(IZ) = JF ENDIF 40 CONTINUE RETURN END
© Cast3M 2003 - Tous droits réservés.
Mentions légales