Spline

מתוך ויקיפדיה, האנציקלופדיה החופשית
גרסה מ־19:03, 25 בינואר 2025 מאת imported>AutoMod (תווי יוניקוד סמויים)
(הבדל) → הגרסה הקודמת | הגרסה האחרונה (הבדל) | הגרסה הבאה ← (הבדל)
קפיצה לניווט קפיצה לחיפוש
יש לפשט ערך זה: הערך מנוסח באופן טכני מדי, וקשה להבנה לקהל הרחב.
סיבה: אם מוזכר מושג פורמלי שאין לו ערך עצמאי בעברית צריך לתת עליו חצי משפט הסבר.
יש להוסיף מבוא אינטואיטיבי שיסביר את הרעיונות והמושגים בצורה פשוטה יותר, רצוי בליווי דוגמאות ותוך שימוש באמצעים אינפוגרפיים. אם אתם סבורים כי הערך איננו ברור דיו או שיש נקודה שאינכם מבינים בו, ציינו זאת בדף השיחה שלו. יש לציין כי ערכים מדעיים רבים מצריכים רקע מוקדם.
יש לפשט ערך זה: הערך מנוסח באופן טכני מדי, וקשה להבנה לקהל הרחב.
סיבה: אם מוזכר מושג פורמלי שאין לו ערך עצמאי בעברית צריך לתת עליו חצי משפט הסבר.
יש להוסיף מבוא אינטואיטיבי שיסביר את הרעיונות והמושגים בצורה פשוטה יותר, רצוי בליווי דוגמאות ותוך שימוש באמצעים אינפוגרפיים. אם אתם סבורים כי הערך איננו ברור דיו או שיש נקודה שאינכם מבינים בו, ציינו זאת בדף השיחה שלו. יש לציין כי ערכים מדעיים רבים מצריכים רקע מוקדם.
Spline ריבועי מורכב משישה מקטעי פולינום. בין הנקודה 0 לנקודה 1 קו ישר. בין נקודה 1 לנקודה 2 פרבולה עם נגזרת שנייה = 4. בין נקודה 2 לנקודה 3 פרבולה עם נגזרת שנייה = -2. בין נקודה 3 לנקודה 4 קו ישר. בין נקודה 4 לנקודה 5 פרבולה עם נגזרת שנייה = 6. בין נקודה 5 לקודה 6 קו ישר.

במתמטיקה, Spline (פוּנְקְצִיַּת-אִפּוּץ) הוא פונקציה המוגדרת על תמך סופי על ידי קבוצה של פונקציות בסיס פולינומיות רציפות למקוטעין. פונקציות הבסיס נבחרות כך שהן חלקות בכל מקום פרט למספר סופי של נקודות החיבור בין מקטעי הפולינומים. נקודות החיבור מכונות קשרים (באנגלית knots).[1][2]. פולינומים אלו נבחרים כך שבנקודת הקשר ערכיהם וערכי נגזרותיהם עד סדר הפולינום שוות מצידיו של הקשר. פונקציות spline מאופיינות בצורה חד ערכית על ידי דרגתן ווקטור הקשרים שלהן.

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

בנוסף לשימוש הישיר בפונקציות ספליין לקרובים, שימוש נפוץ בהם הוא כפונקציות בסיס לתיאור עקומים פרמטריים הידועים גם בשם B-spline. לדוגמה, בגרפיקה ממוחשבת, עקומות b-spline פופולריות עקב פשטות בנייתן, קלות השימוש בהן ודיוקן. בנוסף, היכולת של עקומות b-spline לשערך צורות מורכבות ועיצוב עקומות אינטראקטיבי הופך אותן לנפוצות בישומי עיצוב גרפי. בישומים מעשיים מקובל להשתמש בספליינים מסדר שני ושלישי (Quadratic and cubic splines), כלומר, מסדר 3,2.

אטימולוגיה

מקור השם: רצועת המתכת המשמשת מעצבים - "Flat Spline"

המונח Spline אומץ על שם רצועה גמישה של מתכת המשמשת בדרך כלל מעצבים לסייע בציור עקומה מעוגלת.[3] סרגלים מעוקמים כאלה שימשו בעבר בתכן של גופים בעלי צורות גאומטריות חלקות, למשל, קוער של ספינות[4]. בעידן המודרני מקובל לראות במאמר מ-1946 של Schoenberg את הניסוח המתמטי הראשון.

S(t)={14(t+2)32t114(3|t|36t2+4)1t114(2t)31t2

הגדרה

spline היא פונקציה פולינומית ממשית חלקה למקוטעין

S:[a,b]

תחום סגור [a,b] המורכב מ-k מקטעים [ti1,ti] כאשר a=t0<t1<<tk1<tk=b.

ההגבלה של S במקטע i הוא פולינום

Pi:[ti1,ti],

כך ש:

S(t)={P1(t)t0t<t1P2(t)t1t<t2Pn(t)tn1t<tn

הסדר הגבוה ביותר של פולינומים Pi(t) נקרא סדר ה-spline - S. כאמור, spline אחיד (uniform) אם כל תת-המקטעים באותו אורך במרחב הפרמטרי ולא אחידה אחרת.[5]

הרעיון הוא לבחור פולינומים באופן המבטיח חלקות מספקת ל S. באופן ספציפי, spline מסדר n,‏ S נדרש להיות רציף וגזיר n1 פעמים בנקודות הפנימיות ti: ל i=1,,k1 ו j=0,,n1

Pi(j)(ti)=Pi+1(j)(ti).

דוגמאות

דוגמה פשוטה של spline ריבועי (מסדר 2)

S(t)={(t+1)212t<01(t1)20t2

אשר בה S(0)=2.

דוגמה פשוטה של cubic spline היא

S(t)=|t|3

או

S(t)={t3t0t3t<0

ו

S(0)=0
S(0)=0

דוגמה של שימוש ב-cubic spline כדי ליצור עקומת פעמון של פולינומי הפצה של ארווין-הול:

B-splines

B-splineמישורי

ביישומים בהם פונקציית ספליין אחת אינה שימושית ניתן להשתמש בסכום ממושקל (weighted-sum) של פונקציות בסיס על מנת לתאר עקומים מורכבים. ברישום מקובל C(t)=iPiBid(t) כאשר C(t) פרמטרי ב t, d דרגת הספליין ונקודות הבקרה PiRn מגדירות את הטווח של העקום, לשם פשטות השמטנו את וקטור הקשרים הדרוש להגדרה מלאה של פונקציות הבסיס. לדוגמה, עבור עקום מישורי, נקודות הבסיס שוכנות במישור וn=2.

תכונות B-Spline

  1. חלוקת היחידה - partition of unity - עבור וקטור קשרים t={ti}i=0N:t[tk1,tNk+1], i=0NkBi,k(t)=1,k>0. אינטואיטיבית, בדומה לפונקציות בזייה(bezier), סכום כל פונקציות הבסיס לכל נקודה בה הפונקציות מוגדרות יהיה 1.
  2. הכלה בקמור - convex hull property - העקום מול בקמור של נקודות הבקרה.[6]
  3. הפחתת שינויים - Variation diminishing, בדומה לעקומי בזייה גם בעקומי b-spline, אם נחתוך את העקום המוגדר ביחס לאוסף נקודות הבקרה ווקטור הקשרים מספר החיתוכים של הקו הישר יהיה שווה או קטן ממספר החיתוכים של הקו עם הפוליגון הנוצר מחיבור נקודות הבקרה בקוים ישרים.
  4. תמך סופי - local support - שינוי במיקום של נקודת בקרה ישנה קטע סופי בעקום.

קישורים חיצוניים

ויקישיתוף מדיה וקבצים בנושא Spline בוויקישיתוף   המזהה לא מולא ולא נמצא בוויקינתונים, נא למלא את הפרמטר.

הערות שוליים

  1. ^ בתהליכי בנייה "תבנית:Cite book"
  2. ^ בתהליכי בנייה "תבנית:Cite book"
  3. ^ בתהליכי בנייה "תבנית:Cite book"
  4. ^ Elaine Cohen, Realtime Pipelined Spline Data Fitting for Sketched Curves, Academic Press, 1991-01-01, עמ' 91–102, ISBN 978-0-12-438660-0
  5. ^ בתהליכי בנייה "תבנית:Cite book"
  6. ^ Peter Shirly and Steve Marchner, fundamentals of computer graphics, ‏2009