44
45
46
53 use element_mod , only : nixs,nixq,nixc,nixt,nixp,nixr,nixtg
54
55
56
57#include "implicit_f.inc"
58
59
60
61#include "com04_c.inc"
62#include "scr17_c.inc"
63
64
65
66 INTEGER, INTENT(IN) :: ITAB(*),IPART(LIPART1,*),IXC(NIXC,*),
67 . IXTG(NIXTG,*),IXQ(NIXQ,*),IXP(NIXP,*),IXT(NIXT,*),IXR(NIXR,*),
68 . IXS(NIXS,*)
69
70 TYPE (SET_) , DIMENSION(NSETS) :: SET
71 TYPE (SUBMODEL_DATA),INTENT(IN)::LSUBMODEL(*)
72 TYPE (GROUP_) , INTENT(IN), DIMENSION(NGRNOD) :: IGRNOD
73 TYPE (GROUP_) , INTENT(IN), DIMENSION(NGRPART) :: IGRPART
74 TYPE (GROUP_) , INTENT(IN), DIMENSION(NGRBRIC) :: IGRBRIC
75 TYPE (GROUP_) , INTENT(IN), DIMENSION(NGRSHEL) :: IGRSH4N
76 TYPE (GROUP_) , INTENT(IN), DIMENSION(NGRSH3N) :: IGRSH3N
77 TYPE (GROUP_) , INTENT(IN), DIMENSION(NGRQUAD) :: IGRQUAD
78 TYPE (GROUP_) , INTENT(IN), DIMENSION(NGRBEAM) :: IGRBEAM
79 TYPE (GROUP_) , INTENT(IN), DIMENSION(NGRTRUS) :: IGRTRUSS
80 TYPE (GROUP_) , INTENT(IN), DIMENSION(NGRSPRI) :: IGRSPRING
81 TYPE (SURF_) , INTENT(IN), DIMENSION(NSURF) :: IGRSURF
82 TYPE () , INTENT(IN), DIMENSION(NSLIN) :: IGRSLIN
83
84
85
86 INTEGER J,K,N,ID,IGS,CLAUSES_MAX,ISET_TYPE,ITMP,ICODE,IDS_MAX,IDS,
87 . OPT_D,OPT_O,OPT_G,OPT_B,OPT_A,OPT_E,OPT_I,OPT_C,
88 . IGR,NOD,NB_NODE,,IP,IE,NB_SOLID,NB_SH4N,NB_SH3N,
89 . NB_QUAD,NB_TRIA,NB_BEAM,NB_TRUSS,NB_SPRING,NB_SURF_SEG,
90 . NB_LINE_SEG,NB_NODENS
91 CHARACTER(LEN = nchartitle) :: TITLE
92 CHARACTER(LEN = ncharfield) :: KEYSET,SET_TYPE
93 CHARACTER(LEN = ncharkey) :: KEY
94 CHARACTER (LEN=255) :: VARNAME
95 DOUBLE PRECISION TEMP_DOUBLE
96 LOGICAL IS_AVAILABLE
97
98 is_available = .false.
99
100
101
102
104!
105 IF (MYQAKEY('/set')) THEN
106!
107 IF (NSETS > 0) THEN
108!
109 DO IGS = 1, NSETS
110!---
111 CALL HM_OPTION_READ_KEY(LSUBMODEL,OPTION_ID=ID,OPTION_TITR=TITLE,KEYWORD2=KEY)
112 WRITE(VARNAME,'(a)') TRIM(TITLE)
113 CALL QAPRINT(TITLE(1:LEN_TRIM(VARNAME)), ID, 0.0_8)
114!---
115 CALL HM_GET_STRING('set_type', SET_TYPE ,ncharfield, IS_AVAILABLE)
116!-----------------------
117! issue 'set_type' ---> read one more character than the SET_TYPE
118! ===> workaround
119 ITMP = LEN(TRIM(SET_TYPE))
120 IF (ITMP > 0) THEN
121 ICODE = IACHAR(SET_TYPE(ITMP:ITMP))
122 IF (ICODE == 0) SET_TYPE(ITMP:ITMP)=' '
123 ENDIF
124!-----------------------
125 WRITE(VARNAME,'(a,i0,a)
') 'set_',ID,'_
'//TRIM(SET_TYPE)
126 CALL QAPRINT(VARNAME(1:LEN_TRIM(VARNAME)), ID, 0.0_8)
127!---
128 CALL HM_GET_INTV('iset_type', ISET_TYPE,IS_AVAILABLE,LSUBMODEL)
129 WRITE(VARNAME,'(a,i0,a)
') 'set_',ID,'_
'//'iset_type
'
130 CALL QAPRINT(VARNAME(1:LEN_TRIM(VARNAME)), ISET_TYPE, 0.0_8)
131!---
132 CALL HM_GET_INTV('clausesmax',CLAUSES_MAX,IS_AVAILABLE,LSUBMODEL)
133!
134 DO J=1,CLAUSES_MAX ! max KEY's of
the current /set
136
137
138
139 itmp = len(trim(keyset))
140 icode = iachar(keyset(itmp:itmp))
141 IF (icode == 0) keyset(itmp:itmp)=' '
142
143
144
153
154
155
156
157
158 IF (opt_d == 1) THEN
159 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'opt_D'
160 CALL qaprint(varname(1:len_trim(varname)),opt_d,0.0_8)
161 ENDIF
162 IF (opt_o == 1) THEN
163 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'opt_O'
164 CALL qaprint(varname(1:len_trim(varname)),opt_o,0.0_8)
165 ENDIF
166 IF (opt_g == 1) THEN
167 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'opt_G'
168 CALL qaprint(varname(1:len_trim(varname)),opt_g,0.0_8)
169 ENDIF
170 IF (opt_b == 1) THEN
171 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'opt_B'
172 CALL qaprint(varname(1:len_trim(varname)),opt_b,0.0_8)
173 ENDIF
174 IF (opt_a == 1) THEN
175 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'opt_A'
176 CALL qaprint(varname(1:len_trim(varname)),opt_a,0.0_8)
177 ENDIF
178 IF (opt_e == 1) THEN
179 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'opt_E'
180 CALL qaprint(varname(1:len_trim(varname)),opt_e,0.0_8)
181 ENDIF
182 IF (opt_i == 1) THEN
183 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'opt_I'
184 CALL qaprint(varname(1:len_trim(varname)),opt_i,0.0_8)
185 ENDIF
186 IF (opt_c == 1) THEN
187 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'opt_C'
188 CALL qaprint(varname(1:len_trim(varname)),opt_c,0.0_8)
189 ENDIF
190
192 DO k=1,ids_max
194 WRITE(varname,
'(A,I0,A,I0)')
'SET_',
id,
'_'//trim(keyset)//
'_',k
195 CALL qaprint(varname(1:len_trim(varname)),ids,0.0_8)
196 ENDDO
197
198 ENDDO
199
200
201
202
203
204
205
206 IF( set(igs)%SET_ACTIV == 0 ) cycle
207
208 nb_node = set(igs)%NB_NODE
209
210 IF (nb_node > 0) THEN
211 igr = set(igs)%SET_GRNOD_ID
212 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'GRNOD'
213 CALL qaprint(varname(1:len_trim(varname)),igrnod(igr)%ID,0.0_8)
214 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'GRNOD_NB_NODE'
215 CALL qaprint(varname(1:len_trim(varname)),nb_node,0.0_8)
216 DO n = 1,nb_node
217 nod = igrnod(igr)%ENTITY(n)
218 WRITE(varname,
'(A,I0,A,I0)')
'SET_',
id,
'_'//
'NODE'//
'_',n
219 CALL qaprint(varname(1:len_trim(varname)),itab(nod),0.0_8)
220 ENDDO
221 ENDIF
222
223
224
225 IF( set(igs)%SET_ACTIV == 0 ) cycle
226
227 nb_nodens = set(igs)%NB_NODENS
228
229 IF (nb_nodens > 0) THEN
230 igr = set(igs)%SET_GRNOD_ID
231 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'GRNOD'
232 CALL qaprint(varname(1:len_trim(varname)),igrnod(igr)%ID,0.0_8)
233 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'GRNOD_NB_NODENS'
234 CALL qaprint(varname(1:len_trim(varname)),nb_nodens,0.0_8)
235 DO n = 1,nb_nodens
236 nod = igrnod(igr)%ENTITY(n)
237 WRITE(varname,
'(A,I0,A,I0)')
'SET_',
id,
'_'//
'NODENS'//
'_',n
238 CALL qaprint(varname(1:len_trim(varname)),itab(nod),0.0_8)
239 ENDDO
240 ENDIF
241
242
243
244 nb_part = set(igs)%NB_PART
245 IF (nb_part > 0) THEN
246 igr = set(igs)%SET_GRPART_ID
247 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'GRPART'
248 CALL qaprint(varname(1:len_trim(varname)),igrpart(igr)%ID,0.0_8)
249 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'GRPART_NB_PART'
250 CALL qaprint(varname(1:len_trim(varname)),nb_part,0.0_8)
251 DO n = 1,nb_part
252 ip = igrpart(igr)%ENTITY(n)
253 WRITE(varname,
'(A,I0,A,I0)')
'SET_',
id,
'_'//
'PART'//
'_',n
254 CALL qaprint(varname(1:len_trim(varname)),ipart(4,ip),0.0_8)
255 ENDDO
256 ENDIF
257
258! --- new /set grelem --
259
260
261 nb_solid = set(igs)%NB_SOLID
262 IF (nb_solid > 0) THEN
263 igr = set(igs)%SET_GRSOLID_ID
264 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'GRBRIC'
265 CALL qaprint(varname(1:len_trim(varname)),igrbric(igr)%ID,0.0_8)
266 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'GRBRIC_NB_SOLID'
267 CALL qaprint(varname(1:len_trim(varname)),nb_solid,0.0_8)
268 DO n = 1,nb_solid
269 ie = igrbric(igr)%ENTITY(n)
270 WRITE(varname,
'(A,I0,A,I0)')
'SET_',
id,
'_'//
'SOLID'//
'_',n
271 CALL qaprint(varname(1:len_trim(varname)),ixs(nixs,ie),0.0_8)
272 ENDDO
273 ENDIF
274
275
276 nb_sh4n = set(igs)%NB_SH4N
277 IF (nb_sh4n > 0) THEN
278 igr = set(igs)%SET_GRSH4N_ID
279 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'GRSH4N'
280 CALL qaprint(varname(1:len_trim(varname)),igrsh4n(igr)%ID,0.0_8)
281 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'GRSH4N_NB_SH4N'
282 CALL qaprint(varname(1:len_trim(varname)),nb_sh4n,0.0_8)
283 DO n = 1,nb_sh4n
284 ie = igrsh4n(igr)%ENTITY(n)
285 WRITE(varname,
'(A,I0,A,I0)')
'SET_',
id,
'_'//
'SHELL'//
'_',n
286 CALL qaprint(varname(1:len_trim(varname)),ixc(nixc,ie),0.0_8)
287 ENDDO
288 ENDIF
289
290
291 nb_sh3n = set(igs)%NB_SH3N
292 IF (nb_sh3n > 0) THEN
293 igr = set(igs)%SET_GRSH3N_ID
294 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'GRSH3N'
295 CALL qaprint(varname(1:len_trim(varname)),igrsh3n(igr)%ID,0.0_8)
296 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'GRSH3N_NB_SH3N'
297 CALL qaprint(varname(1:len_trim(varname)),nb_sh3n,0.0_8)
298 DO n = 1,nb_sh3n
299 ie = igrsh3n(igr)%ENTITY(n)
300 WRITE(varname,
'(A,I0,A,I0)')
'SET_',
id,
'_'//
'SH3N'//
'_',n
301 CALL qaprint(varname(1:len_trim(varname)),ixtg(nixtg,ie),0.0_8)
302 ENDDO
303 ENDIF
304
305
306 nb_quad = set(igs)%NB_QUAD
307 IF (nb_quad > 0) THEN
308 igr = set(igs)%SET_GRQUAD_ID
309 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'GRQUAD'
310 CALL qaprint(varname(1:len_trim(varname)),igrquad(igr)%ID,0.0_8)
311 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'GRQUAD_NB_QUAD'
312 CALL qaprint(varname(1:len_trim(varname)),nb_quad,0.0_8)
313 DO n = 1,nb_quad
314 ie = igrquad(igr)%ENTITY(n)
315 WRITE(varname,
'(A,I0,A,I0)')
'SET_',
id,
'_'//
'QUAD'//
'_',n
316 CALL qaprint(varname(1:len_trim(varname)),ixq(nixq,ie),0.0_8)
317 ENDDO
318 ENDIF
319
320
321 nb_tria = set(igs)%NB_TRIA
322 IF (nb_tria > 0) THEN
323 igr = set(igs)%SET_GRTRIA_ID
324 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'GRTRIA'
325 CALL qaprint(varname(1:len_trim(varname)),igrsh3n(igr)%ID,0.0_8)
326 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'GRTRIA_NB_TRIA'
327 CALL qaprint(varname(1:len_trim(varname)),nb_tria,0.0_8)
328 DO n = 1,nb_tria
329 ie = igrsh3n(igr)%ENTITY(n)
330 WRITE(varname,
'(A,I0,A,I0)')
'SET_',
id,
'_'//
'TRIA'//
'_',n
331 CALL qaprint(varname(1:len_trim(varname)),ixtg(nixtg,ie),0.0_8)
332 ENDDO
333 ENDIF
334
335
336 nb_beam = set(igs)%NB_BEAM
337 IF (nb_beam > 0) THEN
338 igr = set(igs)%SET_GRBEAM_ID
339 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'GRBEAM'
340 CALL qaprint(varname(1:len_trim(varname)),igrbeam(igr)%ID,0.0_8)
341 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'GRBEAM_NB_BEAM'
342 CALL qaprint(varname(1:len_trim(varname)),nb_beam,0.0_8)
343 DO n = 1,nb_beam
344 ie = igrbeam(igr)%ENTITY(n)
345 WRITE(varname,
'(A,I0,A,I0)')
'SET_',
id,
'_'//
'BEAM'//
'_',n
346 CALL qaprint(varname(1:len_trim(varname)),ixp(nixp,ie),0.0_8)
347 ENDDO
348 ENDIF
349
350
351 nb_truss = set(igs)%NB_TRUSS
352 IF (nb_truss > 0) THEN
353 igr = set(igs)%SET_GRTRUSS_ID
354 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'GRTRUSS'
355 CALL qaprint(varname(1:len_trim(varname)),igrtruss(igr)%ID,0.0_8)
356 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'GRTRUSS_NB_TRUSS'
357 CALL qaprint(varname(1:len_trim(varname)),nb_truss,0.0_8)
358 DO n = 1,nb_truss
359 ie = igrtruss(igr)%ENTITY(n)
360 WRITE(varname,
'(A,I0,A,I0)')
'SET_',
id,
'_'//
'TRUSS'//
'_',n
361 CALL qaprint(varname(1:len_trim(varname)),ixt(nixt,ie),0.0_8)
362 ENDDO
363 ENDIF
364
365
366 nb_spring = set(igs)%NB_SPRING
367 IF (nb_spring > 0) THEN
368 igr = set(igs)%SET_GRSPRING_ID
369 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'GRSPRING'
370 CALL qaprint(varname(1:len_trim(varname)),igrspring(igr)%ID,0.0_8)
371 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'GRSPRING_NB_SPRING'
372 CALL qaprint(varname(1:len_trim(varname)),nb_spring,0.0_8)
373 DO n = 1,nb_spring
374 ie = igrspring(igr)%ENTITY(n)
375 WRITE(varname,
'(A,I0,A,I0)')
'SET_',
id,
'_'//
'SPRING'//
'_',n
376 CALL qaprint(varname(1:len_trim(varname)),ixr(nixr,ie),0.0_8)
377 ENDDO
378 ENDIF
379
380
381
382
383 nb_surf_seg = set(igs)%HAS_SURF_SEG
384 IF (nb_surf_seg > 0) THEN
385 igr = set(igs)%SET_NSURF_ID
386 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'SURFACE'
387 CALL qaprint(varname(1:len_trim(varname)),igrsurf(igr)%ID,0.0_8)
388 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'SURFACE_NB_SEG'
389 CALL qaprint(varname(1:len_trim(varname)),nb_surf_seg,0.0_8)
390 DO n = 1,nb_surf_seg
391 IF(set(igs)%NB_ELLIPSE == 0 .AND. set(igs)%NB_PLANE== 0)THEN
392 WRITE(varname,
'(A,I0,A,I0,A)')
'SET_',
id,
'_'//
'SURFACE_SEG_',n,
'_NODE_1'
393 CALL qaprint(varname(1:len_trim(varname)),itab(igrsurf(igr)%NODES(n,1)),0.0_8)
394 WRITE(varname,
'(A,I0,A,I0,A)')
'SET_',
id,
'_'//
'SURFACE_SEG_',n,
'_NODE_2'
395 CALL qaprint(varname(1:len_trim(varname)),itab(igrsurf(igr)%NODES(n,2)),0.0_8)
396 IF(igrsurf(igr)%NODES(n,3) > 0)THEN
397 WRITE(varname,
'(A,I0,A,I0,A)')
'SET_',
id,
'_'//
'SURFACE_SEG_',n,
'_NODE_3'
398 CALL qaprint(varname(1:len_trim(varname)),itab(igrsurf(igr)%NODES(n,3)),0.0_8)
399 ENDIF
400 IF(igrsurf(igr)%NODES(n,4) > 0)THEN
401 WRITE(varname,
'(A,I0,A,I0,A)')
'SET_',
id,
'_'//
'SURFACE_SEG_',n,
'_NODE_4'
402 CALL qaprint(varname(1:len_trim(varname)),itab(igrsurf(igr)%NODES(n,4)),0.0_8)
403 ENDIF
404 WRITE(varname,
'(A,I0,A,I0,A)')
'SET_',
id,
'_'//
'SURFACE_SEG_',n,
'_ELTYP'
405 CALL qaprint(varname(1:len_trim(varname)),igrsurf(igr)%ELTYP(n),0.0_8)
406 WRITE(varname,
'(A,I0,A,I0,A)')
'SET_',
id,
'_'//
'SURFACE_SEG_',n,
'_ELEM'
407 IF (igrsurf(igr)%ELTYP(n) == 3 ) THEN
408 CALL qaprint(varname(1:len_trim(varname)),ixc(nixc,igrsurf(igr)%ELEM(n)),0.0_8)
409 ELSEIF (igrsurf(igr)%ELTYP(n) == 7 ) THEN
410 CALL qaprint(varname(1:len_trim(varname)),ixtg(nixtg,igrsurf(igr)%ELEM(n)),0.0_8)
411 ELSEIF (igrsurf(igr)%ELTYP(n) == 1 ) THEN
412 CALL qaprint(varname(1:len_trim(varname)),ixs(nixs,igrsurf(igr)%ELEM(n)),0.0_8)
413 ENDIF
414
415 ELSE IF(set(igs)%NB_ELLIPSE == 1)THEN
416 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'Ellipse_Xc = '
417 temp_double = set(igs)%ELLIPSE_XC
418 CALL qaprint(varname(1:len_trim(varname)),0,temp_double)
419 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'Ellipse_Yc = '
420 temp_double = set(igs)%ELLIPSE_YC
421 CALL qaprint(varname(1:len_trim(varname)),0,temp_double)
422 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'Ellipse_Zc = '
423 temp_double = set(igs)%ELLIPSE_ZC
424 CALL qaprint(varname(1:len_trim(varname)),0,temp_double)
425 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'Ellipse_a = '
426 temp_double = set(igs)%ELLIPSE_A
427 CALL qaprint(varname(1:len_trim(varname)),0,temp_double)
428 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'Ellipse_b = '
429 temp_double = set(igs)%ELLIPSE_B
430 CALL qaprint(varname(1:len_trim(varname)),0,temp_double)
431 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'Ellipse_c = '
432 temp_double = set(igs)%ELLIPSE_C
433 CALL qaprint(varname(1:len_trim(varname)),0,temp_double)
434 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'Ellipse_N'
435 CALL qaprint(varname(1:len_trim(varname)),set(igs)%ELLIPSE_N,0.0_8)
436 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'Ellipse_Skew_ID'
437 CALL qaprint(varname(1:len_trim(varname)),set(igs)%ELLIPSE_ID_MADYMO,0.0_8)
438 ELSE IF(set(igs)%NB_PLANE == 1)THEN
439 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'Plane_XM = '
440 temp_double = set(igs)%PLANE_XM
441 CALL qaprint(varname(1:len_trim(varname)),0,temp_double)
442 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'PLANE_YM = '
443 temp_double = set(igs)%PLANE_YM
444 CALL qaprint(varname(1:len_trim(varname)),0,temp_double)
445 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'PLANE_ZM = '
446 temp_double = set(igs)%PLANE_ZM
447 CALL qaprint(varname(1:len_trim(varname)),0,temp_double)
448 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'PLANE_XM1 = '
449 temp_double = set(igs)%PLANE_XM1
450 CALL qaprint(varname(1:len_trim(varname)),0,temp_double)
451 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'PLANE_YM1 = '
452 temp_double = set(igs)%PLANE_YM1
453 CALL qaprint(varname(1:len_trim(varname)),0,temp_double)
454 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'PLANE_ZM1 = '
455 temp_double = set(igs)%PLANE_ZM1
456 CALL qaprint(varname(1:len_trim(varname)),0,temp_double)
457 ENDIF
458
459 ENDDO
460 ENDIF
461
462
463
464
465 nb_line_seg = set(igs)%HAS_LINE_SEG
466 IF (nb_line_seg > 0) THEN
467 igr = set(igs)%SET_NSLIN_ID
468 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'LINE'
469 CALL qaprint(varname(1:len_trim(varname)),igrslin(igr)%ID,0.0_8)
470 WRITE(varname,
'(A,I0,A)')
'SET_',
id,
'_'//
'LINE_NB_SEG'
471 CALL qaprint(varname(1:len_trim(varname)),nb_line_seg,0.0_8)
472 DO n = 1,nb_line_seg
473 WRITE(varname,
'(A,I0,A,I0,A)')
'SET_',
id,
'_'//
'LINE_SEG_',n,
'_NODE_1'
474 CALL qaprint(varname(1:len_trim(varname)),itab(igrslin(igr)%NODES(n,1)),0.0_8)
475 WRITE(varname,
'(A,I0,A,I0,A)')
'SET_',
id,
'_'//
'LINE_SEG_',n,
'_NODE_2'
476 CALL qaprint(varname(1:len_trim(varname)),itab(igrslin(igr)%NODES(n,2)),0.0_8)
477 WRITE(varname,
'(A,I0,A,I0,A)')
'SET_',
id,
'_'//
'LINE_SEG_',n,
'_ELTYP'
478 CALL qaprint(varname(1:len_trim(varname)),igrslin(igr)%ELTYP(n),0.0_8)
479 WRITE(varname,
'(A,I0,A,I0,A)')
'SET_',
id,
'_'//
'LINE_SEG_',n,
'_ELEM'
480 IF (igrslin(igr)%ELTYP(n) == 3 ) THEN
481 CALL qaprint(varname(1:len_trim(varname)),ixc(nixc,igrslin(igr)%ELEM(n)),0.0_8)
482 ELSEIF (igrslin(igr)%ELTYP(n) == 7 ) THEN
483 CALL qaprint(varname(1:len_trim(varname)),ixtg(nixtg,igrslin(igr)%ELEM(n)),0.0_8)
484 ELSEIF (igrslin(igr)%ELTYP(n) == 1 ) THEN
485 CALL qaprint(varname(1:len_trim(varname)),ixs(nixs,igrslin(igr)%ELEM(n)),0.0_8)
486 ELSEIF (igrslin(igr)%ELTYP(n) == 2 ) THEN
487 CALL qaprint(varname(1:len_trim(varname)),ixq(nixq,igrslin(igr)%ELEM(n)),0.0_8)
488 ENDIF
489 ENDDO
490 ENDIF
491
492 ENDDO
493 ENDIF
494 ENDIF
495
496 RETURN
end diagonal values have been computed in the(sparse) matrix id.SOL
subroutine hm_get_int_array_2indexes(name, ival, index1, index2, is_available, lsubmodel)
subroutine hm_get_int_array_index(name, ival, index, is_available, lsubmodel)
subroutine hm_get_string_index(name, sval, index, size, is_available)
subroutine hm_option_start(entity_type)
integer, parameter nchartitle
integer, parameter ncharkey
integer, parameter ncharfield
integer, parameter ncharline
subroutine qaprint(name, idin, value)
@purpose print one entry to QA extract file example of call for real print CALL QAPRINT('MY_LABEL',...