![]() |
AW: Logarithmus Log zu Delphi
Delphi-Quellcode:
IfThen(FView = 0, (4096 * mGain), 1) / FFFTSize;
Sorry aber das funktioniert nicht weil IFThen so nicht ausgelegt ist. Zitat:
gruss |
AW: Logarithmus Log zu Delphi
Ok, dann gibt es keine überladene Version von IfThen für den passenden Datentypen. Schade.
|
AW: Logarithmus Log zu Delphi
Was passiert, wenn du deine Formel
Delphi-Quellcode:
Schritt für Schritt auswertest?
c := 0.0001;
d := -ln(c); ... b2 := (ln(Sqrt(r * r + i * i) + c ) + d ) * q1; Also so:
Delphi-Quellcode:
c := 0.0001;
d := -ln(c); ... b := Sqrt(r * r + i * i); b := ln( b + c ); b := b + d; b := b*q1; Wo haut's dich da raus? Nebenbei: Wenn du statt d := 9.21034037197618; (als single Wert speichert Delphi 9.21034049987793) d := -ln(0.0001); verwendest, dann wird b oben für r=i=0 wie gewünscht 0 [auch wenn du dich später für "double" entscheiden solltest]. Man darf es Resultatkosmetik nennen... :) |
AW: Logarithmus Log zu Delphi
Zitat:
Danke für die Info. Das nachträglich zurücksetzen ist kein Problem wenn es dann läuft. Zitat:
gruss |
AW: Logarithmus Log zu Delphi
Step by Step solltest du rasch sehen, wo's daneben geht.
...und... d := -ln(0.0001) und deine Konstante 9.21034037197618 (wird gespeichert als 9.21034049987793) sind - solange du alle drei als Single verwendest - gleich. Der Absturz rührt also sicher nicht daher. d := -ln(0.0001) spiegelt einfach den "Sinn" der Formel wieder: ¦Spektrum=0¦ muss Nullstelle sein von b(Spektrum,q1). |
AW: Logarithmus Log zu Delphi
Zitat:
![]() case 0 für die Kreis Visualisierung dann startet die Anwendung aber wird nix visualisiert. Irgendwo da liegt der Fehler für den Kreis bei case 1 das gleiche. Muss mich da durch steppen. PS: Eigentlich müsste b = 0 sein wenn kein Sound wieder gegeben wird ist aber bei weitem höher. gruss |
AW: Logarithmus Log zu Delphi
Ja dann hast du irgendwo sonst ein Problem in deinem Code. Denn b
Delphi-Quellcode:
ist ja genau so gebaut, dass b=0 für ¦Spektrum¦=sqrt(r*r+i*i)=0.
c := 0.0001;
d := -ln(c); b := (ln(Sqrt(r * r + i * i) + c ) + d ) * q1; ¦Spektrum¦=0 in b eingesetzt: b = (ln(0+c) - ln(c))*q1 = 0*q1 = 0 |
AW: Logarithmus Log zu Delphi
Zitat:
Bekomme ich einen Stacküberlauf. Ich glaube das Teil ist einfach zu hoch für mich. (Mir fehlt die höhere Mathematik um die Probleme lösen zu können) Edit wurde zur Seite gelegt im Moment keinen Bock mehr. Danke für die Hilfe. gruss |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:54 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz