idpaex
C IDPAEX SOURCE CHAT 11/03/16 21:25:33 6902 SUBROUTINE IDPAEX(IPMODL,IPNOMC,NBROBL,NBRFAC) IMPLICIT INTEGER(I-N) IMPLICIT REAL*8(A-H,O-Z) C----------------------------------------------------------------------- C DESCRIPTION FONCTIONNELLE : C ------------------------- C Cette routine donne les noms des parametres externes d'un C modele elementaire C C INTERFACE : C --------- C ENTREE : IPMODL : INTEGER, pointeur actif sur le segment IMODEL C attache a la sous-zone elementaire traitee C SORTIE : IPNOMC : INTEGER, pointeur sur les listes de noms des C parametres externes obligatoires et facultatifs C SORTIE : NBROBL : INTEGER, nombre de parametres obligatoires C SORTIE : NBRFAC : INTEGER, nombre de parametres facultatifs C C COMMENTAIRES : C ------------ C En pratique, si le modele elementaire contient une liste de C parametres externes non vide, tous les parametres de cette C liste sont obligatoires. Il n'y a pas de parametre facultatif. C La distinction obligatoires/facultatifs est artificiellement C conservee, pour que les informations concernant les parametres C externes soient restituees de maniere coherente avec celles C concernant les composantes des autres types de MCHAML C (informations restituees par un segment NOMID). C ATTENTION : si la temperature 'T ' fait partie des parametres, C elle en est separee car elle fait l'objet de variables dediees. C----------------------------------------------------------------------- -INC SMMODEL POINTEUR NOMID1.NOMID C----------------------------------------------------------------------- NBROBL=0 NBRFAC=0 SEGINI,NOMID IPNOMC=NOMID C IMODEL=IPMODL if(lnomid(14).eq.0) then return endif nomid1= lnomid(14) segact nomid1 C NPARA=nomid1.lesobl(/2) IF (NPARA.GT.0) THEN C C Si la temperature 'T ' fait partie des parametres, elle est C declaree en tete de liste. C Cette condition est assuree par l'operateur MODE. C IF (NOMID1.LESOBL(1).EQ.'T ') THEN IF (NPARA.GT.1) THEN NBROBL=NPARA-1 SEGADJ,NOMID DO 10 IP=1,NBROBL LESOBL(IP)=NOMID1.lesobl(IP+1) 10 CONTINUE ENDIF ELSE NBROBL=NPARA SEGADJ,NOMID DO 20 IP=1,NBROBL LESOBL(IP)=NOMID1.lesobl(IP) 20 CONTINUE ENDIF ENDIF C SEGDES NOMID1 C RETURN END
© Cast3M 2003 - Tous droits réservés.
Mentions légales