Hi boehmorgler
> da die endlos vielen trignometrischen Funktionen zuviel Rechenzeit benötigen.
Wenn man trickst benoetigen die fast keine Rechenzeit. Man kann diese mittels komplexem Exponentialansatz oder Z-Transformation der Sinusfunktion iterativ erzeugen.
Versuche ersteres mal aus dem Kopf herzuleten. Mehr als Schulmathematik ist das nicht :
1) y(k+1)=b*y(k) soll eine komplexe e-Funktion erzeugen:
2) y(k)=exp(j*a*k)=cos(a*k)+j*sin(a*k), j=wurzel(-1)
b laesst sich durch Einsetzen bestimmen:
y(k+1)=exp(j*a*(k+1))=exp(j*a)*exp(j*a*k)
Na jetzt stehts ja schon da
b=exp(j*a)=cos(a)+j*sin(a)
Voila das ist der Trick. a bestimmt die Frequenz und cos(a),sin(a) sind konstant.
Genuesslich zerlegen wir y(k+1) von 1) noch in Real und Imaginaerteil:
re(k+1)+j*im(k+1)=[cos(a)+j*sin(a)]*[re(k)+j*im(k)]
Multiplizieren aus und vergleichen :
re(k+1)=cos(a)*re(k)-sin(a)*im(k)
im(k+1)=sin(a)*re(k)+cos(a)*im(k) ... re(0)=1, im(0)=0
**************************
sin(a),cos(a) sind konstante Werte !
4 Multiplikationen, 2 Additionen, fertig ist der Sinus/Cosinusgenerator
Klingt ungaublich. Aber funktioniert tatsaechlich.
Ganz ohne rerchenintensive Potenzreihen !
Mit FM ein Rechteck ? Schwierig !
Ich denke Klarinettensound hat man am DX7 eher linear ohne FM
mittels der Sinusoperatoren erzeugt. Wie an einer Hammond.
Weiss es aber nicht sicher. FM ist nichtlinear. Man kann hier
fast nichts berechnen, vorhersagen. Kann ja mal an meinem DX7 schauen.
Es gab in den 80 er ein Synthesizer von TASCO ? der tatsaechlich intensive additive Fouriersynthese betrieb. War aber ein Flop. He he die kannten diese kleine Rechnung vielleicht net.
Und zuvor gab es ein Wahnsinnsteil mit der selben Technik. Hunderte analoger Sinusgeneratoren. Das Teil wuerde dir sicherlich gefallen.
Ich schau mal ob ich dazu einen Link finde.
Frohes neues Jahr.