OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
fxbsini.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!|| fxbsini ../starter/source/constraints/fxbody/fxbsini.F
25!||--- called by ------------------------------------------------------
26!|| initia ../starter/source/elements/initia/initia.F
27!||--- calls -----------------------------------------------------
28!|| fsigcini ../starter/source/constraints/fxbody/fsigcini.F
29!|| fsigpini ../starter/source/constraints/fxbody/fsigpini.F
30!|| fsigsini ../starter/source/constraints/fxbody/fsigsini.F
31!|| fsigtini ../starter/source/constraints/fxbody/fsigtini.F
32!|| fsigtrini ../starter/source/constraints/fxbody/fsigtrini.F
33!||====================================================================
34 SUBROUTINE fxbsini(FXBELM, FXBSIG, NELS , NELC , NELTG,
35 . X , IPARG , PM , FXBMOD, NML ,
36 . NSN , IXS , IXC , IXTG , GEO ,
37 . FXBRPM, NFX , IFILE, LVSIG , NSNI ,
38 . NME , IRCS , IRCM0, NELT , NELP ,
39 . IXT , IXP ,IBEAM_VECTOR,RBEAM_VECTOR)
40C-----------------------------------------------
41C I m p l i c i t T y p e s
42C-----------------------------------------------
43#include "implicit_f.inc"
44C-----------------------------------------------
45C C o m m o n B l o c k s
46C-----------------------------------------------
47#include "param_c.inc"
48#include "units_c.inc"
49C-----------------------------------------------
50C D u m m y A r g u m e n t s
51C-----------------------------------------------
52 INTEGER FXBELM(*), NELS, NELC, NELTG, IPARG(NPARG,*), NML,
53 . NSN, IXS(NIXS,*), IXC(NIXC,*), IXTG(NIXTG,*), NFX, IFILE,
54 . LVSIG, NSNI, NME, IRCS, IRCM0, NELT, NELP, IXT(NIXT,*),
55 . IXP(NIXP,*)
56 INTEGER, INTENT (IN ) :: IBEAM_VECTOR(NELP)
58 . fxbsig(*), x(3,*), pm(npropm,*), fxbmod(*),
59 . geo(npropg,*), fxbrpm(*)
60 my_real, INTENT (IN ) :: rbeam_vector(3,nelp)
61C-----------------------------------------------
62C L o c a l V a r i a b l e s
63C-----------------------------------------------
64 INTEGER I,II,IM,IADMOD,IADEL,IADSIG, IADM, IADS, IRCM, IAD, J
66 . rini(3,3), vmod(nsn*6), vsig(lvsig), vv(6)
67C=======================================================================
68 ircm=ircm0
69 ircm=ircm+nme*(nsn-nsni)
70C
71 DO i=1,3
72 DO ii=1,3
73 rini(i,ii)=fxbrpm(1+(i-1)*3+ii)
74 ENDDO
75 ENDDO
76C
77 iadsig=1
78 DO im=1,nml
79 IF (ifile==0) THEN
80 iadmod=nsn*6*(im-1)+1
81 DO i=1,nsn*6
82 vmod(i)=fxbmod(iadmod+i-1)
83 ENDDO
84 ELSEIF (ifile==1) THEN
85 iadmod=nsni*6*(im-1)+1
86 DO i=1,nsni*6
87 vmod(i)=fxbmod(iadmod+i-1)
88 ENDDO
89 iadm=nsni*6
90 DO i=1,nsn-nsni
91 ircm=ircm+1
92 READ(ifxm,rec=ircm) (vv(ii),ii=1,6)
93 DO ii=1,6
94 vmod(iadm+ii)=vv(ii)
95 ENDDO
96 iadm=iadm+6
97 ENDDO
98 ENDIF
99C 1. Solid elements
100 iadel=1
101 iads=1
102 IF (nels>0) CALL fsigsini(
103 . fxbelm(iadel), iparg, x, pm, ixs,
104 . geo, vmod, vsig(iads), rini, nels)
105C 2. 4-nodes shell elements
106 iadel=iadel+nels*13
107 iads=iads+nels*7
108 IF (nelc>0) CALL fsigcini(
109 . fxbelm(iadel), iparg, x, pm, ixc,
110 . geo, vmod, vsig(iads), rini, nelc)
111C 3. Truss elements
112 iadel=iadel+nelc*10
113 iads=iads+nelc*10
114 IF (nelt>0) CALL fsigtrini(
115 . fxbelm(iadel), iparg, x, pm, ixt,
116 . geo, vmod, vsig(iads),nelt)
117C 4. Beam elements
118 iadel=iadel+nelt*7
119 iads=iads+nelt*2
120 IF (nelp>0) CALL fsigpini(
121 . fxbelm(iadel), iparg, x, pm, ixp,
122 . geo, vmod, vsig(iads), rini, nelp,
123 . ibeam_vector ,rbeam_vector)
124C 5. 3-nodes shell elements
125 iadel=iadel+nelp*9
126 iads=iads+nelp*8
127 IF (neltg>0) CALL fsigtini(
128 . fxbelm(iadel), iparg, x, pm, ixtg,
129 . geo, vmod, vsig(iads), rini, neltg)
130 IF (ifile==0) THEN
131 DO i=1,lvsig
132 fxbsig(iadsig+i-1)=vsig(i)
133 ENDDO
134 ELSE
135 iad=0
136 DO i=1,lvsig/6
137 ircs=ircs+1
138 WRITE(ifxs,rec=ircs) (vsig(iad+j),j=1,6)
139 iad=iad+6
140 ENDDO
141 ii=lvsig-(lvsig/6)*6
142 IF (ii/=0) THEN
143 ircs=ircs+1
144 WRITE(ifxs,rec=ircs) (vsig(iad+j),j=1,ii),(zero,j=ii+1,6)
145 ENDIF
146 ENDIF
147 iadsig=iadsig+nels*7+nelc*10+nelt*2+nelp*8+neltg*10
148 ENDDO
149C-----------
150 RETURN
151 END SUBROUTINE fxbsini
152
153
154
#define my_real
Definition cppsort.cpp:32
subroutine fsigcini(fxbelm, iparg, x, pm, ixc, geo, fxbmod, fxbsig, r, nelc)
Definition fsigcini.F:37
subroutine fsigpini(fxbelm, iparg, x, pm, ixp, geo, fxbmod, fxbsig, r, nelp, ibeam_vector, rbeam_vector)
Definition fsigpini.F:36
subroutine fsigsini(fxbelm, iparg, x, pm, ixs, geo, fxbmod, fxbsig, r, nels)
Definition fsigsini.F:36
subroutine fsigtini(fxbelm, iparg, x, pm, ixtg, geo, fxbmod, fxbsig, r, neltg)
Definition fsigtini.F:37
subroutine fsigtrini(fxbelm, iparg, x, pm, ixt, geo, fxbmod, fxbsig, nelt)
Definition fsigtrini.F:30
subroutine fxbsini(fxbelm, fxbsig, nels, nelc, neltg, x, iparg, pm, fxbmod, nml, nsn, ixs, ixc, ixtg, geo, fxbrpm, nfx, ifile, lvsig, nsni, nme, ircs, ircm0, nelt, nelp, ixt, ixp, ibeam_vector, rbeam_vector)
Definition fxbsini.F:40