OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
wrcomm.F
Go to the documentation of this file.
1Copyright> OpenRadioss
2Copyright> Copyright (C) 1986-2025 Altair Engineering Inc.
3Copyright>
4Copyright> This program is free software: you can redistribute it and/or modify
5Copyright> it under the terms of the GNU Affero General Public License as published by
6Copyright> the Free Software Foundation, either version 3 of the License, or
7Copyright> (at your option) any later version.
8Copyright>
9Copyright> This program is distributed in the hope that it will be useful,
10Copyright> but WITHOUT ANY WARRANTY; without even the implied warranty of
11Copyright> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12Copyright> GNU Affero General Public License for more details.
13Copyright>
14Copyright> You should have received a copy of the GNU Affero General Public License
15Copyright> along with this program. If not, see <https://www.gnu.org/licenses/>.
16Copyright>
17Copyright>
18Copyright> Commercial Alternative: Altair Radioss Software
19Copyright>
20Copyright> As an alternative to this open-source version, Altair also offers Altair Radioss
21Copyright> software under a commercial license. Contact Altair to discuss further if the
22Copyright> commercial version may interest you: https://www.altair.com/radioss/.
23!||====================================================================
24!|| wrcomr ../starter/source/restart/ddsplit/wrcomm.F
25!||--- called by ------------------------------------------------------
26!|| ddsplit ../starter/source/restart/ddsplit/ddsplit.F
27!||--- uses -----------------------------------------------------
28!|| sph_mod ../starter/share/modules1/sph_mod.F
29!||====================================================================
30 SUBROUTINE wrcomr(LMXVREA,LVARREA,TABVREA,MS_ND,P,INTER_PARAMETERS,
31 . UNITAB ,GLOB_THERM, OUTPUT)
32C-----------------------------------------------
33C M o d u l e s
34C-----------------------------------------------
35 USE output_mod
36 USE sph_mod, ONLY : xi_res, yi_res, zi_res
37 USE ale_mod
39 USE unitab_mod
40 USE multimat_param_mod , ONLY : m51_iflg6
41 use glob_therm_mod
42 USE output_mod , ONLY : output_
43C-----------------------------------------------
44C I m p l i c i t T y p e s
45C-----------------------------------------------
46#include "implicit_f.inc"
47C-----------------------------------------------
48C D u m m y A r g u m e n t s
49C-----------------------------------------------
50 INTEGER LMXVREA,LVARREA, I
51 my_real tabvrea(*),ms_nd
52 TYPE(unit_type_), INTENT(IN) :: UNITAB
53 TYPE(glob_therm_) ,intent(in) :: glob_therm
54 TYPE(output_),INTENT(IN) :: OUTPUT
55C-----------------------------------------------
56C C o m m o n B l o c k s
57C-----------------------------------------------
58#include "com06_c.inc"
59#include "com08_c.inc"
60#include "lagmult.inc"
61#include "remesh_c.inc"
62#include "scr18_c.inc"
63#include "sms_c.inc"
64#include "sphcom.inc"
65#include "inter22.inc"
66C-----------------------------------------------
67#include "tablen_c.inc"
68#include "ddspmd_c.inc"
69C-----------------------------------------------
70C L o c a l V a r i a b l e s
71C-----------------------------------------------
72 INTEGER IVAR,J,RVARINT,P
73 TYPE (PARAMETERS_) ,INTENT(IN):: INTER_PARAMETERS
74C--------------------------------------
75C PREPARATION OF REAL VARIABLES FOR WRITING TO RFILE.
76C--------------------------------------
77C-----
78 DO ivar=1,lmxvrea
79 tabvrea(ivar)=zero
80 ENDDO
81C-----
82 tabvrea(1)=tt
83 tabvrea(2)=dt1
84 tabvrea(3)=dt2
85 tabvrea(4)=dt12
86 tabvrea(5)=dt2old
87 tabvrea(6)=tstop
88 tabvrea(7)=0 !no longer used
89 tabvrea(8)=this
90C-----
91 tabvrea(9)=0 !no longer used
92 tabvrea(10)=dthis
93 tabvrea(11)=dtfac
94 tabvrea(12)=dtmin
95 tabvrea(13)=volmin
96 tabvrea(14)=output%TH%WFEXT
97 tabvrea(15)=reint
98 tabvrea(16)=0 !no longer used
99 tabvrea(17)=0 !no longer used
100 tabvrea(18)=output%DTANIM
101 tabvrea(19)=output%TANIM
102 tabvrea(20)=ureint
103 tabvrea(21)=econtv
104 tabvrea(22)=ehour
105 tabvrea(23)=dtoutp
106 tabvrea(24)=toutp
107 tabvrea(25)=t1s
108 tabvrea(26)=dt2s
109 tabvrea(27)=dt12s
110 tabvrea(28)=zero !old USREINT
111 tabvrea(29)=r2rfx1
112 tabvrea(30)=r2rfx2
113 tabvrea(31)=dampa
114 tabvrea(32)=dampb
115 tabvrea(33)=dampw
116C-----
117 tabvrea(34)=ale%GRID%ALPHA
118 tabvrea(35)=ale%GRID%GAMMA
119 tabvrea(36)=ale%GRID%VGX
120 tabvrea(37)=ale%GRID%VGY
121 tabvrea(38)=ale%GRID%VGZ
122C-----
123 tabvrea(39)=spasort
124 tabvrea(40)=spatrue
125 DO i=1,9
126 tabvrea(40+i) = dthis1(i)
127 tabvrea(49+i) = this1(i)
128 ENDDO
129 tabvrea(59) = zero
130 tabvrea(60) = zero
131 tabvrea(61)=lagm_tol
132 tabvrea(62)=lag_alph
133 tabvrea(63)=lag_alphs
134 lvarrea=63
135C
136C---- Debut Check Point Restart
137C
138 DO i = 1, 42
139 tabvrea(63+i)=zero
140 ENDDO
141C
142C---- end check point restart
143C
144 lvarrea= 105
145 tabvrea(106)=dwmad
146 lvarrea=106
147 tabvrea(107)=unitab%FAC_MASS
148 tabvrea(108)=unitab%FAC_LENGTH
149 tabvrea(109)=unitab%FAC_TIME
150 tabvrea(110)=t1sh
151 tabvrea(111) = ale%UPWIND%UPWSM
152 rvarint = 111
153 rvarint = rvarint + 1
154 tabvrea(rvarint) = tpsref
155C THERMAL ANALYSIS
156 rvarint = rvarint + 1
157 tabvrea(rvarint) = glob_therm%HEAT_STORED
158 rvarint = rvarint + 1
159 tabvrea(rvarint) = glob_therm%HEAT_MECA
160 rvarint = rvarint + 1
161 tabvrea(rvarint) = glob_therm%HEAT_CONV
162 rvarint = rvarint + 1
163 tabvrea(rvarint) = glob_therm%HEAT_RADIA
164 rvarint = rvarint + 1
165 tabvrea(rvarint) = glob_therm%HEAT_FFLUX
166C TABLEAU SOL1TNL
167 DO i=0, maxlaw
168 rvarint = rvarint + 1
169 tabvrea(rvarint) = sol1tnl(i,1)
170 rvarint = rvarint + 1
171 tabvrea(rvarint) = sol1tnl(i,2)
172 ENDDO
173C TABLEAU SOL8TNL
174 DO i=0, maxlaw
175 rvarint = rvarint + 1
176 tabvrea(rvarint) = sol8tnl(i,1)
177 rvarint = rvarint + 1
178 tabvrea(rvarint) = sol8tnl(i,2)
179 ENDDO
180C TABLEAU TET4TNL
181 DO i=0, maxlaw
182 rvarint = rvarint + 1
183 tabvrea(rvarint) = tet4tnl(i,1)
184 ENDDO
185C TABLEAU TET10TNL
186 DO i=0, maxlaw
187 rvarint = rvarint + 1
188 tabvrea(rvarint) = tet10tnl(i,1)
189 ENDDO
190C TABLEAU SHTNL
191 DO i=0, maxlaw
192 DO j=0,3
193 rvarint = rvarint + 1
194 tabvrea(rvarint) = shtnl(i,j,1)
195 rvarint = rvarint + 1
196 tabvrea(rvarint) = shtnl(i,j,2)
197 rvarint = rvarint + 1
198 tabvrea(rvarint) = shtnl(i,j,3)
199 ENDDO
200 ENDDO
201C TABLEAU TRITNL
202 DO i=0, maxlaw
203 DO j=0,3
204 rvarint = rvarint + 1
205 tabvrea(rvarint) = tritnl(i,j,1)
206 rvarint = rvarint + 1
207 tabvrea(rvarint) = tritnl(i,j,2)
208 rvarint = rvarint + 1
209 tabvrea(rvarint) = tritnl(i,j,3)
210 ENDDO
211 ENDDO
212C TABLEAU SOLTELT
213 DO i=1,8
214 rvarint = rvarint + 1
215 tabvrea(rvarint) = soltelt(i)
216 ENDDO
217 rvarint = rvarint + 1
218 tabvrea(rvarint) = tet4telt(1)
219 rvarint = rvarint + 1
220 tabvrea(rvarint) = tet10telt(1)
221C TABLEAU SHTELT
222 DO i=1,10
223 rvarint = rvarint + 1
224 tabvrea(rvarint) = shtelt(i)
225 ENDDO
226C TABLEAU TRITELT
227 DO i=1,10
228 rvarint = rvarint + 1
229 tabvrea(rvarint) = tritelt(i)
230 ENDDO
231C
232C .sta files
233 rvarint = rvarint + 1
234 tabvrea(rvarint) = dtstat
235 rvarint = rvarint + 1
236 tabvrea(rvarint) = tstat
237C .dynain files
238 rvarint = rvarint + 1
239 tabvrea(rvarint) = zero !DTDYNAIN
240 rvarint = rvarint + 1
241 tabvrea(rvarint) = zero !TDYNAIN
242C
243 rvarint = rvarint + 1
244 tabvrea(rvarint) = tadmesh
245 rvarint = rvarint + 1
246 tabvrea(rvarint) = dtadmesh
247C
248 rvarint = rvarint + 1
249 tabvrea(rvarint) = dtfacs
250 rvarint = rvarint + 1
251 tabvrea(rvarint) = dtmins
252 rvarint = rvarint + 1
253 tabvrea(rvarint) = tol_sms
254C abf files
255 DO i=1,10
256 rvarint = rvarint + 1
257 tabvrea(rvarint) = tabfis(i)
258 rvarint = rvarint + 1
259 tabvrea(rvarint) = dtabf(i)
260 rvarint = rvarint + 1
261 tabvrea(rvarint) = dtabfwr(i)
262 rvarint = rvarint + 1
263 tabvrea(rvarint) = tabfwr(i)
264 ENDDO
265C
266C
267 rvarint = rvarint + 1
268 tabvrea(rvarint) = ratio22
269C
270 rvarint = rvarint + 1
271 tabvrea(rvarint) = m51_iflg6
272C
273 rvarint = rvarint + 1
274 tabvrea(rvarint) = ms_nd ! MASS Middle nodes Itet=2
275C
276 rvarint = rvarint + 1
277 tabvrea(rvarint) = zero ! DMSI2 Itet=2
278 rvarint = rvarint + 1
279 tabvrea(rvarint) = zero ! MSI20 Itet=2
280C
281C---- Debut Check Point Restart
282C
283C DTFAC1(51) and DTMIN1(51)
284 rvarint = rvarint + 1
285 tabvrea(rvarint) = zero
286 rvarint = rvarint + 1
287 tabvrea(rvarint) = zero
288C DTFAC1(52) and DTMIN1(52)
289 rvarint = rvarint + 1
290 tabvrea(rvarint) = zero
291 rvarint = rvarint + 1
292 tabvrea(rvarint) = zero
293C
294 !DTFAC1(102) - DTMIN1(102) - /DT/ALE
295 rvarint = rvarint + 1
296 tabvrea(rvarint) = zero
297 rvarint = rvarint + 1
298 tabvrea(rvarint) = zero
299C
300 rvarint = rvarint + 1
301 tabvrea(rvarint) = zero ! DTFACS_INT
302 rvarint = rvarint + 1
303 tabvrea(rvarint) = zero ! DTMINS_INT
304C
305C BETATE_0, EINT_0,ENCIN_0,PIMAX ,PCMAX,PINT ,PCIN ,FILtr+8,NFIRST
306 DO i = 1, 16
307 rvarint = rvarint + 1
308 tabvrea(rvarint) = zero
309 END DO
310C
311 rvarint = rvarint + 2
312C ENCONTD , ECONT_CUMU
313 rvarint = rvarint + 1
314 tabvrea(rvarint) = econtd
315 rvarint = rvarint + 1
316 tabvrea(rvarint) = econt_cumu
317C INITIAL MASS FROM STARTER
318 rvarint = rvarint + 1
319 tabvrea(rvarint) = mass0_start
320 rvarint = rvarint + 1
321 tabvrea(rvarint) = zero
322C ANIM FILES STOP TIME
323 rvarint = rvarint + 1
324 tabvrea(rvarint) = output%TANIM_STOP
325C INITIAL COORDS OF SPH RESERVE
326 rvarint = rvarint + 1
327 tabvrea(rvarint) = xi_res
328 rvarint = rvarint + 1
329 tabvrea(rvarint) = yi_res
330 rvarint = rvarint + 1
331 tabvrea(rvarint) = zi_res
332C
333 rvarint = rvarint + 1
334 tabvrea(rvarint) = inter_parameters%DT_STIFINT
335C KINETIC ENERGY
336 rvarint = rvarint + 1
337 tabvrea(rvarint) = zero !ENCIN
338 rvarint = rvarint + 1
339 tabvrea(rvarint) = zero !ENROT
340C
341C---- end check point restart
342C
343 lvarrea=rvarint
344C----------------------------------------------------------------
345C warning to radioss developers : Check LVARREA < LMXVREA
346C----------------------------------------------------------------
347 IF(lvarrea>lmxvrea)stop 123
348C
349 RETURN
350 END
#define my_real
Definition cppsort.cpp:32
type(ale_) ale
Definition ale_mod.F:253
subroutine wrcomr(lmxvrea, lvarrea, tabvrea, ms_nd, p, inter_parameters, unitab, glob_therm, output)
Definition wrcomm.F:32