1 / 14

NUMERICAL SOLUTION OF ORDINARY DIFFERENTIAL EQUATIONS

NUMERICAL SOLUTION OF ORDINARY DIFFERENTIAL EQUATIONS. פתרון נומרי של משוואות דיפרנציאליות רגילות. עם תנאי התחלה:. אנחנו מניחים כי מתקיימים תנאים מספיקים לקיומו של פתרון יחיד של הבעיה בסביבה של 0 x , דהיינו: ( y , x ) f רציפה ברצועה קיים קבוע L כזה שלכל וכל y , * y.

yanisin
Download Presentation

NUMERICAL SOLUTION OF ORDINARY DIFFERENTIAL EQUATIONS

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. NUMERICAL SOLUTION OF ORDINARY DIFFERENTIAL EQUATIONS

  2. פתרון נומרי של משוואות דיפרנציאליות רגילות עם תנאי התחלה: • אנחנו מניחים כי מתקיימים תנאים מספיקים לקיומו של פתרון יחיד של הבעיה • בסביבה של 0x, דהיינו: • (y,x)f רציפה ברצועה • קיים קבוע L כזה שלכל וכל y, *y המטרה שלנו היא לפתור משוואה דיפרנציאלית רגילה (תנאי ליפשיץ) אם רציפה וחסומה אזי תנאי ליפשיץ מתקיים. בפרק הזה נשתמש בסימן (x)Y עבור הפתרון המדויק של הבעיה. בנוסף, נסמן:

  3. משוואות דיפרנציאליות רגילות (המשך) פתרון אנליטי: דוגמא: לצערנו, פתרונות אנליטיים ידועים רק במקרים בודדים. במקרים אחרים נעזרים בפתרונות נומריים. פתרון נומרי נותן ערכים של y בסדרת נקודות {xi }. שיטות לפתרון נומרי ניתן לחלק ל-2 קבוצות: • שיטות צעד יחיד. כדי לחשב yiבנקודה xi דרוש מידע רק ב 1-xi • שיטות צעדים מרובים - דרוש מידע במספר נקודות קודמות שיקולים חשובים עבור שיטות נומריות: • מהי השגיאה בכל צעד הפתרון (שגיאת קיטוע ושגיאת העגלה) ואיך שגיאה זאת משפיעה על תוצאות צעדים הבאים (הפצת השגיאה ויציבות) • האם ניתן בקלות להעריך את השגיאה בכל צעד הפתרון על בסיס תוצאות החישוב הידועות עד כה • איך מתחילים את הפתרון (חשוב בשיטות צעדים מרובים) • מהירות השיטה

  4. שיטת אוילר (Euler) זאת שיטת צעד יחיד, ז"א חישוב של הפתרון 1+yiבנקודה 1+xi מבוסס רק על ערך הפתרון yiבנקודה הקודמת. עיקרון השיטה ברור מהגרף הבה: נתחיל מהשיטה הפשוטה ביותר – שיטת אוילר. 1y פתרון נומרי את נוסחאות השיטה אפשר לפתח, למשל, בעזרת טור טיילור: 1Y פתרון מדויק 0Y h0 0x 1x שגיאת הקיטוע אם מזניחים את שגיאות הקיטוע אזי מקבלים: או, בצורה מפורשת יותר:

  5. שיטת טור טיילור כאשר בעזרת טור טיילור ניתן לפתח שיטות מדויקות יותר: שיטת אוילר מתקבלת כאשר קוטעים את הטור החל מהאיבר השלישי. שגיאת הקיטוע במקרה הזה היא (2h)O. אם משאירים את האבר (2h)O כחלק מנוסחת השיטה וקוטעים את שאר הטור – מקבלים שגיאה קטנה יותר - (3h)O. וכן הלאה... כך אפשר לבנות שיטה מהסדר הרצוי. נדגיש כי שגיאת הקיטוע מתווספת לשגיאה הכללית בכל צעד של הפתרון. לפי כך היא גם נקראת "שגיאה מקומית" ומסומנת כ T(T ממילה " trancation"). כדי לפתור את המשדי"פ בקטע [b, a] דרוש לבצע /h(a-b) צעדים. אם שגיאה מקומית בכל צעד היא (hm)Oאזי השגיאה הכללית המצטברת היאלפחות (1hm-)O

  6. דוגמת פתרון לפי שיטת טור טיילור בקטע עם תנאי התחלה הפתרון האנליטי של הבעיה הוא כך שנוכל להשוות איתו את הפתרון הנומרי. פתרון לפי שיטת אוילר: נבחר ב- 0.1=hונבצע 5 צעדים: דרוש לפתור את המשוואה: תוצאות החישוב והשגיאה המצטברת רשומים בטבלה:

  7. דוגמת פתרון לפי שיטת טור טיילור (המשך) בצעד האחרון פתרון מסדר גבוה (T=O(h5 רואים כי השגיאה מצטברת לסדר (h). O נעריך את השגיאה המקומית .

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

  9. שיטת אוילר משופרת (מנבא-מתקן ( חוסר הדיוק של השיטה נובע מי כך שמחשבים את 1+yi לפי שיפוע הפתרון בתחילת הצעד (בנקודה xi). ניתן לשפר את הדיוק אם נשתמש בממוצע של השיפועים בתחילתו ובסופו של הצעד: ראינו כי שגיאת הקיטוע בשיטת אוילר היא מסדר 2 והשגיאה הכללית – (h)O. Predictor פתרון מדויק אבל מהו הערך של 1+y'i? 0Y נמצא אותו כקירוב גס של שיטת אוילר המקורית. h0 לסיכום, השיטה החדשה היא דו-שלבית. בשלב הראשון מחשבים את הערך המנובא (predicted): 0x 1x ובשלב הבא – את הערך המתוקן (corrected): אפשר לחזור על התיקון מספר פעמים עד שלא יהיה שינוי משמעותי ב- 1+yiהמתוקן

  10. שיטת רונגה-קוטא (Runge-Kutta) מסדר 2 את המקדמים נמצא מהתנאי ששגיאת הקיטוע תהיה (3h)O. נשתמש בטור טיילור: שיטת רונגה-קוטא היא גם שיטה מסוג "מנבא-מתקן" אך כללית יותר משיטת אוילר משופרת. השיטה מוגדרת לפי נוסחאות הבאות: מצד שני, לפי נוסחאות השיטה: את האיבר האחרון נפתח בטור טיילור:

  11. :RK2 שיטות רונגה-קוטא (Runge-Kutta) מסדר 2 נשאר רק להשוות בין התוצאה הזאת לבין הטור שבשקף הקודם. שני הביטויים יהיו זהים עד לאיבר השגיאה מסדר (3h)O אם וכאשר יתקיימו המשוואות: שיטת אוילר המשופרת היא מקרה פרטי של שיטת רונגה-קוטא מסדר 2 - 2RK שמתקבלת כאשר ½=b=aו 1=β=α. שגיאת הקיטוע בשיטות האלו היא מסדר 3. נציב את הטור בחזרה לביטוי של 2K ונזניח את אבר השגיאה. נקבל:

  12. 4RK היא השיטה הכי נפוצה! בדרך הזאת ניתן לפתח שיטת רונגה-קוטה מסדר גבוה יותר. נוסחאות השיטה 4RK מסדר 4 הן: שיטות רונגה-קוטא (Runge-Kutta) מסדר 4

  13. הערכה של שגיאת קיטוע בשיטות רונגה-קוטא נניח כי ביצענו n צעדים לפי שיטת RK מסדר m. רוצים להעריך שגיאת הקיטוע בצעד הבא. כדי לעשות זאת נבצע 2 צעדים בגודל h ונקבל הערך 2+yn. אחר כך נחזור ונבצע צעד אחד בגודל כפול ונקבל ערך . נשווה את התוצאות: שיטות רונגה-קוטא מאפשרות הערכה יעילה של שגיאות קיטוע בכל צעד הפתרון. עושים זאת ע"י אקסטראפולציית ריצ'רדסון. שימו לב כי לקחנו בחשבון ששגיאה מקומית בשיטה מסדר m היא (1hm+)O. הנחנו גם כי המקדם C הוא אותו המקדם בשני החישובים. משתי המשוואות הנ"ל ניתן לחלץ את השגיאה המקומית של הצעד בגודל h: שיטת אוילר משופרת היא מסדר 2 (2m=) כך ששגיאת הקיטוע היא

  14. (נבחר ב- 0.1=(h דוגמה של פתרון לפי שיטת רונגה-קוטא נפתור את הבעיה בשיטת RK4 ונעריך את השגיאה: כדי להעריך את השגיאה נבצע עוד צעד אחד עם 0.1=h ואחר כך נחזור ונבצע צעד אחד בגודל כפול. נקבל: נשווה את הפתרון הנומרי 2y עם הפתרון המדויק: קרוב מאד לשגיאה המצטברת אחרי 2 צעדים!

More Related