1 : C ECMINC SOURCE MAGN 09/07/30 21:16:45 6458 2 : SUBROUTINE ECMINC(MINC,NIVIMP) 3 : IMPLICIT INTEGER(I-N) 4 : IMPLICIT REAL*8 (A-H,O-Z) 5 : C*********************************************************************** 6 : C NOM : ECMINC 7 : C DESCRIPTION : Impression d'un segment de type MINC. 8 : C Ce segment contient des informations sur le 9 : C rangement des inconnues dans une "certaine" 10 : C numérotation (cf. segment IDMAT) vis à vis 11 : C d'un "certain" support géométrique. 12 : C Tout seul, il ne signifie donc pas grand-chose. 13 : C cf. include SMMATRIK 14 : C 15 : C LANGAGE : ESOPE 16 : C AUTEUR : Stéphane GOUNAND (CEA/DRN/DMT/SEMT/TTMF) 17 : C mél : gounand@semt2.smts.cea.fr 18 : C*********************************************************************** 19 : C APPELES : - 20 : C*********************************************************************** 21 : C ENTREES : MINC, NIVIMP 22 : C ENTREES/SORTIES : - 23 : C SORTIES : - 24 : C CODE RETOUR (IRET) : - 25 : C MINC : segment de type MINC (include SMMATRIK) 26 : C NIVIMP : niveau d'impression. Suivant sa valeur, on obtient : 27 : C Convention (probablement non totalement respectée) : 28 : C ---------- 0 : presque rien (numéro de pointeur) 29 : C 1 : affichage du chapeau MINC 30 : C 2 : affichage des données concernant les objets 31 : C pointés par MINC (s'il y en a) 32 : C 3 : affichage du contenu des objets vectoriels 33 : C 4 : affichage du contenu des objets matriciels 34 : C On ne change pas l'état (actif ou inactif) du segment MINC. 35 : C*********************************************************************** 36 : C VERSION : v1, 01/04/98, version initiale 37 : C HISTORIQUE : v1, 01/04/98, création 38 : C HISTORIQUE : 29/10/98, modif. l'état du segment reste inchangé 39 : C en sortie 40 : C HISTORIQUE : 41 : C HISTORIQUE : 42 : C*********************************************************************** 43 : C Prière de PRENDRE LE TEMPS de compléter les commentaires 44 : C en cas de modification de ce sous-programme afin de faciliter 45 : C la maintenance ! 46 : C*********************************************************************** 47 : -INC CCOPTIO 48 : -INC SMMATRIK 49 : * Variable d'état du segment MINC 50 : INTEGER MINETA 51 : * 52 : * Executable statements 53 : * 54 : IF (MINC.EQ.0) THEN 55 : WRITE(IOIMP,*) 'Nil pointer transmitted to ecminc' 56 : GOTO 9999 57 : ENDIF 57 : CALL OOOETA(MINC,MINETA) 58 : IF (MINETA.NE.1) SEGACT MINC 59 : WRITE(IOIMP,2001) 'Segment MINC de pointeur ',MINC 60 : * 61 : NBI=LISINC(/2) 62 : NPT=NPOS(/1)-1 63 : WRITE(IOIMP,3001) 'NBI =',NBI,'Nb de composantes total' 64 : WRITE(IOIMP,3001) 'NPT =',NPT,'Nb de noeuds' 65 : WRITE(IOIMP,1999) 'Liste des inconnues' 66 : WRITE(IOIMP,3002) 'LISINC(NBI)=',(LISINC(N),N=1,NBI) 67 : WRITE(IOIMP,1999) 'Position de la 1ere inconnue pour un noeud' 68 : WRITE(IOIMP,1999) 'NPOS(NPT+1)' 69 : IF (NIVIMP.GT.2) THEN 70 : WRITE(IOIMP,3003) (NPOS(N),N=1,NPT+1) 71 : ENDIF 72 : WRITE(IOIMP,1999) 'Tableau MPOS(NPT,NBI+1)' 73 : WRITE(IOIMP,1998) 'MPOS(I,NBI+1)=nb d''inconnues au noeud I' 74 : WRITE(IOIMP,1998) 'MPOS(I,1..NBI)=rang de l''inconnue au noeud I' 75 : WRITE(IOIMP,1997) '(0 si non défini)' 76 : IF (NIVIMP.GT.2) THEN 77 : DO 1 I=1,NPT 78 : WRITE(IOIMP,3004) I,MPOS(I,NBI+1),(MPOS(I,J),J=1,NBI) 79 : 1 CONTINUE 80 : ENDIF 81 : IF (MINETA.NE.1) SEGDES MINC 82 : * 83 : * Normal termination 84 : * 85 : RETURN 86 : * 87 : * Format handling 88 : * 89 : 1997 FORMAT (4X,A) 90 : 1998 FORMAT (2X,A) 91 : 1999 FORMAT (A) 92 : 2001 FORMAT (A,1X,I6) 93 : 3001 FORMAT (A,I6,2X,A) 94 : 3002 FORMAT (2X,A,100(1X,A8)) 95 : 3003 FORMAT (10000(1X,I2)) 96 : 3004 FORMAT(4X,'Point',1X,I6,2X,'nb. inc.',1X,I2,1X,':',100(1X 97 : $ ,I2),')') 98 : * 99 : * Error handling 100 : * 101 : 9999 CONTINUE 102 : WRITE(IOIMP,*) 'An error was detected in subroutine ecminc' 103 : RETURN 104 : * 105 : * End of subroutine ECMINC 106 : * 107 : END 108 : 109 : 110 : 111 : 112 :
© Cast3M 2003 - All rights reserved.
Disclaimer