32
33
34
35#include "implicit_f.inc"
36
37
38
39#include "com01_c.inc"
40#include "com04_c.inc"
41#include "param_c.inc"
42
43
44
45 INTEGER IADD(*),IPARG(NPARG,*),
46
47
48
49
50
51 INTEGER II(4),IE,NG, ITY, LFT, LLT, KPT, N, I, J,
52 . IPRT, NEL, IAD, NPAR, NFT, IMID,IALEL,MTN,
53 . NN1,NN2,NN3,NN4,NN5,NN6,NN7,NN8,JJ, K,NAX1D
54
55 ie = 0
56
57 nn1 = 1
58 nn2 = 1
59 nn3 = 1
60 nn4 = nn3
61 nn5 = nn4
62 nn6 = nn5
63 nn7 = nn6 + numelt
64 nn8 = nn7 + numelp
65
66
67
68 npar = 0
69
70
71
72 IF(numelp + numelt + numelr/=0)THEN
73 jj = 0
74 DO 500 iprt=1,npart
75 IF(mater(iprt)/=3)GOTO 500
76 IF(numelx>0)THEN
77 IF(nfacptx(1,iprt)>0)GOTO 500
78 ENDIF
79 npar = npar + 1
80 DO 490 ng=1,ngroup
81 mtn =iparg(1,ng)
82 nel =iparg(2,ng)
83 nft =iparg(3,ng)
84 iad =iparg(4,ng)
85 ity =iparg(5,ng)
86 lft=1
87 llt=nel
88
89
90
91 IF(ity==4)THEN
92 DO 140 i=lft,llt
93 n = i + nft
94 IF(ipartt(n)/=iprt)GOTO 140
95 ii(1) = ixt(2,n)-1
96 ii(2) = ixt(3,n)-1
98 ie = ie + 1
99 el2fa(nn6+n) = ie
100 jj = jj + 2
101 140 CONTINUE
102
103
104
105 ELSEIF(ity==5)THEN
106 DO 150 i=lft,llt
107 n = i + nft
108 IF(ipartp(n)/=iprt)GOTO 150
109 ii(1) = ixp(2,n)-1
110 ii(2) = ixp(3,n)-1
112 ie = ie + 1
113 el2fa(nn7+n) = ie
114 jj = jj + 2
115 150 CONTINUE
116
117
118
119 ELSEIF(ity==6)THEN
120 DO 160 i=lft,llt
121 n = i + nft
122 IF(ipartr(n)/=iprt)GOTO 160
123 ii(1) = ixr(2,n)-1
124 ii(2) = ixr(3,n)-1
126 ie = ie + 1
127 el2fa(nn8+n) = ie
128 jj = jj + 2
129 IF(mtn==3)THEN
130 ii(1) = ixr(3,n)-1
131 ii(2) = ixr(4,n)-1
133 ie = ie + 1
134 jj = jj + 2
135 ENDIF
136 160 CONTINUE
137 ELSE
138 ENDIF
139 490 CONTINUE
140
141
142
143 iadd(npar) = ie
144 500 CONTINUE
145 ENDIF
146
147
148
149 IF (nanim1d>0) THEN
150 nax1d=0
151 DO 600 iprt=1,npart
152 IF(mater(iprt)/=3)GOTO 600
153 IF(nfacptx(1,iprt)/=0) THEN
154 npar = npar + 1
155 DO j=1,nfacptx(1,iprt)
156 ii(1)=ixedge(1,nax1d+j)-1
157 ii(2)=ixedge(2,nax1d+j)-1
159 jj = jj+2
160 ENDDO
161 nax1d=nax1d+nfacptx(1,iprt)
162 ie=ie+nfacptx(1,iprt)
163 iadd(npar)=ie
164 ENDIF
165 600 CONTINUE
166 ENDIF
167
168 RETURN
void write_i_c(int *w, int *len)