Ich versuche zu verstehen, was Maschinen-Epsilon ist. Laut Wikipedia kann es wie folgt berechnet werden:
def machineEpsilon(func=float):
machine_epsilon = func(1)
while func(1)+func(machine_epsilon) != func(1):
machine_epsilon_last = machine_epsilon
machine_epsilon = func(machine_epsilon) / func(2)
return machine_epsilon_last
Es ist jedoch nur für Zahlen mit doppelter Genauigkeit geeignet. Ich bin daran interessiert, es so zu ändern, dass es auch Zahlen mit einfacher Genauigkeit unterstützt. Ich habe gelesen, dass Numpy verwendet werden kann, insbesondere numpy.float32
Klasse. Kann jemand bei der Änderung der Funktion helfen?
numpy.float32
als Argument an die Funktion!