30 SUBROUTINE thnod_count(ITHGRP, NTHGRP2, WA_SIZE, INDEX_WA_NOD, ITHBUF, WEIGHT,SITHBUF)
38#include "implicit_f.inc"
45#include "submodel.inc"
49 INTEGER,
INTENT(IN) :: SITHBUF
50 INTEGER ITHBUF(*),WEIGHT(NUMNOD)
51 INTEGER,
INTENT(inout) :: WA_SIZE,NTHGRP2
52 INTEGER,
DIMENSION(2*NTHGRP2+1),
INTENT(inout) ::
53 INTEGER,
DIMENSION(NITHGR,*),
INTENT(in) :: ITHGRP
58 LOGICAL :: BOOL,CONDITION
59 INTEGER :: N, I, J, ISK, II, L, K, IUN, IFRA, N1,IPLY,IDIR
60 INTEGER :: NN,IAD,IADV,NVAR,ITYP,NITER,J_FIRST
61 INTEGER,
DIMENSION(NTHGRP2) :: INDEX_NOD
64 . xl(3),dl(3),vl(3),al(3),vrl(3),arl(3),od(3),vo(3),ao(3),
74 index_nod(1:nthgrp2) = 0
87 isk = 1 + ithbuf(j+nn)
89 IF(.NOT. condition) condition = (weight(i) == 0)
95 wa_size = wa_size + nvar + 1
96 ELSEIF(isk<=numskw+1+nsubmod)
THEN
98 wa_size = wa_size + nvar + 1
102 wa_size = wa_size + nvar + 1
110 isk = 1 + ithbuf(j+nn)
112 IF(.NOT. condition) condition = (weight(i) == 0)
117 wa_size = wa_size + nvar + 1
118 ELSEIF(isk<=numskw+1+nsubmod)
THEN
121 wa_size = wa_size + nvar + 1
125 wa_size = wa_size + nvar + 1
129 index_nod(n) = wa_size
136 IF(bool.EQV..true.)
THEN
137 IF( index_nod(i)/=0 )
THEN
147 index_wa_nod(j) = index_nod(j_first)
149 index_wa_nod(j) = j_first
150 DO i=j_first+1,nthgrp2
151 IF( index_nod(i)-index_nod(i-1)>0 )
THEN
153 index_wa_nod(j) = index_nod(i)
159 index_wa_nod(2*nthgrp2+1) = j
subroutine thnod_count(ithgrp, nthgrp2, wa_size, index_wa_nod, ithbuf, weight, sithbuf)