OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
frelnk.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!|| frelnk ../engine/source/input/frelnk.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!|| errmsg ../engine/source/input/errmsg.F
31!|| ixyz ../engine/source/input/ixyz.F
32!|| read10 ../engine/source/input/read10.F
33!||--- uses -----------------------------------------------------
34!|| message_mod ../engine/share/message_module/message_mod.F
35!|| names_and_titles_mod ../common_source/modules/names_and_titles_mod.F
36!||====================================================================
37 SUBROUTINE frelnk(IKAD,KEY0,KVEL,NRLINK,VEL_SK_FR)
38C-----------------------------------------------
39C M o d u l e s
40C-----------------------------------------------
41 USE message_mod
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 IKAD(0:*),KVEL,NRLINK,VEL_SK_FR(*)
51 CHARACTER KEY0(*)*5
52C-----------------------------------------------
53C C o m m o n B l o c k s
54C-----------------------------------------------
55#include "units_c.inc"
56#include "task_c.inc"
57#include "scr05_c.inc"
58#include "scr07_c.inc"
59C-----------------------------------------------
60C E x t e r n a l F u n c t i o n s
61C-----------------------------------------------
62 INTEGER IXYZ, NVAR
63C-----------------------------------------------
64C L o c a l V a r i a b l e s
65C-----------------------------------------------
66 INTEGER I, N, NBC, K, KK, NS, K4,IKEY,NVEL
67 CHARACTER KEY2*5, KEY3*5
68 CHARACTER(LEN=NCHARLINE100)::CARTE
69C-----------------------------------------------
70C S o u r c e L i n e s
71C-----------------------------------------------
72 k=0
73 nvel=0
74 lllink=0
75 ikey=kvel
76 DO n=1,nrlink
77 nvel = nvel + 1
78 605 CONTINUE
79 READ(iusc1,rec=ikad(ikey)+k,fmt='(7x,a,1x,a,1x,i5,25x,i10)', ERR=9990)KEY2,KEY3,K4,NBC
80 IF ( VEL_SK_FR(NVEL)>99999) K4 = VEL_SK_FR(NVEL)
81 K=K+1
82 IF(KEY2=='ale ')THEN
83 K=K+NBC
84 GOTO 605
85 ENDIF
86 NS=0
87 KK=K
88 DO I=1,NBC
89 READ(IUSC1,REC=IKAD(IKEY)+K,FMT='(a)',ERR=9990)CARTE
90 K=K+1
91 NS=NS+NVAR(CARTE)
92 ENDDO
93 LLLINK=LLLINK+NS
94 IF(KEY2=='tra ')THEN
95 WRITE(IIN,'(i8,1x,i3.3,4x,i10)')NS,IXYZ(KEY3),K4
96 ELSEIF(KEY2=='rot ')THEN
97 WRITE(IIN,'(i8,5x,i3.3,i10)') NS,IXYZ(KEY3),K4
98 ELSE
99 CALL ERRMSG(KEY2)
100 ENDIF
101 CALL READ10(IKAD(IKEY)+KK,NBC,KEY0(IKEY))
102 ENDDO
103C-----------------------------------------------
104 RETURN
105C-----------------------------------------------
106 9990 CONTINUE
107 CALL ANCMSG(MSGID=73,ANMODE=ANINFO,C1=KEY0(IKEY))
108 CALL ARRET(0)
109 END
subroutine frelnk(ikad, key0, kvel, nrlink, vel_sk_fr)
Definition frelnk.F:38
integer, parameter ncharline100