OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
disp_vel_saved_cload.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!|| disp_vel_saved_cload ../engine/source/assembly/disp_vel_saved_cload.F
25!||--- called by ------------------------------------------------------
26!|| resol ../engine/source/engine/resol.F
27!||====================================================================
28 SUBROUTINE disp_vel_saved_cload(V ,D ,VR ,DR ,IB ,
29 2 DPL0CLD,VEL0CLD,NIBCLD,NCONLD,IRODDL ,
30 3 NUMNOD )
31C-----------------------------------------------
32C M o d u l e s
33C-----------------------------------------------
34 !USE CONSTANT_MOD
35 ! ,ONLY : THIRD,FOURTH
36! USE PINCHTYPE_MOD
37C I m p l i c i t T y p e s
38C-----------------------------------------------
39#include "implicit_f.inc"
40C-----------------------------------------------
41C D u m m y A r g u m e n t s
42C-----------------------------------------------
43 INTEGER, INTENT(IN) :: NIBCLD,NCONLD,IRODDL,NUMNOD
44 INTEGER, INTENT(IN) :: IB(NIBCLD,NCONLD)
45C REAL
46 my_real, INTENT(IN) ::
47 . d(3,numnod) ,v(3,numnod) ,dr(3,numnod) ,vr(3,numnod)
48 my_real, INTENT(INOUT) ::
49 . dpl0cld(6,nconld),vel0cld(6,nconld)
50C-----------------------------------------------
51C L o c a l V a r i a b l e s
52C-----------------------------------------------
53 INTEGER NL,N1,N2,N3,N4,ISK,IDIR,IFUN
54C-----------------------------------------------
55C IBCL(1:NIBCLD,1:NUMCLD) IPRES = IBCL(1:NIBCLD,NUMCCLD+1,NUMCLD+NUMPRES)
56C 1: Node Number 1st node number of the segment
57C 2: NS = 10*Noskew+Idir 2nd node number of the segment
58!! Save displacement and velocity in the previous cycle
59 !DO NL=1,NCLOAD
60 DO nl=1,nconld
61 n1 = ib(1,nl)
62 n2 = ib(2,nl)
63 n3 = ib(3,nl)
64 n4 = ib(4,nl)
65 ifun = ib(9,nl)
66 isk = ib(2,nl)/10
67 idir = ib(2,nl)-10*isk
68 IF (n4 == -1) THEN
69 IF (ifun > 1) THEN
70 IF (idir<=3) THEN
71 dpl0cld(idir,nl) = d(idir,n1)
72 vel0cld(idir,nl) = v(idir,n1)
73 ELSEIF (idir<=6 .AND. iroddl/=0) THEN
74 dpl0cld(idir,nl) = dr(idir-3,n1)
75 vel0cld(idir,nl) = vr(idir-3,n1)
76 ENDIF
77 ENDIF
78 ENDIF
79 ENDDO
80C
81 RETURN
82 END
#define my_real
Definition cppsort.cpp:32
subroutine disp_vel_saved_cload(v, d, vr, dr, ib, dpl0cld, vel0cld, nibcld, nconld, iroddl, numnod)