Stimmt, und das ist nach dem ln.
und ich habe vom ln an sich zu wenig Ahnung.
Sherlock
Mir geht's genauso..
Fand das Original nicht schlecht und wollte es halt mal nach Delphi umsetzen (Nebenbei Vaporware ist das nicht) zu viel Aufwand wie man sehen kann.
Und man kann von lernen.
Mein Hauptproblem zur zeit ist das der Linker mich einfach rausschmeißt.
Delphi-Quellcode:
procedure TSpectrum.FFT(Dat:
array of TComplex);
var
i, j, n, K , io, ie, in_, nn: Integer;
u,
tp, tq, w: TComplex;
sr, mGain: Single;
function LimitedSingleValue(doubleVal: double): single;
stdcall;
begin
if doubleVal > MaxSingle
then
result := MaxSingle
else if doubleVal < MinSingle
then
result := MinSingle
else
result := doubleVal;
end;
begin
Der linker entfernt variablen.
Delphi-Quellcode:
mGain := (FGain / 100);
if FView = 0 then
sr := (4096 * mGain) / FFFTSize
else
sr := 1 / FFFTSize;
hier FFFTSize.
EurekaLog springt dann mit einem
Access Violation auf das letzte
end im oberen Quelltext. Mit der Meldung vom Speicher kann nicht gelesen werden.
Da ist einiges im argen.
Zitat:
.. wie groß können denn Spectrum[i1].r und Spectrum[i1].i maximal werden?
Kann ich leider mit Bestimmtheit nicht sagen.
Wenn Interesse besteht kann ich den Quelltext zum debuggen aber gerne mal hochladen.
Oder ich schicke einen Link per PN.
gruss