Genauigkeit bei Näherung?!? < MuPad < Mathe-Software < Mathe < Vorhilfe
|
Status: |
(Frage) beantwortet | Datum: | 21:14 So 30.03.2008 | Autor: | tomkul |
Aufgabe | Zur Ermittlung der Kreiszahl PI ist es möglich eine Innere und Äussere Näherung über Sehnen zu erreichen. Mit einer unendlich großen Anzahl von Sehnen soll so die Kreiszahl PI ermittelt werden können. Mein Schwiegervater hat mir somit folgende Formel gegeben: Anz_Sehnen*sin(180/Anz_Sehnen)=my_pi |
Bei dem Versuch die Formel zu Wiederlegen bzw. eine Genauigkeit zu ermitteln, bin ich jedoch kläglich mit Mupad gescheitert. Was ist falsch?!?
1.) float(sin(90)) ergibt nicht wie erwartet 1 sondern 0.89393
2.) Eine Konstante const_pi=3.14159265358979323846264338327950 wird auf 9 Nachkommastellen begrenzt. Wie kann ich eine bessere Genauigkeit mit mehr Nachkommastellen erreichen?
3.) solve(Anz_Sehnen*sin(180/Anz_Sehnen),Anz_Sehnen) und anschliessendes Float(%) bringt leider auch keine richtigen Ergebnisse wegen der falschen SIN Werte.
Wo liegt der Fehler, da ich eigentlich davon ausgehe, dass es funktionieren sollte?
Gruß und Dank,
Thomas
PS: Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt.
|
|
|
|
> Zur Ermittlung der Kreiszahl PI ist es möglich eine Innere
> und Äussere Näherung über Sehnen zu erreichen. Mit einer
> unendlich großen Anzahl von Sehnen soll so die Kreiszahl PI
> ermittelt werden können. Mein Schwiegervater hat mir somit
> folgende Formel gegeben:
> Anz_Sehnen*sin(180/Anz_Sehnen)=my_pi
> Bei dem Versuch die Formel zu Wiederlegen bzw. eine
> Genauigkeit zu ermitteln, bin ich jedoch kläglich mit Mupad
> gescheitert. Was ist falsch?!?
>
> 1.) float(sin(90)) ergibt nicht wie erwartet 1 sondern
> 0.89393
Klar: sin erwartet den Winkel im Bogenmass. [mm] $\sin(\pi/2)$ [/mm] wird schon eine glatte $1$ liefern.
> 2.) Eine Konstante
> const_pi=3.14159265358979323846264338327950 wird auf 9
> Nachkommastellen begrenzt. Wie kann ich eine bessere
> Genauigkeit mit mehr Nachkommastellen erreichen?
DIGITS := 100
> 3.) solve(Anz_Sehnen*sin(180/Anz_Sehnen),Anz_Sehnen) und
> anschliessendes Float(%) bringt leider auch keine richtigen
> Ergebnisse wegen der falschen SIN Werte.
Siehe oben: Bogenmass nicht Gradmass als Argument des sin verwenden oder eine passende Funktion definieren
sind := x->sin(x/180*PI)
Dann erhältst Du auch sind(90)=1.
|
|
|
|