40 * CLAUSE ,JCLAUSE ,IS_AVAILABLE,LSUBMODEL ,KEYSET ,
41 * ITABM1 ,IBOX ,X ,SKEW ,IXS10 ,
42 * SET_TITLE,IPART ,SH4TREE ,SH3TREE ,IPARTS ,
43 * IPARTQ ,IPARTC ,IPARTG ,IPARTT ,IPARTP ,
44 * IPARTR ,IXS ,IXQ ,IXC ,IXTG ,
45 * IXT ,IXP ,IXR ,KNOD2ELS ,NOD2ELS ,
46 * KNOD2ELC ,NOD2ELC ,KNOD2ELTG ,NOD2ELTG ,KNOD2ELQ ,
47 * NOD2ELQ ,OPT_A ,OPT_O ,OPT_E ,DELBUF ,
75 use element_mod ,
only : nixs,nixq,nixc,nixt,nixp,nixr,nixtg
79#include "implicit_f.inc"
83#include "radioss_maptable.inc"
90 INTEGER,
INTENT(IN) :: IPART(LIPART1,*),SH4TREE(*),
91 . SH3TREE(*),IXS(NIXS,*),IXC(NIXC,*),IXTG(NIXTG,*),IXS10(6,*),
92 . IXQ(NIXQ,*),IXT(NIXT,*),IXP(NIXP,*),IXR(NIXR,*),IPARTS(*),
93 . IPARTQ(*),IPARTC(*),IPARTG(*),IPARTT(*),IPARTP(*),IPARTR(*),
94 . KNOD2ELS(*),KNOD2ELC(*),KNOD2ELTG(*),NOD2ELS(*),(*),
95 . NOD2ELTG(*),NOD2ELQ(*),KNOD2ELQ(*)
96 INTEGER JCLAUSE, OPT_A, OPT_O, OPT_E
98 INTEGER,
INTENT(IN),
DIMENSION(NUMNOD,2) :: ITABM1
99 INTEGER,
INTENT(IN),
DIMENSION(NRBODY,2) :: IRBODYM
100 INTEGER,
INTENT(IN),
DIMENSION(2,NRBODY) :: RBY_MSN
104 LOGICAL :: IS_AVAILABLE
106 . x(3,*),skew(lskew,*)
107 CHARACTER(LEN=NCHARFIELD) :: KEYSET
108 CHARACTER(LEN=NCHARTITLE) :: SET_TITLE
109 TYPE (SET_SCRATCH) :: DELBUF
111 TYPE (SET_) :: CLAUSE
112 TYPE(SUBMODEL_DATA),
INTENT(IN) :: LSUBMODEL(*)
113 TYPE () ,
DIMENSION(NBBOX) :: IBOX
117 INTEGER BOXTYPE, SURF_LIST, LINE_LIST_1D
125 IF (keyset ==
'BOX') boxtype = 1
126 IF (keyset == 'box2
') BOXTYPE = 2
129 ! ---------------------
131 ! ---------------------
135 CALL CREATE_NODE_BOX(
136 . CLAUSE ,ITABM1 ,JCLAUSE ,IS_AVAILABLE ,LSUBMODEL,
137 . IBOX ,X ,SKEW ,SET_TITLE ,KEYSET )
143 * clause ,iparts ,jclause ,is_available ,lsubmodel,
144 * ibox ,x ,skew ,set_title ,keyset ,
145 * boxtype ,numels ,nixs ,ixs ,8 ,
146 * ipart ,admbid ,admbid ,admbid ,elt_solid)
151 * clause ,ipartq ,jclause ,is_available ,lsubmodel,
152 * ibox ,x ,skew ,set_title ,keyset ,
153 * boxtype ,numelq ,nixq ,ixq ,4 ,
154 * ipart ,admbid ,admbid ,admbid ,elt_quad )
159 * clause ,ipartc ,jclause ,is_available ,lsubmodel,
160 * ibox ,x ,skew ,set_title ,keyset ,
161 * boxtype ,numelc ,nixc ,ixc ,4 ,
162 * ipart ,sh4tree ,3 ,ksh4tree ,elt_sh4n )
165 IF (numeltg > 0 .AND. numeltria == 0)
167 * clause ,ipartg ,jclause ,is_available ,lsubmodel,
168 * ibox ,x ,skew ,set_title ,keyset ,
169 * boxtype ,numeltg ,nixtg ,ixtg ,3 ,
170 * ipart ,sh3tree ,3 ,ksh3tree ,elt_sh3n )
175 * clause ,ipartg ,jclause ,is_available ,lsubmodel,
176 * ibox ,x ,skew ,set_title ,keyset ,
177 * boxtype ,numeltria,nixtg ,ixtg ,3 ,
178 * ipart ,admbid ,admbid ,admbid ,elt_tria )
183 * clause ,ipartt ,jclause ,is_available ,lsubmodel,
184 * ibox ,x ,skew ,set_title ,keyset ,
185 * boxtype ,numelt ,nixt ,ixt ,2 ,
186 * ipart ,admbid ,admbid ,admbid ,elt_truss)
191 * clause ,ipartp ,jclause ,is_available ,lsubmodel,
192 * ibox ,x ,skew ,set_title ,keyset ,
193 * boxtype ,numelp ,nixp ,ixp ,2 ,
194 * ipart ,admbid ,admbid ,admbid ,elt_beam )
199 * clause ,ipartr ,jclause ,is_available ,lsubmodel,
200 * ibox ,x ,skew ,set_title ,keyset ,
201 * boxtype ,numelr ,nixr ,ixr ,2 ,
202 * ipart ,admbid ,admbid ,admbid ,elt_spring)
206 line_list_1d = clause%NB_TRUSS + clause%NB_BEAM + clause%NB_SPRING
207 IF (line_list_1d > 0)
215 surf_list = clause%NB_SOLID + clause%NB_QUAD +
216 + clause%NB_SH4N + clause%NB_SH3N
217 IF (surf_list > 0)
THEN
221 * ixs ,ixs10 ,sh4tree ,sh3tree ,ixc ,
222 * ixtg ,knod2els ,nod2els ,knod2elc ,nod2elc ,
223 * knod2eltg ,nod2eltg ,ipartc ,ipartg ,iparts ,
224 * ipart ,clause ,opt_a ,opt_o ,ixq ,
225 * knod2elq ,nod2elq ,x ,keyset ,delbuf ,
235 IF (clause%NB_RBODY > 0)
THEN
237 . ibox ,x ,skew ,set_title ,keyset ,
subroutine create_box_clause(clause, jclause, is_available, lsubmodel, keyset, itabm1, ibox, x, skew, ixs10, set_title, ipart, sh4tree, sh3tree, iparts, ipartq, ipartc, ipartg, ipartt, ipartp, ipartr, ixs, ixq, ixc, ixtg, ixt, ixp, ixr, knod2els, nod2els, knod2elc, nod2elc, knod2eltg, nod2eltg, knod2elq, nod2elq, opt_a, opt_o, opt_e, delbuf, rby_msn, irbodym)