OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
frebcs.F File Reference
#include "implicit_f.inc"
#include "units_c.inc"

Go to the source code of this file.

Functions/Subroutines

subroutine frebcs (ikad, key0, kbcs, kbcsr, nbcs1, nbcs2, bcs_sk_fr)

Function/Subroutine Documentation

◆ frebcs()

subroutine frebcs ( integer, dimension(0:*) ikad,
character, dimension(*) key0,
integer kbcs,
integer kbcsr,
integer nbcs1,
integer nbcs2,
integer, dimension(*) bcs_sk_fr )

Definition at line 36 of file frebcs.F.

37C-----------------------------------------------
38C M o d u l e s
39C-----------------------------------------------
40 USE message_mod
41C-----------------------------------------------
42C I m p l i c i t T y p e s
43C-----------------------------------------------
44#include "implicit_f.inc"
45C-----------------------------------------------
46C D u m m y A r g u m e n t s
47C-----------------------------------------------
48 INTEGER IKAD(0:*),
49 . KBCS,KBCSR,NBCS1,NBCS2,BCS_SK_FR(*)
50 CHARACTER KEY0(*)*5
51C-----------------------------------------------
52C C o m m o n B l o c k s
53C-----------------------------------------------
54#include "units_c.inc"
55C-----------------------------------------------
56C E x t e r n a l F u n c t i o n s
57C-----------------------------------------------
58 INTEGER IXYZ
59C-----------------------------------------------
60C L o c a l V a r i a b l e s
61C-----------------------------------------------
62 INTEGER I, J, N, NBC, K, KK, NN, NS, K4,IV1(40),IKEY,NBCS
63 CHARACTER KEYA*80, KEY2*5, KEY3*5
64C
65 k=0
66 nbcs = 0
67 ikey = kbcs
68 DO nn=1,nbcs1
69 nbcs = nbcs + 1
70 READ(iusc1,rec=ikad(ikey)+k,fmt='(7X,A,1X,A,1X,I5,25X,I10)',
71 . err=9990)key2,key3,k4,nbc
72 IF ( bcs_sk_fr(nbcs)>99999) k4 = bcs_sk_fr(nbcs)
73 k=k+1
74 kk=k
75 ns=0
76 DO i=1,nbc
77 CALL wciusc2(ikad(ikey)+k,1,n,key0(ikey))
78 READ(iusc2,*,err=9990,END=9990)(IV1(J),J=1,N)
79 k=k+1
80 IF(key2=='TRA ')THEN
81 WRITE(iin,'(I10,1X,I3.3,4X,4X,4X,I10)')
82 . (iv1(j),ixyz(key3),k4,j=1,n)
83 ELSEIF(key2=='ROT ')THEN
84 WRITE(iin,'(I10,4X,1X,I3.3,4X,4X,I10)')
85 . (iv1(j),ixyz(key3),k4,j=1,n)
86 ELSEIF(key2=='ALE ')THEN
87 WRITE(iin,'(I10,4X,4X,1X,I3.3,4X,I10)')
88 . (iv1(j),ixyz(key3),k4,j=1,n)
89 ELSEIF(key2=='LAG ')THEN
90 WRITE(iin,'(I10,4X,4X,4X,1X,I3.3,I10)')
91 . (iv1(j),ixyz(key3),k4,j=1,n)
92 ELSE
93 CALL errmsg(key2)
94 ENDIF
95 ENDDO
96 ENDDO
97C
98 k=0
99 ikey=kbcsr
100 DO nn=1,nbcs2
101 READ(iusc1,rec=ikad(ikey)+k,fmt='(7X,A,1X,A,1X,I5,25X,I10)',
102 . err=9990)key2,key3,k4,nbc
103 k=k+1
104 kk=k
105 ns=0
106 DO i=1,nbc
107 CALL wciusc2(ikad(ikey)+k,1,n,key0(ikey))
108 READ(iusc2,*,err=9990,END=9990)(IV1(J),J=1,N)
109 k=k+1
110 IF(key2=='TRA ')THEN
111 WRITE(iin,'(I10,1X,I3.3,4X,4X,4X,I10)')
112 . (iv1(j),2*ixyz(key3),k4,j=1,n)
113 ELSEIF(key2=='ROT ')THEN
114 WRITE(iin,'(I10,4X,1X,I3.3,4X,4X,I10)')
115 . (iv1(j),2*ixyz(key3),k4,j=1,n)
116 ELSEIF(key2=='ALE ')THEN
117 WRITE(iin,'(I10,4X,4X,1X,I3.3,4X,I10)')
118 . (iv1(j),2*ixyz(key3),k4,j=1,n)
119 ELSEIF(key2=='LAG ')THEN
120 WRITE(iin,'(I10,4X,4X,4X,1X,I3.3,I10)')
121 . (iv1(j),2*ixyz(key3),k4,j=1,n)
122 ELSE
123 CALL errmsg(key2)
124 ENDIF
125 ENDDO
126 ENDDO
127C
128 RETURN
129C
130 9990 CONTINUE
131 CALL ancmsg(msgid=73,anmode=aninfo,
132 . c1=key0(ikey))
133 CALL arret(0)
subroutine errmsg(key)
Definition errmsg.F:40
integer function ixyz(chr)
Definition ixyz.F:34
subroutine ancmsg(msgid, msgtype, anmode, i1, i2, i3, i4, i5, i6, i7, i8, i9, i10, i11, i12, i13, i14, i15, i16, i17, i18, i19, i20, r1, r2, r3, r4, r5, r6, r7, r8, r9, c1, c2, c3, c4, c5, c6, c7, c8, c9, prmode)
Definition message.F:889
subroutine arret(nn)
Definition arret.F:87
subroutine wciusc2(irec, nbc, n, key0)
Definition wciusc2.F:38