32 . SET_ID ,SET_TITLE,GETELEM, NELEM,SET_GREID)
57#include "implicit_f.inc"
64 INTEGER,
INTENT(IN) :: SET_ID
65 INTEGER,
INTENT(INOUT) :: NGRELEM
66 INTEGER,
INTENT(IN) :: NELEM,IELT
67 INTEGER,
INTENT(IN) :: GETELEM(*)
68 INTEGER,
INTENT(OUT) :: SET_GREID
70 TYPE (GROUP_) ,
TARGET ,
INTENT(INOUT):: IGRELE(*)
71 CHARACTER(LEN=NCHARTITLE)::SET_TITLE
89 igrele(igre)%ID = set_id
90 igrele(igre)%TITLE = set_title
91 igrele(igre)%NENTITY = nelem
92 igrele(igre)%GRTYPE = ielt
95 IF (nelem == 0) igrele(igre)%SET_GROUP
98 CALL my_alloc(igrele(igre)%ENTITY,nelem)
99 igrele(igre)%ENTITY(1:nelem) = getelem(1:nelem)
143#include "implicit_f.inc"
148 TYPE (SURF_) ,
TARGET ,
INTENT(INOUT):: IGRSURF(*)
149 TYPE (SET_) ,
INTENT(INOUT) :: SET
153 LOGICAL LINE_SEG, SURF_SEG
156 DATA mess/
'SET SURF GROUP DEFINITION '/
165 IF(set%NB_SURF_SEG > 0)
THEN
167 nseg = set%NB_SURF_SEG
169 ELSEIF(set%NB_LINE_SEG > 0)
THEN
171 nseg = set%NB_LINE_SEG
178 igrsurf(igrs)%ID = set%SET_ID
179 igrsurf(igrs)%TITLE = set%TITLE
180 igrsurf(igrs)%NSEG = nseg
182 igrsurf(igrs)%TYPE = 0
183 igrsurf(igrs)%ID_MADYMO = 0
184 igrsurf(igrs)%IAD_BUFR = 0
185 igrsurf(igrs)%NB_MADYMO = 0
186 igrsurf(igrs)%TYPE_MADYMO = 0
187 igrsurf(igrs)%LEVEL = 1
188 igrsurf(igrs)%TH_SURF = 0
189 igrsurf(igrs)%ISH4N3N = 0
190 igrsurf(igrs)%NSEG_R2R_ALL = 0
191 igrsurf(igrs)%NSEG_R2R_SHARE = 0
195 IF (nseg == 0) igrsurf(igrs)%SET_GROUP = 1
200 IF (
ALLOCATED(igrsurf(igrs)%NODES))
DEALLOCATE(igrsurf(igrs)%NODES)
201 IF (
ALLOCATED(igrsurf(igrs)%ELTYP))
DEALLOCATE(igrsurf(igrs)%ELTYP)
202 IF (
ALLOCATED(igrsurf(igrs)%ELEM))
DEALLOCATE(igrsurf(igrs)%ELEM)
204 CALL my_alloc(igrsurf(igrs)%NODES,nseg,4)
205 CALL my_alloc(igrsurf(igrs)%ELTYP,nseg)
206 CALL my_alloc(igrsurf(igrs)%ELEM,nseg)
209 igrsurf(igrs)%NODES(1:nseg,1) = set%SURF_NODES(1:nseg,1)
210 igrsurf(igrs)%NODES(1:nseg,2) = set%SURF_NODES(1:nseg,2)
211 igrsurf(igrs)%NODES(1:nseg,3) = set%SURF_NODES(1:nseg,3)
212 igrsurf(igrs)%NODES(1:nseg,4) = set%SURF_NODES(1:nseg,4)
213 igrsurf(igrs)%ELTYP(1:nseg) = set%SURF_ELTYP(1:nseg)
214 igrsurf(igrs)%ELEM(1:nseg) = set%SURF_ELEM(1:nseg)
215 igrsurf(igrs)%EXT_ALL = set%EXT_ALL
219 igrsurf(igrs)%NODES(1:nseg,1) = set%LINE_NODES(1:nseg,1)
220 igrsurf(igrs)%NODES(1:nseg,2) = set%LINE_NODES(1:nseg,2)
221 igrsurf(igrs)%NODES(1:nseg,3) = 0
222 igrsurf(igrs)%NODES(1:nseg,4) = 0
223 igrsurf(igrs)%ELTYP(1:nseg) = set%LINE_ELTYP(1:nseg)
224 igrsurf(igrs)%ELEM(1:nseg) = set%LINE_ELEM(1:nseg)
229 set%SET_NSURF_ID = igrs
230 set%HAS_SURF_SEG = nseg
267#include "implicit_f.inc"
271 INTEGER,
INTENT(INOUT) :: IGRL
273 TYPE (SURF_) ,
INTENT(INOUT) :: IGRSLIN(*)
274 TYPE (SET_) ,
INTENT(INOUT) :: SET
275 CHARACTER(LEN=NCHARTITLE)::SET_TITLE
281 DATA mess/
'SET LINE GROUP DEFINITION '/
284 nseg = set%NB_LINE_SEG
290 igrslin(igrl)%ID = set%SET_ID
291 igrslin(igrl)%TITLE = set%TITLE
292 igrslin(igrl)%NSEG = nseg
294 igrslin(igrl)%TYPE = 0
295 igrslin(igrl)%LEVEL = 1
296 igrslin(igrl)%NSEG_R2R_ALL = 0
297 igrslin(igrl)%NSEG_R2R_SHARE = 0
301 IF (nseg == 0) igrslin(igrl)%SET_GROUP = 1
306 IF (
ALLOCATED(igrslin(igrl)%NODES))
DEALLOCATE(igrslin(igrl)%NODES)
307 IF (
ALLOCATED(igrslin(igrl)%ELTYP))
DEALLOCATE(igrslin(igrl)%ELTYP)
308 IF (
ALLOCATED(igrslin(igrl)%ELEM))
DEALLOCATE(igrslin(igrl)%ELEM)
309 IF (
ALLOCATED(igrslin(igrl)%PROC))
DEALLOCATE(igrslin(igrl)%PROC
311 CALL my_alloc(igrslin(igrl)%NODES,nseg,2)
312 CALL my_alloc(igrslin(igrl)%ELTYP,nseg)
313 CALL my_alloc(igrslin(igrl)%ELEM,nseg)
314 CALL my_alloc(igrslin(igrl)%PROC,nseg)
316 igrslin(igrl)%NODES(1:nseg,1) = set%LINE_NODES(1:nseg,1)
317 igrslin(igrl)%NODES(1:nseg
318 igrslin(igrl)%ELTYP(1:nseg) = set%LINE_ELTYP(1:nseg)
319 igrslin(igrl)%ELEM(1:nseg) = set%LINE_ELEM(1:nseg)
320 igrslin(igrl)%PROC(1:nseg) = 0
323 set%SET_NSLIN_ID=igrl
324 set%HAS_LINE_SEG = nseg
subroutine fill_gr(igrele, ngrelem, ielt, set_id, set_title, getelem, nelem, set_greid)