48
49
50
51
52
53 USE my_alloc_mod
60
61
62
63#include "implicit_f.inc"
64
65
66
67#include "com04_c.inc"
68#include "units_c.inc"
69#include "scr17_c.inc"
70#include "param_c.inc"
71
72
73
74 TYPE (UNIT_TYPE_),INTENT(IN) ::UNITAB
75 INTEGER IFI,MFI,IDDLEVEL
76 INTEGER NPRW(*), LPRW(*), ITAB(*), ITABM1(*),IXS(NIXS,*),
77 . IXQ(NIXQ,*), NPC(*), (*),
78 . IMERGE(*),
79 . IKINE1LAG(*),ITAGND(*)
80 TYPE(SUBMODEL_DATA) LSUBMODEL(*)
81
83 . rwl(nrwlp,*), ms(*), v(3,*), x(3,*),
84 . rtrans(ntransf,*)
85 INTEGER NOM_OPT(LNOPT1,*)
86
87 TYPE (GROUP_) ,TARGET, DIMENSION(NGRNOD) :: IGRNOD
88
89
90
91 INTEGER,DIMENSION(:),ALLOCATABLE :: IKINE1
92 INTEGER K,I,NCHPLAN,NCHCYL,NCHSPHER,NCHPARAL,
93 . OFFS,NCHLAGM,NCHTHERM
95 . bid
96 CHARACTER *40
97
98
99
100 DATA mess/'STANDARD RIGID WALL DEFINITION '/
101
102
103
104
105 CALL my_alloc(ikine1,3*numnod)
106
107 WRITE(iout,1000)
108
109
110 k = 0
111
112 offs = 0
113
114 DO i=1,3*numnod
115 ikine1(i) = 0
116 ENDDO
117
118
119
120
121
122
123
130
131
132 IF (nchplan > 0) THEN
134 . v ,itab ,itabm1 ,x ,ikine
135 . igrnod ,mfi ,imerge ,unitab ,iddlevel,
136 . lsubmodel,rtrans ,nom_opt ,itagnd ,nchplan ,
137 . k ,offs ,ikine1 )
138 ENDIF
139
140
141 IF (nchcyl > 0) THEN
143 . v ,itab ,itabm1 ,x ,ikine ,
144 . igrnod ,mfi ,imerge ,unitab ,iddlevel,
145 . lsubmodel,rtrans ,nom_opt ,itagnd ,nchcyl ,
146 . k ,offs ,ikine1 )
147 ENDIF
148
149
150 IF (nchspher > 0) THEN
152 . v ,itab ,itabm1 ,x ,ikine ,
153 . igrnod ,mfi ,imerge ,unitab ,iddlevel,
154 . lsubmodel,rtrans ,nom_opt ,itagnd ,nchspher,
155 . k ,offs ,ikine1 )
156 ENDIF
157
158
159 IF (nchparal > 0) THEN
161 . v ,itab ,itabm1 ,x ,ikine ,
162 . igrnod ,mfi ,imerge ,unitab ,iddlevel,
163 . lsubmodel,rtrans ,nom_opt ,itagnd ,nchparal,
164 . k ,offs ,ikine1 )
165 ENDIF
166
167
168 IF (nchlagm > 0) THEN
170 . v ,itab ,itabm1 ,x ,ikine ,
171 . igrnod ,mfi ,imerge ,unitab ,iddlevel,
172 . lsubmodel,rtrans ,nom_opt ,itagnd ,nchlagm ,
173 . k ,offs ,ikine1lag)
174 ENDIF
175
176
177 IF (nchtherm > 0) THEN
179 . v ,itab ,itabm1 ,x ,ikine ,
180 . igrnod ,mfi ,imerge ,unitab ,iddlevel,
181 . lsubmodel,rtrans ,nom_opt ,itagnd ,nchtherm,
182 . k ,offs ,ikine1 ,ixs ,ixq ,
183 . npc )
184 ENDIF
185
186
187
188
189 CALL udouble(nom_opt,lnopt1,nrwall,mess,0,bid)
190 DEALLOCATE(ikine1)
191 RETURN
192 1000 FORMAT(
193 . ' RIGID WALL DEFINITIONS '/
194 . ' ---------------------- '/)
subroutine hm_option_count(entity_type, hm_option_number)
subroutine hm_read_rwall_cyl(rwl, nprw, lprw, ifi, ms, v, itab, itabm1, x, ikine, igrnod, mfi, imerge, unitab, iddlevel, lsubmodel, rtrans, nom_opt, itagnd, nchcyl, k, offs, ikine1)
subroutine hm_read_rwall_lagmul(rwl, nprw, lprw, ifi, ms, v, itab, itabm1, x, ikine, igrnod, mfi, imerge, unitab, iddlevel, lsubmodel, rtrans, nom_opt, itagnd, nchlagm, k, offs, ikine1lag)
subroutine hm_read_rwall_paral(rwl, nprw, lprw, ifi, ms, v, itab, itabm1, x, ikine, igrnod, mfi, imerge, unitab, iddlevel, lsubmodel, rtrans, nom_opt, itagnd, nchparal, k, offs, ikine1)
subroutine hm_read_rwall_plane(rwl, nprw, lprw, ifi, ms, v, itab, itabm1, x, ikine, igrnod, mfi, imerge, unitab, iddlevel, lsubmodel, rtrans, nom_opt, itagnd, nchplan, k, offs, ikine1)
subroutine hm_read_rwall_spher(rwl, nprw, lprw, ifi, ms, v, itab, itabm1, x, ikine, igrnod, mfi, imerge, unitab, iddlevel, lsubmodel, rtrans, nom_opt, itagnd, nchspher, k, offs, ikine1)
subroutine hm_read_rwall_therm(rwl, nprw, lprw, ifi, ms, v, itab, itabm1, x, ikine, igrnod, mfi, imerge, unitab, iddlevel, lsubmodel, rtrans, nom_opt, itagnd, nchtherm, k, offs, ikine1, ixs, ixq, npc)
subroutine udouble(list, ilist, nlist, mess, ir, rlist)