Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

NUMERICAL SOLUTION OF ORDINARY DIFFERENTIAL EQUATIONS

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "NUMERICAL SOLUTION OF ORDINARY DIFFERENTIAL EQUATIONS"— Μεταγράφημα παρουσίασης:

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

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

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

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

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

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

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

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


Κατέβασμα ppt "NUMERICAL SOLUTION OF ORDINARY DIFFERENTIAL EQUATIONS"

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google