35
36
37
39 USE my_alloc_mod
40
41
42
43#include "implicit_f.inc"
44#include "comlock.inc"
45
46
47
48#include "param_c.inc"
49#include "parit_c.inc"
50#include "remesh_c.inc"
51
52
53
54 INTEGER SH4TREE(KSH4TREE,*), SH3TREE(KSH3TREE,*),
55 . IXC(NIXC,*), IXTG(,*)
56
57
58
59 INTEGER N,NN,LEVEL,IP,NLEV,PTR,,
60 . J,NI,IERR
61 INTEGER,DIMENSION(:),ALLOCATABLE :: LTMP4
62 INTEGER,DIMENSION(:),ALLOCATABLE :: LTMP3
63 INTEGER,DIMENSION(:),ALLOCATABLE :: ITRI
64 INTEGER,DIMENSION(:),ALLOCATABLE :: SORT_INDEX
65 INTEGER WORK(70000)
66
71
72 IF(iparit/=0)THEN
73
75 itri(nn) = ixc(nixc,
lsh4act(nn))
76 ENDDO
80 lsh4act(nn)=ltmp4(sort_index(nn))
81 END DO
82
84 itri(nn) = ixtg(nixtg,
lsh3act(nn))
85 ENDDO
89 lsh3act(nn)=ltmp3(sort_index(nn))
90 END DO
91
92 END IF
93
95
98 level=sh4tree(3,n)
100 ltmp4(nn)=n
101 END DO
102
103 DO level=1,levelmax
105 END DO
106
107 DO level=levelmax+1,1,-1
109 END DO
111
113 n =ltmp4(nn)
114 level=sh4tree(3,n)
117 END DO
118
119 DO level=levelmax+1,1,-1
121 END DO
123
126
128 DO level=0,levelmax-1
132 son=sh4tree(2,n)
133 ptr=ptr+1
135 ptr=ptr+1
137 ptr=ptr+1
139 ptr=ptr+1
141 END DO
143 ptr=ptr+1
145 END DO
146 END DO
148
149
150
151
153
156 level=sh3tree(3,n)
158 ltmp3(nn)=n
159 END DO
160
161 DO level=1,levelmax
163 END DO
164
165 DO level=levelmax+1,1,-1
167 END DO
169
171 n =ltmp3(nn)
172 level=sh3tree(3,n)
175 END DO
176
177 DO level=levelmax+1,1,-1
179 END DO
181
184
186 DO level=0,levelmax-1
190 son=sh3tree(2,n)
191 ptr=ptr+1
193 ptr=ptr+1
195 ptr=ptr+1
197 ptr=ptr+1
199 END DO
201 ptr=ptr+1
203 END DO
204 END DO
206
207 DEALLOCATE(ltmp4)
208 DEALLOCATE(ltmp3)
209 DEALLOCATE(itri)
210 DEALLOCATE(sort_index)
211
212 RETURN
void my_orders(int *mode, int *iwork, int *data, int *index, int *n, int *irecl)
integer, dimension(:), allocatable lsh3act
integer, dimension(:), allocatable lsh4kin
integer, dimension(:), allocatable lsh3kin
integer, dimension(:), allocatable psh4kin
integer, dimension(:), allocatable psh3kin
integer, dimension(:), allocatable psh4act
integer, dimension(:), allocatable lsh4act
integer, dimension(:), allocatable psh3act