OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
cut-cell-search_mod.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!|| i22bufbric_mod ../common_source/modules/interfaces/cut-cell-search_mod.F
25!||--- called by ------------------------------------------------------
26!|| a22conv3 ../engine/source/ale/alefvm/cut_cells/a22conv3.F
27!|| aconve ../engine/source/ale/aconve.F
28!|| aflux3 ../engine/source/ale/ale3d/aflux3.F
29!|| aflux3_int22_fvm ../engine/source/ale/alefvm/cut_cells/aflux3_int22_fvm.F
30!|| afluxt ../engine/source/ale/ale51/afluxt.F
31!|| ale51_antidiff3 ../engine/source/ale/ale51/ale51_antidiff3.F
32!|| ale51_antidiff3_int22 ../engine/source/ale/alefvm/cut_cells/ale51_antidiff3_int22.F
33!|| ale51_finish ../engine/source/ale/ale51/ale51_finish.F
34!|| ale51_init ../engine/source/ale/ale51/ale51_init.F
35!|| ale51_upwind3_int22 ../engine/source/ale/alefvm/cut_cells/ale51_upwind3_int22.F
36!|| alefvm_freset ../engine/source/ale/alefvm/alefvm_freset.F
37!|| alefvm_gravity_int22 ../engine/source/ale/alefvm/alefvm_gravity_int22.F
38!|| alefvm_scheme ../engine/source/ale/alefvm/alefvm_scheme.F
39!|| alefvm_sfint3 ../engine/source/ale/alefvm/alefvm_sfint3.f
40!|| alefvm_sfint3_int22 ../engine/source/ale/alefvm/alefvm_sfint3_int22.f
41!|| alefvm_stress_int22 ../engine/source/ale/alefvm/alefvm_stress_int22.F
42!|| alemuscl_upwind ../engine/source/ale/alemuscl/alemuscl_upwind.F
43!|| alemuscl_upwind2 ../engine/source/ale/alemuscl/alemuscl_upwind2.F
44!|| amass3 ../engine/source/elements/solid/solide/amass3.F
45!|| amass3p ../engine/source/elements/solid/solide/amass3p.f
46!|| anim_nodal_p_elems ../engine/source/output/anim/generate/anim_nodal_p_elems.F
47!|| deltax22 ../engine/source/interfaces/int22/deltax22.F
48!|| destroy_cell ../engine/source/interfaces/int22/destroy_cell.F
49!|| eflux3_int22_fvm ../engine/source/ale/alefvm/cut_cells/eflux3_int22_fvm.F
50!|| get_unique_main_cell ../engine/source/interfaces/int22/get_unique_master_cell.F
51!|| h3d_velvecc22 ../engine/source/output/h3d/h3d_results/h3d_velvecc22.F
52!|| h3d_velvecz22 ../engine/source/output/h3d/h3d_results/h3d_velvecz22.F
53!|| i22ass2 ../engine/source/interfaces/int22/i22assembly.F
54!|| i22buce ../engine/source/interfaces/intsort/i22buce.F
55!|| i22cor3 ../engine/source/interfaces/int22/i22cor3.F
56!|| i22datainit ../engine/source/interfaces/int22/i22datainit.F
57!|| i22datainit_db ../engine/source/interfaces/int22/i22datainit_db.f
58!|| i22for3 ../engine/source/interfaces/int22/i22for3.F
59!|| i22gbit ../engine/source/interfaces/int22/i22ident.F
60!|| i22get_prev_data ../engine/source/interfaces/int22/i22get_prev_data.F
61!|| i22ident ../engine/source/interfaces/int22/i22ident.F
62!|| i22intersect ../engine/source/interfaces/int22/i22intersect.F
63!|| i22main_tri ../engine/source/interfaces/intsort/i22main_tri.F
64!|| i22solid_getminmax ../engine/source/interfaces/intsort/i22main_tri.F
65!|| i22subvol ../engine/source/interfaces/int22/i22subvol.F
66!|| i22trivox ../engine/source/interfaces/intsort/i22trivox.F
67!|| i22wetsurf ../engine/source/interfaces/int22/i22wetsurf.F
68!|| int22listcombi ../engine/source/interfaces/int22/int22ListCombi.F
69!|| inttri ../engine/source/interfaces/intsort/inttri.F
70!|| link_with_unique_main_cell ../engine/source/interfaces/int22/link_with_unique_master_cell.F
71!|| mqviscb ../engine/source/materials/mat_share/mqviscb.F
72!|| nodal_schlieren ../engine/source/output/anim/generate/nodal_schlieren.F
73!|| nodald ../engine/source/output/anim/generate/nodald.F
74!|| nodalt ../engine/source/output/anim/generate/nodalt.F
75!|| nodalvfrac ../engine/source/output/anim/generate/nodalvfrac.F
76!|| nodalzvol ../engine/source/output/anim/generate/nodalzvol.F
77!|| r_bufbric_22 ../engine/source/interfaces/int22/r_bufbric_22.F
78!|| resol ../engine/source/engine/resol.F
79!|| scoor3_fvm ../engine/source/ale/alefvm/scoor3_fvm.F
80!|| sigeps105 ../engine/source/materials/mat/mat105/sigeps105.F
81!|| sigeps51 ../engine/source/materials/mat/mat051/sigeps51.F90
82!|| sigeps97 ../engine/source/materials/mat/mat097/sigeps97.F
83!|| sinit22_fvm ../engine/source/interfaces/int22/sinit22_fvm.F
84!|| srho3 ../engine/source/elements/solid/solide/srho3.F
85!|| velvecc22 ../engine/source/output/anim/generate/velvec.F
86!|| velvecz22 ../engine/source/output/anim/generate/velvecz22.F
87!|| voln22 ../engine/source/interfaces/int22/voln22.F
88!|| w_bufbric_22 ../engine/source/interfaces/int22/w_bufbric_22.F
89!|| weighting_cell_nodes ../engine/source/interfaces/int22/weighting_cell_nodes.F
90!|| write_buf_law51 ../engine/source/materials/mat/mat051/write_buf_law51.F
91!|| write_cut_cell_buffer ../engine/source/interfaces/int22/write_cut_cell_buffer.F
92!||--- uses -----------------------------------------------------
93!|| i22edge_mod ../common_source/modules/interfaces/cut-cell-buffer_mod.F
94!||====================================================================
96C-----------------------------------------------
97C M o d u l e s
98C-----------------------------------------------
99 USE i22edge_mod
100C-----------------------------------------------
101C m y _ r e a l
102C-----------------------------------------------
103#include "my_real.inc"
104C-----------------------------------------------
105 TYPE(brick_entity), TARGET,ALLOCATABLE,DIMENSION(:,:) :: brick_list
106 TYPE(edge_entity), TARGET,ALLOCATABLE,DIMENSION(:,:) :: edge_list
107
108 INTEGER :: ninter22 !< number of /INTER/TYPE22
109
111 INTEGER, DIMENSION(2,12) :: iedge !12 without diagonals, 24 with diagonals
112 INTEGER, DIMENSION(2,2,6) :: iface ! 2 nodes per face definig a diagonal
113 INTEGER, DIMENSION(6,4) :: nodface ! quad face
114 INTEGER, DIMENSION(6) :: bnodface ! binary code
115 INTEGER, DIMENSION(8,3) :: i22whichedge !provide 3 edge number (from 1 to 12) related to local node given as index 1.
116 ! + : intersection point is the maximum of both if multiple intersection point on edge
117 ! - : intersection point is the minimum of both if multiple intersection point on edge
118 LOGICAL, DIMENSION(8,6) :: isnodeonface !tell if brick node is on a given face
119 INTEGER, DIMENSION(8,3) :: ifacesfromnode !from a node 1:8 gives 3 connected faces
120 INTEGER, DIMENSION(6,8) :: igetedge !from a node and a face, gives the normal edge
121 INTEGER, DIMENSION(6,8) :: igetoppositenode !idem with opposite note instead of edge number
122 INTEGER, DIMENSION(6,8,2) :: igettransvnodes !from face and node, provides 2 other transverse nodes
123 INTEGER, DIMENSION(6,4) :: igetedgesfromface !from a face_id provides all edge_ids composing the face
124 INTEGER, DIMENSION(6,4) :: inormaledgeslist !from a face_id provides all edge_ids normal to the face.
125 INTEGER, DIMENSION(12,2) :: igetadjface !from a edge_id get adjfaces
126 INTEGER, DIMENSION(6,12) :: igetnodefromedgeandface ! From face_id and edge_id provide node_id which is intersection.
127 INTEGER, DIMENSION(6,4) :: ileftedge ! From node_id 1:4 and face 1:6 gives Left edge (clockwise edge path)
128 END TYPE
129
131
132 END MODULE i22bufbric_mod
133C
134C
135C
136!||====================================================================
137!|| i22tri_mod ../common_source/modules/interfaces/cut-cell-search_mod.F
138!||--- called by ------------------------------------------------------
139!|| a22conv3 ../engine/source/ale/alefvm/cut_cells/a22conv3.F
140!|| aconv3 ../engine/source/ale/ale3d/aconv3.F
141!|| aconve ../engine/source/ale/aconve.F
142!|| aflux0 ../engine/source/ale/aflux0.F
143!|| aflux3_int22_fvm ../engine/source/ale/alefvm/cut_cells/aflux3_int22_fvm.F
144!|| afluxt ../engine/source/ale/ale51/afluxt.F
145!|| ale51_antidiff3 ../engine/source/ale/ale51/ale51_antidiff3.F
146!|| ale51_antidiff3_int22 ../engine/source/ale/alefvm/cut_cells/ale51_antidiff3_int22.F
147!|| ale51_finish ../engine/source/ale/ale51/ale51_finish.F
148!|| ale51_init ../engine/source/ale/ale51/ale51_init.F
149!|| ale51_upwind3 ../engine/source/ale/ale51/ale51_upwind3.F
150!|| ale51_upwind3_int22 ../engine/source/ale/alefvm/cut_cells/ale51_upwind3_int22.F
151!|| alefvm_aflux3 ../engine/source/ale/alefvm/alefvm_aflux3.F
152!|| alefvm_eflux3 ../engine/source/ale/alefvm/alefvm_eflux3.F
153!|| alefvm_main ../engine/source/ale/alefvm/alefvm_main.F
154!|| alefvm_scheme ../engine/source/ale/alefvm/alefvm_scheme.F
155!|| alefvm_sfint3 ../engine/source/ale/alefvm/alefvm_sfint3.F
156!|| alefvm_sfint3_int22 ../engine/source/ale/alefvm/alefvm_sfint3_int22.F
157!|| alemuscl_upwind ../engine/source/ale/alemuscl/alemuscl_upwind.F
158!|| alemuscl_upwind2 ../engine/source/ale/alemuscl/alemuscl_upwind2.F
159!|| alethe ../engine/source/ale/alethe.F
160!|| anim_nodal_p_elems ../engine/source/output/anim/generate/anim_nodal_p_elems.F
161!|| deltax22 ../engine/source/interfaces/int22/deltax22.F
162!|| destroy_cell ../engine/source/interfaces/int22/destroy_cell.F
163!|| dfuncs ../engine/source/output/anim/generate/dfunc6.F
164!|| eflux3 ../engine/source/ale/euler3d/eflux3.F
165!|| eflux3_int22_fvm ../engine/source/ale/alefvm/cut_cells/eflux3_int22_fvm.F
166!|| get_unique_main_cell ../engine/source/interfaces/int22/get_unique_master_cell.F
167!|| h3d_velvecc22 ../engine/source/output/h3d/h3d_results/h3d_velvecc22.F
168!|| h3d_velvecz22 ../engine/source/output/h3d/h3d_results/h3d_velvecz22.F
169!|| i22ass2 ../engine/source/interfaces/int22/i22assembly.F
170!|| i22buce ../engine/source/interfaces/intsort/i22buce.F
171!|| i22cor3 ../engine/source/interfaces/int22/i22cor3.F
172!|| i22datainit ../engine/source/interfaces/int22/i22datainit.F
173!|| i22datainit_db ../engine/source/interfaces/int22/i22datainit_db.F
174!|| i22for3 ../engine/source/interfaces/int22/i22for3.F
175!|| i22gbit ../engine/source/interfaces/int22/i22ident.F
176!|| i22get_prev_data ../engine/source/interfaces/int22/i22get_prev_data.F
177!|| i22ident ../engine/source/interfaces/int22/i22ident.F
178!|| i22intersect ../engine/source/interfaces/int22/i22intersect.F
179!|| i22main_tri ../engine/source/interfaces/intsort/i22main_tri.F
180!|| i22mainf ../engine/source/interfaces/int22/i22mainf.F
181!|| i22shell_getminmax ../engine/source/interfaces/intsort/i22main_tri.F
182!|| i22solid_getminmax ../engine/source/interfaces/intsort/i22main_tri.F
183!|| i22sto ../engine/source/interfaces/intsort/i22sto.F
184!|| i22subvol ../engine/source/interfaces/int22/i22subvol.F
185!|| i22trivox ../engine/source/interfaces/intsort/i22trivox.F
186!|| i22wetsurf ../engine/source/interfaces/int22/i22wetsurf.F
187!|| int22listcombi ../engine/source/interfaces/int22/int22ListCombi.F
188!|| inttri ../engine/source/interfaces/intsort/inttri.F
189!|| link_with_unique_main_cell ../engine/source/interfaces/int22/link_with_unique_master_cell.F
190!|| mqviscb ../engine/source/materials/mat_share/mqviscb.F
191!|| nodal_schlieren ../engine/source/output/anim/generate/nodal_schlieren.F
192!|| nodald ../engine/source/output/anim/generate/nodald.F
193!|| nodalt ../engine/source/output/anim/generate/nodalt.F
194!|| nodalvfrac ../engine/source/output/anim/generate/nodalvfrac.F
195!|| nodalzvol ../engine/source/output/anim/generate/nodalzvol.F
196!|| r_bufbric_22 ../engine/source/interfaces/int22/r_bufbric_22.F
197!|| resol ../engine/source/engine/resol.F
198!|| scoor3_fvm ../engine/source/ale/alefvm/scoor3_fvm.F
199!|| sigeps105 ../engine/source/materials/mat/mat105/sigeps105.F
200!|| sigeps51 ../engine/source/materials/mat/mat051/sigeps51.F90
201!|| sigeps97 ../engine/source/materials/mat/mat097/sigeps97.F
202!|| sinit22_fvm ../engine/source/interfaces/int22/sinit22_fvm.F
203!|| spmd_tri22vox ../engine/source/mpi/interfaces/spmd_tri22vox.F
204!|| velvecc22 ../engine/source/output/anim/generate/velvec.F
205!|| velvecz22 ../engine/source/output/anim/generate/velvecz22.F
206!|| voln22 ../engine/source/interfaces/int22/voln22.F
207!|| w_bufbric_22 ../engine/source/interfaces/int22/w_bufbric_22.F
208!|| write_cut_cell_buffer ../engine/source/interfaces/int22/write_cut_cell_buffer.F
209!||--- uses -----------------------------------------------------
210!|| i22edge_mod ../common_source/modules/interfaces/cut-cell-buffer_mod.F
211!||====================================================================
213C-----------------------------------------------
214C M o d u l e s
215C-----------------------------------------------
216 USE i22edge_mod
217C-----------------------------------------------
218C m y _ r e a l
219C-----------------------------------------------
220#include "my_real.inc"
221C-----------------------------------------------
222
223 !##########################################!
224 !### OUTPUT : GENERAL DEBUG ###!
225 !##########################################!
226 INTEGER :: ibug22
227
228 !##########################################!
229 !### OUTPUT : MAIN SEARCH ALGO ###!
230 !##########################################!
231 INTEGER :: ibug22_tri
232
233 !##########################################!
234 !### OUTPUT : VOXEL SEARCH ###!
235 !##########################################!
236 INTEGER :: ibug22_trivox
237
238 !###########################################!
239 !### OUTPUT : INTERSECTIONS CALCULATION ###!
240 !###########################################!
242
243 !###########################################!
244 !### OUTPUT : SUBVOLUME CALCULATION ###!
245 !###########################################!
246 INTEGER :: ibug22_subvol
247
248 !###########################################!
249 !### OUTPUT : SUBFACE CALCULATION ###!
250 !###########################################!
251 INTEGER :: ibug22_aera
252
253 !###########################################!
254 !### OUTPUT : SUBVOLUMES IDENTIFICATION ##!
255 !###########################################!
256 INTEGER :: ibug22_ident
257
258 !###########################################!
259 !### OUTPUT : CONVECTIVES FLUXES ##!
260 !###########################################!
261 INTEGER :: ibug22_convec
262
263 !###########################################!
264 !### OUTPUT : EOS ##!
265 !###########################################!
266 INTEGER :: ibug22_eos
267
268 !###########################################!
269 !### OUTPUT : DVOL ##!
270 !###########################################!
271 INTEGER :: ibug22_dvol
272
273 !###########################################!
274 !### OUTPUT : SIGEPS51 ##!
275 !###########################################!
277
278 !###########################################!
279 !### OUTPUT : SIGEPS37 ##!
280 !###########################################!
282
283 !###########################################!
284 !### OUTPUT : SUBVOLUME SOUND SPEEDS ##!
285 !###########################################!
286 INTEGER :: ibug22_ssp
287
288 !###########################################!
289 !### OUTPUT : FLUXES ##!
290 !###########################################!
291 INTEGER :: ibug22_flux
292
293 !###########################################!
294 !### OUTPUT : INTER22 ADDITIONAL FLUXES ##!
295 !###########################################!
296 INTEGER :: ibug22_flux22
297
298 !###########################################!
299 !### OUTPUT : VOLUMETRIC FRACTIONS AFLUXT ##!
300 !###########################################!
301 INTEGER :: ibug22_volfrac
302
303 !###########################################!
304 !### OUTPUT : CONTINUITY CONDITIONS ##!
305 !###########################################!
306 INTEGER :: ibug22_conti
307
308 !###########################################!
309 !### OUTPUT : INTERNAL FORCES ##!
310 !###########################################!
311 INTEGER :: ibug22_fint
312
313 !###########################################!
314 !### OUTPUT : SININT ##!
315 !###########################################!
316 INTEGER :: ibug22_sinit
317
318 !###########################################!
319 !### OUTPUT : NODALP ##!
320 !###########################################!
321 INTEGER :: ibug22_nodalp
322
323 !###########################################!
324 !### OUTPUT : AMOUIL ##!
325 !###########################################!
326 INTEGER :: ibug22_amouil
327
328 !###########################################!
329 !### OUTPUT : UPWIND/DOWNWIND TRANSPORT ##!
330 !###########################################!
332
333 !###########################################!
334 !### OUTPUT : CONTACT FORCES ##!
335 !###########################################!
336 INTEGER :: ibug22_fcont
338
339 !###########################################!
340 !### OUTPUT : WET SURFACE ##!
341 !###########################################!
342 INTEGER :: ibug22_swet
343
344 !###########################################!
345 !### OUTPUT : VELOCITY INTERPOLATION ##!
346 !###########################################!
347 INTEGER :: ibug22_destroy
348
349 !###########################################!
350 !### OUTPUT : MERGE/DEMERGE INFO ##!
351 !###########################################!
352 INTEGER :: ibug22_merge
353
354 !###########################################!
355 !### OUTPUT : MERGE/DEMERGE INFO ##!
356 !###########################################!
358
359 !###########################################!
360 !### OUTPUT : HM tcl for Cut Cell Buffer ##!
361 !###########################################!
363
364 !###########################################!
365 !### OUTPUT : HM tcl for Intersec. Points ##!
366 !###########################################!
368
369 !###########################################!
370 !### OUTPUT : HM tcl for Intersec. Points ##!
371 !###########################################!
372 INTEGER :: ibug22_truss
374
375 !###########################################!
376 !### OUTPUT : Velocity for CFL ##!
377 !###########################################!
378 INTEGER :: ibug22_vd2
379
380 !###########################################!
381 !### OUTPUT : Cinematic Time Step ##!
382 !###########################################!
383 INTEGER :: ibug22_dtmin
384
385 !###########################################!
386 !### OUTPUT : output on NVAR value ##!
387 !###########################################!
388 INTEGER :: ibug22_nvar
389
390 !###########################################!
391 !### OUTPUT : output on NVAR value ##!
392 !###########################################!
393 INTEGER :: ibug22_itrimat
394
395 !###########################################!
396 !### OUTPUT : LAW51 ANTIDIFFUSIVE ALGO ##!
397 !###########################################!
399
400 !###########################################!
401 !### OUTPUT : LAW51 ANTIDIFFUSIVE ALGO ##!
402 !###########################################!
403 INTEGER :: ibug22_upwind
404
405 !###########################################!
406 !### OUTPUT : LINK SWITCHING ##!
407 !###########################################!
409
410 !###########################################!
411 !### OUTPUT : TOPOLOGICAL TRACKING ##!
412 !###########################################!
414
415 !###########################################!
416 !### OUTPUT : PREDICTION/CORRECTION ALGO ##!
417 !###########################################!
419
420 !###########################################!
421 !### OUTPUT : MATERIAL BUFFER FILLING ##!
422 !###########################################!
423 INTEGER :: ibug22_fillmat
424
425 !###########################################!
426 !### OUTPUT : CUT CELL BUFFER LIST ##!
427 !###########################################!
429
430 !###########################################!
431 !### OUTPUT : CUT CELL BUFFER LENGTH ##!
432 !###########################################!
434C-----------------------------------------------
435
436
437 INTEGER ::
438 . min_ix, min_iy, min_iz, !indice voxel min utilise
439 . max_ix, max_iy, max_iz !indice voxel max utilise
440
441 INTEGER ::
442 . CURRENT_ADD,
443 . nrtm_t_max ! (nombre maximum des valeurs locales)
444
445 my_real, ALLOCATABLE ::
446 . irect_l(:,:) !IRECT_L <=> IRECT + XREM (T=thread, L=Localdomain)
447 INTEGER ::
448 . nirect_l
449 INTEGER :: siz_irect_l
450 parameter(siz_irect_l = 26) !longueur buffer (nodes, coordinates, min, max, stif...)
451
452 INTEGER, ALLOCATABLE, DIMENSION(:) ::
453 . nsnr_g
454
455 my_real, ALLOCATABLE,DIMENSION(:) ::
456 . xmaxs, xmins,
457 . ymaxs, ymins,
458 . zmaxs, zmins
459
460 my_real, ALLOCATABLE,DIMENSION(:,:) ::
461 . bminma_lag_spmd
462 my_real ::
463 . bminma_lag_g(6), ! lagrangian bounds for global domain (for int22)
464 . bminma_lag_r(6) ! lagrangian remotes domain (for int22)
465
466 my_real, ALLOCATABLE,DIMENSION(:) ::
467 . xmaxe, xmine,
468 . ymaxe, ymine,
469 . zmaxe, zmine
470
471 INTEGER :: siz_xrem
472 parameter(siz_xrem = 26)
473
474 INTEGER, POINTER, DIMENSION(:) ::
476
477 INTEGER, DIMENSION(:,:),ALLOCATABLE ::
479
480 INTEGER ::
481 . imin, imax
482
483 INTEGER, DIMENSION(:),ALLOCATABLE ::
484 . ubound, lbound,
485 . icandb !ICANDB:(id of brick which is candidate for access in BRICK_LIST) IGROUP->ICANDB
486
487 INTEGER ::
488 . nb !NB: number of candidates (bricks)
489
490 INTEGER, ALLOCATABLE, DIMENSION(:) ::
491 . eix1,eiy1,
492 . eiz1,eix2,
493 . eiy2,eiz2
494
495 INTEGER, ALLOCATABLE, DIMENSION(:) :: list_b, list_e, !list of bricks in CAND_B(1:RI_STOK) & CAND_e(1:RI_STOK), no duplicates
496 . iadf, iadl, ! IADF : add(list_B)->First_add(cand_b) IADL : add(list_B)->Last_add(cand_b) (CAND_B is connected regarde brick ids)
497 . get_list_e_pos_from_cand_e_pos , ! IAD_CAND_TO_LIST : add(CAND_E)->add(List_E) surjective
498 . list_b_add
499 INTEGER :: ncandb, ncande,
500 . ncandb_add
501
502 INTEGER, DIMENSION(:), ALLOCATABLE :: itagb, itage, diag22
503
504 my_real,
505 . dimension(:,:,:), allocatable :: vne, vza, vzb, pta
506
507 my_real,
508 . dimension(:,:), allocatable :: basisconst, pt z
509
510 INTEGER, DIMENSION(:), ALLOCATABLE :: nbsubtriangles
511
512 INTEGER, ALLOCATABLE, DIMENSION(:) :: id_,idloc_,ng_,nel_ !sinit_22.F
513
514 my_real, ALLOCATABLE, DIMENSION(:) :: phi22
515 my_real, ALLOCATABLE, DIMENSION(:) :: int22_fcell_anim
516
517 INTEGER :: nbcut_max
518 !PARAMETER (NB_CUT_MAX = 26)
519
521
522 my_real, ALLOCATABLE, DIMENSION(:,:) :: tmp22array
523
524 END MODULE i22tri_mod
subroutine alefvm_sfint3(ixs, nv46, ale_connect, ialefvm_flg, ipm, iparg, ng, x, iad22, nel)
subroutine alefvm_sfint3_int22(ixs, nv46, itask, nbf, nbl, nin)
subroutine amass3p(fskym, rho, volgp, tag22, volu, iads, off, ixs, nel, nft, jeul)
Definition amass3p.F:37
#define my_real
Definition cppsort.cpp:32
subroutine i22datainit_db()
integer function iface(ip, n)
Definition iface.F:35
integer ninter22
number of /INTER/TYPE22
type(edge_entity), dimension(:,:), allocatable, target edge_list
type(brick_entity), dimension(:,:), allocatable, target brick_list
type(int22_buf_t) int22_buf
integer, dimension(:), pointer lchain_next
integer, dimension(:), allocatable icandb
integer, dimension(:), allocatable ng_
integer, dimension(:), allocatable list_e
integer, dimension(:), allocatable id_
integer, dimension(:), allocatable ubound
integer, dimension(:), allocatable iadf
integer, dimension(:), pointer lchain_elem
integer ibug22_orphannodes
integer, dimension(:), allocatable get_list_e_pos_from_cand_e_pos
integer, dimension(:), allocatable eiz2
integer, dimension(:), allocatable nsnr_g
integer, dimension(:), allocatable list_b_add
integer ibug22_outp_intpoint
integer, dimension(:), allocatable eiz1
integer, dimension(:,:), allocatable n1_tab
integer, dimension(:), allocatable itage
integer, dimension(:,:), allocatable add_face
integer, dimension(:), allocatable iadl
integer, dimension(:), allocatable itagb
integer ibug22_undirectlink
integer, dimension(:), allocatable diag22
integer, dimension(:), pointer lchain_last
integer, dimension(:), allocatable nbsubtriangles
integer, dimension(:), allocatable lbound
integer, dimension(:), allocatable nel_
integer, dimension(:), allocatable eiy2
integer ibug22_spe_convec
integer, dimension(:), allocatable eix2
integer, dimension(:), allocatable list_b
integer ibug22_link_switch
integer ibug22_prediction
integer, dimension(:,:), allocatable add_edge
integer, dimension(:), allocatable eix1
integer ibug22_outp_ccbuffer
integer, dimension(:), allocatable eiy1
integer, dimension(:), allocatable idloc_