The TELEMAC-MASCARET system  trunk
inisim.f
Go to the documentation of this file.
1 ! *****************
2  SUBROUTINE inisim
3 ! *****************
4 !
5  &(npoin1,typele,inop5,ngeo)
6 !
7 !***********************************************************************
8 ! PROGICIEL : STBTEL V5.2 25/02/92 J.C. GALLAND
9 !***********************************************************************
10 !
11 ! FONCTION : RECHERCHE LES NOMBRES TOTAUX DE NOEUDS ET D'ELEMENTS DU
12 ! MAILLAGE, AINSI QUE LA LONGUEUR DU TABLEAU NOP5 DANS LE
13 ! FICHIER GEOMETRIE DE SIMAIL
14 !
15 !-----------------------------------------------------------------------
16 ! ARGUMENTS
17 ! .________________.____.______________________________________________
18 ! | NOM |MODE| ROLE
19 ! |________________|____|______________________________________________
20 ! | NPOIN1 |<-- | NOMBRE REEL DE POINTS DU MAILLAGE
21 ! | TYPELE |<-- | TYPE D'ELEMENTS
22 ! | IA |--> | TABLEAU DE TRAVAIL POUR LA LECTURE DE LA SD
23 ! | INOP5 |<-- | DIMENSION DU TABLEAU NOP5 (CONTENANT LES IKLE)
24 ! | | | DU FICHIER GEOMETRIE DE SIMAIL
25 ! |________________|____|______________________________________________
26 ! | COMMON: | |
27 ! | GEO: | |
28 ! | MESH |<-- | TYPE DES ELEMENTS DU MAILLAGE
29 ! | NDP |<-- | NOMBRE DE NOEUDS PAR ELEMENTS
30 ! | NPOIN |<-- | NOMBRE TOTAL DE NOEUDS DU MAILLAGE
31 ! | NELEM |<-- | NOMBRE TOTAL D'ELEMENTS DU MAILLAGE
32 ! | FICH: | |
33 ! | NRES |--> | NUMERO DU CANAL DU FICHIER DE SERAFIN
34 ! | NGEO |--> | NUMERO DU CANAL DU FICHIER MAILLEUR
35 ! | NDYNAM |--> | NUMERO DU CANAL DU FICHIER DYNAM DE TELEMAC
36 ! | NFO1 |--> | NUMERO DU CANAL DU FICHIER TRIANGLE TRIGRID
37 ! |________________|____|______________________________________________
38 ! MODE : -->(DONNEE NON MODIFIEE), <--(RESULTAT), <-->(DONNEE MODIFIEE)
39 !-----------------------------------------------------------------------
40 ! APPELE PAR : HOMERE
41 ! APPEL DE : -
42 !***********************************************************************
43 !
46 !
47  IMPLICIT NONE
48  !
49  INTEGER, INTENT(INOUT) :: NPOIN1,INOP5
50  INTEGER, INTENT(IN) :: NGEO
51  CHARACTER(LEN=11), INTENT(INOUT) :: TYPELE
52 !
53  INTEGER IA(32),LONG,I,J,NTASD,MESHT,MESHQ
54 !
55 !=======================================================================
56 ! INITIALISATION
57 !=======================================================================
58 !
59  rewind ngeo
60  npoin = 0
61  npoin1 = 0
62  nelem = 0
63 !
64 !=======================================================================
65 ! LECTURE PARTIELLE DU 1ER ENREGISTREMENT DE LA SD
66 !=======================================================================
67 !
68  READ(ngeo,err=110,end=120) long,(ia(i),i=1,min(long,32))
69 !
70 !=======================================================================
71 ! LECTURE PARTIELLE DU TABLEAU NOP0
72 ! RECHERCHE DU NOMBRE DE TABLEAUX ASSOCIES, NTASD
73 !=======================================================================
74 !
75  READ(ngeo,err=110,end=120) long,(ia(i),i=1,32)
76  ntasd = ia(32)
77 !
78 !=======================================================================
79 ! LECTURE DU TABLEAU NOP1 ET DES TABLEAUX ASSOCIES
80 !=======================================================================
81 !
82  IF (ntasd.GT.0) THEN
83  READ(ngeo,err=110,end=120) long,(ia(i),i=1,min(long,32))
84  DO i=1,ntasd
85  READ(ngeo,err=110,end=120) long,(ia(j),j=1,min(long,32))
86  ENDDO
87  ENDIF
88 !
89 !=======================================================================
90 ! LECTURE DU TABLEAU NOP2
91 ! LECTURE DU NOMBRE DE POINTS, DU NOMBRE D'ELEMENTS, DU TYPE D'ELEMENT
92 ! ET DE LA LONGUEUR DU TABLEAU NOP5 (TABLEAU DES IKLE)
93 ! AFFECTATION DES VALEURS LUES AUX VARIABLES CONCERNEES
94 !=======================================================================
95 !
96  READ(ngeo,err=110,end=120) long,(ia(i),i=1,min(long,32))
97  npoin1 = ia(15)
98  nelem = ia(5)
99  mesht = ia(8)
100  meshq = ia(9)
101  inop5 = ia(26)
102 !
103  npoin = npoin1
104 !
105 !=======================================================================
106 ! MISE DES VALEURS DE MESH AU STANDARD TELEMAC
107 !=======================================================================
108 !
109  IF (meshq.NE.0) THEN
110  mesh = 2
111  ndp = 4
112  typele = 'QUADRANGLES'
113  ELSEIF (mesht.NE.0) THEN
114  mesh = 3
115  ndp = 3
116  typele = 'TRIANGLES '
117  ELSE
118  WRITE(lu,3100)
119  CALL plante(1)
120  stop
121  ENDIF
122 !
123  GOTO 20
124 !
125  110 CONTINUE
126  WRITE(lu,4100)
127  120 CONTINUE
128  WRITE(lu,4200)
129 !
130 20 CONTINUE
131 !
132 !=======================================================================
133 ! IMPRESSION DES RESULTATS
134 !=======================================================================
135 !
136  3100 FORMAT(/,'*************************************************'
137  & ,/,'INISIM : TELEMAC DOESN''T WORK WITH MESHES MIXING '
138  & ,/,' TRIANGLES AND QUADRILATERALS',
139  & /,'**************************************************')
140  4100 FORMAT(//,'*************************************',/,
141  & 'INISIM : ERROR IN READING FILE SIMAIL',/,
142  & '*************************************',//)
143  4200 FORMAT(//,'*************************************************',/,
144  & 'INISIM : ATTEMPT TO READ AFTER END OF FILE SIMAIL',/,
145  & '*************************************************',//)
146 !
147  RETURN
148  END
subroutine inisim(NPOIN1, TYPELE, INOP5, NGEO)
Definition: inisim.f:7