OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
w_bufel.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/.
23C
24!||====================================================================
25!|| w_bufel ../starter/source/restart/ddsplit/w_bufel.F
26!||--- called by ------------------------------------------------------
27!|| ddsplit ../starter/source/restart/ddsplit/ddsplit.F
28!||--- calls -----------------------------------------------------
29!||====================================================================
30 SUBROUTINE w_bufel(IPARG,PROC,LBUFEL_L,ELBUF,LEN_AM)
31C-----------------------------------------------
32C I m p l i c i t T y p e s
33C-----------------------------------------------
34#include "implicit_f.inc"
35C-----------------------------------------------
36C C o m m o n B l o c k s
37C-----------------------------------------------
38#include "com01_c.inc"
39#include "param_c.inc"
40C-----------------------------------------------
41C D u m m y A r g u m e n t s
42C-----------------------------------------------
43 INTEGER PROC, LBUFEL_L, LEN_AM,
44 . IPARG(NPARG,*)
46 . elbuf(*)
47C-----------------------------------------------
48C L o c a l V a r i a b l e s
49C-----------------------------------------------
50 INTEGER NG, P, LB_L, LEN, J, IAD
51 my_real,
52 . DIMENSION(:),ALLOCATABLE :: elbuf_l
53
54 ALLOCATE(elbuf_l(lbufel_l))
55C
56 lb_l = 0
57 DO ng=1,ngroup
58 p = iparg(32,ng)
59 IF(p==proc) THEN
60 iad = iparg(4,ng)
61 IF(ng<ngroup) THEN
62 len = iparg(4,ng+1) - iparg(4,ng)
63 ELSE
64 len =lbufel + 1 - iparg(4,ng)
65 ENDIF
66 DO j = 1, len
67 elbuf_l(lb_l+j) = elbuf(iad+j-1)
68 ENDDO
69 lb_l = lb_l + len
70 ENDIF
71 ENDDO
72C
73 CALL write_db(elbuf_l,lbufel_l)
74 len_am = len_am + lbufel_l
75
76 DEALLOCATE(elbuf_l)
77C
78 RETURN
79 END
#define my_real
Definition cppsort.cpp:32
subroutine w_bufel(iparg, proc, lbufel_l, elbuf, len_am)
Definition w_bufel.F:31
subroutine write_db(a, n)
Definition write_db.F:140