37 s necke,nchbar,nseite,itri,ierr)
44 CHARACTER(*) :: FNAMES(3)
46 INTEGER(GRIDMAN_SP),
INTENT(OUT) :: NRKNOT
48 INTEGER(GRIDMAN_SP),
INTENT(OUT) :: NTRII
52 REAL(GRIDMAN_DP),
ALLOCATABLE :: XYTRIAN(:,:)
54 INTEGER(GRIDMAN_SP),
ALLOCATABLE :: NECKE(:,:)
56 INTEGER(GRIDMAN_SP),
ALLOCATABLE :: NCHBAR(:,:)
58 INTEGER(GRIDMAN_SP),
ALLOCATABLE :: NSEITE(:,:)
63 INTEGER(GRIDMAN_SP),
ALLOCATABLE :: ITRI(:,:)
65 INTEGER,
INTENT(OUT) :: IERR
67 INTEGER(GRIDMAN_SP) :: I,J,NTRII35
71 f
WRITE(
gridman_unit,*)
"Starting GRIDMAN_TRIA_READ_ARRAY"
79 sl=len_trim(fnames(1))
81 OPEN (unit=33,file=fnames(1),status=
'OLD',
82 o access=
'SEQUENTIAL',form=
'FORMATTED',iostat=io)
84 OPEN (unit=33,status=
'OLD',access=
'SEQUENTIAL',
85 o form=
'FORMATTED',iostat=io)
90 WRITE(
gridman_unit,*)
"ERROR in GRIDMAN_TRIA_READ_ARRAY: ",
91 o
"can not open ",fnames(1)(1:sl),
" (fort.33)"
93 WRITE(
gridman_unit,*)
"ERROR in GRIDMAN_TRIA_READ_ARRAY: ",
94 o
"can not open fort.33"
99 READ(33,*,iostat=io) nrknot
101 IF(
ALLOCATED(xytrian))
DEALLOCATE(xytrian)
102 ALLOCATE(xytrian(2,nrknot),stat=is)
105 WRITE(
gridman_unit,*)
"ERROR in GRIDMAN_TRIA_READ_ARRAY: ",
106 w
"can not perform allocation (33)"
113 READ(33,*,iostat=io) (xytrian(1,i),i=1,nrknot)
115 READ(33,*,iostat=io) (xytrian(2,i),i=1,nrknot)
123 sl=len_trim(fnames(2))
125 OPEN (unit=34,file=fnames(2),status=
'OLD',
126 o access=
'SEQUENTIAL',form=
'FORMATTED',iostat=io)
128 OPEN (unit=34,status=
'OLD',access=
'SEQUENTIAL',
129 o form=
'FORMATTED',iostat=io)
134 WRITE(
gridman_unit,*)
"ERROR in GRIDMAN_TRIA_READ_ARRAY: ",
135 o
"can not open ",fnames(2)(1:sl),
" (fort.34)"
137 WRITE(
gridman_unit,*)
"ERROR in GRIDMAN_TRIA_READ_ARRAY: ",
138 o
"can not open fort.34"
145 READ(34,*,iostat=io) ntrii
148 IF(
ALLOCATED(necke))
DEALLOCATE(necke)
149 ALLOCATE(necke(3,ntrii))
152 WRITE(
gridman_unit,*)
"ERROR in GRIDMAN_TRIA_READ_ARRAY: ",
153 w
"can not perform allocation (34)"
162 READ(34,*,iostat=io) j,necke(1,i),necke(2,i),necke(3,i)
170 sl=len_trim(fnames(3))
172 OPEN (unit=35,file=fnames(3),status=
'OLD',
173 o access=
'SEQUENTIAL',form=
'FORMATTED',iostat=io)
175 OPEN (unit=35,status=
'OLD',access=
'SEQUENTIAL',
176 o form=
'FORMATTED',iostat=io)
181 WRITE(
gridman_unit,*)
"ERROR in GRIDMAN_TRIA_READ_ARRAY: ",
182 o
"can not open ",fnames(3)(1:sl),
" (fort.35)"
184 WRITE(
gridman_unit,*)
"ERROR in GRIDMAN_TRIA_READ_ARRAY: ",
185 o
"can not open fort.35"
192 READ(35,*,iostat=io) ntrii35
194 IF(ntrii.NE.ntrii35)
THEN
196 WRITE(
gridman_unit,*)
"ERROR in GRIDMAN_TRIA_READ_ARRAY: ",
197 o
"fort.34 and fort.35 have different dimensions"
205 IF(
ALLOCATED(nchbar))
DEALLOCATE(nchbar)
206 IF(
ALLOCATED(nseite))
DEALLOCATE(nseite)
207 IF(
ALLOCATED(itri))
DEALLOCATE(itri)
208 ALLOCATE(nchbar(3,ntrii),nseite(3,ntrii),itri(5,ntrii),stat=is)
211 WRITE(
gridman_unit,*)
"ERROR in GRIDMAN_TRIA_READ_ARRAY: ",
212 w
"can not perform allocation (35)"
222 r j,nchbar(1,i),nseite(1,i),itri(3,i),
223 r nchbar(2,i),nseite(2,i),itri(4,i),
224 r nchbar(3,i),nseite(3,i),itri(5,i),
225 r itri(1,i),itri(2,i)
232 f
WRITE(
gridman_unit,*)
"GRIDMAN_TRIA_READ_ARRAY finished"
238 WRITE(
gridman_unit,*)
"ERROR in GRIDMAN_TRIA_READ_ARRAY: ",
239 o
"can not read fort.33"
245 WRITE(
gridman_unit,*)
"ERROR in GRIDMAN_TRIA_READ_ARRAY: ",
246 o
"can not read fort.34"
252 WRITE(
gridman_unit,*)
"ERROR in GRIDMAN_TRIA_READ_ARRAY: ",
253 o
"can not read fort.35"
269 s necke,nchbar,nseite,itri,ierr)
275 CHARACTER(*) :: FNAMES(3)
277 INTEGER(GRIDMAN_SP),
INTENT(IN) :: NRKNOT
279 INTEGER(GRIDMAN_SP),
INTENT(IN) :: NTRII
283 REAL(GRIDMAN_DP),
INTENT(IN) :: XYTRIAN(2,nrknot)
285 INTEGER(GRIDMAN_SP),
INTENT(IN) :: NECKE(3,ntrii)
287 INTEGER(GRIDMAN_SP),
INTENT(IN) :: NCHBAR(3,ntrii)
289 INTEGER(GRIDMAN_SP),
INTENT(IN) :: NSEITE(3,ntrii)
294 INTEGER(GRIDMAN_SP),
INTENT(IN) :: ITRI(5,ntrii)
296 INTEGER,
INTENT(OUT) :: IERR
298 INTEGER(GRIDMAN_SP) :: I
302 f
WRITE(
gridman_unit,*)
"Starting GRIDMAN_TRIA_WRITE_ARRAY"
308 sl=len_trim(fnames(1))
310 OPEN (unit=33,file=fnames(1),status=
'REPLACE',
311 o access=
'SEQUENTIAL',form=
'FORMATTED',iostat=io)
313 OPEN (unit=33,file=
'fort.33',status=
'REPLACE',
314 o access=
'SEQUENTIAL',form=
'FORMATTED',iostat=io)
319 WRITE(
gridman_unit,*)
"ERROR in GRIDMAN_TRIA_WRITE_ARRAY: ",
320 o
"can not open ",fnames(1)(1:sl),
" (fort.33)"
322 WRITE(
gridman_unit,*)
"ERROR in GRIDMAN_TRIA_WRITE_ARRAY: ",
323 o
"can not open fort.33"
328 WRITE(33,
'(I12)',iostat=io) nrknot
330 WRITE(33,
'(4E19.7)',iostat=io) (xytrian(1,i),i=1,nrknot)
332 WRITE(33,
'(4E19.7)',iostat=io) (xytrian(2,i),i=1,nrknot)
338 sl=len_trim(fnames(2))
340 OPEN (unit=34,file=fnames(2),status=
'REPLACE',
341 o access=
'SEQUENTIAL',form=
'FORMATTED',iostat=io)
343 OPEN (unit=34,file=
'fort.34',status=
'REPLACE',
344 o access=
'SEQUENTIAL',form=
'FORMATTED',iostat=io)
349 WRITE(
gridman_unit,*)
"ERROR in GRIDMAN_TRIA_WRITE_ARRAY: ",
350 o
"can not open ",fnames(2)(1:sl),
" (fort.34)"
352 WRITE(
gridman_unit,*)
"ERROR in GRIDMAN_TRIA_WRITE_ARRAY: ",
353 o
"can not open fort.34"
358 WRITE(34,
'(I12)',iostat=io) ntrii
361 WRITE(34,303,iostat=io) i,necke(1,i),necke(2,i),necke(3,i)
364 303
FORMAT(i6,2x,3i6,4x)
369 sl=len_trim(fnames(3))
371 OPEN (unit=35,file=fnames(3),status=
'REPLACE',
372 o access=
'SEQUENTIAL',form=
'FORMATTED',iostat=io)
374 OPEN (unit=35,file=
'fort.35',status=
'REPLACE',
375 o access=
'SEQUENTIAL',form=
'FORMATTED',iostat=io)
380 WRITE(
gridman_unit,*)
"ERROR in GRIDMAN_TRIA_WRITE_ARRAY: ",
381 o
"can not open ",fnames(3)(1:sl),
" (fort.35)"
383 WRITE(
gridman_unit,*)
"ERROR in GRIDMAN_TRIA_WRITE_ARRAY: ",
384 o
"can not open fort.35"
389 WRITE(35,
'(I12)',iostat=io) ntrii
393 WRITE(35,304,iostat=io)
394 r i,nchbar(1,i),nseite(1,i),itri(3,i),
395 r nchbar(2,i),nseite(2,i),itri(4,i),
396 r nchbar(3,i),nseite(3,i),itri(5,i),
397 r itri(1,i),itri(2,i)
400 304
FORMAT(i6,2x,4(3i6,4x))
404 f
WRITE(
gridman_unit,*)
"GRIDMAN_TRIA_WRITE_ARRAY finished"
410 WRITE(
gridman_unit,*)
"ERROR in GRIDMAN_TRIA_WRITE_ARRAY: ",
411 o
"can not write fort.33"
415 WRITE(
gridman_unit,*)
"ERROR in GRIDMAN_TRIA_READ_ARRAY: ",
416 o
"can not write fort.34"
420 WRITE(
gridman_unit,*)
"ERROR in GRIDMAN_TRIA_READ_ARRAY: ",
421 o
"can not write fort.35"
integer, save, public gridman_unit
Index of the standard output unit.
integer, parameter, public gridman_dp
Kind parameter for real numbers.
logical, save, public gridman_dbg
Switch for debugging mode.
Definition of data types, global constants and variables.
integer, parameter, public gridman_sp
Kind parameter for integer numbers.