Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«Maple 9.5/10 Π² ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠ΅, Ρ„ΠΈΠ·ΠΈΠΊΠ΅ ΠΈ ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠΈΒ». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 67

Автор Π’Π»Π°Π΄ΠΈΠΌΠΈΡ€ Π”ΡŒΡΠΊΠΎΠ½ΠΎΠ²

opts β€” Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ Π² Ρ„ΠΎΡ€ΠΌΠ΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ Π²ΠΈΠ΄Π° order=k ΠΈΠ»ΠΈ knots=knotlist.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ примСнСния Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ BSplineCurve с порядком, Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΈ с Ρ‚Ρ€Π΅Ρ‚ΡŒΠΈΠΌ порядком (кубичСский B-сплайн), прСдставлСны Π½Π° рис. 5.19.

Π‘Π»Π΅Π΄ΡƒΠ΅Ρ‚ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ ΠΌΠ°Π»ΠΎΠΌ числС Ρ‚ΠΎΡ‡Π΅ΠΊ стыковки аппроксимация B-сплайнами Π΄Π°Π΅Ρ‚ Π½Π΅Π²Ρ‹ΡΠΎΠΊΡƒΡŽ Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Ρ…ΠΎΡ€ΠΎΡˆΠΎ Π²ΠΈΠ΄Π½ΠΎ ΠΈΠ· рис. 5.19.

Рис. 5.19. ΠŸΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ BSplineCurve

5.9.4. Π‘Ρ€Π°Π²Π½Π΅Π½ΠΈΠ΅ полиномиальной ΠΈ сплайновой аппроксимаций

Когда аппроксимируСтся гладкая функция, прСдставлСнная ΠΏΠ°Ρ€Π°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ… с Ρ€Π°Π²Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹ΠΌ располоТСниСм ΡƒΠ·Π»ΠΎΠΌ, Ρ‚ΠΎ Π΄Π°Π½Π½Ρ‹Π΅ ΠΊΠ°ΠΊ полиномиальной, Ρ‚Π°ΠΊ ΠΈ сплайновой аппроксимаций Ρ€Π°Π·Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ Π½Π΅Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ. Π’ этом случаС ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΊΡƒΠ΄Π° Π±ΠΎΠ»Π΅Π΅ слоТной сплайновой аппроксимации, ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, каТСтся ΠΌΠ°Π»ΠΎ обоснованным.

Однако Ссли Ρ‚ΠΎΡ‡ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ… располоТСны Π½Π΅Ρ€Π°Π²Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎ, Ρ‚ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ полиномиальной аппроксимации ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ Π½Π΅ΠΏΡ€ΠΈΠ΅ΠΌΠ»Π΅ΠΌΡ‹ΠΌ. Π­Ρ‚ΠΎ ΠΎΡ‚Ρ‡Π΅Ρ‚Π»ΠΈΠ²ΠΎ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€, прСдставлСнный Π½Π° рис. 5.20. Π—Π΄Π΅ΡΡŒ Π·Π°Π΄Π°Π½Π° Π½Π° ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ взгляд (судя ΠΏΠΎ Ρ€Π°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ Ρ‚ΠΎΡ‡Π΅ΠΊ) Π½Π΅ слишком слоТная ΠΈ Ρ‡ΡƒΡ‚ΡŒ ΠΊΠΎΠ»Π΅Π±Π°Ρ‚Π΅Π»ΡŒΠ½Π°Ρ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ. Однако полиномиальная аппроксимация (прСдставлСна Ρ‚ΠΎΠ½ΠΊΠΎΠΉ ΠΊΡ€ΠΈΠ²ΠΎΠΉ), особСнно Π² Π½Π°Ρ‡Π°Π»Π΅ β€” Π² ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»Π΅ ΠΏΠ΅Ρ€Π²Ρ‹Ρ… Ρ‚Ρ€Π΅Ρ… Ρ‚ΠΎΡ‡Π΅ΠΊ, Π΄Π°Π΅Ρ‚ явно ΠΎΡˆΠΈΠ±ΠΎΡ‡Π½Ρ‹Π΅ ΡΠΈΠ»ΡŒΠ½Ρ‹Π΅ выбросы. А Π²ΠΎΡ‚ сплайновая аппроксимация (ΠΏΠΎΠΊΠ°Π·Π°Π½Π° Π±ΠΎΠ»Π΅Π΅ ΠΆΠΈΡ€Π½ΠΎΠΌ Π»ΠΈΠ½ΠΈΠ΅ΠΉ) Π²Π΅Π΄Π΅Ρ‚ сСбя ΠΊΡƒΠ΄Π° Π±ΠΎΠ»Π΅Π΅ ΠΏΡ€ΠΈΠ΅ΠΌΠ»Π΅ΠΌΠΎ.

Рис. 5.20. Π‘Ρ€Π°Π²Π½Π΅Π½ΠΈΠ΅ полиномиальной ΠΈ сплайновой аппроксимаций для Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Π·Π°Π΄Π°Π½Π½ΠΎΠΉ ΠΏΠ°Ρ€Π°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈ Π½Π΅Ρ€Π°Π²Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎΠΌ располоТСнии ΡƒΠ·Π»ΠΎΠ²


ΠŸΡ€ΠΈΡ‡ΠΈΠ½Π° Π»ΡƒΡ‡ΡˆΠ΅Π³ΠΎ повСдСния сплайновой аппроксимации здСсь Π²ΠΏΠΎΠ»Π½Π΅ ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Π° β€” напоминая ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π³ΠΈΠ±ΠΊΠΎΠΉ Π»ΠΈΠ½Π΅ΠΉΠΊΠΈ, сплайновая функция эффСктивно сглаТиваСт выбросы ΠΊΡ€ΠΈΠ²ΠΎΠΉ Π² ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΊΠ°Ρ… ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ‚ΠΎΡ‡ΠΊΠ°ΠΌΠΈ.

5.9.5.Бплайновая аппроксимация ΠΏΡ€ΠΈ большом числС ΡƒΠ·Π»ΠΎΠ²

ΠŸΡ€ΠΈ большом числС ΡƒΠ·Π»ΠΎΠ² (дСсятки-сотни ΠΈ Π²Ρ‹ΡˆΠ΅) Π΄Π°Π½Π½Ρ‹Π΅ прСдставлСнныС Ρ‚ΠΎΡ‡ΠΊΠ°ΠΌΠΈ выглядят Π½Π΅Ρ€Π΅Π΄ΠΊΠΎ Π½Π΅ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ. НапримСр, Π½Π° рис. 5.21 ΠΏΠΎΠΊΠ°Π·Π°Π½ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚, ΠΈΠ»Π»ΡŽΡΡ‚Ρ€ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉ ΡΠΏΠ»Π°ΠΉΠ½ΠΎΠ²ΡƒΡŽ Π°ΠΏΠΏΡ€ΠΎΠΊΡΠΈΠΌΠ°Ρ†ΠΈΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ синуса, прСдставлСнной 31 отсчСтом, Π½ΠΎ Π±Π΅Π· Π²Ρ‹Π²ΠΎΠ΄Π° Π³Ρ€Π°Ρ„ΠΈΠΊΠ° сплайновой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. НСсмотря Π½Π° Ρ€Π°Π²Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎΠ΅ располоТСниС ΡƒΠ·Π»ΠΎΠ² ΠΏΠΎ Π³Ρ€Π°Ρ„ΠΈΠΊΡƒ Ρ‚ΠΎΡ‡Π΅ΠΊ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ это функция синуса.

Рис. 5.21 ΠŸΡ€ΠΈΠΌΠ΅Ρ€ прСдставлСния Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ синуса 31 ΡƒΠ·Π»ΠΎΠ²Ρ‹ΠΌΠΈ Ρ‚ΠΎΡ‡ΠΊΠ°ΠΌΠΈ ΠΏΡ€ΠΈ Ρ€Π°Π²Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎΠΌ располоТСнии ΡƒΠ·Π»ΠΎΠ²


Рисунок 5.22 отличаСтся ΠΎΡ‚ рис. 5.21 Ρ‚ΠΎΠ»ΡŒΠΊΠΎ построСниСм сплайновой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, прСдставлСнной графичСским ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ g1 (Π½Π° рис. 5.19 ΠΎΠ½ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ ΠΈΠ· ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ display). ПослС построСния Π³Ρ€Π°Ρ„ΠΈΠΊΠ° сплайновой Π°ΠΏΠΏΡ€ΠΎΠΊΡΠΈΠΌΠΈΡ€ΡƒΡŽΡ‰Π΅ΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ становится Π²ΠΏΠΎΠ»Π½Π΅ ясным, Ρ‡Ρ‚ΠΎ Ρ‚ΠΎΡ‡ΠΊΠΈ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ синуса, которая прСкрасно прСдставляСтся ΠΎΡ‚Ρ€Π΅Π·ΠΊΠ°ΠΌΠΈ ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌΠΎΠ² сплайн-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

Рис. 5.22. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ сплайновой аппроксимации ΡΠΈΠ½ΡƒΡΠΎΠΈΠ΄Π°Π»ΡŒΠ½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ


Π—Π΄Π΅ΡΡŒ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Π°ΠΌΠΈ области ΡƒΠ·Π»ΠΎΠ²Ρ‹Ρ… Ρ‚ΠΎΡ‡Π΅ΠΊ значСния, Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹Π΅ сплайновой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ Π² ΠΏΠ°ΠΊΠ΅Ρ‚Π΅ CurveFitting Ρ€Π°Π²Π½Ρ‹ Π½ΡƒΠ»ΡŽ. Π’Π°ΠΊ Ρ‡Ρ‚ΠΎ экстраполяция ΠΏΠΎ Π½Π΅ΠΉ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Π° (Π² Ρ‚ΠΎΠΆΠ΅ врСмя функция spline Ρ‚Π°ΠΊΠΎΠΉ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ‚).

5.9.6. Ѐункция Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π½Π°ΠΈΠΌΠ΅Π½ΡŒΡˆΠΈΡ… ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ΠΎΠ² LeastSquares

Π”ΠΎ сих ΠΏΠΎΡ€ ΠΌΡ‹ рассматривали ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ числовой аппроксимации Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΈΠ»ΠΈ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… порядок ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌΠΎΠ² опрСдСлялся числом отсчСтов Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

Ѐункция LeastSquares слуТит для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ аппроксимации ΠΏΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρƒ Π½Π°ΠΈΠΌΠ΅Π½ΡŒΡˆΠΈΡ… ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ΠΎΠ². ΠŸΡ€ΠΈ этом ΠΌΠ΅Ρ‚ΠΎΠ΄Π΅ происходит статистичСская ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π΄Π°Π½Π½Ρ‹Ρ… (самих ΠΏΠΎ сСбС ΠΈΠ»ΠΈ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΡ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ) исходя ΠΈΠ· ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌΠ° срСднСквадратичСской ΠΏΠΎΠ³Ρ€Π΅ΡˆΠ½ΠΎΡΡ‚ΠΈ для всСх отсчСтов. Π­Ρ‚Π° функция рСализуСтся Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ…:

LeastSquares(xydata, v, opts)

LeastSquares(xdata, ydata, v, opts)

ВсС входящиС Π² Π½Π΅Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Π±Ρ‹Π»ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Ρ‹ Π²Ρ‹ΡˆΠ΅ (см. ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ BSplineCurve). ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ opts задаСтся Π² Ρ„ΠΎΡ€ΠΌΠ΅ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ weight=wlist, curve=f ΠΈΠ»ΠΈ params=pset.

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΈΠ»Π»ΡŽΡΡ‚Ρ€ΠΈΡ€ΡƒΡŽΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ LeastSquares:

> with(CurveFitting):

LeastSquares([[0,.5], [1,2], [2,4], [3,8]], v);

-.050000000000 + 2.44999999999999974 v

> LeastSquares([0,1,2,3], [1,2,4,6], v, weight-[1,1,1,10]);

> LeastSquares([0,1,3,5,6], [1,-1,-3,0,5], v, curve=a*v^2+k*v+c);

ΠΠ°Π³Π»ΡΠ΄Π½ΡƒΡŽ ΠΈΠ»Π»ΡŽΡΡ‚Ρ€Π°Ρ†ΠΈΡŽ приблиТСния Π³Ρ€ΡƒΠΏΠΏΡ‹ Ρ‚ΠΎΡ‡Π΅ΠΊ ΠΊΡ€ΠΈΠ²ΠΎΠΉ (Π² Π΄Π°Π½Π½ΠΎΠΌ случаС прСдставлСнной ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌΠΎΠΌ Ρ‡Π΅Ρ‚Π²Π΅Ρ€Ρ‚ΠΎΠΉ стСпСни) Π΄Π°Π΅Ρ‚ рис. 5.23. ΠšΡ€ΠΈΠ²Π°Ρ Π² ΠΎΠ±Π»Π°ΠΊΠ΅ Ρ‚ΠΎΡ‡Π΅ΠΊ располагаСтся Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΠ»ΠΎΡ‰Π°Π΄ΠΈ ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ΠΎΠ² Π½Π°Π΄ ΠΊΡ€ΠΈΠ²ΠΎΠΉ ΠΈ ΠΏΠΎΠ΄ Π½Π΅ΠΉ Π² суммС Ρ€Π°Π²Π½Ρ‹ Π½ΡƒΠ»ΡŽ.

Рис. 5.23. ГрафичСскоС прСдставлСниС ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π½Π°ΠΈΠΌΠ΅Π½ΡŒΡˆΠΈΡ… ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ΠΎΠ²


Π’ ΠΊΠΎΠ½Ρ†Π΅ этой Π³Π»Π°Π²Ρ‹ ΠΌΡ‹ вСрнСмся ΠΊ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π½Π°ΠΈΠΌΠ΅Π½ΡŒΡˆΠΈΡ… ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ΠΎΠ² ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ рСгрСссионного Π°Π½Π°Π»ΠΈΠ·Π°, построСнного ΠΏΠ° этом ΠΌΠ΅Ρ‚ΠΎΠ΄Π΅.

5.9.7. Ѐункция полиномиальной аппроксимации

Ѐункция Polynomial Interpolation Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌΠΈΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΠΎΠ»ΡΡ†ΠΈΡŽ ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² Π²ΠΈΠ΄Π΅:

PolynomialInterpolation(xydata, v)

PolynomialInterpolation(xdata, ydata, v)

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π±Ρ‹Π»ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Ρ‹ Π²Ρ‹ΡˆΠ΅. ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ v ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΊΠ°ΠΊ ΠΈΠΌΠ΅Π½Π΅ΠΌ, Ρ‚Π°ΠΊ ΠΈ числСнным Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ. ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ примСнСния Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ прСдставлСны Π½ΠΈΠΆΠ΅

> with(CurveFitting):

PolynomialInterpolation([[0,0], [1,2], [2,4], [3, 3]], z);

> PolynomialInterpolation([0, 2, 5, 8], [2, a, 1, 3], 3);

5.9.8. Ѐункция Ρ€Π°Ρ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΉ аппроксимации

Ѐункция Ρ€Π°Ρ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΉ интСрполяции задаСтся Π² Π²ΠΈΠ΄Π΅:

RationalInterpolation(xydata, z, opts)

RationalInterpolation(xdata, ydata, z, opts)

Π³Π΄Π΅ Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ opts задаСтся выраТСниями method=methodtype ΠΈΠ»ΠΈ degrees=[d1,d2]. Ѐункция Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π² Π²ΠΈΠ΄Π΅ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ Π΄Π²ΡƒΡ… ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌΠΎΠ².

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ methodtype ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ значСния lookaround ΠΈΠ»ΠΈ subresultant, Π·Π°Π΄Π°ΡŽΡ‰ΠΈΠ΅ ΡƒΡ‡Π΅Ρ‚ ΠΈΠ»ΠΈ пропуск сингулярных Ρ‚ΠΎΡ‡Π΅ΠΊ.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ примСнСния Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ RationalInterpolation (Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΏΠ°ΠΊΠ΅Ρ‚Π° ΠΎΠΏΡƒΡ‰Π΅Π½Π°, Π½ΠΎ прСдполагаСтся):

> xpoints := [0,1,2,3,4,-1]: ypoints := [0, 3, 1, 3, Π°, 1/11]:

f := RationalInterpolation(xpoints, ypoints, x);

> for i from 1 to 6 do normal(eval(f,x=xpoints[i])-ypoints[i]) end do;

5.9.9. Ѐункция вычислСния ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ… сплайнов Spline

Ѐункция

Spline(xydata, v, opts)

Spline(xdata, ydata, v, opts)

вычисляСт ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Π΅ (Π½Π΅ Π’-Ρ‚ΠΈΠΏΠ°) сплайны. ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Π΅Π΅ примСнСния Π΄Π°Π½Ρ‹ Π½ΠΈΠΆΠ΅:

> Spline([[0,1], [1,2], [2,5], [3,3]], Ρ…);

> Spline([0,1,2,3], [1,2,5,3], v, degree=1);

5.9.10. Ѐункция аппроксимации Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½Ρ‹ΠΌΠΈ дробями

Ѐункция ThieleInterpolation осущСствляСт ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΠΎΠ»ΡΡ†ΠΈΡŽ Π½Π° основС Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½Ρ‹Ρ… Π΄Ρ€ΠΎΠ±Π΅ΠΉ (Thiele's β€” ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΠΎΠ»ΡΡ†ΠΈΡŽ). Она задаСтся Π² Π²ΠΈΠ΄Π΅:

ThieleInterpolation(xydata, v)

ThieleInterpolation(xdata, ydata, v)

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ примСнСния Π΄Π°Π½Π½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ прСдставлСны Π½ΠΈΠΆΠ΅:

> ThieleInterpolation([[1,3],[2,5],[4,75],[5,4]], Ρ…);

> ThieleInterpolation([1,2,Π°], [2,4,3], 3)

5.10. Π’Ρ‹Π±ΠΎΡ€ аппроксимации для слоТной Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ

5.10.1. Π—Π°Π΄Π°Π½ΠΈΠ΅ исходной Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ построСниС Π΅Π΅ Π³Ρ€Π°Ρ„ΠΈΠΊΠ°

Π’Ρ€ΡƒΠ΄Π½ΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ сСбС ΠΎΠ±Π»Π°ΡΡ‚ΡŒ Π½Π°ΡƒΡ‡Π½ΠΎ-тСхничСских расчСтов Π±ΠΎΠ»Π΅Π΅ ΡˆΠΈΡ€ΠΎΠΊΡƒΡŽ ΠΈ ΠΏΠΎΡ‡ΠΈΡ‚Π°Π΅ΠΌΡƒΡŽ, Ρ‡Π΅ΠΌ аппроксимация Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… зависимостСй. Π‘ получСния простой аппроксимации слоТной зависимости Π½Π΅Ρ€Π΅Π΄ΠΊΠΎ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ΡΡ (Π° часто ΠΈ Π·Π°ΠΊΠ°Π½Ρ‡ΠΈΠ²Π°ΡŽΡ‚ΡΡ) Π½Π°ΡƒΡ‡Π½Ρ‹Π΅ исслСдования Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… областях ΠΊΠ°ΠΊ ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠΉ, Ρ‚Π°ΠΊ ΠΈ Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΠΎΠΉ Π½Π°ΡƒΠΊΠΈ. ПокаТСм возмоТности Π² этом систСм Maple Π½Π° ΠΎΠ΄Π½ΠΎΠΌ ΠΈΠ· комплСксных ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ², Π΄Π°Π²Π½ΠΎ ΠΏΠΎΠΌΠ΅Ρ‰Π΅Π½Π½Ρ‹Ρ… Π² Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ систСмы Maple V R2, ΠΈ ΠΏΠ΅Ρ€Π΅Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½ΠΎΠΌ для Maple 9.5/10. Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΈΠ· описанных Π²Ρ‹ΡˆΠ΅ срСдств приблиТСния Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ.

Π’ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡΡ Ρ€Π°Π½Π΅Π΅ описанными возмоТностями ΠΏΠ°ΠΊΠ΅Ρ‚Π° numapprox, для Ρ‡Π΅Π³ΠΎ, ΠΏΡ€Π΅ΠΆΠ΄Π΅ всСго, ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΠΌ Π΅Π³ΠΎ:

> restart:with(numapprox):

Π‘ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΊΠ°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ΅ΠΌΠ»Π΅ΠΌΡƒΡŽ Π°ΠΏΠΏΡ€ΠΎΠΊΡΠΈΠΌΠ°Ρ†ΠΈΡŽ для ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ, ΠΎΡ‚Π½ΡŽΠ΄ΡŒ Π½Π΅ простой, тСстовой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ:

> f := Ρ… -> int(1/GAMMA(t), t=0..x ) / Ρ…^2;

> plot(f,0..4,color=black);

Π“Ρ€Π°Ρ„ΠΈΠΊ этой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ прСдставлСн Π½Π° рис. 5.24. Π‘ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ взгляда это простой Π³Ρ€Π°Ρ„ΠΈΠΊ, Π½ΠΎ Ρ‚ΡƒΡ‚ ΠΊΠ°ΠΊ Ρ€Π°Π· Ρ‚ΠΎΡ‚ случай, ΠΊΠΎΠ³Π΄Π° простота ΠΎΠ±ΠΌΠ°Π½Ρ‡ΠΈΠ²Π°. Π’Ρ‹ сразу Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ Π³Ρ€Π°Ρ„ΠΈΠΊ строится ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΠ· мноТСства Π΅Π³ΠΎ Ρ‚ΠΎΡ‡Π΅ΠΊ систСмС Maple приходится Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Π»Π° с ΠΏΠΎΠ΄Ρ‹Π½Ρ‚Π΅Π³Ρ€Π°Π»ΡŒΠ½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ, содСрТащСй довольно ΠΊΠ°Π²Π΅Ρ€Π·Π½ΡƒΡŽ Π³Π°ΠΌΠΌΠ°-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ. И Π΄Π΅Π»Π°Π΅Ρ‚ это Maple ΠΏΠΎ слоТному ΠΈ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎΠΌΡƒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡƒ Π°Π΄Π°ΠΏΡ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ числСнного интСгрирования.

Рис. 5.24. Π“Ρ€Π°Ρ„ΠΈΠΊ аппроксимируСмой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ


Π˜Ρ‚Π°ΠΊ, вычислСниС f(Ρ…) ΠΏΠΎ Π΅Π΅ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Π»ΡŒΠ½ΠΎΠΌΡƒ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ΠΈΡŽ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ Π½Π΅ эффСктивно. Наша Ρ†Π΅Π»ΡŒ состоит Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ вычислСний, которая Π΄Π°Π»Π° Π±Ρ‹ 6 Ρ‚ΠΎΡ‡Π½Ρ‹Ρ… Ρ†ΠΈΡ„Ρ€ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° Π² ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»Π΅ [0..4] ΠΈ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π»Π°, ΠΏΠΎ возмоТности, наимСньшСго числа арифмСтичСских ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ вычислСния. Π’Ρ‚Π°ΠΉΠ½Π΅ Π½Π΅ Π²Ρ€Π΅Π΄Π½ΠΎ ΠΏΠΎΠΌΠ΅Ρ‡Ρ‚Π°Ρ‚ΡŒ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ послС аппроксимации врСмя вычислСний ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΠ»ΠΎΡΡŒ Π±Ρ‹ хотя Π±Ρ‹ Π² нСсколько Ρ€Π°Π·. Π§Ρ‚ΠΎ получится Π½Π° Π΄Π΅Π»Π΅, Π²Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅ Ρ‡ΡƒΡ‚ΡŒ ΠΏΠΎΠ·ΠΆΠ΅. А ΠΏΠΎΠΊΠ° Π²ΠΎΠΉΠ΄Π΅ΠΌ Π² Π΄Π΅Π±Ρ€ΠΈ аппроксимации.