מבוא לשיטות נומריות/אינטגרציה נומרית

מתוך testwiki
גרסה מ־18:44, 30 ביוני 2016 מאת imported>יהודה שמחה ולדמן
(הבדל) → הגרסה הקודמת | הגרסה האחרונה (הבדל) | הגרסה הבאה ← (הבדל)
קפיצה לניווט קפיצה לחיפוש

הקדמה

אפשרי רק עבור אינטגרלים מסוימים (גבולות אינטגרציה נתונים). מתי:

  • כאשר יש לפתור אינטגרל מסובך או כאשר לא קיים פתרון אנליטי (לדוגמא 01ex2dx .
  • העדר פונקציה קדומה.
  • הפונקציה נתונה ע"י ערכים בדידים ולא כפונקציה מפורשת (כמו בניסויים לדוגמא).

שיטות

  1. ניוטון-קוטס:
    • שיטת הטרפז
    • שיטת סימפסון
    • שיטות נוספות לאינטגרלים מרובים.
  2. אינטגרלים מרובים:
    • שיטת אינטגרציה בסימולציה.

שיטות ניוטון-קוטס

מחליפים את הפונקציה (או הנקודות) הנתונה בקירוב פשוט יותר, ומבצעים אינטגרציה של הפונקציה המקורבת.

הקירוב נעשה ע"י אינטרפולציה פולינומיית ויש להחליט איזה עקום הכי קרוב לפונקציה המקורית.

שיטת הטרפז: ביצוע קירוב לפונקציה על ידי עקום מסדר 1 (קו ישר)

  • מחלקים את הקטע [a,b] ל-n קטעים שווים.
  • ככל שנגדיל את n, אז h יקטן והדיוק יגדל. h=ban - גודל הקפיצה
  • שטח כל טרפז הוא:
S=(f(xk)+f(xk+1)2)h
  • כעת ניתן להגדיר:
I=abf(x)dx={sum of all trapezoids from x0 until xn}=k=0nf(xk)+f(xk+1)2h
  • נפתח את הביטוי ונקבל ביטוי פשוט יותר:
abf(x)dx=h2k=0n[f(xk)+f(xk+1)]
=h2[f(x0)+f(x1)+f(x1)+f(x2)+f(x2)+f(x3)+]
=h2[f(x0)+f(xn)+2k=1n1f(xk)]
  • השגיאה:
Ek=112f(c)(xkxk1)2n3xk1cxk - השגיאה בכל מקטע
EI=(ba)312n2f¯ - השגיאה הכוללת

ניתן לראות שהשגיאה קטנה ככל ש- n גדל.

שיטת סימפסון

ביצוע קירוב לפונקציה ע"י אינטרפולציה ריבועית (עקום מסדר 2).

  • דרך כל 3 נקודות מקרבים את הפונקציה באמצעות פולינום מסדר 2 ומחשבים את האינטגרל, באמצעות שיטת לגראנז'.
  • מתחת לכל קירוב 3 נקודות ו-2 קטעים, ולכן n חייב להיות זוגי.

h=ban - גודל הקפיצה

שטח כל מקטע

S=xkxk+2f(x)dx=xkxk+2f^(x)dx - לפי לגראנז'
xkxk+2=[(xxk+1)(xxk+2)(xkxk+1)(xkxk+2)f(xk)+(xxk)(xxk+2)(xk+1xk)(xk+1xk+2)f(xk+1)+(xxk)(xxk+1)(xk+2xk)(xk+2xk+1)f(xk+2)]

בכחול - L0(x)

באדום - L1(x)

בירוק - L2(x)

=xk+2xk6(f(xk)+4f(xk+1)+f(xk+2))

  • השטח הכולל:
I=abf(x)dx={sum area of all segments}=a=x0x2f^(x)dx+x2x4f^(x)dx++xn2xnf^(x)dx
=h6[f(x0)+4f(x1)+f(x2)]+h6[f(x2)+4f(x3)+f(x4)]++h6[f(xn2)+4f(xn1)+f(xn)]
=ba3n[f(x0)+4k=1,3,5n1f(xk)+2J=2,4,6n2f(xJ)+f(xn)]
  • השגיאה:
Ek=h590f(4)(c)xkcxk+2 עבור מקטע בודד

האינדקס (4) מציין נגזרת.

Ek=h590f(4)(c)(ba)5acb - השגיאה הכוללת

שיטות נוספות

ביצוע קירוב לפונקציה ע"י פולינום מדרגה שלישית ומעלה.

  • עבור פולינום מדרגה שלישית:
I=x3x08[f(x0)+3f(x1)+3f(x2)+f(x3)]

4 נקודות במרווחים שווים.

אינטגרלים מרובים

אינטגרלים כפולים (לא יעיל לאינטגרלים מסדר גבוה יותר).

  • כעת נדרוש n2 נקודות.
I=y0y1x0x1f(x,y)dxdy
  • מספר הנקודות עולה בחזקת סדר האינטגרל: אינטגרל ב-10 ממדים ידרוש n10 נקודות, ולכן מאלץ אותנו ל- 1010 חישובים ולכן לא יעיל.

שיטת האינטגרציה בסימולציה

  • נגדיר: I=x0x1f(x)dx=x0x1f(x)g(x)g(x)dx
  • נבחר: g(x) שתהיה פונקציית צפיפות הסתברות.
  • אפשרות ל- g(x) :

- התפלגות אחידה

- התפלגות משתנים אקראיים.

  • יצירת מספרים אקראיים מתוך g(x) , וחישוב ערכי הפונקציות g(x),f(x) עבור כל מספר אקראי.
  • חישוב האינטגרל באמצעות: I=x0x1f(x)g(x)g(x)dx=E[f(x)g(x)]
I=1Rk=1Rf(xk)g(xk)
  • הסבר: אנו מחשבים ערכים אקראיים ב- f(x) בין a ל-b. אם נעשה ממוצע של כל סכומי הערכים הללו נקבל תוצאה יחסית מדויקת ל-I. הכפלת כל ערך בערך התפלגותו הסטטיסטי יוצר ממוצע משוקלל ומדויק יותר לסכום הערכים האקראיים.