numfor
C NUMFOR SOURCE MB234859 25/08/04 21:15:36 12339 C---------------------------------------------------------------------- C C Associer a chaque formulation disponible dans l'operateur MODE un C identifiant. Vient en complement du numero de formulation (NUMMFR) C C Entree C ------ C IPMODL : Pointeur sur le modele elementaire (IMODEL) C C Sortie C ------ C NUMFOR : Entier identifiant le modele elementaire C Vaut 0 si le modele n'est pas identifie parmi ceux C disponible C---------------------------------------------------------------------- C FUNCTION NUMFOR(IPMODL) C IMPLICIT INTEGER(I-N) IMPLICIT REAL*8(A-H,O-Z) C -INC PPARAM -INC CCOPTIO -INC CCHHOPA -INC SMMODEL C CHARACTER*16 FORFO1,FORFO2 C NUMFOR=0 IMODEL=IPMODL NFOR =IMODEL.FORMOD(/2) FORFO1=IMODEL.FORMOD(1) IF (NFOR.EQ.1) THEN IF (FORFO1.EQ.'MECANIQUE' ) THEN NUMFOR=2 IF (IMODEL.NEFMOD.EQ.HHO_NUM_ELEMENT) THEN NUMFOR=HHO_MFR_ELEMENT ENDIF ELSE IF (FORFO1.EQ.'LIQUIDE' ) THEN NUMFOR=11 ELSE IF (FORFO1.EQ.'POREUX' ) THEN NUMFOR=33 ELSE IF (FORFO1.EQ.'CONTACT' ) THEN NUMFOR=4 ELSE IF (FORFO1.EQ.'CONTRAINTE' ) THEN NUMFOR=6 ELSE IF (FORFO1.EQ.'THERMIQUE' ) THEN NUMFOR=29 ELSE IF (FORFO1.EQ.'CHANGEMENT_PHASE') THEN NUMFOR=30 ELSE IF (FORFO1.EQ.'METALLURGIE' ) THEN NUMFOR=32 ELSE IF (FORFO1.EQ.'DARCY' ) THEN NUMFOR=34 ELSE IF (FORFO1.EQ.'MAGNETODYNAMIQUE') THEN NUMFOR=69 ELSE IF (FORFO1.EQ.'NAVIER_STOKES' ) THEN NUMFOR=52 ELSE IF (FORFO1.EQ.'EULER' ) THEN NUMFOR=36 ELSE IF (FORFO1.EQ.'MELANGE' ) THEN NUMFOR=38 ELSE IF (FORFO1.EQ.'FISSURE' ) THEN NUMFOR=40 ELSE IF (FORFO1.EQ.'THERMOHYDRIQUE' ) THEN NUMFOR=65 ELSE IF (FORFO1.EQ.'LIAISON' ) THEN NUMFOR=24 ELSE IF (FORFO1.EQ.'DIFFUSION' ) THEN NUMFOR=73 ELSE IF (FORFO1.EQ.'CHARGEMENT' ) THEN NUMFOR=72 ELSE IF (FORFO1.EQ.'ELECTROSTATIQUE' ) THEN NUMFOR=71 ENDIF ELSE IF (NFOR.EQ.2) THEN FORFO2=IMODEL.FORMOD(2) IF ((FORFO1.EQ.'MECANIQUE'.AND.FORFO2.EQ.'LIQUIDE' ) .OR. & (FORFO1.EQ.'LIQUIDE' .AND.FORFO2.EQ.'MECANIQUE')) THEN NUMFOR=44 ENDIF ENDIF C END
© Cast3M 2003 - Tous droits réservés.
Mentions légales