The TELEMAC-MASCARET system  trunk
inifas.f
Go to the documentation of this file.
1 ! *****************
2  SUBROUTINE inifas
3 ! *****************
4 !
5  &(typele,ngeo)
6 !
7 !***********************************************************************
8 ! PROGICIEL : STBTEL V5.2 09.07.1996 P. CHAILLET (LHF) - FASTTABS
9 !***********************************************************************
10 !
11 ! FONCTION : INITIALISATION DES INFORMATIONS DANS LE CAS DE FASTTAB
12 !
13 !-----------------------------------------------------------------------
14 ! ARGUMENTS
15 ! .________________.____.______________________________________________
16 ! ! NOM |MODE! ROLE
17 ! !________________|____!______________________________________________
18 ! ! TYPELE !<-- ! TYPE D'ELEMENT DU MAILLAGE (ICI TRIANGLES)
19 ! ! NGEO ! -->! NUMERO DU CANAL DU FICHIER MAILLEUR
20 ! !________________!____!______________________________________________
21 ! MODE : -->(DONNEE NON MODIFIEE), <--(RESULTAT), <-->(DONNEE MODIFIEE)
22 !-----------------------------------------------------------------------
23 ! APPELE PAR : HOMERE
24 ! APPEL DE :
25 !***********************************************************************
26 !
29  IMPLICIT NONE
30 !
31  INTEGER, INTENT(IN) :: NGEO
32  CHARACTER(LEN=*), INTENT(INOUT) :: TYPELE
33 !
34  CHARACTER(LEN=80) LIGNE
35  INTEGER IE,J
36  INTEGER ELMLOC(8)
37 !
38 ! - INITIALISATION
39 !
40  rewind(ngeo)
41  npoin = 0
42  nelem = 0
43 !
44 ! - BOUCLE DE LECTURE DU FICHIER DE MAILLAGE
45 ! - TANT QUE NON FIN DE FICHIER
46 !
47  1 CONTINUE
48  READ (ngeo, '(A80)', end=9000, err=8000) ligne
49 !
50 ! - LA LIGNE COMMENCE PAR "GNN" - DEINITION D'UN POINT
51 !
52  IF (ligne(1:3).EQ.'GNN') THEN
53  npoin = npoin + 1
54  ENDIF
55 !
56 ! - LA LIGNE COMMENCE PAR "GE" - DEINITION D'UN ELEMENT
57 !
58  IF (ligne(1:2).EQ.'GE') THEN
59  nelem = nelem + 1
60  READ(ligne(4:80),*,err=8000,end=9000) ie,
61  & (elmloc(j),j=1,8)
62  IF (elmloc(8).NE.0.OR.
63  & (elmloc(4).NE.0.AND.elmloc(6).EQ.0) ) THEN
64 !
65 ! - ON RAJOUTERA DES ELEMENTS
66 !
67  nelem = nelem + 1
68  ENDIF
69  ENDIF
70  GOTO 1
71 !
72  9000 CONTINUE
73  typele = 'TRIANGLES '
74  ndp = 3
75  mesh = 3
76 !
77  RETURN
78 !
79 ! - TRAITEMENT ERREUR DE FICHIER
80 !
81  8000 CONTINUE
82  WRITE (lu,4001)
83  4001 FORMAT (//,1x,'****************************'
84  & ,/,1x,'SUBROUTINE INIFAS :'
85  & ,/,1x,'ERROR READING FASTTABS FILE.'
86  & ,/,1x,'****************************')
87  CALL plante(1)
88  stop
89  END
subroutine inifas(TYPELE, NGEO)
Definition: inifas.f:7