OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
write_th_buffer.F File Reference
#include "implicit_f.inc"

Go to the source code of this file.

Functions/Subroutines

subroutine write_th_buffer (th, nodlocal, cel, p, nthgrp0, nthgrp, nthgrp01, nthgrp1, scel, numsph, numnod, ncluster, celsph, numloccluster, nbr_th_monvol)

Function/Subroutine Documentation

◆ write_th_buffer()

subroutine write_th_buffer ( type(th_), intent(inout) th,
integer, dimension(numnod), intent(in) nodlocal,
integer, dimension(scel), intent(in) cel,
integer, intent(in) p,
integer, intent(in) nthgrp0,
integer, intent(in) nthgrp,
integer, dimension(9), intent(in) nthgrp01,
integer, dimension(9), intent(in) nthgrp1,
integer, intent(in) scel,
integer, intent(in) numsph,
integer, intent(in) numnod,
integer, intent(in) ncluster,
integer, dimension(numsph), intent(in) celsph,
integer, dimension(ncluster), intent(in) numloccluster,
integer, intent(in) nbr_th_monvol )

Definition at line 32 of file write_th_buffer.F.

36 ! -----------------------------------------------
37 ! ROUTINE DESCRIPTION :
38 ! ========================
39 ! split and write time history buffer
40C-----------------------------------------------
41C M o d u l e s
42C-----------------------------------------------
44C-----------------------------------------------
45C I m p l i c i t T y p e s
46C-----------------------------------------------
47#include "implicit_f.inc"
48C-----------------------------------------------
49C D u m m y A r g u m e n t s
50C-----------------------------------------------
51 TYPE(TH_),INTENT(INOUT) :: TH ! TH Type
52 INTEGER,INTENT(IN) :: P ! Current SPMD domain
53 INTEGER,INTENT(IN) :: NUMNOD ! Total number of Model Nodes
54 INTEGER,INTENT(IN) :: NUMSPH ! Total number of SPH partikles in model
55 INTEGER,INTENT(IN) :: SCEL ! Size of CEL
56 INTEGER,INTENT(IN) :: NCLUSTER ! Total number of SPH partikles in model
57 INTEGER,INTENT(IN) :: NBR_TH_MONVOL ! number of /TH/MONV
58 INTEGER,DIMENSION(NUMNOD), INTENT(IN) :: NODLOCAL ! Conversion Starter to Engine node table
59 INTEGER,INTENT(IN) :: NTHGRP0,NTHGRP ! Number of variables for main Time History
60 INTEGER,DIMENSION(9),INTENT(IN) :: NTHGRP01,NTHGRP1 ! Number of variables for secondaty TH: ath-ith
61 INTEGER,DIMENSION(SCEL),INTENT(IN) :: CEL ! Assign Finite Elmeent to SPMD domain
62 INTEGER,DIMENSION(NUMSPH),INTENT(IN) :: CELSPH ! Assign SPH partikle to SPMD domain
63 INTEGER,DIMENSION(NCLUSTER),INTENT(IN) :: NUMLOCCLUSTER ! Assign SPH partikle to SPMD domain
64C-----------------------------------------------
65
66 CALL write_i_c(th%NITHGR,1)
67 CALL write_i_c(th%SITHGRP, 1)
68 CALL write_i_c(th%SITHBUF, 1)
69
70 CALL write_i_c(th%SITHGRPA,1)
71 CALL write_i_c(th%SITHBUFA,1)
72
73 CALL write_i_c(th%SITHGRPB,1)
74 CALL write_i_c(th%SITHBUFB,1)
75
76 CALL write_i_c(th%SITHGRPC,1)
77 CALL write_i_c(th%SITHBUFC,1)
78
79 CALL write_i_c(th%SITHGRPD,1)
80 CALL write_i_c(th%SITHBUFD,1)
81
82 CALL write_i_c(th%SITHGRPE,1)
83 CALL write_i_c(th%SITHBUFE,1)
84
85 CALL write_i_c(th%SITHGRPF,1)
86 CALL write_i_c(th%SITHBUFF,1)
87
88 CALL write_i_c(th%SITHGRPG,1)
89 CALL write_i_c(th%SITHBUFG,1)
90
91 CALL write_i_c(th%SITHGRPH,1)
92 CALL write_i_c(th%SITHBUFH,1)
93
94 CALL write_i_c(th%SITHGRPI,1)
95 CALL write_i_c(th%SITHBUFI,1)
96
97
98 CALL w_th(th%ITHGRP ,th%ITHBUF ,th%SITHBUF,nodlocal,cel ,
99 2 nthgrp0 ,nthgrp ,p ,
100 3 celsph ,numloccluster ,nbr_th_monvol)
101
102
103 IF (nthgrp01(1) > 0) THEN
104 CALL w_th(th%ITHGRPA ,th%ITHBUFA ,th%SITHBUFA ,nodlocal,cel ,
105 2 nthgrp01(1) ,nthgrp1(1) ,p ,
106 3 celsph, numloccluster ,nbr_th_monvol)
107 END IF
108
109 IF (nthgrp01(2) > 0) THEN
110 CALL w_th(th%ITHGRPB ,th%ITHBUFB ,th%SITHBUFB,nodlocal,cel,
111 2 nthgrp01(2) ,nthgrp1(2) ,p ,
112 3 celsph ,numloccluster ,nbr_th_monvol)
113 END IF
114
115 IF (nthgrp01(3) > 0) THEN
116 CALL w_th(th%ITHGRPC ,th%ITHBUFC ,th%SITHBUFC,nodlocal,cel,
117 2 nthgrp01(3) ,nthgrp1(3) ,p ,
118 3 celsph ,numloccluster ,nbr_th_monvol)
119 END IF
120
121 IF (nthgrp01(4) > 0) THEN
122 CALL w_th(th%ITHGRPD ,th%ITHBUFD ,th%SITHBUFD,nodlocal,cel,
123 2 nthgrp01(4) ,nthgrp1(4) ,p ,
124 3 celsph ,numloccluster ,nbr_th_monvol)
125 END IF
126
127 IF (nthgrp01(5) > 0) THEN
128 CALL w_th(th%ITHGRPE ,th%ITHBUFE ,th%SITHBUFE,nodlocal,cel ,
129 2 nthgrp01(5),nthgrp1(5) ,p ,
130 3 celsph, numloccluster ,nbr_th_monvol)
131 END IF
132
133 IF (nthgrp01(6) > 0) THEN
134 CALL w_th(th%ITHGRPF ,th%ITHBUFF ,th%SITHBUFF,nodlocal,cel ,
135 2 nthgrp01(6),nthgrp1(6) ,p ,
136 3 celsph, numloccluster ,nbr_th_monvol)
137 END IF
138
139 IF (nthgrp01(7) > 0) THEN
140 CALL w_th(th%ITHGRPG ,th%ITHBUFG ,th%SITHBUFG,nodlocal,cel ,
141 2 nthgrp01(7),nthgrp1(7) ,p ,
142 3 celsph, numloccluster ,nbr_th_monvol)
143 END IF
144
145 IF (nthgrp01(8) > 0) THEN
146 CALL w_th(th%ITHGRPH ,th%ITHBUFH ,th%SITHBUFH,nodlocal,cel ,
147 2 nthgrp01(8),nthgrp1(8) ,p ,
148 3 celsph, numloccluster ,nbr_th_monvol)
149 END IF
150
151 IF (nthgrp01(9) > 0) THEN
152 CALL w_th(th%ITHGRPI ,th%ITHBUFI ,th%SITHBUFI,nodlocal,cel ,
153 2 nthgrp01(9),nthgrp1(9) ,p ,
154 3 celsph, numloccluster ,nbr_th_monvol)
155 END IF
156
void split(mapping_t *, PORD_INT, PORD_INT, PORD_INT, PORD_INT *, PORD_INT *, FLOAT *, PORD_INT)
subroutine w_th(ithgrp, ithbuf, lenthg, nodlocal, cel, nthgrp0, nthgrp2, proc, celsph, numloccluster, nbr_th_monvol)
Definition w_th.F:34
void write_i_c(int *w, int *len)