חישווב arcsin

  • פותח הנושא ASHY
  • פורסם בתאריך

ASHY

New member
חישווב arcsin

(אני פונה אל הפורום הזה ולא למתמטיקה כי אני מחפש את הביצוע הטכני יותר מהתיאורתי) אני רוצה לבנות תוכנה שבין היתר מחשבת את הarcsin של ערך נתון. פתחתי את הarcsin לטור טיילור אבל הוא מתכנס לאט מדי (לאט מדי = 50 איברים ראשונים עדיין במרחק של +8 מעלות מהפיתרון, כאשר איבר שווה רק לנגזרות האי-זוגיות) השאלה שלי, היא האם משתמשים במחשבונים וכו בטורי טילור (מקלאון לדייקנים) או בשיטה אחרת? אם בטילור, עד איזה איבר לחשב? אם בשיטה אחרת, מהי? תודה מראש
 
מאד מוזר ../images/Emo12.gif

arcsin לא אמורה להחזיר מעלות. היא אמורה להחזיר רדיאנים. כל החדו"א של פונקציות טריגונומטריות מתבססת על העובדה שמודדים ברדיאנים ולא במעלות
יש לי כמה הצעות: 1) אולי במקרה שכחת להמיר את הרדיאנים למעלות ואתה חושב שהתשובה רחוקה מהפתרון כשהיא דוקא מאד קרובה? 2) תנסה לעשות את החישובים שלך כך שיהיו כמה שפחות תלויים באי הדיוקים של שיטת הנקודה הצפה. 3) נסה לחפש שיטות איטרטיביות לחישוב arcsin. יש אחת טריויאלית (ניוטון רפסון), אבל לצורך העניין אתה גם חייב לדעת לחשב במדוייק את (sin(x, וכידוע אנחנו לא יודעים לחשב אותו במדוייק.
 

vinney

Well-known member
במה זה שונה מחישוב טורי טיילור?../images/Emo13.gif

אבל ההערה על הרדיאנים במקום, לדעתי זה מקור הבלבול שלך.
 

ASHY

New member
אני משתמש ברדינאנים (100%)

אבל מה אמרת על הנקודה הצפה?
 

vinney

Well-known member
חישובים עם נקודה צפה

מאוד מאוד לא מדויקים. טווח השגיאה שלהם יכול להרוס לך את כל הפיתוח של הטור.
 
יש לי הצעה ../images/Emo13.gif

תשים לב שפיתוח סופי לטור טיילור הוא פולינום. יש שיטה לחישוב ערכי פולינום בנקודה הנקראת שיטת horner. היא ידועה בתור יציבה נומרית (כלומר לא מושפעת עד כדי כך מאי דיוקים). חפש עליה ב-google.
 

HaRmosh

New member
קבל הצעה

תבנה תוכנית שמחשבת את הערך עד לדיוק הרצוי, שתהיה איטית כמה שתהיה. החידוש הוא, שאת התוצאה תזרוק לקובץ טקסט - כלומר, תבנה תוכנית C שמדפיסה לקובץ C אחר תוכנית ב-C, שכל מה שהיא תעשה זה לחפש בטבלת חיפוש עבור ערך מסויים את תוצאת החישוב שחושבה ע"י התוכנית ה"איטית" ולפלוט אותה. מבולבל ? בקצרה - תוכנית שבונה טבלה עם מיפוי ערך ותוצאה, בצורה חד פעמית, ואז תוכנית שנוצרה ממנה, ומחזירה פשוט את התוצאה שחושבה מהטבלה.
 
קבל עוד הצעה ../images/Emo11.gif

נגדיר סדרה עם כלל נסיגה באופן הבא:
a[1] = 0 a[n+1] = a[n] - tan(a[n]) + p / cos(a[n])​
בהנחה שאתה יודע לחשב את Tan ואת Cos בדיוק גבוה הסדרה תתכנס ל-ArcSin של p. למיטב ידיעתי את כל הפונקציות כאן ניתן לבטא באמצעות Sin/Cos בלבד, וטורי הטיילור של Sin ושל Cos מתכנסים מאד מהר לדיוק גבוה.
 
נ.ב.

בהנחה ואתה יודע לחשב את Sin/Cos בדיוק גבוה, הסדרה [a[n שהגדרתי תתכנס בקצב מאד מהיר. האיבר העשירי שלה כבר יהיה בדיוק של כמה עשרות ספרות אחרי הנקודה.
 

ASHY

New member
דבר ראשון - תודה רבה לכולכם

דבר שני, השירותים הסודיים של ישראל, איך פיתחת את הסידרה הזו? תודה שוב.
 
למעלה