SPEED
MAKE_LOC_NODES_NUMERATION.f90
Go to the documentation of this file.
1! Copyright (C) 2012 The SPEED FOUNDATION
2! Author: Ilario Mazzieri
3!
4! This file is part of SPEED.
5!
6! SPEED is free software; you can redistribute it and/or modify it
7! under the terms of the GNU Affero General Public License as
8! published by the Free Software Foundation, either version 3 of the
9! License, or (at your option) any later version.
10!
11! SPEED is distributed in the hope that it will be useful, but
12! WITHOUT ANY WARRANTY; without even the implied warranty of
13! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14! Affero General Public License for more details.
15!
16! You should have received a copy of the GNU Affero General Public License
17! along with SPEED. If not, see <http://www.gnu.org/licenses/>.
18
27
28
29 subroutine make_loc_nodes_numeration(nnloc, local_n_num, nrcv, node_rcv)
30
31 implicit none
32
33 integer*4 :: nnloc, nrcv
34 integer*4 :: i,j
35
36 integer*4, dimension(nnloc) :: copy_n_num
37 integer*4, dimension(nrcv) :: node_rcv
38 integer*4, dimension(nnloc), intent(inout) :: local_n_num
39
40 do i = 1, nrcv
41 do j = 1, nnloc
42 if(node_rcv(i) .eq. local_n_num(j)) local_n_num(j) = 0
43 enddo
44 enddo
45
46 i = 1
47 do j = 1, nnloc
48 if(local_n_num(j) .ne. 0) then
49 copy_n_num(i) = local_n_num(j)
50 i = i + 1
51 endif
52 enddo
53
54 copy_n_num(nnloc - nrcv + 1 : nnloc) = node_rcv
55 local_n_num = copy_n_num
56
57 end subroutine make_loc_nodes_numeration
subroutine make_loc_nodes_numeration(nnloc, local_n_num, nrcv, no
Makes local numeration vector.