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) :: INDEX_WA_NOD
53 INTEGER,
DIMENSION(NITHGR,*),
INTENT(in) :: ITHGRP
58 LOGICAL :: BOOL,CONDITION
59 INTEGER :: N, I, J, ISK, II, IUN
60 INTEGER :: NN, IAD, IADV, NVAR, ITYP, J_FIRST
61 INTEGER,
DIMENSION(NTHGRP2) :: INDEX_NOD
70 index_nod(1:nthgrp2) = 0
83 isk = 1 + ithbuf(j+nn)
85 IF(.NOT. condition) condition = (weight(i) == 0)
91 wa_size = wa_size + nvar + 1
92 ELSEIF(isk<=numskw+1+nsubmod)
THEN
94 wa_size = wa_size + nvar + 1
98 wa_size = wa_size + nvar + 1
106 isk = 1 + ithbuf(j+nn)
108 IF(.NOT. condition) condition = (weight(i) == 0)
113 wa_size = wa_size + nvar + 1
114 ELSEIF(isk<=numskw+1+nsubmod)
THEN
117 wa_size = wa_size + nvar + 1
121 wa_size = wa_size + nvar + 1
125 index_nod(n) = wa_size
132 IF(bool.EQV..true.)
THEN
133 IF( index_nod(i)/=0 )
THEN
143 index_wa_nod(j) = index_nod(j_first)
145 index_wa_nod(j) = j_first
146 DO i=j_first+1,nthgrp2
147 IF( index_nod(i)-index_nod(i-1)>0 )
THEN
149 index_wa_nod(j) = index_nod(i)
155 index_wa_nod(2*nthgrp2+1) = j
subroutine thnod_count(ithgrp, nthgrp2, wa_size, index_wa_nod, ithbuf, weight, sithbuf)