OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
asspar_sub.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!|| asspar_sub ../engine/source/assembly/asspar_sub.F
25!||--- called by ------------------------------------------------------
26!|| resol ../engine/source/engine/resol.F
27!||====================================================================
28 SUBROUTINE asspar_sub(A ,FSKY ,ADDCNE ,NODFT_2 ,
29 . NODLT_2 ,POSI ,SIZESUB ,SIZEA )
30C-----------------------------------------------
31C I m p l i c i t T y p e s
32C-----------------------------------------------
33#include "implicit_f.inc"
34C-----------------------------------------------
35C D u m m y A r g u m e n t s
36C----------------------------------------------
37 INTEGER ADDCNE(*),NODFT_2,NODLT_2,POSI(*)
38 INTEGER SIZESUB,SIZEA
39 my_real
40 . a(sizea),fsky(addcne(sizesub+1),*)
41C-----------------------------------------------
42C L o c a l V a r i a b l e s
43C-----------------------------------------------
44 INTEGER K,N,NCT,NC,NPOS,NDDL,J
45C
46 ! Loop over the current nodes
47 DO n = nodft_2, nodlt_2
48 nct = addcne(n)-1 ! First element attached to the node in FSKY
49 nc = addcne(n+1)-addcne(n) ! Number of elements attached to the node
50 npos = posi(n) ! Position of its first d.o.f in A
51 nddl = posi(n+1) - npos ! Number of additional d.o.fs
52
53 DO k = nct+1, nct+nc ! Loop over attached elements
54 DO j = 1,nddl ! Loop over additional d.o.fs
55 a(npos+j-1) = a(npos+j-1) + fsky(k,j)
56 fsky(k,j) = zero
57 ENDDO
58 ENDDO
59 ENDDO
60C
61 RETURN
62 END SUBROUTINE asspar_sub
subroutine asspar_sub(a, fsky, addcne, nodft_2, nodlt_2, posi, sizesub, sizea)
Definition asspar_sub.F:30
#define my_real
Definition cppsort.cpp:32