FrontISTR  5.7.0
Large-scale structural analysis program with finit element method
hecmw_adapt_active.f90
Go to the documentation of this file.
1 !-------------------------------------------------------------------------------
2 ! Copyright (c) 2019 FrontISTR Commons
3 ! This software is released under the MIT License, see LICENSE.txt
4 !-------------------------------------------------------------------------------
6 
7 subroutine hecmw_adapt_active (hecMESH)
8  !C
9  !C***
10  !C*** hecmw_adapt_active
11  !C***
12  !C
13  !C FIND active NODEs, EDGEs, ELEMs
14  !C
15  use hecmw_util
16  type (hecmwST_local_mesh) :: hecMESH
17  !C
18  !C-- arrays
19  allocate (hecmesh%adapt_edge_home(hecmesh%n_adapt_edge))
20  allocate (hecmesh%adapt_act_edge (hecmesh%n_adapt_edge))
21 
22  hecmesh%adapt_edge_home= hecmesh%my_rank
23  hecmesh%adapt_act_edge = 0
24 
25  !C
26  !C-- EDGE home
27  icou= 0
28  do ie= 1, hecmesh%n_adapt_edge
29  in1= hecmesh%adapt_edge_node(2*ie-1)
30  in2= hecmesh%adapt_edge_node(2*ie )
31  ip1= hecmesh%node_ID(2*in1)
32  ip2= hecmesh%node_ID(2*in2)
33  hecmesh%adapt_edge_home(ie)= min(ip1,ip2)
34 
35  if ((ip1.eq.hecmesh%my_rank.and.ip2.eq.hecmesh%my_rank).or. &
36  & (ip1.eq.hecmesh%my_rank.and.ip1.lt.ip2 ).or. &
37  & (ip2.eq.hecmesh%my_rank.and.ip2.lt.ip1 )) then
38  icou = icou + 1
39  hecmesh%adapt_act_edge(icou)= ie
40  endif
41  enddo
42  hecmesh%n_adapt_act_edge= icou
43 
44  return
45 end
46 
47 
48 
49 
50 
51 
hecmw_adapt_active
subroutine hecmw_adapt_active(hecMESH)
Adaptive Mesh Refinement.
Definition: hecmw_adapt_active.f90:8
hecmw_util
I/O and Utility.
Definition: hecmw_util_f.F90:7