OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
freoutp.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!|| freoutp ../engine/source/input/freoutp.F
25!||--- called by ------------------------------------------------------
26!|| freform ../engine/source/input/freform.F
27!||--- calls -----------------------------------------------------
28!|| ancmsg ../engine/source/output/message/message.F
29!|| arret ../engine/source/system/arret.f
30!|| get_keys_id ../engine/source/input/freoutp.F
31!|| wriusc2 ../engine/source/input/wriusc2.F
32!||--- uses -----------------------------------------------------
33!|| message_mod ../engine/share/message_module/message_mod.F
34!|| names_and_titles_mod ../common_source/modules/names_and_titles_mod.F
35!|| sensor_mod ../common_source/modules/sensor_mod.F90
36!||====================================================================
37 SUBROUTINE freoutp(IKAD,KEY0,KOUTP,SENSORS)
38C-----------------------------------------------
39C M o d u l e s
40C-----------------------------------------------
41 USE message_mod
42 USE sensor_mod
44C-----------------------------------------------
45C I m p l i c i t T y p e s
46C-----------------------------------------------
47#include "implicit_f.inc"
48C-----------------------------------------------
49C D u m m y A r g u m e n t s
50C-----------------------------------------------
51 INTEGER IKAD(0:*),
52 . KOUTP
53 CHARACTER KEY0(*)*5
54C-----------------------------------------------
55C C o m m o n B l o c k s
56C-----------------------------------------------
57#include "units_c.inc"
58#include "scr14_c.inc"
59#include "scr16_c.inc"
60C-----------------------------------------------
61C E x t e r n a l F u n c t i o n s
62C-----------------------------------------------
63 INTEGER NVAR
64 TYPE (SENSORS_), INTENT(INOUT) :: SENSORS
65C-----------------------------------------------
66C L o c a l V a r i a b l e s
67C-----------------------------------------------
68 INTEGER I, NBC, K, IKEY, N1, N
69 CHARACTER KEY2*5, KEY3*5, KEY4*5
70 CHARACTER(LEN=NCHARLINE100)::CART
71 CHARACTER(LEN=NCHARLINE100)::LINE
72C
73 ikey=koutp
74 toutp0 = zero
75 dtoutp0 = zero
76 DO i = 1,mx_outp
77 outp_v(i) = 0
78 outp_ss(i) = 0
79 outp_st(i) = 0
80 outp_cs(i) = 0
81 outp_ct(i) = 0
82 outp_ts(i) = 0
83 outp_ps(i) = 0
84 outp_pt(i) = 0
85 outp_rs(i) = 0
86 outp_rt(i) = 0
87 outp_sps(i)=0
88 outp_spt(i)=0
89 ENDDO
90c
91 IF(ikad(ikey)/=ikad(ikey+1))THEN
92 k=0
93 1175 READ(iusc1,rec=ikad(ikey)+k,fmt='(A)') cart
94 READ(iusc1,rec=ikad(ikey)+k,fmt='(A)') line
95
96 CALL get_keys_id(cart,key2,key3,key4,nbc)
97 k=k+1
98 IF(key2=='DT ')THEN
99 CALL wriusc2(ikad(ikey)+k,1,key0(ikey))
100 READ(iusc2,*)toutp0,dtoutp0
101 ELSEIF(key2(1:4)=='VECT')THEN
102 IF (key3(1:3)=='VEL')THEN
103 outp_v(1) = 1
104 ELSEIF(key3(1:3)=='DIS')THEN
105 outp_v(2) = 1
106 ELSEIF(key3(1:3)=='ACC')THEN
107 outp_v(3) = 1
108 ELSEIF(key3(1:4)=='CONT')THEN
109 outp_v(4) = 1
110 ELSEIF(key3(1:4)=='FINT')THEN
111 outp_v(5) = 1
112 ELSEIF(key3(1:4)=='FEXT')THEN
113 outp_v(6) = 1
114 ELSEIF(key3(1:4)=='FOPT')THEN
115 outp_v(7) = 1
116 outp_v(8) = 1
117 ELSEIF(key3(1:4)=='VROT')THEN
118 outp_v(9) = 1
119 ELSEIF(key3(1:5)=='PCONT')THEN
120 outp_v(12) = 1
121 ELSE
122 GOTO 9990
123 ENDIF
124 ELSEIF(key2(1:4)=='NODA')THEN
125 IF (key3(1:2)=='DT')THEN
126 outp_n(1) = 1
127 ELSEIF(key3(1:4)=='DMAS')THEN
128 outp_n(2) = 1
129 ELSEIF(key3(1:5)=='DINER')THEN
130 outp_n(3) = 1
131 ELSE
132 GOTO 9990
133 ENDIF
134 ELSEIF(key2(1:4)=='BRIC'.OR.key2(1:4)=='soli.OR.'
135 . KEY2(1:4)=='quad')THEN
136 IF (KEY3(1:3)=='off')THEN
137 OUTP_SS(1) = 1
138 ELSEIF(KEY3(1:4)=='epsp')THEN
139 OUTP_SS(2) = 1
140 ELSEIF(KEY3(1:4)=='ener')THEN
141 OUTP_SS(3) = 1
142 ELSEIF(KEY3(1:4)=='dens')THEN
143 OUTP_SS(4) = 1
144 ELSEIF(KEY3(1:4)=='temp')THEN
145 OUTP_SS(5) = 1
146 ELSEIF(KEY3(1:1)=='p')THEN
147 outp_ss(6) = 1
148 ELSEIF(key3(1:4)=='VONM')THEN
149 outp_ss(7) = 1
150 ELSEIF(key3(1:5)=='STRES')THEN
151C IF(KEY4(1:1)=='')THEN
152C OUTP_ST(1) = 1
153 IF(key4(1:4)=='FULL')THEN
154 outp_st(2) = 1
155 ELSE
156 outp_st(1) = 1
157 ENDIF
158 ELSEIF(key3(1:5)=='USER1')THEN
159 outp_ss(20) = 1
160 ELSEIF(key3(1:5)=='USER2')THEN
161 outp_ss(21) = 1
162 ELSEIF(key3(1:5)=='USER3')THEN
163 outp_ss(22) = 1
164 ELSEIF(key3(1:5)=='USER4')THEN
165 outp_ss(23) = 1
166 ELSEIF(key3(1:5)=='USER5')THEN
167 outp_ss(24) = 1
168 ELSEIF(key3(1:4)=='HOUR')THEN
169 outp_ss(25) = 1
170 ELSEIF(key3(1:5)=='USERS')THEN
171 IF(key4(1:4)=='FULL')THEN
172 outp_ss(26) = 1
173 ELSE
174 ENDIF
175 ELSEIF(key3(1:5)=='STRAI')THEN
176 IF(key4(1:4)=='FULL')THEN
177 outp_st(3) = 1
178 ELSE
179 outp_st(3) = 1
180 ENDIF
181C-----------------------------------------------
182C element equivalent stress criteria
183C-----------------------------------------------
184 ELSEIF(key3(1:5)=='SIGEQ')THEN
185 outp_ss(27) = 1
186 ELSE
187 GOTO 9990
188 ENDIF
189 ELSEIF(key2(1:4)=='SHEL')THEN
190 IF (key3(1:3)=='OFF')THEN
191 outp_cs(1) = 1
192 ELSEIF(key3(1:4)=='EPSP')THEN
193 outp_cs(2) = 1
194 ELSEIF(key3(1:5)=='USER1')THEN
195 outp_cs(20) = 1
196 ELSEIF(key3(1:5)=='USER2')THEN
197 outp_cs(21) = 1
198 ELSEIF(key3(1:5)=='USER3')THEN
199 outp_cs(22) = 1
200 ELSEIF(key3(1:5)=='USER4')THEN
201 outp_cs(23) = 1
202 ELSEIF(key3(1:5)=='USER5')THEN
203 outp_cs(24) = 1
204 ELSEIF(key3(1:5)=='USR01' .OR.key3(1:4)=='USR1')THEN
205 IF (key4(1:4)=='FULL') outp_cs(27) = 1
206 ELSEIF(key3(1:5)=='USR02')THEN
207 IF (key4(1:4)=='FULL') outp_cs(28) = 1
208 ELSEIF(key3(1:5)=='USR03')THEN
209 IF (key4(1:4)=='FULL') outp_cs(29) = 1
210 ELSEIF(key3(1:5)=='USR04')THEN
211 IF (key4(1:4)=='FULL') outp_cs(30) = 1
212 ELSEIF(key3(1:5)=='USR05')THEN
213 IF (key4(1:4)=='FULL') outp_cs(31) = 1
214 ELSEIF(key3(1:5)=='USR06')THEN
215 IF (key4(1:4)=='FULL') outp_cs(32) = 1
216 ELSEIF(key3(1:5)=='USR07')THEN
217 IF (key4(1:4)=='FULL') outp_cs(33) = 1
218 ELSEIF(key3(1:5)=='USR08')THEN
219 IF (key4(1:4)=='FULL') outp_cs(34) = 1
220 ELSEIF(key3(1:5)=='USR09')THEN
221 IF (key4(1:4)=='FULL') outp_cs(35) = 1
222 ELSEIF(key3(1:5)=='USR10')THEN
223 IF (key4(1:4)=='FULL') outp_cs(36) = 1
224 ELSEIF(key3(1:5)=='USR11')THEN
225 IF (key4(1:4)=='FULL') outp_cs(37) = 1
226 ELSEIF(key3(1:5)=='USR12')THEN
227 IF (key4(1:4)=='FULL') outp_cs(38) = 1
228 ELSEIF(key3(1:5)=='USR13')THEN
229 IF (key4(1:4)=='FULL') outp_cs(39) = 1
230 ELSEIF(key3(1:5)=='USR14')THEN
231 IF (key4(1:4)=='FULL') outp_cs(40) = 1
232 ELSEIF(key3(1:5)=='USR15')THEN
233 IF (key4(1:4)=='FULL') outp_cs(41) = 1
234 ELSEIF(key3(1:5)=='USR16')THEN
235 IF (key4(1:4)=='FULL') outp_cs(42) = 1
236 ELSEIF(key3(1:5)=='USR17')THEN
237 IF (key4(1:4)=='FULL') outp_cs(43) = 1
238 ELSEIF(key3(1:5)=='USR18')THEN
239 IF (key4(1:4)=='FULL') outp_cs(44) = 1
240 ELSEIF(key3(1:5)=='USR19')THEN
241 IF (key4(1:4)=='FULL') outp_cs(45) = 1
242 ELSEIF(key3(1:5)=='usr20')THEN
243 IF (KEY4(1:4)=='full') OUTP_CS(46) = 1
244 ELSEIF(KEY3(1:5)=='usr21')THEN
245 IF (KEY4(1:4)=='full') OUTP_CS(47) = 1
246 ELSEIF(KEY3(1:5)=='usr22')THEN
247 IF (KEY4(1:4)=='full') OUTP_CS(48) = 1
248 ELSEIF(KEY3(1:5)=='usr23')THEN
249 IF (KEY4(1:4)=='full') OUTP_CS(49) = 1
250 ELSEIF(KEY3(1:5)=='usr24')THEN
251 IF (KEY4(1:4)=='full') OUTP_CS(50) = 1
252 ELSEIF(KEY3(1:5)=='usr25')THEN
253 IF (KEY4(1:4)=='full') OUTP_CS(51) = 1
254 ELSEIF(KEY3(1:5)=='usr26')THEN
255 IF (KEY4(1:4)=='full') OUTP_CS(52) = 1
256 ELSEIF(KEY3(1:5)=='usr27')THEN
257 IF (KEY4(1:4)=='full') OUTP_CS(53) = 1
258 ELSEIF(KEY3(1:5)=='usr28')THEN
259 IF (KEY4(1:4)=='full') OUTP_CS(54) = 1
260 ELSEIF(KEY3(1:5)=='usr29')THEN
261 IF (KEY4(1:4)=='full') OUTP_CS(55) = 1
262 ELSEIF(KEY3(1:5)=='usr30')THEN
263 IF (KEY4(1:4)=='full') OUTP_CS(56) = 1
264 ELSEIF(KEY3(1:5)=='usr31')THEN
265 IF (KEY4(1:4)=='full') OUTP_CS(57) = 1
266 ELSEIF(KEY3(1:5)=='usr32')THEN
267 IF (KEY4(1:4)=='full') OUTP_CS(58) = 1
268 ELSEIF(KEY3(1:5)=='usr33')THEN
269 IF (KEY4(1:4)=='full') OUTP_CS(59) = 1
270 ELSEIF(KEY3(1:5)=='usr34')THEN
271 IF (KEY4(1:4)=='full') OUTP_CS(60) = 1
272 ELSEIF(KEY3(1:5)=='usr35')THEN
273 IF (KEY4(1:4)=='full') OUTP_CS(61) = 1
274 ELSEIF(KEY3(1:5)=='usr36')THEN
275 IF (KEY4(1:4)=='full') OUTP_CS(62) = 1
276 ELSEIF(KEY3(1:5)=='usr37')THEN
277 IF (KEY4(1:4)=='full') outp_cs(63) = 1
278 ELSEIF(key3(1:5)=='USR38')THEN
279 IF (key4(1:4)=='FULL') outp_cs(64) = 1
280 ELSEIF(key3(1:5)=='USR39')THEN
281 IF (key4(1:4)=='FULL') outp_cs(65) = 1
282 ELSEIF(key3(1:5)=='USR40')THEN
283 IF (key4(1:4)=='FULL') outp_cs(66) = 1
284 ELSEIF(key3(1:5)=='USR41')THEN
285 IF (key4(1:4)=='FULL') outp_cs(67) = 1
286 ELSEIF(key3(1:5)=='USR42')THEN
287 IF (key4(1:4)=='FULL') outp_cs(68) = 1
288 ELSEIF(key3(1:5)=='USR43')THEN
289 IF (key4(1:4)=='FULL') outp_cs(69) = 1
290 ELSEIF(key3(1:5)=='USR44')THEN
291 IF (key4(1:4)=='FULL') outp_cs(70) = 1
292 ELSEIF(key3(1:5)=='USR45')THEN
293 IF (key4(1:4)=='FULL') outp_cs(71) = 1
294 ELSEIF(key3(1:5)=='USR46')THEN
295 IF (key4(1:4)=='FULL') outp_cs(72) = 1
296 ELSEIF(key3(1:5)=='USR47')THEN
297 IF (key4(1:4)=='FULL') outp_cs(73) = 1
298 ELSEIF(key3(1:5)=='USR48')THEN
299 IF (key4(1:4)=='FULL') outp_cs(74) = 1
300 ELSEIF(key3(1:5)=='USR49')THEN
301 IF (key4(1:4)=='FULL') outp_cs(75) = 1
302 ELSEIF(key3(1:5)=='USR50')THEN
303 IF (key4(1:4)=='FULL') outp_cs(76) = 1
304 ELSEIF(key3(1:5)=='USR51')THEN
305 IF (key4(1:4)=='FULL') outp_cs(77) = 1
306 ELSEIF(key3(1:5)=='USR52')THEN
307 IF (key4(1:4)=='FULL') outp_cs(78) = 1
308 ELSEIF(key3(1:5)=='USR53')THEN
309 IF (key4(1:4)=='FULL') outp_cs(79) = 1
310 ELSEIF(key3(1:5)=='USR54')THEN
311 IF (key4(1:4)=='FULL') outp_cs(80) = 1
312 ELSEIF(key3(1:5)=='USR55')THEN
313 IF (key4(1:4)=='FULL') outp_cs(81) = 1
314 ELSEIF(key3(1:5)=='USR56')THEN
315 IF (key4(1:4)=='FULL') outp_cs(82) = 1
316 ELSEIF(key3(1:5)=='USR57')THEN
317 IF (key4(1:4)=='full') OUTP_CS(83) = 1
318 ELSEIF(KEY3(1:5)=='usr58')THEN
319 IF (KEY4(1:4)=='full') OUTP_CS(84) = 1
320 ELSEIF(KEY3(1:5)=='usr59')THEN
321 IF (KEY4(1:4)=='full') OUTP_CS(85) = 1
322 ELSEIF(KEY3(1:5)=='usr60')THEN
323 IF (KEY4(1:4)=='full') OUTP_CS(86) = 1
324 ELSEIF(KEY3(1:4)=='hour')THEN
325 OUTP_CS(25) = 1
326 ELSEIF(KEY3(1:4)=='ener')THEN
327 OUTP_CS(3) = 1
328 ELSEIF(KEY3(1:4)=='thic')THEN
329 OUTP_CS(4) = 1
330 ELSEIF(KEY3(1:4)=='vonm')THEN
331 OUTP_CS(7) = 1
332 ELSEIF(KEY3(1:5)=='stres')THEN
333 IF (KEY4(1:4)=='memb')THEN
334 OUTP_CT(1) = 1
335 ELSEIF(KEY4(1:4)=='bend')THEN
336 OUTP_CT(2) = 1
337 ELSEIF(KEY4(1:5)=='upper')THEN
338 OUTP_CT(3) = 1
339 ELSEIF(KEY4(1:5)=='lower')THEN
340 OUTP_CT(4) = 1
341 ELSEIF(KEY4(1:4)=='full')THEN
342 OUTP_CT(95) = 1
343 ELSE
344 READ(KEY4,'(i5)')N1
345.AND. IF(N1>=0N1<=30)THEN
346 OUTP_CT(10+N1) = 1
347 ELSE
348 GOTO 9990
349 ENDIF
350 ENDIF
351 ELSEIF(KEY3(1:5)=='users')THEN
352 IF(KEY4(1:4)=='full')THEN
353 OUTP_CS(26) = 1
354 ELSE
355 GOTO 9990
356 ENDIF
357 ELSEIF(KEY3(1:5)=='strai')THEN
358 IF (KEY4(1:4)=='memb')THEN
359 OUTP_CT(5) = 1
360 ELSEIF(KEY4(1:4)=='bend')THEN
361 OUTP_CT(6) = 1
362 ELSEIF(KEY4(1:5)=='upper')THEN
363 OUTP_CT(7) = 1
364 ELSEIF(KEY4(1:5)=='lower')THEN
365 OUTP_CT(8) = 1
366 ELSEIF(KEY4(1:4)=='full')THEN
367 OUTP_CT(96) = 1
368 ELSE
369 READ(KEY4,'(i5)')N1
370.AND. IF(N1>0N1<=30)THEN
371 OUTP_CT(50+N1) = 1
372 ELSE
373 GOTO 9990
374 ENDIF
375 ENDIF
376 ELSEIF(KEY3(1:5)=='epsdo')THEN
377 IEPSDOT = 1
378 IF (KEY4(1:4)=='memb')THEN
379 OUTP_CT(91) = 1
380 ELSEIF(KEY4(1:4)=='bend')THEN
381 OUTP_CT(92) = 1
382 ELSEIF(KEY4(1:5)=='upper')THEN
383 OUTP_CT(93) = 1
384 ELSEIF(KEY4(1:5)=='lower')THEN
385 OUTP_CT(94) = 1
386 ELSE
387 READ(KEY4,'(i5)')N1
388.AND. IF(N1>0N1<=30)THEN
389 OUTP_CT(100+N1) = 1
390 ELSE
391 GOTO 9990
392 ENDIF
393 ENDIF
394C-----------------------------------------------
395C element equivalent stress criteria
396C-----------------------------------------------
397 ELSEIF(KEY3(1:5)=='sigeq')THEN
398 OUTP_CS(87) = 1
399 ELSE
400 GOTO 9990
401 ENDIF
402 ELSEIF(KEY2(1:4)=='trus')THEN
403 IF (KEY3(1:3)=='off')THEN
404 OUTP_TS(1) = 1
405 ELSEIF(KEY3(1:4)=='epsp')THEN
406 OUTP_TS(2) = 1
407 ELSE
408 GOTO 9990
409 ENDIF
410 ELSEIF(KEY2(1:4)=='beam')THEN
411 IF (KEY3(1:3)=='off')THEN
412 OUTP_PS(1) = 1
413 ELSEIF(KEY3(1:4)=='epsp')THEN
414 OUTP_PS(2) = 1
415 ELSE
416 GOTO 9990
417 ENDIF
418 ELSEIF(KEY2(1:4)=='spri')THEN
419 IF (KEY3(1:3)=='off')THEN
420 OUTP_RS(1) = 1
421 ELSEIF(KEY3(1:4)=='full')THEN
422 OUTP_RS(2) = 1
423 ELSE
424 GOTO 9990
425 ENDIF
426 ELSEIF(KEY2(1:3)=='sph')THEN
427 IF (KEY3(1:3)=='off')THEN
428 OUTP_SPS(1) = 1
429 ELSEIF(KEY3(1:4)=='epsp')THEN
430 OUTP_SPS(2) = 1
431 ELSEIF(KEY3(1:4)=='ener')THEN
432 OUTP_SPS(3) = 1
433 ELSEIF(KEY3(1:4)=='dens')THEN
434 OUTP_SPS(4) = 1
435 ELSEIF(KEY3(1:4)=='temp')THEN
436 OUTP_SPS(5) = 1
437 ELSEIF(KEY3(1:1)=='p')THEN
438 OUTP_SPS(6) = 1
439 ELSEIF(KEY3(1:4)=='vonm')THEN
440 OUTP_SPS(7) = 1
441 ELSEIF(KEY3(1:5)=='stres')THEN
442 IF(KEY4(1:4)=='full')THEN
443 OUTP_SPT(2) = 1
444 ELSE
445 OUTP_SPT(1) = 1
446 ENDIF
447 ELSEIF(KEY3(1:5)=='user1')THEN
448 OUTP_SPS(20) = 1
449 ELSEIF(KEY3(1:5)=='user2')THEN
450 OUTP_SPS(21) = 1
451 ELSEIF(KEY3(1:5)=='user3')THEN
452 OUTP_SPS(22) = 1
453 ELSEIF(KEY3(1:5)=='user4')THEN
454 OUTP_SPS(23) = 1
455 ELSEIF(KEY3(1:5)=='user5')THEN
456 OUTP_SPS(24) = 1
457 ELSEIF(KEY3(1:4)=='slen')THEN
458 OUTP_SPS(25) = 1
459C-----------------------------------------------
460C element equivalent stress criteria
461C-----------------------------------------------
462 ELSEIF(KEY3(1:5)=='sigeq')THEN
463 OUTP_SPS(26) = 1
464 ELSE
465 GOTO 9990
466 ENDIF
467 ELSEIF(KEY2(1:4)=='elem')THEN
468 IF (KEY3(1:3)=='off')THEN
469 OUTP_SS(1) = 1
470 OUTP_CS(1) = 1
471 OUTP_TS(1) = 1
472 OUTP_PS(1) = 1
473 OUTP_RS(1) = 1
474 OUTP_SPS(1) = 1
475 ELSEIF(KEY3(1:4)=='epsp')THEN
476 OUTP_SS(2) = 1
477 OUTP_CS(2) = 1
478 OUTP_TS(2) = 1
479 OUTP_PS(2) = 1
480 OUTP_SPS(2) = 1
481 ELSEIF(KEY3(1:4)=='ener')THEN
482 OUTP_SS(3) = 1
483 OUTP_CS(3) = 1
484 OUTP_SPS(3) = 1
485 ELSEIF(KEY3(1:4)=='vonm')THEN
486 OUTP_SS(7) = 1
487 OUTP_CS(7) = 1
488 OUTP_SPS(7) = 1
489 ELSEIF(KEY3(1:5)=='user1')THEN
490 OUTP_SS(20) = 1
491 OUTP_CS(20) = 1
492 OUTP_SPS(20) = 1
493 ELSEIF(KEY3(1:5)=='user2')THEN
494 OUTP_SS(21) = 1
495 OUTP_CS(21) = 1
496 OUTP_SPS(21) = 1
497 ELSEIF(KEY3(1:5)=='user3')THEN
498 OUTP_SS(22) = 1
499 OUTP_CS(22) = 1
500 OUTP_SPS(22) = 1
501 ELSEIF(KEY3(1:5)=='user4')THEN
502 OUTP_SS(23) = 1
503 OUTP_CS(23) = 1
504 OUTP_SPS(23) = 1
505 ELSEIF(KEY3(1:5)=='user5')THEN
506 OUTP_SS(24) = 1
507 OUTP_CS(24) = 1
508 OUTP_SPS(24) = 1
509 ELSEIF(KEY3(1:4)=='hour')THEN
510 OUTP_SS(25) = 1
511 OUTP_CS(25) = 1
512 ELSEIF(KEY3(1:4)=='slen')THEN
513 OUTP_SPS(25) = 1
514C-----------------------------------------------
515C element equivalent stress criteria
516C-----------------------------------------------
517 ELSEIF(KEY3(1:5)=='sigeq')THEN
518 OUTP_SS(27) = 1
519 OUTP_CS(87) = 1
520 OUTP_SPS(26) = 1
521 ELSE
522 GOTO 9990
523 ENDIF
524 ELSEIF (KEY2=='lsens')THEN
525 DO I=1,NBC
526 READ(IUSC1,REC=IKAD(IKEY)+K+I-1,FMT='(a)',ERR=9990)CART
527 CALL WRIUSC2(IKAD(IKEY)+K+I-1,1,KEY0(IKEY))
528 READ(IUSC2,*,ERR=9990,END=9990)
529 . (SENSORS%OUTP_TMP(N),N=1,NVAR(CART))
530 SENSORS%NOUTP = SENSORS%NOUTP + NVAR(CART)
531 ENDDO
532 ELSE
533 GOTO 9990
534 ENDIF
535 K=K+NBC
536 IF(IKAD(IKEY)+K/=IKAD(IKEY+1))GO TO 1175
537 ENDIF
538 NV_OUTP = 0
539 NSS_OUTP = 0
540 NST_OUTP = 0
541 NCS_OUTP = 0
542 NCT_OUTP = 0
543 NTS_OUTP = 0
544 NPS_OUTP = 0
545 NPT_OUTP = 0
546 NRS_OUTP = 0
547 NRT_OUTP = 0
548 NSPS_OUTP = 0
549 NSPT_OUTP = 0
550 DO I = 1,MX_OUTP
551 NV_OUTP = NV_OUTP + OUTP_V(I)
552 NSS_OUTP = NSS_OUTP + OUTP_SS(I)
553 NST_OUTP = NST_OUTP + OUTP_ST(I)
554 NCS_OUTP = NCS_OUTP + OUTP_CS(I)
555 NCT_OUTP = NCT_OUTP + OUTP_CT(I)
556 NTS_OUTP = NTS_OUTP + OUTP_TS(I)
557 NPS_OUTP = NPS_OUTP + OUTP_PS(I)
558 NPT_OUTP = NPT_OUTP + OUTP_PT(I)
559 NRS_OUTP = NRS_OUTP + OUTP_RS(I)
560 NRT_OUTP = NRT_OUTP + OUTP_RT(I)
561 NSPS_OUTP = NSPS_OUTP + OUTP_SPS(I)
562 NSPT_OUTP = NSPT_OUTP + OUTP_SPT(I)
563 ENDDO
564 IF(OUTP_V(12)==1)NV_OUTP=NV_OUTP+1
565C
566 RETURN
567C
568 9990 CONTINUE
569 CALL ANCMSG(MSGID=73,ANMODE=ANINFO,
570 . C1=KEY0(IKEY),C2=LINE(1:35))
571 CALL ARRET(0)
572 END
573
574C FREOUTP /freef/freoutp.F
575!||====================================================================
576!|| get_keys_id ../engine/source/input/freoutp.F
577!||--- called by ------------------------------------------------------
578!|| freoutp ../engine/source/input/freoutp.F
579!|| freupwm ../engine/source/input/freupwm.F
580!||====================================================================
581 SUBROUTINE GET_KEYS_ID(CART, KEY2, KEY3,KEY4, ID)
582C-----------------------------------------------
583C I m p l i c i t T y p e s
584C-----------------------------------------------
585#include "implicit_f.inc"
586C-----------------------------------------------
587C G l o b a l V a r i a b l e s
588C-----------------------------------------------
589 CHARACTER CART*(*), KEY2*(*),KEY3*(*),KEY4*(*)
590 CHARACTER MOT1*80
591 INTEGER I1,I2,I3,I4,ID
592C======================================================================|
593C /Key/Id/
594C-----------------------------------------------
595 I1=8
596 DO WHILE(CART(I1:I1)/='/')
597 I1=I1+1
598 ENDDO
599 KEY2=CART(8:I1-1)
600 I1=I1+1
601 I2=I1
602 DO WHILE(CART(I2:I2)/='/')
603 I2=I2+1
604 ENDDO
605 KEY3 = CART(I1:I2-1)
606 I2=I2+1
607 I3=I2
608 DO WHILE(CART(I3:I3)/='/')
609 I3=I3+1
610 ENDDO
611 KEY4 = CART(I2:I3-1)
612 I3=I3+1
613 I4=I3
614 MOT1 = CART(I4+25:I4+34)
615 READ(MOT1,'(i10)')ID
616C---
617 RETURN
618 END
subroutine freoutp(ikad, key0, koutp, sensors)
Definition freoutp.F:38
subroutine get_keys_id(cart, key2, key3, key4, id)
Definition freoutp.F:582
integer, parameter ncharline100
subroutine slen(x1, x2, x3, x4, y1, y2, y3, y4, z1, z2, z3, z4, j, area, aream)
Definition slen.F:31
subroutine arret(nn)
Definition arret.F:86
subroutine wriusc2(irec, nbc, key0)
Definition wriusc2.F:60