OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
r2r_getdata.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!|| r2r_getdata ../engine/source/coupling/rad2rad/r2r_getdata.F
25!||--- called by ------------------------------------------------------
26!|| resol ../engine/source/engine/resol.f
27!||--- calls -----------------------------------------------------
28!|| get_displ_c ../engine/source/coupling/rad2rad/rad2rad_c.c
29!|| get_displ_spmd ../engine/source/coupling/rad2rad/r2r_getdata.F
30!|| get_force_c ../engine/source/coupling/rad2rad/rad2rad_c.c
31!|| get_force_nl_c ../engine/source/coupling/rad2rad/rad2rad_c.c
32!|| get_force_spmd ../engine/source/coupling/rad2rad/r2r_getdata.F
33!|| spmd_exch_r2r_2 ../engine/source/mpi/r2r/spmd_r2r.F
34!|| spmd_exch_r2r_nl ../engine/source/mpi/r2r/spmd_exch_r2r_nl.F
35!|| spmd_exch_work ../engine/source/mpi/r2r/spmd_r2r.F
36!||--- uses -----------------------------------------------------
37!|| groupdef_mod ../common_source/modules/groupdef_mod.F
38!|| nlocal_reg_mod ../common_source/modules/nlocal_reg_mod.F
39!|| rad2r_mod ../engine/share/modules/rad2r.F
40!||====================================================================
41 SUBROUTINE r2r_getdata(
42 . IEXLNK ,IGRNOD ,X ,V ,
43 . VR ,A ,AR ,MS ,IN ,
44 . XDP ,DX ,R2R_ON ,DD_R2R ,WEIGHT ,
45 . IAD_ELEM,FR_ELEM ,STIFN , STIFR , DD_R2R_ELEM,
46 . SDD_R2R_ELEM,NLOC_DMG,WFEXT, WFEXT_MD)
47C-----------------------------------------------
48C M o d u l e s
49C-----------------------------------------------
50 USE rad2r_mod
51 USE groupdef_mod
53C-----------------------------------------------
54C I m p l i c i t T y p e s
55C-----------------------------------------------
56#include "implicit_f.inc"
57C-----------------------------------------------
58C C o m m o n B l o c k s
59C-----------------------------------------------
60#include "com01_c.inc"
61#include "com04_c.inc"
62#include "com06_c.inc"
63#include "com08_c.inc"
64#include "param_c.inc"
65#include "scr05_c.inc"
66#include "task_c.inc"
67#include "rad2r_c.inc"
68C-----------------------------------------------------------------
69C D u m m y A r g u m e n t s
70C-----------------------------------------------
71 INTEGER R2R_ON
72 INTEGER IEXLNK(NR2R,NR2RLNK),
73 . WEIGHT(*), DD_R2R(NSPMD+1,*), IAD_ELEM(2,*), FR_ELEM(*),
74 . DD_R2R_ELEM(*),SDD_R2R_ELEM
75 my_real X(3,*),V(3,*),VR(3,*),A(3,*),AR(3,*),MS(*),IN(*),STIFN(*),STIFR(*),DX(3,*)
76
77 DOUBLE PRECISION XDP(3,*)
78 TYPE (GROUP_) , TARGET, DIMENSION(NGRNOD) :: IGRNOD
79 TYPE(NLOCAL_STR_), TARGET, INTENT(IN) :: NLOC_DMG
80 DOUBLE PRECISION, INTENT(INOUT) :: WFEXT
81 DOUBLE PRECISION, INTENT(INOUT) :: WFEXT_MD !< specific to r2r method
82C-----------------------------------------------
83C L o c a l V a r i a b l e s
84C-----------------------------------------------
85 INTEGER IEX, IDP, IDG, NNG, NB, NGLOB, LENR, SIZE
86 INTEGER NBD, NL_FLAG, SBUF_SIZE, RBUF_SIZE
87 my_real WF, WM, WF2, WM2, WFB, WMB, WF2B, WM2B
88 INTEGER, DIMENSION(:), POINTER :: GRNOD
89 my_real, POINTER, DIMENSION(:) :: MSNL,FNL
90C=======================================================================
91 wf = zero
92 wm = zero
93 wf2= zero
94 wm2= zero
95 nl_flag = 0
96
97 IF ((r2r_siu==1).OR.(nspmd==1)) THEN
98C-----------------------------------------------------------------------
99 DO iex = 1, nr2rlnk
100 idg = iexlnk(1,iex)
101 idp = iexlnk(2,iex)
102 nng = igrnod(idg)%NENTITY
103 grnod => igrnod(idg)%ENTITY
104
105 IF (nllnk(iex)==1) THEN
106C-------Non local coupling interface--------------------------
107 nl_flag = 1
108 msnl => nloc_dmg%MASS(1:nloc_dmg%L_NLOC)
109 fnl => nloc_dmg%FNL(1:nloc_dmg%L_NLOC,1)
110 CALL get_force_nl_c(idp ,nbdof_nl(iex) ,iadd_nl ,fnl ,msnl ,
111 . iex)
112 ELSE
113 CALL get_force_c(idp ,nng ,grnod ,wf ,wm ,
114 . wf2 ,wm2 ,v ,vr ,a ,ar ,
115 . ms ,in ,x ,xdp ,dx ,typlnk(iex),
116 . kinlnk(iex),weight ,iex ,iresp, wfext)
117 ENDIF
118C
119 IF (r2r_on == 1) THEN
120 CALL get_displ_c(idp,nng,grnod,x)
121 ENDIF
122 END DO
123
124C----------New rad2rad HMPP - synchro SPMD-----------------------------
125 IF (nspmd>1) THEN
126 IF (sdd_r2r_elem>0) THEN
127 IF (nl_flag == 0) THEN
128 SIZE = 3+flag_kine + iroddl*(3+flag_kine)
129 lenr = iad_elem(1,nspmd+1)-iad_elem(1,1)
130 CALL spmd_exch_r2r_2(a ,ar,v , vr ,ms ,in,
131 2 iad_elem,fr_elem,SIZE , wf, wf2,
132 3 lenr ,dd_r2r,dd_r2r_elem,weight,flag_kine)
133 ELSE
134 SIZE = 3+flag_kine + iroddl*(3+flag_kine)
135 lenr = iad_elem(1,nspmd+1)-iad_elem(1,1)
136 sbuf_size = size*lenr + dd_r2r_nl(1)
137 rbuf_size = size*lenr + dd_r2r_nl(2)
138 CALL spmd_exch_r2r_nl(a ,ar,v , vr ,ms ,
139 2 in,iad_elem,fr_elem,SIZE ,
140 3 sbuf_size,rbuf_size,wf, wf2,dd_r2r,
141 4 dd_r2r_elem,weight,flag_kine,nloc_dmg)
142 ENDIF
143 ENDIF
144 CALL spmd_exch_work(wf, wf2)
145 CALL spmd_exch_work(wm, wm2)
146 END IF
147C
148 ELSE
149C
150 DO iex = 1, nr2rlnk
151 idg = iexlnk(1,iex)
152 idp = iexlnk(2,iex)
153 nng = igrnod(idg)%NENTITY
154 grnod => igrnod(idg)%ENTITY
155C-
156 wfb = zero
157 wmb = zero
158 wf2b= zero
159 wm2b= zero
160C-
161 IF (ispmd==0) THEN
162 nglob=dd_r2r(nspmd+1,iex)+dbno(iex)
163 nb = dbno(iex)
164 ELSE
165 nglob=nng
166 nb = 0
167 ENDIF
168C-
169 nb = dbno(iex)
170 nbd = dd_r2r(nspmd+1,iex)
171
172 CALL get_force_spmd(
173 1 idp ,nng ,grnod,wfb,wmb ,
174 2 wf2b ,wm2b ,v ,vr,a ,
175 3 ar ,ms ,in,dd_r2r(1,iex),nglob,
176 4 weight ,iad_elem,fr_elem,nb,iex,typlnk(iex),rotlnk(iex),nbd)
177C-
178 wf = wf + wfb
179 wm = wm + wmb
180 wf2 = wf2 + wf2b
181 wm2 = wm2 + wm2b
182 IF (r2r_on == 1) THEN
183 CALL get_displ_spmd(
184 1 idp,nng ,grnod,x ,dd_r2r(1,iex),
185 2 nglob,weight ,iad_elem,fr_elem,iex)
186C-
187 ENDIF
188 END DO
189C
190 END IF
191
192C----- Count the work of external process forces
193 IF(ispmd==0) THEN
194 wfext_md = wfext_md + r2rfx1 + (wf + wm) * dt1
195 r2rfx1 = wf + wm
196 r2rfx2 = wf2 + wm2
197 END IF
198C
199C-----------------------------------------------------------------
200 RETURN
201 END SUBROUTINE r2r_getdata
202C
203!||====================================================================
204!|| get_force_spmd ../engine/source/coupling/rad2rad/r2r_getdata.F
205!||--- called by ------------------------------------------------------
206!|| r2r_getdata ../engine/source/coupling/rad2rad/r2r_getdata.F
207!||--- calls -----------------------------------------------------
208!|| get_force_spmd_c ../engine/source/coupling/rad2rad/rad2rad_c.c
209!|| spmd_r2r_rset3 ../engine/source/mpi/r2r/spmd_r2r.f
210!|| spmd_r2r_rset3b ../engine/source/mpi/r2r/spmd_r2r.F
211!||====================================================================
212 SUBROUTINE get_force_spmd(
213 1 IDP ,NNG ,GRNOD ,WF ,WM ,
214 2 WF2 ,WM2 ,V ,VR ,A ,
215 3 AR ,MS ,IN ,DD_R2R ,NGLOB,
216 4 WEIGHT ,IAD_ELEM,FR_ELEM,NB,IEX,TYP,FLAG_ROT,NBD)
217C----6------------------------------------------
218C I m p l i c i t T y p e s
219C-----------------------------------------------
220#include "implicit_f.inc"
221C-----------------------------------------------
222C C o m m o n B l o c k s
223C-----------------------------------------------
224#include "com01_c.inc"
225#include "task_c.inc"
226C-----------------------------------------------
227C D u m m y A r g u m e n t s
228C-----------------------------------------------
229 INTEGER IDP, NNG, NGLOB, GRNOD(*),IEX,NB,TYP,FLAG_ROT,
230 . WEIGHT(*), DD_R2R(*), IAD_ELEM(2,*), FR_ELEM(*),NBD
231C REAL
232 my_real
233 . V(3,*),VR(3,*),A(3,*),AR(3,*),MS(*),IN(*),
234 . WF, WM, WF2, WM2
235C-----------------------------------------------
236C L o c a l V a r i a b l e s
237C-----------------------------------------------
238 INTEGER LRBUF
239 my_real
240 . BUFR1(3,NGLOB),BUFR2(3,NGLOB),
241 . bufr3(3,nglob),bufr4(3,nglob),wtmp(4)
242
243C******************************************************************************C
244
245 IF(ispmd==0) THEN
246 CALL get_force_spmd_c(idp,nbd,bufr1,bufr2,bufr3,bufr4,typ,iex,nglob)
247 ENDIF
248 lrbuf = 2*4*(iad_elem(1,nspmd+1)-iad_elem(1,1))+2*nspmd
249
250 IF (typ/=7) THEN
251 IF(flag_rot /= 0)THEN
252 IF(typ<4)THEN
253 CALL spmd_r2r_rset3(vr ,nng ,grnod,dd_r2r,weight,
254 . bufr4,iad_elem,fr_elem,lrbuf,iex)
255 ENDIF
256 CALL spmd_r2r_rset3b(ar ,nng ,grnod,dd_r2r,weight,
257 . bufr2,iad_elem,fr_elem,lrbuf, in, vr, wm, wm2,iex)
258 END IF
259
260 CALL spmd_r2r_rset3b(a ,nng ,grnod,dd_r2r,weight,
261 . bufr1,iad_elem,fr_elem,lrbuf, ms, v, wf, wf2,iex)
262 IF(typ<4)THEN
263 CALL spmd_r2r_rset3(v ,nng ,grnod,dd_r2r,weight,
264 . bufr3,iad_elem,fr_elem,lrbuf,iex)
265 ENDIF
266
267 wtmp(1) = wf
268 wtmp(2) = wf2
269 wtmp(3) = wm
270 wtmp(4) = wm2
271 wf = wtmp(1)
272 wf2 = wtmp(2)
273 wm = wtmp(3)
274 wm2 = wtmp(4)
275 ENDIF
276C-----------------------------------------------------------------
277 RETURN
278 END SUBROUTINE get_force_spmd
279C
280!||====================================================================
281!|| get_displ_spmd ../engine/source/coupling/rad2rad/r2r_getdata.F
282!||--- called by ------------------------------------------------------
283!|| r2r_getdata ../engine/source/coupling/rad2rad/r2r_getdata.F
284!||--- calls -----------------------------------------------------
285!|| get_displ_spmd_c ../engine/source/coupling/rad2rad/rad2rad_c.c
286!|| spmd_r2r_rset3 ../engine/source/mpi/r2r/spmd_r2r.F
287!||====================================================================
288 SUBROUTINE get_displ_spmd(
289 1 IDP ,NNG ,GRNOD ,X ,DD_R2R ,
290 4 NGLOB,WEIGHT,IAD_ELEM,FR_ELEM,IEX )
291C-----------------------------------------------
292C I m p l i c i t T y p e s
293C-----------------------------------------------
294#include "implicit_f.inc"
295C-----------------------------------------------
296C C o m m o n B l o c k s
297C-----------------------------------------------
298#include "com01_c.inc"
299#include "task_c.inc"
300C-----------------------------------------------
301C D u m m y A r g u m e n t s
302C-----------------------------------------------
303 INTEGER IDP, NNG, NGLOB,IEX,GRNOD(*),
304 . WEIGHT(*), DD_R2R(*), IAD_ELEM(2,*), FR_ELEM(*)
305C REAL
306 my_real
307 . X(3,*)
308C-----------------------------------------------
309C L o c a l V a r i a b l e s
310C-----------------------------------------------
311 INTEGER LRBUF
312 my_real
313 . BUFR1(3,NGLOB)
314C
315C******************************************************************************C
316 IF(ispmd==0)
317 . CALL get_displ_spmd_c(idp,nglob,bufr1)
318 lrbuf = 2*4*iad_elem(1,nspmd+1)-iad_elem(1,1)+2*nspmd
319 CALL spmd_r2r_rset3(x ,nng ,grnod,dd_r2r,weight,
320 . bufr1,iad_elem,fr_elem,lrbuf,iex)
321
322C-----------------------------------------------------------------
323 RETURN
324 END SUBROUTINE get_displ_spmd
325C
326!||====================================================================
327!|| r2r_sendkine ../engine/source/coupling/rad2rad/r2r_getdata.F
328!||--- called by ------------------------------------------------------
329!|| resol ../engine/source/engine/resol.F
330!||--- calls -----------------------------------------------------
331!|| send_mass_kine_c ../engine/source/coupling/rad2rad/rad2rad_c.c
332!||--- uses -----------------------------------------------------
333!|| groupdef_mod ../common_source/modules/groupdef_mod.F
334!|| rad2r_mod ../engine/share/modules/rad2r.F
335!||====================================================================
336 SUBROUTINE r2r_sendkine(
337 . IEXLNK ,IGRNOD ,MS ,IN)
338C-----------------------------------------------
339C M o d u l e s
340C-----------------------------------------------
341 USE rad2r_mod
342 USE groupdef_mod
343C-----------------------------------------------
344C I m p l i c i t T y p e s
345C-----------------------------------------------
346#include "implicit_f.inc"
347C-----------------------------------------------
348C C o m m o n B l o c k s
349C-----------------------------------------------
350#include "com04_c.inc"
351#include "param_c.inc"
352#include "rad2r_c.inc"
353C-----------------------------------------------
354C D u m m y A r g u m e n t s
355C-----------------------------------------------
356 INTEGER IEXLNK(NR2R,NR2RLNK)
357 my_real MS(*),IN(*)
358!
359 TYPE (GROUP_) , TARGET, DIMENSION(NGRNOD) :: IGRNOD
360C-----------------------------------------------
361C L o c a l V a r i a b l e s
362C-----------------------------------------------
363 INTEGER IEX, IDP, IDG, NNG, OFF
364C
365 INTEGER, DIMENSION(:), POINTER :: GRNOD
366C=======================================================================
367
368 flag_kine = 0
369 off = 0
370
371 IF (r2r_siu==1) THEN
372C----------Send of new mass---------------------------------------
373 DO iex = 1, nr2rlnk
374 idp = iexlnk(2,iex)
375 idg = iexlnk(1,iex)
376 nng = igrnod(idg)%NENTITY
377 grnod => igrnod(idg)%ENTITY
378 IF ((typlnk(iex)==5).AND.(kinlnk(iex)==1)) THEN
379 flag_kine = 1
380 CALL send_mass_kine_c(idp,nng,grnod,ms,in,iex,off)
381 ENDIF
382 off = off + nng
383 END DO
384 ENDIF
385
386C-----------------------------------------------------------------
387 RETURN
388 END SUBROUTINE r2r_sendkine
integer, dimension(:), allocatable nllnk
Definition rad2r.F:53
integer, dimension(:), allocatable nbdof_nl
Definition rad2r.F:53
integer, dimension(:), allocatable rotlnk
Definition rad2r.F:53
integer, dimension(:), allocatable iadd_nl
Definition rad2r.F:53
integer, dimension(2) dd_r2r_nl
Definition rad2r.F:64
integer, dimension(:), allocatable typlnk
Definition rad2r.F:53
integer, dimension(:), allocatable kinlnk
Definition rad2r.F:53
integer, dimension(:), allocatable dbno
Definition rad2r.F:53
subroutine get_force_spmd(idp, nng, grnod, wf, wm, wf2, wm2, v, vr, a, ar, ms, in, dd_r2r, nglob, weight, iad_elem, fr_elem, nb, iex, typ, flag_rot, nbd)
subroutine r2r_getdata(iexlnk, igrnod, x, v, vr, a, ar, ms, in, xdp, dx, r2r_on, dd_r2r, weight, iad_elem, fr_elem, stifn, stifr, dd_r2r_elem, sdd_r2r_elem, nloc_dmg, wfext, wfext_md)
Definition r2r_getdata.F:47
subroutine get_displ_spmd(idp, nng, grnod, x, dd_r2r, nglob, weight, iad_elem, fr_elem, iex)
subroutine r2r_sendkine(iexlnk, igrnod, ms, in)
void send_mass_kine_c(int *idp, int *nng, int *nodbuf, my_real_c *ms, my_real_c *in, int *iex, int *offset)
Definition rad2rad_c.c:1960
void get_force_c(int *idp, int *nng, int *nodbuf, my_real_c *wf, my_real_c *wm, my_real_c *wf2, my_real_c *wm2, my_real_c *v, my_real_c *vr, my_real_c *fx, my_real_c *fr, my_real_c *ms, my_real_c *in, my_real_c *x, double *xdp, my_real_c *dx, int *typ, int *kin, int *wgt, int *iex, int *iresp, double *tfext)
Definition rad2rad_c.c:1738
void get_displ_c(int *idp, int *nng, int *nodbuf, my_real_c *x)
Definition rad2rad_c.c:1992
void get_displ_spmd_c(int *idp, int *nng, my_real_c *bufr)
Definition rad2rad_c.c:2030
void get_force_spmd_c(int *idp, int *nng, my_real_c *bufr1, my_real_c *bufr2, my_real_c *bufr3, my_real_c *bufr4, int *typ, int *iex, int *nglob)
Definition rad2rad_c.c:1892
void get_force_nl_c(int *idp, int *nng, int *iadd_nl, my_real_c *fx, my_real_c *ms, int *iex)
Definition rad2rad_c.c:1859
subroutine resol(timers, element, nodes, coupling, af, iaf, iskwn, neth, ipart, nom_opt, kxx, ixx, ixtg, ixs, ixq, ixt, ixp, ixr, ifill, mat_elem, ims, npc, ibcl, ibfv, idum, las, laccelm, nnlink, lnlink, iparg, dd_iad, igrv, iexlnk, ipari, iconx, npby, lpby, lrivet, nstrf, ljoint, nodpor, monvol, ilink, llink, linale, neflsw, nnflsw, icut, cluster, itask, inoise, thke, damp, pm, skews, geo, eani, bufmat, bufgeo, bufsf, w, veul, fill, dfill, alph, wb, dsave, asave, msnf, tf, forc, vel, fsav, fzero, xlas, accelm, agrv, fr_wave, failwave, parts0, elbuf, sensors, rby, rivet, secbuf, volmon, lambda, wa, fv, partsav, uwa, val2, phi, segvar, r, crflsw, flsw, xcut, tani, secfcum, bufnois, idata, rdata, iframe, kxsp, ixsp, nod2sp, ispsym, ispcond, xframe, spbuf, xspsym, vspsym, pv, fsavd, ibvel, lbvel, wasph, w16, isphio, lprtsph, lonfsph, vsphio, fbvel, lagbuf, ibcslag, iactiv, dampr, gjbufi, gjbufr, rbmpc, ibmpc, sphveln, nbrcvois, nbsdvois, lnrcvois, lnsdvois, nercvois, nesdvois, lercvois, lesdvois, npsegcom, lsegcom, nporgeo, ixtg1, npbyl, lpbyl, rbyl, igeo, ipm, madprt, madsh4, madsh3, madsol, madnod, madfail, iad_rby, fr_rby, iad_rby2, fr_rby2, iad_i2m, fr_i2m, addcni2, procni2, iadi2, fr_mv, iadmv2, fr_ll, fr_rl, iadcj, fr_cj, fr_sec, iad_sec, iad_cut, fr_cut, rg_cut, newfront, fr_mad, fxbipm, fxbrpm, fxbnod, fxbmod, fxbglm, fxbcpm, fxbcps, fxblm, fxbfls, fxbdls, fxbdep, fxbvit, fxbacc, fxbelm, fxbsig, fxbgrvi, fxbgrvr, eigipm, eigibuf, eigrpm, lnodpor, fr_i18, graphe, iflow, rflow, lgrav, dd_r2r, fasolfr, fr_lagf, llagf, icontact, rcontact, sh4tree, sh3tree, ipadmesh, padmesh, msc, mstg, inc, intg, ptg, iskwp, nskwp, isensp, nsensp, iaccp, naccp, ipart_state, acontact, pcontact, factiv, sh4trim, sh3trim, mscnd, incnd, ibfflux, fbfflux, rbym, irbym, lnrbym, icodrbym, ibcv, fconv, ibftemp, fbftemp, iad_rbym, fr_rbym, weight_rm, ms_ply, zi_ply, inod_pxfem, iel_pxfem, iadc_pxfem, adsky_pxfem, icode_ply, icodt_ply, iskew_ply, admsms, madclnod, nom_sect, mcpc, mcptg, dmelc, dmeltg, mssa, dmels, mstr, dmeltr, msp, dmelp, msrt, dmelrt, ibcr, fradia, res_sms, table, irbe2, lrbe2, iad_rbe2, fr_rbe2, phie, msf, procne_pxfem, iadsdp_pxfem, iadrcp_pxfem, icfield, lcfield, cfield, msz2, diag_sms, iloadp, lloadp, loadp, inod_crk, iel_crk, iadc_crk, adsky_crk, cne_crk, procne_crk, iadsdp_crk, iadrcp_crk, ibufssg_io, ibc_ply, dmint2, ibordnode, elbuf_tab, por, nodedge, iad_edge, fr_edge, fr_nbedge, crknodiad, lgauge, gauge, igaup, ngaup, nodlevxf, dd_r2r_elem, nodglobxfe, sph2sol, sol2sph, irst, dmsph, wagap, xfem_tab, elcutc, nodenr, kxfenod2elc, enrtag, rthbu f, kxig3d, ixig3d, knot, wige, wsmcomp, stack, cputime_mp_glob, cputime_mp, tab_ump, poin_ump, sol2sph_typ, irunn_bis, addcsrect, iad_frnor, fr_nor, procnor, iad_fredg, fr_edg, drape_sh4n, drape_sh3n, tab_mat, nativ0_sms, multi_fvm, segquadfr, ms_2d, h3d_data, subsets, igrnod, igrbric, igrquad, igrsh4n, igrsh3n, igrtruss, igrbeam, igrspring, igrpart, igrsurf, forneqs, nloc_dmg, iskwp_l, knotlocpc, knotlocel, pinch_data, tag_skins6, ale_connectivity, xcell, xface, ne_nercvois, ne_nesdvois, ne_lercvois, ne_lesdvois, ibcscyc, lbcscyc, t_monvol, id_global_vois, face_vois, dynain_data, fcont_max, ebcs_tab, diffusion, kloadpinter, loadpinter, dgaploadint, drapeg, user_windows, output, interfaces, dt, loads, python, dpl0cld, vel0cld, ndamp_vrel, id_damp_vrel, fr_damp_vrel, ndamp_vrel_rbyg, names_and_titles, unitab, liflow, lrflow, glob_therm, pblast, rbe3, rwall)
Definition resol.F:648
subroutine spmd_exch_r2r_nl(a, ar, v, vr, ms, in, iad_elem, fr_elem, size, sbuf_size, rbuf_size, wf, wf2, dd_r2r, dd_r2r_elem, weight, flag, nloc_dmg)
subroutine spmd_exch_work(wf, wf2)
Definition spmd_r2r.F:1723
subroutine spmd_r2r_rset3b(a, nng, grnod, dd_r2r, weight, bufr, iad_elem, fr_elem, lrbuf, ms, v, wf, wf2, iex)
Definition spmd_r2r.F:1034
subroutine spmd_r2r_rset3(a, nng, grnod, dd_r2r, weight, bufr, iad_elem, fr_elem, lrbuf, iex)
Definition spmd_r2r.F:938
subroutine spmd_exch_r2r_2(a, ar, v, vr, ms, in, iad_elem, fr_elem, size, wf, wf2, lenr, dd_r2r, dd_r2r_elem, weight, flag)
Definition spmd_r2r.F:1355