38 double r2h1m2x,i2h1m2x;
54 here = here->DIOnextInstance) {
68 r1h1x = *(job->
r1H1ptr + (here->DIOposPrimeNode)) -
69 *(job->
r1H1ptr + (here->DIOnegNode));
70 i1h1x = *(job->
i1H1ptr + (here->DIOposPrimeNode)) -
71 *(job->
i1H1ptr + (here->DIOnegNode));
75 temp =
D1n2F1(g2,r1h1x,i1h1x);
76 itemp =
D1i2F1(g2,r1h1x,i1h1x);
80 if ((cdiff2 + cjunc2) != 0.0) {
82 (cdiff2+cjunc2,r1h1x,i1h1x);
84 ((cdiff2 + cjunc2),r1h1x,i1h1x);
87 *(ckt->
CKTrhs + (here->DIOposPrimeNode)) -= temp;
88 *(ckt->
CKTirhs + (here->DIOposPrimeNode)) -= itemp;
89 *(ckt->
CKTrhs + (here->DIOnegNode)) += temp;
90 *(ckt->
CKTirhs + (here->DIOnegNode)) += itemp;
100 cdiff3=here->cdif_x3;
102 cjunc2=here->cjnc_x2;
103 cjunc3=here->cjnc_x3;
106 r1h1x = *(job->
r1H1ptr + (here->DIOposPrimeNode)) -
107 *(job->
r1H1ptr + (here->DIOnegNode));
108 i1h1x = *(job->
i1H1ptr + (here->DIOposPrimeNode)) -
109 *(job->
i1H1ptr + (here->DIOnegNode));
112 r2h11x = *(job->
r2H11ptr + (here->DIOposPrimeNode)) -
113 *(job->
r2H11ptr + (here->DIOnegNode));
114 i2h11x = *(job->
i2H11ptr + (here->DIOposPrimeNode)) -
115 *(job->
i2H11ptr + (here->DIOnegNode));
119 temp =
D1n3F1(g2,g3,r1h1x,i1h1x,r2h11x,
121 itemp =
D1i3F1(g2,g3,r1h1x,i1h1x,r2h11x,
127 if ((cdiff2 + cjunc2) != 0.0) {
129 (cdiff2+cjunc2,cdiff3+cjunc3,r1h1x,
130 i1h1x,r2h11x,i2h11x);
133 (cdiff2+cjunc2,cdiff3+cjunc3,r1h1x,
134 i1h1x,r2h11x,i2h11x);
139 *(ckt->
CKTrhs + (here->DIOposPrimeNode)) -= temp;
140 *(ckt->
CKTirhs + (here->DIOposPrimeNode)) -= itemp;
141 *(ckt->
CKTrhs + (here->DIOnegNode)) += temp;
142 *(ckt->
CKTirhs + (here->DIOnegNode)) += itemp;
151 cdiff2=here->cdif_x2;
152 cdiff3=here->cdif_x3;
154 cjunc2=here->cjnc_x2;
155 cjunc3=here->cjnc_x3;
158 r1h1x = *(job->
r1H1ptr + (here->DIOposPrimeNode)) -
159 *(job->
r1H1ptr + (here->DIOnegNode));
160 i1h1x = *(job->
i1H1ptr + (here->DIOposPrimeNode)) -
161 *(job->
i1H1ptr + (here->DIOnegNode));
164 r1h2x = *(job->
r1H2ptr + (here->DIOposPrimeNode)) -
165 *(job->
r1H2ptr + (here->DIOnegNode));
166 i1h2x = *(job->
i1H2ptr + (here->DIOposPrimeNode)) -
167 *(job->
i1H2ptr + (here->DIOnegNode));
171 temp =
D1nF12(g2,r1h1x,i1h1x,r1h2x,i1h2x);
172 itemp =
D1iF12(g2,r1h1x,i1h1x,r1h2x,i1h2x);
177 if ((cdiff2 + cjunc2) != 0.0) {
179 (cdiff2+cjunc2,r1h1x,i1h1x,r1h2x,i1h2x);
181 (cdiff2+cjunc2,r1h1x,i1h1x,r1h2x,i1h2x);
186 *(ckt->
CKTrhs + (here->DIOposPrimeNode)) -= temp;
187 *(ckt->
CKTirhs + (here->DIOposPrimeNode)) -= itemp;
188 *(ckt->
CKTrhs + (here->DIOnegNode)) += temp;
189 *(ckt->
CKTirhs + (here->DIOnegNode)) += itemp;
198 cdiff2=here->cdif_x2;
199 cdiff3=here->cdif_x3;
201 cjunc2=here->cjnc_x2;
202 cjunc3=here->cjnc_x3;
205 r1h1x = *(job->
r1H1ptr + (here->DIOposPrimeNode)) -
206 *(job->
r1H1ptr + (here->DIOnegNode));
207 i1h1x = *(job->
i1H1ptr + (here->DIOposPrimeNode)) -
208 *(job->
i1H1ptr + (here->DIOnegNode));
211 r1h2x = *(job->
r1H2ptr + (here->DIOposPrimeNode)) -
212 *(job->
r1H2ptr + (here->DIOnegNode));
213 i1hm2x = -(*(job->
i1H2ptr + (here->DIOposPrimeNode)) -
214 *(job->
i1H2ptr + (here->DIOnegNode)));
218 temp =
D1nF12(g2,r1h1x,i1h1x,r1h2x,i1hm2x);
219 itemp =
D1iF12(g2,r1h1x,i1h1x,r1h2x,i1hm2x);
224 if ((cdiff2 + cjunc2) != 0.0) {
226 (cdiff2+cjunc2,r1h1x,i1h1x,r1h2x,i1hm2x);
228 (cdiff2+cjunc2,r1h1x,i1h1x,r1h2x,i1hm2x);
233 *(ckt->
CKTrhs + (here->DIOposPrimeNode)) -= temp;
234 *(ckt->
CKTirhs + (here->DIOposPrimeNode)) -= itemp;
235 *(ckt->
CKTrhs + (here->DIOnegNode)) += temp;
236 *(ckt->
CKTirhs + (here->DIOnegNode)) += itemp;
245 cdiff2=here->cdif_x2;
246 cdiff3=here->cdif_x3;
248 cjunc2=here->cjnc_x2;
249 cjunc3=here->cjnc_x3;
252 r1h1x = *(job->
r1H1ptr + (here->DIOposPrimeNode)) -
253 *(job->
r1H1ptr + (here->DIOnegNode));
254 i1h1x = *(job->
i1H1ptr + (here->DIOposPrimeNode)) -
255 *(job->
i1H1ptr + (here->DIOnegNode));
258 r1h2x = *(job->
r1H2ptr + (here->DIOposPrimeNode)) -
259 *(job->
r1H2ptr + (here->DIOnegNode));
260 i1hm2x = -(*(job->
i1H2ptr + (here->DIOposPrimeNode)) -
261 *(job->
i1H2ptr + (here->DIOnegNode)));
264 r2h11x = *(job->
r2H11ptr + (here->DIOposPrimeNode)) -
265 *(job->
r2H11ptr + (here->DIOnegNode));
266 i2h11x = *(job->
i2H11ptr + (here->DIOposPrimeNode)) -
267 *(job->
i2H11ptr + (here->DIOnegNode));
270 r2h1m2x = *(job->
r2H1m2ptr + (here->DIOposPrimeNode)) -
272 i2h1m2x = *(job->
i2H1m2ptr + (here->DIOposPrimeNode)) -
277 temp =
D1n2F12(g2,g3,r1h1x,i1h1x,r1h2x,
278 i1hm2x,r2h11x,i2h11x,
280 itemp =
D1i2F12(g2,g3,r1h1x,i1h1x,
281 r1h2x,i1hm2x,r2h11x,i2h11x,
287 if ((cdiff2 + cjunc2) != 0.0) {
289 D1i2F12(cdiff2+cjunc2,cdiff3+cjunc3,
290 r1h1x,i1h1x,r1h2x,i1hm2x,r2h11x,
291 i2h11x,r2h1m2x,i2h1m2x);
293 D1n2F12(cdiff2+cjunc2,cdiff3+cjunc3,
294 r1h1x,i1h1x,r1h2x,i1hm2x,r2h11x,
295 i2h11x,r2h1m2x,i2h1m2x);
300 *(ckt->
CKTrhs + (here->DIOposPrimeNode)) -= temp;
301 *(ckt->
CKTirhs + (here->DIOposPrimeNode)) -= itemp;
302 *(ckt->
CKTrhs + (here->DIOnegNode)) += temp;
303 *(ckt->
CKTirhs + (here->DIOnegNode)) += itemp;
int DIOdSetup(DIOmodel *model, CKTcircuit *ckt)
DIOinstance * DIOinstances
struct sDIOmodel * DIOnextModel