1 namespace gxsim_pre_6dj8_pp_6v6 {
2 
3 #include <resources/valve.h>
4 /* ------------------------------------------------------------
5 name: "pre 6DJ8/ push-pull 6V6"
6 Code generated with Faust 2.15.11 (https://faust.grame.fr)
7 Compilation options: cpp, -double -ftz 0
8 ------------------------------------------------------------ */
9 
10 
11 
12 /* link with : "" */
13 
module_faustpower2_f(double value)14 static double module_faustpower2_f(double value) {
15 	return (value * value);
16 
17 }
18 
19 
20 class module : public dsp {
21 
22  private:
23 
24 	FAUSTFLOAT fVslider0;
25 	double fRec1[2];
26 	double fRec0[2];
27 	int fSamplingFreq;
28 	double fConst0;
29 	double fConst1;
30 	double fConst2;
31 	double fConst3;
32 	double fConst4;
33 	double fConst5;
34 	double fConst6;
35 	double fConst7;
36 	double fRec23[2];
37 	double fRec22[3];
38 	double fConst8;
39 	double fConst9;
40 	double fConst10;
41 	double fRec24[2];
42 	double fRec21[3];
43 	double fConst11;
44 	double fConst12;
45 	double fRec20[2];
46 	double fRec34[2];
47 	double fRec33[3];
48 	double fConst13;
49 	double fConst14;
50 	double fConst15;
51 	double fRec35[2];
52 	double fRec32[3];
53 	double fRec31[2];
54 	double fConst16;
55 	double fConst17;
56 	double fConst18;
57 	double fConst19;
58 	FAUSTFLOAT fVslider1;
59 	double fRec41[2];
60 	double fRec40[2];
61 	double fConst20;
62 	double fConst21;
63 	double fConst22;
64 	double fVec0[2];
65 	double fConst23;
66 	double fRec45[2];
67 	double fRec44[2];
68 	double fConst24;
69 	double fConst25;
70 	double fRec43[3];
71 	double fConst26;
72 	double fConst27;
73 	double fRec42[3];
74 	double fVec1[2];
75 	double fRec39[2];
76 	double fRec38[3];
77 	double fConst28;
78 	double fConst29;
79 	double fConst30;
80 	double fRec46[2];
81 	double fRec37[3];
82 	double fRec36[2];
83 	double fRec30[3];
84 	double fRec29[2];
85 	double fRec28[2];
86 	double fRec27[3];
87 	double fRec47[2];
88 	double fRec26[3];
89 	double fRec25[2];
90 	double fRec19[3];
91 	double fRec18[2];
92 	double fRec17[3];
93 	double fRec48[2];
94 	double fRec16[3];
95 	double fRec15[2];
96 	double fRec49[2];
97 	int IOTA;
98 	double fVec2[32768];
99 	double fConst31;
100 	int iConst32;
101 	double fRec51[2];
102 	double fRec50[2];
103 	FAUSTFLOAT fVslider2;
104 	double fRec52[2];
105 	double fConst33;
106 	double fConst34;
107 	double fConst35;
108 	double fConst36;
109 	double fConst37;
110 	double fConst38;
111 	double fConst39;
112 	double fConst40;
113 	double fConst41;
114 	double fConst42;
115 	double fConst43;
116 	double fConst44;
117 	double fConst45;
118 	double fConst46;
119 	double fConst47;
120 	double fConst48;
121 	double fConst49;
122 	double fConst50;
123 	double fRec60[3];
124 	double fVec3[2];
125 	double fRec59[2];
126 	double fRec58[2];
127 	double fConst51;
128 	double fConst52;
129 	double fConst53;
130 	double fConst54;
131 	double fRec57[3];
132 	double fVec4[2];
133 	double fConst55;
134 	double fConst56;
135 	double fConst57;
136 	double fRec56[2];
137 	double fConst58;
138 	double fConst59;
139 	double fRec55[3];
140 	double fConst60;
141 	double fConst61;
142 	double fConst62;
143 	double fConst63;
144 	double fConst64;
145 	double fConst65;
146 	double fConst66;
147 	double fConst67;
148 	double fConst68;
149 	double fConst69;
150 	double fRec54[3];
151 	double fConst70;
152 	double fRec64[2];
153 	double fRec63[3];
154 	double fConst71;
155 	double fConst72;
156 	double fConst73;
157 	double fRec62[3];
158 	double fRec61[3];
159 	double fConst74;
160 	double fConst75;
161 	double fConst76;
162 	double fRec68[2];
163 	double fRec67[3];
164 	double fVec5[2];
165 	double fConst77;
166 	double fConst78;
167 	double fRec66[2];
168 	double fConst79;
169 	double fRec65[3];
170 	double fConst80;
171 	double fConst81;
172 	double fRec70[2];
173 	double fRec69[3];
174 	double fVec6[2];
175 	double fRec53[2];
176 	double fVec7[2];
177 	double fRec14[2];
178 	FAUSTFLOAT fVslider3;
179 	double fRec71[2];
180 	double fVec8[2];
181 	double fRec13[2];
182 	double fRec12[3];
183 	double fRec72[2];
184 	double fRec11[3];
185 	double fRec10[2];
186 	double fRec75[2];
187 	double fRec74[3];
188 	double fRec73[2];
189 	double fRec8[2];
190 	double fRec6[2];
191 	double fRec4[2];
192 	double fRec2[2];
193 
194  public:
195 
metadata(Meta * m)196 	void metadata(Meta* m) {
197 		m->declare("amp_dist.dsp/author", "Hermann Meyer");
198 		m->declare("amp_dist.dsp/copyright", "(C) Hermann Meyer 2008");
199 		m->declare("amp_dist.dsp/id", "amp_dist");
200 		m->declare("amp_dist.dsp/license", "BSD");
201 		m->declare("amp_dist.dsp/version", "0.01");
202 		m->declare("analyzers.lib/name", "Faust Analyzer Library");
203 		m->declare("analyzers.lib/version", "0.0");
204 		m->declare("basics.lib/name", "Faust Basic Element Library");
205 		m->declare("basics.lib/version", "0.1");
206 		m->declare("delays.lib/name", "Faust Delay Library");
207 		m->declare("delays.lib/version", "0.1");
208 		m->declare("filename", "pre_6dj8_pp_6v6");
209 		m->declare("filters.lib/allpassn:author", "Julius O. Smith III and Romain Michon");
210 		m->declare("filters.lib/allpassn:copyright", "Copyright (C) 2003-2019 by Julius O. Smith III <jos@ccrma.stanford.edu> and Romain Michon <rmichon@ccrma.stanford.edu>");
211 		m->declare("filters.lib/allpassn:license", "MIT-style STK-4.3 license");
212 		m->declare("filters.lib/dcblockerat:author", "Julius O. Smith III");
213 		m->declare("filters.lib/dcblockerat:copyright", "Copyright (C) 2003-2019 by Julius O. Smith III <jos@ccrma.stanford.edu>");
214 		m->declare("filters.lib/dcblockerat:license", "MIT-style STK-4.3 license");
215 		m->declare("filters.lib/filterbank:author", "Julius O. Smith III");
216 		m->declare("filters.lib/filterbank:copyright", "Copyright (C) 2003-2019 by Julius O. Smith III <jos@ccrma.stanford.edu>");
217 		m->declare("filters.lib/filterbank:license", "MIT-style STK-4.3 license");
218 		m->declare("filters.lib/fir:author", "Julius O. Smith III");
219 		m->declare("filters.lib/fir:copyright", "Copyright (C) 2003-2019 by Julius O. Smith III <jos@ccrma.stanford.edu>");
220 		m->declare("filters.lib/fir:license", "MIT-style STK-4.3 license");
221 		m->declare("filters.lib/highpass:author", "Julius O. Smith III");
222 		m->declare("filters.lib/highpass:copyright", "Copyright (C) 2003-2019 by Julius O. Smith III <jos@ccrma.stanford.edu>");
223 		m->declare("filters.lib/highpass_plus_lowpass:author", "Julius O. Smith III");
224 		m->declare("filters.lib/highpass_plus_lowpass:copyright", "Copyright (C) 2003-2019 by Julius O. Smith III <jos@ccrma.stanford.edu>");
225 		m->declare("filters.lib/highpass_plus_lowpass:license", "MIT-style STK-4.3 license");
226 		m->declare("filters.lib/iir:author", "Julius O. Smith III");
227 		m->declare("filters.lib/iir:copyright", "Copyright (C) 2003-2019 by Julius O. Smith III <jos@ccrma.stanford.edu>");
228 		m->declare("filters.lib/iir:license", "MIT-style STK-4.3 license");
229 		m->declare("filters.lib/lowpass0_highpass1", "Copyright (C) 2003-2019 by Julius O. Smith III <jos@ccrma.stanford.edu>");
230 		m->declare("filters.lib/lowpass0_highpass1:author", "Julius O. Smith III");
231 		m->declare("filters.lib/lowpass:author", "Julius O. Smith III");
232 		m->declare("filters.lib/lowpass:copyright", "Copyright (C) 2003-2019 by Julius O. Smith III <jos@ccrma.stanford.edu>");
233 		m->declare("filters.lib/lowpass:license", "MIT-style STK-4.3 license");
234 		m->declare("filters.lib/name", "Faust Filters Library");
235 		m->declare("filters.lib/pole:author", "Julius O. Smith III");
236 		m->declare("filters.lib/pole:copyright", "Copyright (C) 2003-2019 by Julius O. Smith III <jos@ccrma.stanford.edu>");
237 		m->declare("filters.lib/pole:license", "MIT-style STK-4.3 license");
238 		m->declare("filters.lib/tf1:author", "Julius O. Smith III");
239 		m->declare("filters.lib/tf1:copyright", "Copyright (C) 2003-2019 by Julius O. Smith III <jos@ccrma.stanford.edu>");
240 		m->declare("filters.lib/tf1:license", "MIT-style STK-4.3 license");
241 		m->declare("filters.lib/tf1s:author", "Julius O. Smith III");
242 		m->declare("filters.lib/tf1s:copyright", "Copyright (C) 2003-2019 by Julius O. Smith III <jos@ccrma.stanford.edu>");
243 		m->declare("filters.lib/tf1s:license", "MIT-style STK-4.3 license");
244 		m->declare("filters.lib/tf2:author", "Julius O. Smith III");
245 		m->declare("filters.lib/tf2:copyright", "Copyright (C) 2003-2019 by Julius O. Smith III <jos@ccrma.stanford.edu>");
246 		m->declare("filters.lib/tf2:license", "MIT-style STK-4.3 license");
247 		m->declare("filters.lib/tf2s:author", "Julius O. Smith III");
248 		m->declare("filters.lib/tf2s:copyright", "Copyright (C) 2003-2019 by Julius O. Smith III <jos@ccrma.stanford.edu>");
249 		m->declare("filters.lib/tf2s:license", "MIT-style STK-4.3 license");
250 		m->declare("filters.lib/zero:author", "Julius O. Smith III");
251 		m->declare("filters.lib/zero:copyright", "Copyright (C) 2003-2019 by Julius O. Smith III <jos@ccrma.stanford.edu>");
252 		m->declare("filters.lib/zero:license", "MIT-style STK-4.3 license");
253 		m->declare("id", "pre 6DJ8/ push-pull 6V6");
254 		m->declare("maths.lib/author", "GRAME");
255 		m->declare("maths.lib/copyright", "GRAME");
256 		m->declare("maths.lib/license", "LGPL with exception");
257 		m->declare("maths.lib/name", "Faust Math Library");
258 		m->declare("maths.lib/version", "2.1");
259 		m->declare("misceffects.lib/name", "Faust Math Library");
260 		m->declare("misceffects.lib/version", "2.0");
261 		m->declare("name", "pre 6DJ8/ push-pull 6V6");
262 		m->declare("samplerate", "96000");
263 		m->declare("signals.lib/name", "Faust Signal Routing Library");
264 		m->declare("signals.lib/version", "0.0");
265 	}
266 
getNumInputs()267 	virtual int getNumInputs() {
268 		return 1;
269 
270 	}
getNumOutputs()271 	virtual int getNumOutputs() {
272 		return 1;
273 
274 	}
getInputRate(int channel)275 	virtual int getInputRate(int channel) {
276 		int rate;
277 		switch (channel) {
278 			case 0: {
279 				rate = 1;
280 				break;
281 			}
282 			default: {
283 				rate = -1;
284 				break;
285 			}
286 
287 		}
288 		return rate;
289 
290 	}
getOutputRate(int channel)291 	virtual int getOutputRate(int channel) {
292 		int rate;
293 		switch (channel) {
294 			case 0: {
295 				rate = 1;
296 				break;
297 			}
298 			default: {
299 				rate = -1;
300 				break;
301 			}
302 
303 		}
304 		return rate;
305 
306 	}
307 
classInit(int samplingFreq)308 	static void classInit(int samplingFreq) {
309 
310 	}
311 
instanceConstants(int samplingFreq)312 	virtual void instanceConstants(int samplingFreq) {
313 		fSamplingFreq = samplingFreq;
314 		fConst0 = std::min<double>(192000.0, std::max<double>(1.0, double(fSamplingFreq)));
315 		fConst1 = std::tan((97.389372261283583 / fConst0));
316 		fConst2 = (1.0 / fConst1);
317 		fConst3 = (fConst2 + 1.0);
318 		fConst4 = (1.0 / (fConst3 * fConst1));
319 		fConst5 = (1.0 / std::tan((20517.741620594938 / fConst0)));
320 		fConst6 = (1.0 / (fConst5 + 1.0));
321 		fConst7 = (1.0 - fConst5);
322 		fConst8 = (1.0 / std::tan((609.46897479641984 / fConst0)));
323 		fConst9 = (1.0 / (fConst8 + 1.0));
324 		fConst10 = (1.0 - fConst8);
325 		fConst11 = (0.0 - fConst4);
326 		fConst12 = ((1.0 - fConst2) / fConst3);
327 		fConst13 = (1.0 / std::tan((414.69023027385271 / fConst0)));
328 		fConst14 = (1.0 / (fConst13 + 1.0));
329 		fConst15 = (1.0 - fConst13);
330 		fConst16 = std::tan((37699.111843077517 / fConst0));
331 		fConst17 = (1.0 / fConst16);
332 		fConst18 = (((fConst17 + 0.76536686473017945) / fConst16) + 1.0);
333 		fConst19 = (0.93028479253239138 / fConst18);
334 		fConst20 = (1.0 / (((fConst17 + 1.8477590650225735) / fConst16) + 1.0));
335 		fConst21 = (973.89372261283586 / fConst0);
336 		fConst22 = (1.0 / (fConst21 + 1.0));
337 		fConst23 = (1.0 - fConst21);
338 		fConst24 = (((fConst17 + -1.8477590650225735) / fConst16) + 1.0);
339 		fConst25 = (2.0 * (1.0 - (1.0 / module_faustpower2_f(fConst16))));
340 		fConst26 = (1.0 / fConst18);
341 		fConst27 = (((fConst17 + -0.76536686473017945) / fConst16) + 1.0);
342 		fConst28 = (1.0 / std::tan((270.1769682087222 / fConst0)));
343 		fConst29 = (1.0 / (fConst28 + 1.0));
344 		fConst30 = (1.0 - fConst28);
345 		fConst31 = (0.009000000000000008 / fConst0);
346 		iConst32 = int(std::min<double>(65536.0, std::max<double>(0.0, (0.1111111111111111 * fConst0))));
347 		fConst33 = std::tan((3769.9111843077517 / fConst0));
348 		fConst34 = (1.0 / fConst33);
349 		fConst35 = (1.0 / (((fConst34 + 1.0000000000000004) / fConst33) + 1.0));
350 		fConst36 = module_faustpower2_f(fConst33);
351 		fConst37 = (1.0 / fConst36);
352 		fConst38 = std::tan((10053.096491487338 / fConst0));
353 		fConst39 = (1.0 / fConst38);
354 		fConst40 = (1.0 / (((fConst39 + 1.0000000000000004) / fConst38) + 1.0));
355 		fConst41 = (fConst34 + 1.0);
356 		fConst42 = (1.0 / (fConst33 * fConst41));
357 		fConst43 = (fConst39 + 1.0);
358 		fConst44 = (1.0 / fConst43);
359 		fConst45 = (1.0 - fConst39);
360 		fConst46 = std::tan((47123.889803846898 / fConst0));
361 		fConst47 = (1.0 / fConst46);
362 		fConst48 = (1.0 / (((fConst47 + 1.4142135623730949) / fConst46) + 1.0));
363 		fConst49 = (((fConst47 + -1.4142135623730949) / fConst46) + 1.0);
364 		fConst50 = (2.0 * (1.0 - (1.0 / module_faustpower2_f(fConst46))));
365 		fConst51 = (((fConst39 + -1.0000000000000004) / fConst38) + 1.0);
366 		fConst52 = module_faustpower2_f(fConst38);
367 		fConst53 = (1.0 / fConst52);
368 		fConst54 = (2.0 * (1.0 - fConst53));
369 		fConst55 = (0.0 - fConst42);
370 		fConst56 = (1.0 - fConst34);
371 		fConst57 = (fConst56 / fConst41);
372 		fConst58 = (((fConst34 + -1.0000000000000004) / fConst33) + 1.0);
373 		fConst59 = (2.0 * (1.0 - fConst37));
374 		fConst60 = (0.0 - (2.0 / fConst36));
375 		fConst61 = std::tan((942.47779607693792 / fConst0));
376 		fConst62 = (1.0 / fConst61);
377 		fConst63 = (fConst62 + 1.0);
378 		fConst64 = (1.0 / ((fConst63 / fConst61) + 1.0));
379 		fConst65 = (1.0 - fConst62);
380 		fConst66 = (1.0 - (fConst65 / fConst61));
381 		fConst67 = module_faustpower2_f(fConst61);
382 		fConst68 = (1.0 / fConst67);
383 		fConst69 = (2.0 * (1.0 - fConst68));
384 		fConst70 = (0.0 - (1.0 / (fConst43 * fConst38)));
385 		fConst71 = (0.0 - (2.0 / fConst52));
386 		fConst72 = (1.0 / ((fConst41 / fConst33) + 1.0));
387 		fConst73 = (1.0 - (fConst56 / fConst33));
388 		fConst74 = (1.0 / (((fConst62 + 1.0000000000000004) / fConst61) + 1.0));
389 		fConst75 = (1.0 / (fConst61 * fConst63));
390 		fConst76 = (1.0 / fConst41);
391 		fConst77 = (0.0 - fConst75);
392 		fConst78 = (fConst65 / fConst63);
393 		fConst79 = (((fConst62 + -1.0000000000000004) / fConst61) + 1.0);
394 		fConst80 = (0.0 - (2.0 / fConst67));
395 		fConst81 = (1.0 / fConst63);
396 
397 	}
398 
instanceResetUserInterface()399 	virtual void instanceResetUserInterface() {
400 		fVslider0 = FAUSTFLOAT(1.0);
401 		fVslider1 = FAUSTFLOAT(1.0);
402 		fVslider2 = FAUSTFLOAT(0.5);
403 		fVslider3 = FAUSTFLOAT(0.5);
404 
405 	}
406 
instanceClear()407 	virtual void instanceClear() {
408 		for (int l0 = 0; (l0 < 2); l0 = (l0 + 1)) {
409 			fRec1[l0] = 0.0;
410 
411 		}
412 		for (int l1 = 0; (l1 < 2); l1 = (l1 + 1)) {
413 			fRec0[l1] = 0.0;
414 
415 		}
416 		for (int l2 = 0; (l2 < 2); l2 = (l2 + 1)) {
417 			fRec23[l2] = 0.0;
418 
419 		}
420 		for (int l3 = 0; (l3 < 3); l3 = (l3 + 1)) {
421 			fRec22[l3] = 0.0;
422 
423 		}
424 		for (int l4 = 0; (l4 < 2); l4 = (l4 + 1)) {
425 			fRec24[l4] = 0.0;
426 
427 		}
428 		for (int l5 = 0; (l5 < 3); l5 = (l5 + 1)) {
429 			fRec21[l5] = 0.0;
430 
431 		}
432 		for (int l6 = 0; (l6 < 2); l6 = (l6 + 1)) {
433 			fRec20[l6] = 0.0;
434 
435 		}
436 		for (int l7 = 0; (l7 < 2); l7 = (l7 + 1)) {
437 			fRec34[l7] = 0.0;
438 
439 		}
440 		for (int l8 = 0; (l8 < 3); l8 = (l8 + 1)) {
441 			fRec33[l8] = 0.0;
442 
443 		}
444 		for (int l9 = 0; (l9 < 2); l9 = (l9 + 1)) {
445 			fRec35[l9] = 0.0;
446 
447 		}
448 		for (int l10 = 0; (l10 < 3); l10 = (l10 + 1)) {
449 			fRec32[l10] = 0.0;
450 
451 		}
452 		for (int l11 = 0; (l11 < 2); l11 = (l11 + 1)) {
453 			fRec31[l11] = 0.0;
454 
455 		}
456 		for (int l12 = 0; (l12 < 2); l12 = (l12 + 1)) {
457 			fRec41[l12] = 0.0;
458 
459 		}
460 		for (int l13 = 0; (l13 < 2); l13 = (l13 + 1)) {
461 			fRec40[l13] = 0.0;
462 
463 		}
464 		for (int l14 = 0; (l14 < 2); l14 = (l14 + 1)) {
465 			fVec0[l14] = 0.0;
466 
467 		}
468 		for (int l15 = 0; (l15 < 2); l15 = (l15 + 1)) {
469 			fRec45[l15] = 0.0;
470 
471 		}
472 		for (int l16 = 0; (l16 < 2); l16 = (l16 + 1)) {
473 			fRec44[l16] = 0.0;
474 
475 		}
476 		for (int l17 = 0; (l17 < 3); l17 = (l17 + 1)) {
477 			fRec43[l17] = 0.0;
478 
479 		}
480 		for (int l18 = 0; (l18 < 3); l18 = (l18 + 1)) {
481 			fRec42[l18] = 0.0;
482 
483 		}
484 		for (int l19 = 0; (l19 < 2); l19 = (l19 + 1)) {
485 			fVec1[l19] = 0.0;
486 
487 		}
488 		for (int l20 = 0; (l20 < 2); l20 = (l20 + 1)) {
489 			fRec39[l20] = 0.0;
490 
491 		}
492 		for (int l21 = 0; (l21 < 3); l21 = (l21 + 1)) {
493 			fRec38[l21] = 0.0;
494 
495 		}
496 		for (int l22 = 0; (l22 < 2); l22 = (l22 + 1)) {
497 			fRec46[l22] = 0.0;
498 
499 		}
500 		for (int l23 = 0; (l23 < 3); l23 = (l23 + 1)) {
501 			fRec37[l23] = 0.0;
502 
503 		}
504 		for (int l24 = 0; (l24 < 2); l24 = (l24 + 1)) {
505 			fRec36[l24] = 0.0;
506 
507 		}
508 		for (int l25 = 0; (l25 < 3); l25 = (l25 + 1)) {
509 			fRec30[l25] = 0.0;
510 
511 		}
512 		for (int l26 = 0; (l26 < 2); l26 = (l26 + 1)) {
513 			fRec29[l26] = 0.0;
514 
515 		}
516 		for (int l27 = 0; (l27 < 2); l27 = (l27 + 1)) {
517 			fRec28[l27] = 0.0;
518 
519 		}
520 		for (int l28 = 0; (l28 < 3); l28 = (l28 + 1)) {
521 			fRec27[l28] = 0.0;
522 
523 		}
524 		for (int l29 = 0; (l29 < 2); l29 = (l29 + 1)) {
525 			fRec47[l29] = 0.0;
526 
527 		}
528 		for (int l30 = 0; (l30 < 3); l30 = (l30 + 1)) {
529 			fRec26[l30] = 0.0;
530 
531 		}
532 		for (int l31 = 0; (l31 < 2); l31 = (l31 + 1)) {
533 			fRec25[l31] = 0.0;
534 
535 		}
536 		for (int l32 = 0; (l32 < 3); l32 = (l32 + 1)) {
537 			fRec19[l32] = 0.0;
538 
539 		}
540 		for (int l33 = 0; (l33 < 2); l33 = (l33 + 1)) {
541 			fRec18[l33] = 0.0;
542 
543 		}
544 		for (int l34 = 0; (l34 < 3); l34 = (l34 + 1)) {
545 			fRec17[l34] = 0.0;
546 
547 		}
548 		for (int l35 = 0; (l35 < 2); l35 = (l35 + 1)) {
549 			fRec48[l35] = 0.0;
550 
551 		}
552 		for (int l36 = 0; (l36 < 3); l36 = (l36 + 1)) {
553 			fRec16[l36] = 0.0;
554 
555 		}
556 		for (int l37 = 0; (l37 < 2); l37 = (l37 + 1)) {
557 			fRec15[l37] = 0.0;
558 
559 		}
560 		for (int l38 = 0; (l38 < 2); l38 = (l38 + 1)) {
561 			fRec49[l38] = 0.0;
562 
563 		}
564 		IOTA = 0;
565 		for (int l39 = 0; (l39 < 32768); l39 = (l39 + 1)) {
566 			fVec2[l39] = 0.0;
567 
568 		}
569 		for (int l40 = 0; (l40 < 2); l40 = (l40 + 1)) {
570 			fRec51[l40] = 0.0;
571 
572 		}
573 		for (int l41 = 0; (l41 < 2); l41 = (l41 + 1)) {
574 			fRec50[l41] = 0.0;
575 
576 		}
577 		for (int l42 = 0; (l42 < 2); l42 = (l42 + 1)) {
578 			fRec52[l42] = 0.0;
579 
580 		}
581 		for (int l43 = 0; (l43 < 3); l43 = (l43 + 1)) {
582 			fRec60[l43] = 0.0;
583 
584 		}
585 		for (int l44 = 0; (l44 < 2); l44 = (l44 + 1)) {
586 			fVec3[l44] = 0.0;
587 
588 		}
589 		for (int l45 = 0; (l45 < 2); l45 = (l45 + 1)) {
590 			fRec59[l45] = 0.0;
591 
592 		}
593 		for (int l46 = 0; (l46 < 2); l46 = (l46 + 1)) {
594 			fRec58[l46] = 0.0;
595 
596 		}
597 		for (int l47 = 0; (l47 < 3); l47 = (l47 + 1)) {
598 			fRec57[l47] = 0.0;
599 
600 		}
601 		for (int l48 = 0; (l48 < 2); l48 = (l48 + 1)) {
602 			fVec4[l48] = 0.0;
603 
604 		}
605 		for (int l49 = 0; (l49 < 2); l49 = (l49 + 1)) {
606 			fRec56[l49] = 0.0;
607 
608 		}
609 		for (int l50 = 0; (l50 < 3); l50 = (l50 + 1)) {
610 			fRec55[l50] = 0.0;
611 
612 		}
613 		for (int l51 = 0; (l51 < 3); l51 = (l51 + 1)) {
614 			fRec54[l51] = 0.0;
615 
616 		}
617 		for (int l52 = 0; (l52 < 2); l52 = (l52 + 1)) {
618 			fRec64[l52] = 0.0;
619 
620 		}
621 		for (int l53 = 0; (l53 < 3); l53 = (l53 + 1)) {
622 			fRec63[l53] = 0.0;
623 
624 		}
625 		for (int l54 = 0; (l54 < 3); l54 = (l54 + 1)) {
626 			fRec62[l54] = 0.0;
627 
628 		}
629 		for (int l55 = 0; (l55 < 3); l55 = (l55 + 1)) {
630 			fRec61[l55] = 0.0;
631 
632 		}
633 		for (int l56 = 0; (l56 < 2); l56 = (l56 + 1)) {
634 			fRec68[l56] = 0.0;
635 
636 		}
637 		for (int l57 = 0; (l57 < 3); l57 = (l57 + 1)) {
638 			fRec67[l57] = 0.0;
639 
640 		}
641 		for (int l58 = 0; (l58 < 2); l58 = (l58 + 1)) {
642 			fVec5[l58] = 0.0;
643 
644 		}
645 		for (int l59 = 0; (l59 < 2); l59 = (l59 + 1)) {
646 			fRec66[l59] = 0.0;
647 
648 		}
649 		for (int l60 = 0; (l60 < 3); l60 = (l60 + 1)) {
650 			fRec65[l60] = 0.0;
651 
652 		}
653 		for (int l61 = 0; (l61 < 2); l61 = (l61 + 1)) {
654 			fRec70[l61] = 0.0;
655 
656 		}
657 		for (int l62 = 0; (l62 < 3); l62 = (l62 + 1)) {
658 			fRec69[l62] = 0.0;
659 
660 		}
661 		for (int l63 = 0; (l63 < 2); l63 = (l63 + 1)) {
662 			fVec6[l63] = 0.0;
663 
664 		}
665 		for (int l64 = 0; (l64 < 2); l64 = (l64 + 1)) {
666 			fRec53[l64] = 0.0;
667 
668 		}
669 		for (int l65 = 0; (l65 < 2); l65 = (l65 + 1)) {
670 			fVec7[l65] = 0.0;
671 
672 		}
673 		for (int l66 = 0; (l66 < 2); l66 = (l66 + 1)) {
674 			fRec14[l66] = 0.0;
675 
676 		}
677 		for (int l67 = 0; (l67 < 2); l67 = (l67 + 1)) {
678 			fRec71[l67] = 0.0;
679 
680 		}
681 		for (int l68 = 0; (l68 < 2); l68 = (l68 + 1)) {
682 			fVec8[l68] = 0.0;
683 
684 		}
685 		for (int l69 = 0; (l69 < 2); l69 = (l69 + 1)) {
686 			fRec13[l69] = 0.0;
687 
688 		}
689 		for (int l70 = 0; (l70 < 3); l70 = (l70 + 1)) {
690 			fRec12[l70] = 0.0;
691 
692 		}
693 		for (int l71 = 0; (l71 < 2); l71 = (l71 + 1)) {
694 			fRec72[l71] = 0.0;
695 
696 		}
697 		for (int l72 = 0; (l72 < 3); l72 = (l72 + 1)) {
698 			fRec11[l72] = 0.0;
699 
700 		}
701 		for (int l73 = 0; (l73 < 2); l73 = (l73 + 1)) {
702 			fRec10[l73] = 0.0;
703 
704 		}
705 		for (int l74 = 0; (l74 < 2); l74 = (l74 + 1)) {
706 			fRec75[l74] = 0.0;
707 
708 		}
709 		for (int l75 = 0; (l75 < 3); l75 = (l75 + 1)) {
710 			fRec74[l75] = 0.0;
711 
712 		}
713 		for (int l76 = 0; (l76 < 2); l76 = (l76 + 1)) {
714 			fRec73[l76] = 0.0;
715 
716 		}
717 		for (int l77 = 0; (l77 < 2); l77 = (l77 + 1)) {
718 			fRec8[l77] = 0.0;
719 
720 		}
721 		for (int l78 = 0; (l78 < 2); l78 = (l78 + 1)) {
722 			fRec6[l78] = 0.0;
723 
724 		}
725 		for (int l79 = 0; (l79 < 2); l79 = (l79 + 1)) {
726 			fRec4[l79] = 0.0;
727 
728 		}
729 		for (int l80 = 0; (l80 < 2); l80 = (l80 + 1)) {
730 			fRec2[l80] = 0.0;
731 
732 		}
733 
734 	}
735 
init(int samplingFreq)736 	virtual void init(int samplingFreq) {
737 		classInit(samplingFreq);
738 		instanceInit(samplingFreq);
739 	}
740 
instanceInit(int samplingFreq)741 	virtual void instanceInit(int samplingFreq) {
742 		instanceConstants(samplingFreq);
743 		instanceResetUserInterface();
744 		instanceClear();
745 	}
746 
clone()747 	virtual module* clone() {
748 		return new module();
749 	}
750 
getSampleRate()751 	virtual int getSampleRate() {
752 		return fSamplingFreq;
753 
754 	}
755 
buildUserInterface(UI * ui_interface)756 	virtual void buildUserInterface(UI* ui_interface) {
757 		ui_interface->openVerticalBox("pre 6DJ8/ push-pull 6V6");
758 		ui_interface->addVerticalSlider(".amp.gain", &fVslider2, 0.5, 0.0, 1.0, 0.01);
759 		ui_interface->addVerticalSlider(".amp.master", &fVslider3, 0.5, 0.0, 1.0, 0.01);
760 		ui_interface->addVerticalSlider(".amp.postgain", &fVslider0, 1.0, 0.00398, 251.18861000000001, 0.0001);
761 		ui_interface->addVerticalSlider(".amp.pregain", &fVslider1, 1.0, 0.00398, 251.18861000000001, 0.0001);
762 		ui_interface->closeBox();
763 
764 	}
765 
compute(int count,FAUSTFLOAT ** inputs,FAUSTFLOAT ** outputs)766 	virtual void compute(int count, FAUSTFLOAT** inputs, FAUSTFLOAT** outputs) {
767 		FAUSTFLOAT* input0 = inputs[0];
768 		FAUSTFLOAT* output0 = outputs[0];
769 		double fSlow0 = (0.0010000000000000009 * double(fVslider0));
770 		double fSlow1 = (0.0010000000000000009 * double(fVslider1));
771 		double fSlow2 = (0.0010000000000000009 * double(fVslider2));
772 		double fSlow3 = (0.0010000000000000009 * double(fVslider3));
773 		for (int i = 0; (i < count); i = (i + 1)) {
774 			fRec1[0] = (fSlow0 + (0.999 * fRec1[1]));
775 			fRec0[0] = ((0.999 * fRec0[1]) + (6.3100000000000057e-05 * fRec1[0]));
776 			fRec23[0] = ((0.93028479253239138 * (fRec19[1] + fRec19[2])) - (0.86056958506478287 * fRec23[1]));
777 			fRec22[0] = (fRec23[0] - ((1.8405051250752198 * fRec22[1]) + (0.86129424393186271 * fRec22[2])));
778 			fRec24[0] = (fConst9 * ((0.0082000000000000007 * (fRec21[1] + fRec21[2])) - (fConst10 * fRec24[1])));
779 			fRec21[0] = (double(Ftube(int(TUBE_TABLE_6DJ8_250k), double((((0.92544984225177063 * (fRec22[0] + fRec22[2])) + (fRec24[0] + (1.8508996845035413 * fRec22[1]))) + -0.79704299999999995)))) + -32.799634146341475);
780 			fRec20[0] = ((0.050000000000000003 * ((fConst4 * fRec21[0]) + (fConst11 * fRec21[1]))) - (fConst12 * fRec20[1]));
781 			fRec34[0] = ((0.93028479253239138 * (fRec30[1] + fRec30[2])) - (0.86056958506478287 * fRec34[1]));
782 			fRec33[0] = (fRec34[0] - ((1.8405051250752198 * fRec33[1]) + (0.86129424393186271 * fRec33[2])));
783 			fRec35[0] = (fConst14 * ((0.014999999999999999 * (fRec32[1] + fRec32[2])) - (fConst15 * fRec35[1])));
784 			fRec32[0] = (double(Ftube(int(TUBE_TABLE_6DJ8_250k), double((((0.92544984225177063 * (fRec33[0] + fRec33[2])) + (fRec35[0] + (1.8508996845035413 * fRec33[1]))) + -1.271609)))) + -45.226066666666668);
785 			fRec31[0] = ((0.050000000000000003 * ((fConst4 * fRec32[0]) + (fConst11 * fRec32[1]))) - (fConst12 * fRec31[1]));
786 			fRec41[0] = (fSlow1 + (0.999 * fRec41[1]));
787 			fRec40[0] = ((0.999 * fRec40[1]) + (0.0010000000000000009 * fRec41[0]));
788 			double fTemp0 = double(input0[i]);
789 			fVec0[0] = fTemp0;
790 			fRec45[0] = (fConst22 * ((fTemp0 - fVec0[1]) + (fConst23 * fRec45[1])));
791 			fRec44[0] = (fConst22 * ((fRec45[0] - fRec45[1]) + (fConst23 * fRec44[1])));
792 			fRec43[0] = (fRec44[0] - (fConst20 * ((fConst24 * fRec43[2]) + (fConst25 * fRec43[1]))));
793 			fRec42[0] = ((fConst20 * (fRec43[2] + (fRec43[0] + (2.0 * fRec43[1])))) - (fConst26 * ((fConst27 * fRec42[2]) + (fConst25 * fRec42[1]))));
794 			double fTemp1 = (fRec40[0] * (fRec42[2] + (fRec42[0] + (2.0 * fRec42[1]))));
795 			fVec1[0] = fTemp1;
796 			fRec39[0] = ((fConst19 * (fTemp1 + fVec1[1])) - (0.86056958506478287 * fRec39[1]));
797 			fRec38[0] = (fRec39[0] - ((1.8405051250752198 * fRec38[1]) + (0.86129424393186271 * fRec38[2])));
798 			fRec46[0] = (fConst29 * ((0.027 * (fRec37[1] + fRec37[2])) - (fConst30 * fRec46[1])));
799 			fRec37[0] = (double(Ftube(int(TUBE_TABLE_6DJ8_68k), double((((0.92544984225177063 * (fRec38[0] + fRec38[2])) + (fRec46[0] + (1.8508996845035413 * fRec38[1]))) + -1.8639460000000001)))) + -60.964962962962957);
800 			fRec36[0] = ((0.050000000000000003 * ((fConst4 * fRec37[0]) + (fConst11 * fRec37[1]))) - (fConst12 * fRec36[1]));
801 			fRec30[0] = ((0.59999999999999998 * fRec31[0]) + fRec36[0]);
802 			fRec29[0] = (0.0 - (fConst6 * ((fConst7 * fRec29[1]) - (fRec30[0] + fRec30[1]))));
803 			fRec28[0] = ((0.93028479253239138 * (fRec29[0] + fRec29[1])) - (0.86056958506478287 * fRec28[1]));
804 			fRec27[0] = (fRec28[0] - ((1.8405051250752198 * fRec27[1]) + (0.86129424393186271 * fRec27[2])));
805 			fRec47[0] = (fConst14 * ((0.014999999999999999 * (fRec26[1] + fRec26[2])) - (fConst15 * fRec47[1])));
806 			fRec26[0] = (double(Ftube(int(TUBE_TABLE_6DJ8_250k), double((((0.92544984225177063 * (fRec27[0] + fRec27[2])) + (fRec47[0] + (1.8508996845035413 * fRec27[1]))) + -1.271609)))) + -45.226066666666668);
807 			fRec25[0] = ((0.050000000000000003 * ((fConst4 * fRec26[0]) + (fConst11 * fRec26[1]))) - (fConst12 * fRec25[1]));
808 			fRec19[0] = ((0.59999999999999998 * fRec20[0]) + fRec25[0]);
809 			fRec18[0] = ((0.93028479253239138 * (fRec19[0] + fRec19[1])) - (0.86056958506478287 * fRec18[1]));
810 			fRec17[0] = (fRec18[0] - ((1.8405051250752198 * fRec17[1]) + (0.86129424393186271 * fRec17[2])));
811 			fRec48[0] = (fConst9 * ((0.0082000000000000007 * (fRec16[1] + fRec16[2])) - (fConst10 * fRec48[1])));
812 			fRec16[0] = (double(Ftube(int(TUBE_TABLE_6DJ8_250k), double((((0.92544984225177063 * (fRec17[0] + fRec17[2])) + (fRec48[0] + (1.8508996845035413 * fRec17[1]))) + -0.79704299999999995)))) + -32.799634146341475);
813 			fRec15[0] = ((0.050000000000000003 * ((fConst4 * fRec16[0]) + (fConst11 * fRec16[1]))) - (fConst12 * fRec15[1]));
814 			double fTemp2 = std::fabs(fRec15[0]);
815 			fRec49[0] = ((0.99990000000000001 * fRec49[1]) + (9.9999999999988987e-05 * fTemp2));
816 			double fTemp3 = std::max<double>(fRec49[0], fTemp2);
817 			fVec2[(IOTA & 32767)] = fTemp3;
818 			fRec51[0] = ((fTemp3 + fRec51[1]) - fVec2[((IOTA - iConst32) & 32767)]);
819 			fRec50[0] = ((0.999 * fRec50[1]) + (fConst31 * fRec51[0]));
820 			double fTemp4 = std::max<double>(-1.0, std::min<double>(-0.01, (fTemp3 + (-1.0 - (1.02 * fRec50[0])))));
821 			double fTemp5 = (fRec15[0] - fTemp4);
822 			double fTemp6 = (40.100000000000001 * fTemp5);
823 			double fTemp7 = std::max<double>(-600.0, fTemp6);
824 			double fTemp8 = (0.0 - (40.100000000000001 * fTemp4));
825 			double fTemp9 = std::max<double>(-600.0, fTemp8);
826 			double fTemp10 = (((std::fabs(fTemp6) > 0.0001)?((fTemp7 < -50.0)?(0.0 - (fTemp7 * std::exp(fTemp7))):(fTemp7 / (1.0 - std::exp((-1.0 * fTemp7))))):((fTemp5 * ((134.00083333333336 * fTemp5) + 20.050000000000001)) + 1.0)) - ((std::fabs(fTemp8) > 0.0001)?((fTemp9 < -50.0)?(0.0 - (fTemp9 * std::exp(fTemp9))):(fTemp9 / (1.0 - std::exp((-1.0 * fTemp9))))):((fTemp8 * ((0.083333333333333329 * fTemp8) + 0.5)) + 1.0)));
827 			fRec52[0] = (fSlow2 + (0.999 * fRec52[1]));
828 			double fTemp11 = (2.0 * (fRec52[0] + -0.5));
829 			fRec60[0] = ((0.024937655860349125 * fTemp10) - (fConst48 * ((fConst49 * fRec60[2]) + (fConst50 * fRec60[1]))));
830 			double fTemp12 = (fRec60[2] + (fRec60[0] + (2.0 * fRec60[1])));
831 			fVec3[0] = fTemp12;
832 			fRec59[0] = ((fConst48 * ((fConst4 * fTemp12) + (fConst11 * fVec3[1]))) - (fConst12 * fRec59[1]));
833 			fRec58[0] = (0.0 - (fConst44 * ((fConst45 * fRec58[1]) - (fRec59[0] + fRec59[1]))));
834 			fRec57[0] = (fRec58[0] - (fConst40 * ((fConst51 * fRec57[2]) + (fConst54 * fRec57[1]))));
835 			double fTemp13 = (fRec57[2] + (fRec57[0] + (2.0 * fRec57[1])));
836 			fVec4[0] = fTemp13;
837 			fRec56[0] = ((fConst40 * ((fConst42 * fTemp13) + (fConst55 * fVec4[1]))) - (fConst57 * fRec56[1]));
838 			fRec55[0] = (fRec56[0] - (fConst35 * ((fConst58 * fRec55[2]) + (fConst59 * fRec55[1]))));
839 			double fTemp14 = (fConst69 * fRec54[1]);
840 			fRec54[0] = ((fConst35 * (((fConst37 * fRec55[0]) + (fConst60 * fRec55[1])) + (fConst37 * fRec55[2]))) - (fConst64 * ((fConst66 * fRec54[2]) + fTemp14)));
841 			double fTemp15 = std::max<double>(-1.0, std::min<double>(1.0, ((fRec54[2] + (fConst64 * (fTemp14 + (fConst66 * fRec54[0])))) * std::pow(10.0, (1.2 * fRec52[0])))));
842 			fRec64[0] = ((fConst70 * fRec59[1]) - (fConst44 * ((fConst45 * fRec64[1]) - (fConst39 * fRec59[0]))));
843 			fRec63[0] = (fRec64[0] - (fConst40 * ((fConst51 * fRec63[2]) + (fConst54 * fRec63[1]))));
844 			double fTemp16 = (fConst59 * fRec62[1]);
845 			fRec62[0] = ((fConst40 * (((fConst53 * fRec63[0]) + (fConst71 * fRec63[1])) + (fConst53 * fRec63[2]))) - (fConst72 * ((fConst73 * fRec62[2]) + fTemp16)));
846 			double fTemp17 = (fConst69 * fRec61[1]);
847 			fRec61[0] = ((fRec62[2] + (fConst72 * (fTemp16 + (fConst73 * fRec62[0])))) - (fConst64 * ((fConst66 * fRec61[2]) + fTemp17)));
848 			double fTemp18 = std::max<double>(-1.0, std::min<double>(1.0, ((fRec61[2] + (fConst64 * (fTemp17 + (fConst66 * fRec61[0])))) * std::pow(10.0, (0.80000000000000004 * fRec52[0])))));
849 			fRec68[0] = (0.0 - (fConst76 * ((fConst56 * fRec68[1]) - (fConst40 * (fTemp13 + fVec4[1])))));
850 			fRec67[0] = (fRec68[0] - (fConst35 * ((fConst58 * fRec67[2]) + (fConst59 * fRec67[1]))));
851 			double fTemp19 = (fRec67[2] + (fRec67[0] + (2.0 * fRec67[1])));
852 			fVec5[0] = fTemp19;
853 			fRec66[0] = ((fConst35 * ((fConst75 * fTemp19) + (fConst77 * fVec5[1]))) - (fConst78 * fRec66[1]));
854 			fRec65[0] = (fRec66[0] - (fConst74 * ((fConst79 * fRec65[2]) + (fConst69 * fRec65[1]))));
855 			double fTemp20 = std::max<double>(-1.0, std::min<double>(1.0, (fConst74 * ((((fConst68 * fRec65[0]) + (fConst80 * fRec65[1])) + (fConst68 * fRec65[2])) * std::pow(10.0, (2.0 * fRec52[0]))))));
856 			fRec70[0] = (0.0 - (fConst81 * ((fConst65 * fRec70[1]) - (fConst35 * (fTemp19 + fVec5[1])))));
857 			fRec69[0] = (fRec70[0] - (fConst74 * ((fConst79 * fRec69[2]) + (fConst69 * fRec69[1]))));
858 			double fTemp21 = std::max<double>(-1.0, std::min<double>(1.0, (fConst74 * ((fRec69[2] + (fRec69[0] + (2.0 * fRec69[1]))) * std::pow(10.0, (0.90000000000000002 * fRec52[0]))))));
859 			double fTemp22 = (((1.333521432 * (fTemp15 * (1.0 - (0.33333333333333331 * module_faustpower2_f(fTemp15))))) + (1.584893192 * ((fTemp18 * (1.0 - (0.33333333333333331 * module_faustpower2_f(fTemp18)))) + (fTemp20 * (1.0 - (0.33333333333333331 * module_faustpower2_f(fTemp20))))))) + (1.2589412 * (fTemp21 * (1.0 - (0.33333333333333331 * module_faustpower2_f(fTemp21))))));
860 			fVec6[0] = fTemp22;
861 			fRec53[0] = (0.0 - (fConst6 * ((fConst7 * fRec53[1]) - (fTemp22 + fVec6[1]))));
862 			double fTemp23 = ((0.024937655860349125 * (fTemp10 * (1.0 - std::max<double>(0.0, fTemp11)))) + (fRec53[0] * (1.0 - std::max<double>(0.0, (-1.0 * fTemp11)))));
863 			fVec7[0] = fTemp23;
864 			fRec14[0] = (0.0 - (fConst6 * ((fConst7 * fRec14[1]) - (fTemp23 + fVec7[1]))));
865 			fRec71[0] = (fSlow3 + (0.999 * fRec71[1]));
866 			double fTemp24 = std::pow(10.0, (2.4239999999999999 * (fRec14[0] * (fRec71[0] + -0.01))));
867 			fVec8[0] = fTemp24;
868 			fRec13[0] = ((0.93028479253239138 * (fTemp24 + fVec8[1])) - (0.86056958506478287 * fRec13[1]));
869 			fRec12[0] = (fRec13[0] - ((1.8405051250752198 * fRec12[1]) + (0.86129424393186271 * fRec12[2])));
870 			double fTemp25 = (0.92544984225177063 * (fRec12[0] + fRec12[2]));
871 			fRec72[0] = (fConst6 * ((0.0041000000000000003 * (fRec11[1] + fRec11[2])) - (fConst7 * fRec72[1])));
872 			double fTemp26 = (1.8508996845035413 * fRec12[1]);
873 			fRec11[0] = (double(Ftube(int(TUBE_TABLE_6V6_250k), double(((fTemp25 + (fRec72[0] + fTemp26)) + -0.65976100000000004)))) + -89.08268292682925);
874 			fRec10[0] = ((0.025000000000000001 * ((fConst4 * fRec11[0]) + (fConst11 * fRec11[1]))) - (fConst12 * fRec10[1]));
875 			fRec75[0] = (fConst6 * ((0.0041000000000000003 * (fRec74[1] + fRec74[2])) - (fConst7 * fRec75[1])));
876 			fRec74[0] = (double(Ftube(int(TUBE_TABLE_6V6_68k), double(((fTemp25 + (fRec75[0] + fTemp26)) + -0.66454100000000005)))) + -87.916829268292673);
877 			fRec73[0] = ((0.025000000000000001 * ((fConst4 * fRec74[0]) + (fConst11 * fRec74[1]))) - (fConst12 * fRec73[1]));
878 			double fTemp27 = (std::min<double>(0.69999999999999996, fRec10[0]) + std::max<double>(-0.75, fRec73[0]));
879 			double fTemp28 = (0.5 * fRec2[1]);
880 			double fTemp29 = (0.40000000000000002 * fRec4[1]);
881 			double fTemp30 = (fTemp28 + ((0.29999999999999999 * fRec6[1]) + fTemp29));
882 			double fTemp31 = ((fTemp27 + (0.20000000000000001 * fRec8[1])) - fTemp30);
883 			fRec8[0] = fTemp31;
884 			double fRec9 = (0.0 - (0.20000000000000001 * fTemp31));
885 			fRec6[0] = (fRec9 + fRec8[1]);
886 			double fRec7 = (0.29999999999999999 * (fTemp27 - fTemp30));
887 			fRec4[0] = (fRec7 + fRec6[1]);
888 			double fRec5 = (0.40000000000000002 * (fTemp27 - (fTemp29 + fTemp28)));
889 			fRec2[0] = (fRec5 + fRec4[1]);
890 			double fRec3 = (0.5 * (fTemp27 - fTemp28));
891 			output0[i] = FAUSTFLOAT((fRec0[0] * (fRec3 + fRec2[1])));
892 			fRec1[1] = fRec1[0];
893 			fRec0[1] = fRec0[0];
894 			fRec23[1] = fRec23[0];
895 			fRec22[2] = fRec22[1];
896 			fRec22[1] = fRec22[0];
897 			fRec24[1] = fRec24[0];
898 			fRec21[2] = fRec21[1];
899 			fRec21[1] = fRec21[0];
900 			fRec20[1] = fRec20[0];
901 			fRec34[1] = fRec34[0];
902 			fRec33[2] = fRec33[1];
903 			fRec33[1] = fRec33[0];
904 			fRec35[1] = fRec35[0];
905 			fRec32[2] = fRec32[1];
906 			fRec32[1] = fRec32[0];
907 			fRec31[1] = fRec31[0];
908 			fRec41[1] = fRec41[0];
909 			fRec40[1] = fRec40[0];
910 			fVec0[1] = fVec0[0];
911 			fRec45[1] = fRec45[0];
912 			fRec44[1] = fRec44[0];
913 			fRec43[2] = fRec43[1];
914 			fRec43[1] = fRec43[0];
915 			fRec42[2] = fRec42[1];
916 			fRec42[1] = fRec42[0];
917 			fVec1[1] = fVec1[0];
918 			fRec39[1] = fRec39[0];
919 			fRec38[2] = fRec38[1];
920 			fRec38[1] = fRec38[0];
921 			fRec46[1] = fRec46[0];
922 			fRec37[2] = fRec37[1];
923 			fRec37[1] = fRec37[0];
924 			fRec36[1] = fRec36[0];
925 			fRec30[2] = fRec30[1];
926 			fRec30[1] = fRec30[0];
927 			fRec29[1] = fRec29[0];
928 			fRec28[1] = fRec28[0];
929 			fRec27[2] = fRec27[1];
930 			fRec27[1] = fRec27[0];
931 			fRec47[1] = fRec47[0];
932 			fRec26[2] = fRec26[1];
933 			fRec26[1] = fRec26[0];
934 			fRec25[1] = fRec25[0];
935 			fRec19[2] = fRec19[1];
936 			fRec19[1] = fRec19[0];
937 			fRec18[1] = fRec18[0];
938 			fRec17[2] = fRec17[1];
939 			fRec17[1] = fRec17[0];
940 			fRec48[1] = fRec48[0];
941 			fRec16[2] = fRec16[1];
942 			fRec16[1] = fRec16[0];
943 			fRec15[1] = fRec15[0];
944 			fRec49[1] = fRec49[0];
945 			IOTA = (IOTA + 1);
946 			fRec51[1] = fRec51[0];
947 			fRec50[1] = fRec50[0];
948 			fRec52[1] = fRec52[0];
949 			fRec60[2] = fRec60[1];
950 			fRec60[1] = fRec60[0];
951 			fVec3[1] = fVec3[0];
952 			fRec59[1] = fRec59[0];
953 			fRec58[1] = fRec58[0];
954 			fRec57[2] = fRec57[1];
955 			fRec57[1] = fRec57[0];
956 			fVec4[1] = fVec4[0];
957 			fRec56[1] = fRec56[0];
958 			fRec55[2] = fRec55[1];
959 			fRec55[1] = fRec55[0];
960 			fRec54[2] = fRec54[1];
961 			fRec54[1] = fRec54[0];
962 			fRec64[1] = fRec64[0];
963 			fRec63[2] = fRec63[1];
964 			fRec63[1] = fRec63[0];
965 			fRec62[2] = fRec62[1];
966 			fRec62[1] = fRec62[0];
967 			fRec61[2] = fRec61[1];
968 			fRec61[1] = fRec61[0];
969 			fRec68[1] = fRec68[0];
970 			fRec67[2] = fRec67[1];
971 			fRec67[1] = fRec67[0];
972 			fVec5[1] = fVec5[0];
973 			fRec66[1] = fRec66[0];
974 			fRec65[2] = fRec65[1];
975 			fRec65[1] = fRec65[0];
976 			fRec70[1] = fRec70[0];
977 			fRec69[2] = fRec69[1];
978 			fRec69[1] = fRec69[0];
979 			fVec6[1] = fVec6[0];
980 			fRec53[1] = fRec53[0];
981 			fVec7[1] = fVec7[0];
982 			fRec14[1] = fRec14[0];
983 			fRec71[1] = fRec71[0];
984 			fVec8[1] = fVec8[0];
985 			fRec13[1] = fRec13[0];
986 			fRec12[2] = fRec12[1];
987 			fRec12[1] = fRec12[0];
988 			fRec72[1] = fRec72[0];
989 			fRec11[2] = fRec11[1];
990 			fRec11[1] = fRec11[0];
991 			fRec10[1] = fRec10[0];
992 			fRec75[1] = fRec75[0];
993 			fRec74[2] = fRec74[1];
994 			fRec74[1] = fRec74[0];
995 			fRec73[1] = fRec73[0];
996 			fRec8[1] = fRec8[0];
997 			fRec6[1] = fRec6[0];
998 			fRec4[1] = fRec4[0];
999 			fRec2[1] = fRec2[0];
1000 
1001 		}
1002 
1003 	}
1004 
1005 };
1006 
1007 
instantiate()1008 dsp *instantiate()
1009 {
1010     return new module();
1011 }
1012 } /* namespace gxsim_pre_6dj8_pp_6v6 */
1013 
1014