OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
time_history_mod.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!|| time_history_mod ../common_source/modules/output/time_history_mod.F
25!||--- called by ------------------------------------------------------
26!|| init_th0 ../engine/source/output/th/init_th0.F
27!|| output_mod ../common_source/modules/output/output_mod.F90
28!|| radioss2 ../engine/source/engine/radioss2.F
29!|| read_th_restart ../engine/source/output/th/read_th_restart.F
30!|| write_th_buffer ../starter/source/restart/ddsplit/write_th_buffer.F
31!|| write_th_restart ../engine/source/output/th/write_th_restart.F
32!||--- uses -----------------------------------------------------
33!|| th_surf_mod ../common_source/modules/interfaces/th_surf_mod.F
34!||====================================================================
36 USE th_surf_mod
37#include "my_real.inc"
38
39 TYPE th_
40 INTEGER nithgr
41 ! Global Time History
42 INTEGER, DIMENSION(:), ALLOCATABLE :: ithbuf
43 INTEGER sithbuf
44 INTEGER, DIMENSION(:), ALLOCATABLE :: ithgrp
45 INTEGER sithgrp
46 character (len=2048) :: th_filename
47 INTEGER :: th_write_type
48 !
49 INTEGER, DIMENSION(:), ALLOCATABLE :: ithbufa
50 INTEGER sithbufa
51 INTEGER, DIMENSION(:), ALLOCATABLE :: ithbufb
52 INTEGER sithbufb
53 INTEGER, DIMENSION(:), ALLOCATABLE :: ithbufc
54 INTEGER sithbufc
55 INTEGER, DIMENSION(:), ALLOCATABLE :: ithbufd
56 INTEGER sithbufd
57 INTEGER, DIMENSION(:), ALLOCATABLE :: ithbufe
58 INTEGER sithbufe
59 INTEGER, DIMENSION(:), ALLOCATABLE :: ithbuff
60 INTEGER sithbuff
61 INTEGER, DIMENSION(:), ALLOCATABLE :: ithbufg
62 INTEGER sithbufg
63 INTEGER, DIMENSION(:), ALLOCATABLE :: ithbufh
64 INTEGER sithbufh
65 INTEGER, DIMENSION(:), ALLOCATABLE :: ithbufi
66 INTEGER sithbufi
67
68 INTEGER, DIMENSION(:), ALLOCATABLE :: ithgrpa
69 INTEGER sithgrpa
70 INTEGER, DIMENSION(:), ALLOCATABLE :: ithgrpb
71 INTEGER sithgrpb
72 INTEGER, DIMENSION(:), ALLOCATABLE :: ithgrpc
73 INTEGER sithgrpc
74 INTEGER, DIMENSION(:), ALLOCATABLE :: ithgrpd
75 INTEGER sithgrpd
76 INTEGER, DIMENSION(:), ALLOCATABLE :: ithgrpe
77 INTEGER sithgrpe
78 INTEGER, DIMENSION(:), ALLOCATABLE :: ithgrpf
79 INTEGER sithgrpf
80 INTEGER, DIMENSION(:), ALLOCATABLE :: ithgrpg
81 INTEGER sithgrpg
82 INTEGER, DIMENSION(:), ALLOCATABLE :: ithgrph
83 INTEGER sithgrph
84 INTEGER, DIMENSION(:), ALLOCATABLE :: ithgrpi
85 INTEGER sithgrpi
86 !
87 REAL(kind=8) :: this ! time of next TH file
88 REAL(kind=8), dimension(9) :: this1 ! time of next TH files (aTH,bTH,...)
89 REAL(kind=8) :: dthis ! time step of TH file
90 REAL(kind=8), dimension(9) :: dthis1 ! time step of TH files (aTH,bTH,...)
91
92 TYPE (th_surf_) th_surf
93 double precision :: wfext !< external force work (global value) should be within th?
94 double precision :: wfext_md !< specific to r2r method
95 INTEGER dump_thnms1_file
96 END TYPE th_
97
98
99 CONTAINS
100
101!||====================================================================
102!|| th_alloc ../common_source/modules/output/time_history_mod.F
103!||--- called by ------------------------------------------------------
104!|| read_th_restart ../engine/source/output/th/read_th_restart.F
105!||--- uses -----------------------------------------------------
106!|| message_mod ../engine/share/message_module/message_mod.F
107!||====================================================================
108 SUBROUTINE th_alloc(TH,
109 . SITHGRP, SITHBUF ,
110 . SITHGRPA, SITHBUFA,
111 . SITHGRPB, SITHBUFB,
112 . SITHGRPC, SITHBUFC,
113 . SITHGRPD, SITHBUFD,
114 . SITHGRPE, SITHBUFE,
115 . SITHGRPF, SITHBUFF,
116 . SITHGRPG, SITHBUFG,
117 . SITHGRPH, SITHBUFH,
118 . SITHGRPI, SITHBUFI )
119C-----------------------------------------------
120C M o d u l e s
121C-----------------------------------------------
122 USE message_mod
123C-----------------------------------------------
124C I m p l i c i t T y p e s
125C-----------------------------------------------
126#include "implicit_f.inc"
127C-----------------------------------------------
128C D u m m y A r g u m e n t s
129C-----------------------------------------------
130 TYPE(th_),INTENT(INOUT) :: TH
131 INTEGER, INTENT(IN) :: SITHGRP, SITHBUF
132 INTEGER, INTENT(IN) :: SITHGRPA, SITHBUFA
133 INTEGER, INTENT(IN) :: SITHGRPB, SITHBUFB
134 INTEGER, INTENT(IN) :: SITHGRPC, SITHBUFC
135 INTEGER, INTENT(IN) :: SITHGRPD, SITHBUFD
136 INTEGER, INTENT(IN) :: SITHGRPE, SITHBUFE
137 INTEGER, INTENT(IN) :: SITHGRPF, SITHBUFF
138 INTEGER, INTENT(IN) :: SITHGRPG, SITHBUFG
139 INTEGER, INTENT(IN) :: SITHGRPH, SITHBUFH
140 INTEGER, INTENT(IN) :: SITHGRPI, SITHBUFI
141C-----------------------------------------------
142 ALLOCATE(th%ITHGRP (th%SITHGRP))
143 ALLOCATE(th%ITHBUF (th%SITHBUF))
144
145 ALLOCATE(th%ITHGRPA(th%SITHGRPA))
146 ALLOCATE(th%ITHBUFA(th%SITHBUFA))
147
148 ALLOCATE(th%ITHGRPB(th%SITHGRPB))
149 ALLOCATE(th%ITHBUFB(th%SITHBUFB))
150
151 ALLOCATE(th%ITHGRPC(th%SITHGRPC))
152 ALLOCATE(th%ITHBUFC(th%SITHBUFC))
153
154 ALLOCATE(th%ITHGRPD(th%SITHGRPD))
155 ALLOCATE(th%ITHBUFD(th%SITHBUFD))
156
157 ALLOCATE(th%ITHGRPE(th%SITHGRPE))
158 ALLOCATE(th%ITHBUFE(th%SITHBUFE))
159
160 ALLOCATE(th%ITHGRPF(th%SITHGRPF))
161 ALLOCATE(th%ITHBUFF(th%SITHBUFF))
162
163 ALLOCATE(th%ITHGRPG(th%SITHGRPG))
164 ALLOCATE(th%ITHBUFG(th%SITHBUFG))
165
166 ALLOCATE(th%ITHGRPH(th%SITHGRPH))
167 ALLOCATE(th%ITHBUFH(th%SITHBUFH))
168
169 ALLOCATE(th%ITHGRPI(th%SITHGRPI))
170 ALLOCATE(th%ITHBUFI(th%SITHBUFI))
171
172 END SUBROUTINE th_alloc
173
174
175!||====================================================================
176!|| th_clean ../common_source/modules/output/time_history_mod.F
177!||--- called by ------------------------------------------------------
178!|| radioss2 ../engine/source/engine/radioss2.F
179!|| starter0 ../starter/source/starter/starter0.F
180!||====================================================================
181 SUBROUTINE th_clean(TH )
182C-----------------------------------------------
183C I m p l i c i t T y p e s
184C-----------------------------------------------
185#include "implicit_f.inc"
186C-----------------------------------------------
187C D u m m y A r g u m e n t s
188C-----------------------------------------------
189 TYPE(th_),INTENT(INOUT) :: TH
190C-----------------------------------------------
191 th%SITHGRP = 0
192 th%SITHBUF = 0
193
194 th%SITHGRPA = 0
195 th%SITHBUFA = 0
196
197 th%SITHGRPB = 0
198 th%SITHBUFB = 0
199
200 th%SITHGRPC = 0
201 th%SITHBUFC = 0
202
203 th%SITHGRPD = 0
204 th%SITHBUFD = 0
205
206 th%SITHGRPE = 0
207 th%SITHBUFE = 0
208
209 th%SITHGRPF = 0
210 th%SITHBUFF = 0
211
212 th%SITHGRPG = 0
213 th%SITHBUFG = 0
214
215 th%SITHGRPH = 0
216 th%SITHBUFH = 0
217
218 th%SITHGRPI = 0
219 th%SITHBUFI = 0
220
221
222 DEALLOCATE(th%ITHGRP)
223 DEALLOCATE(th%ITHBUF)
224
225 DEALLOCATE(th%ITHGRPA)
226 DEALLOCATE(th%ITHBUFA)
227
228 DEALLOCATE(th%ITHGRPB)
229 DEALLOCATE(th%ITHBUFB)
230
231 DEALLOCATE(th%ITHGRPC)
232 DEALLOCATE(th%ITHBUFC)
233
234 DEALLOCATE(th%ITHGRPD)
235 DEALLOCATE(th%ITHBUFD)
236
237 DEALLOCATE(th%ITHGRPE)
238 DEALLOCATE(th%ITHBUFE)
239
240 DEALLOCATE(th%ITHGRPF)
241 DEALLOCATE(th%ITHBUFF)
242
243 DEALLOCATE(th%ITHGRPG)
244 DEALLOCATE(th%ITHBUFG)
245
246 DEALLOCATE(th%ITHGRPH)
247 DEALLOCATE(th%ITHBUFH)
248
249 DEALLOCATE(th%ITHGRPI)
250 DEALLOCATE(th%ITHBUFI)
251
252 END SUBROUTINE th_clean
253
254 END MODULE time_history_mod
OPTION /TH/SURF outputs of Pressure and Area needed Tabs.
Definition th_surf_mod.F:60
subroutine th_clean(th)
subroutine th_alloc(th, sithgrp, sithbuf, sithgrpa, sithbufa, sithgrpb, sithbufb, sithgrpc, sithbufc, sithgrpd, sithbufd, sithgrpe, sithbufe, sithgrpf, sithbuff, sithgrpg, sithbufg, sithgrph, sithbufh, sithgrpi, sithbufi)