OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
create_rbody_box.F File Reference
#include "implicit_f.inc"
#include "com04_c.inc"
#include "param_c.inc"

Go to the source code of this file.

Functions/Subroutines

subroutine create_rbody_box (clause, irbodym, jclause, is_available, lsubmodel, ibox, x, skew, set_title, keyset, rby_msn)

Function/Subroutine Documentation

◆ create_rbody_box()

subroutine create_rbody_box ( type (set_) clause,
integer, dimension(nrbody,2), intent(in) irbodym,
integer jclause,
logical is_available,
type(submodel_data), dimension(*), intent(in) lsubmodel,
type (box_), dimension(nbbox) ibox,
x,
skew,
character(len=nchartitle) set_title,
character(len=ncharfield) keyset,
integer, dimension(2,nrbody), intent(in) rby_msn )

Definition at line 37 of file create_rbody_box.F.

41C-----------------------------------------------
42C ROUTINE DESCRIPTION :
43C ===================
44C Create NODE Clause from BOX
45C------------------------------------------------------------------
46C DUMMY ARGUMENTS DESCRIPTION:
47C ===================
48C
49C NAME DESCRIPTION
50C
51C CLAUSE (SET structure) Clause to be treated
52C IRBODYM MAP Table UID -> LocalID
53C JCLAUSE parameter with HM_READER (current clause read)
54C IS_AVAILABLE Bool / Result of HM_interface
55C LSUBMODEL SUBMODEL Structure.
56C============================================================================
57C-----------------------------------------------
58C M o d u l e s
59C-----------------------------------------------
60 USE setdef_mod
61 USE submodel_mod
62 USE message_mod
66C-----------------------------------------------
67C I m p l i c i t T y p e s
68C-----------------------------------------------
69#include "implicit_f.inc"
70C-----------------------------------------------
71C C o m m o n B l o c k s
72C-----------------------------------------------
73#include "com04_c.inc"
74#include "param_c.inc"
75C-----------------------------------------------
76C D u m m y A r g u m e n t s
77C-----------------------------------------------
78 INTEGER JCLAUSE
79 LOGICAL :: IS_AVAILABLE
80 INTEGER, INTENT(IN), DIMENSION(NRBODY,2) :: IRBODYM
81 INTEGER, INTENT(IN), DIMENSION(2,NRBODY) :: RBY_MSN
82 my_real x(3,*),skew(lskew,*)
83 TYPE (SET_) :: CLAUSE
84 TYPE(SUBMODEL_DATA),INTENT(IN):: LSUBMODEL(*)!
85 TYPE (BOX_) , DIMENSION(NBBOX) :: IBOX
86 CHARACTER(LEN=NCHARFIELD) :: KEYSET
87 CHARACTER(LEN=NCHARTITLE) :: SET_TITLE
88C-----------------------------------------------
89C L o c a l V a r i a b l e s
90C-----------------------------------------------
91 INTEGER I,IDS,NINDX,LIST_SIZE,NODSYS,NINDX_B,NOD
92 INTEGER IDS_MAX, BOXLIST_SIZE,SZ_BOXNDS
93 INTEGER IWORK(70000)
94!
95 INTEGER, ALLOCATABLE, DIMENSION(:) :: BOXNDS,BOXLIST
96 .
97C
98! INTEGER SET_USRTOS
99! EXTERNAL SET_USRTOS
100C=======================================================================
101!
102 nindx_b = 0
103!
104 ALLOCATE(boxnds(numnod))
105 sz_boxnds = 0
106
107
108
109 ! Read Boxes
110 ! ---------------------
111
112 CALL hm_get_int_array_index('idsmax' ,ids_max ,jclause,is_available,lsubmodel) ! Get the numbers of boxes to read
113
114 ALLOCATE(boxlist(ids_max))
115 boxlist_size=0
116
117 CALL read_clause_box(ibox ,is_available ,lsubmodel ,jclause, ids_max ,
118 * boxlist, boxlist_size)
119
120!
121 ! Fill Boxes
122 ! ---------------------
123 CALL fill_clause_rbody_box( ibox ,x ,skew ,set_title ,keyset,
124 * boxlist, boxlist_size,
125 * boxnds, sz_boxnds ,rby_msn)
126
127
128 ALLOCATE (clause%NODE(sz_boxnds))
129 clause%NODE(1:sz_boxnds) = boxnds(1:sz_boxnds)
130 clause%NB_NODE = sz_boxnds
131
132 RETURN
#define my_real
Definition cppsort.cpp:32
subroutine fill_clause_rbody_box(ibox, x, skew, set_title, keyset, boxlist, boxlist_size, boxnds, sz_boxnds, rby_msn)
subroutine hm_get_int_array_index(name, ival, index, is_available, lsubmodel)
integer, parameter nchartitle
integer, parameter ncharfield
subroutine read_clause_box(ibox, is_available, lsubmodel, jclause, ids_max, boxlist, boxlist_size)