ich debugge hier gerade eine extrem empfindliche Anwendung und wundere mich warum meine Ergebnisse so schlecht sind.
Nach ettlichem Suchen habe ich nun folgende Situation nachstellen können: Man kann hier 2 mal den Gleichen Code sehen, links in FPC rechts in C++ Blubber speichert jeweils den Wert von MoveY for dem tanh aufruf.
Wie man sehen kann unterscheiden sich die Ergebnisse doch deutlich, das ist nicht mal eine Einfache Rundung.
Weiß hier jemand wie man "Einfluss" auf das Ergebnis der tanh funktion nehmen kann ?
ich habe bereits versucht die Genauigkeit in 64-Bit Rechnen zu lassen das hilft aber leider auch nicht wirklich, da es dann an anderer Stelle Kracht.
Hab auch schon versucht mit diesen kleinen "Hilfsfunktion" die C-Variante direkt in meinen Code ein zu linken:
Code: Alles auswählen
#include <math.h>
float c_tanh(float val)
{
return tanh(val);
}
ein .o file das man dann einbinden können sollte, aber dann kommt die folgende Fehlermeldung:gcc -O0 -g -o c_math.o -Wall -c c_math.c