Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende ÜberarbeitungLetzte ÜberarbeitungBeide Seiten der Revision | ||
analogrechner:vektorlaenge [2020-12-10 16:34] – Approximation durch Potenzreihe rainer | analogrechner:vektorlaenge [2021-10-11 07:54] – asciimath rainer | ||
---|---|---|---|
Zeile 152: | Zeile 152: | ||
Wegen | Wegen | ||
- | `sqrt(x^2+y^2) > max(x,y) | + | `sqrt(x^2+y^2) >= max(x,y) |
kann man auch durch einen linearen Ausdruck approxmieren: | kann man auch durch einen linearen Ausdruck approxmieren: | ||
Zeile 163: | Zeile 163: | ||
Dies entspricht einer Approximation | Dies entspricht einer Approximation | ||
- | `sqrt(1+x^2) ~~ 1 + 0.38 x if x <= 1 | + | `sqrt(1+x^2) ~~ 1 + 0.38 x if |x| <= 1 |
wobei der Wert 0.38 durch Probieren ermittelt wurde. Mit dem Faktor `sqrt(2)-1 ~~ 0.414` wird der Fehler am Bereichsende minimiert. | wobei der Wert 0.38 durch Probieren ermittelt wurde. Mit dem Faktor `sqrt(2)-1 ~~ 0.414` wird der Fehler am Bereichsende minimiert. | ||
Zeile 169: | Zeile 169: | ||
Besser ist freilich eine Taylorreihe (für `x<=1`) mit | Besser ist freilich eine Taylorreihe (für `x<=1`) mit | ||
- | `sqrt(1+x*x) ~~ 1 + 0.41*x^2 | + | `sqrt(1+x^2) ~~ 1 + 0.41*x^2 |
| | ||
benötigt aber einen Quadrierer (anstelle von dreien). | benötigt aber einen Quadrierer (anstelle von dreien). | ||
| | ||
- | Mit einem zusätzlichen Multiplizierer ist | + | Mit einem zusätzlichen Multiplizierer ist der Fehler unter 1%: |
- | | + | |
Die Koeffizienten sind wieder empirisch ermittelt; gegebenenfalls können optimale Koeffizienten über eine | Die Koeffizienten sind wieder empirisch ermittelt; gegebenenfalls können optimale Koeffizienten über eine | ||
[https:// | [https:// | ||
- | \ASCIIMATHML ./ASCIIMathML.js | + | \ASCIIMATHML |
</ | </ |