Численные методы решения инженерных задач в пакете MathCAD. Бедарев И.А - 35 стр.

UptoLike

37
мации функции y = cos(x) на отрезке [0, 6] с шагом h = 1. Для
вычисления вторых производных использована функция
cspline. Кроме значений самого сплайна, вычислены также его
первая и вторая производные. Сравнение точных значений ис-
ходной функции, ее первой (z) и второй (u) производных в точ-
ках массива xx, расположенных между узлами интерполяции, с
вычисленными по сплайн-интерполяции значениями показыва-
ет, что, несмотря на очень грубую сетку (h = 1), значения функ
-
ции и ее производных восстанавливаются достаточно хорошо.
fx( ) cos x():=
x 0123456()
T
:=
yfx():=
s cspline x y,():=
At( ) interp s x, y, t,():=
Bt()
t
interp s x, y, t,()
d
d
:=
Ct()
2
t
interp s x, y, t,()
d
d
2
:=
xx
0.5
1.5
2.5
3.5
4.5
5.5
:=
Axx()=
fxx()=
pr_sp
h
k
Bxx
k
()
k05..for
h
:=
pr2_sp
g
k
Cxx
k
()
k05..for
g
:=
z sin xx():=
u cos xx():=
pr_sp =
z =
pr2_sp =
u =
Рис. 3.2.
Построение кубического интерполяционного сплайна
мации функции y = cos(x) на отрезке [0, 6] с шагом h = 1. Для
вычисления вторых производных использована функция
cspline. Кроме значений самого сплайна, вычислены также его
первая и вторая производные. Сравнение точных значений ис-
ходной функции, ее первой (z) и второй (u) производных в точ-
ках массива xx, расположенных между узлами интерполяции, с
вычисленными по сплайн-интерполяции значениями показыва-
ет, что, несмотря на очень грубую сетку (h = 1), значения функ-
ции и ее производных восстанавливаются достаточно хорошо.
 f ( x) := cos ( x)                                                                           T           y := f ( x)
                                                 x := ( 0 1 2 3 4 5 6 )

 s := cspline ( x, y )                          A ( t) := interp ( s , x, y , t)

            d                                                         2
 B( t) :=      interp ( s , x, y , t)                             d
                                                C( t) :=                   interp ( s , x, y , t)
            dt                                                         2
                                                                  dt

                   ⎛ 0.5 ⎞
                   ⎜ 1.5 ⎟
                   ⎜ ⎟
                     2.5 ⎟
              xx:= ⎜                     A ( xx) =                                        f ( xx) =
                   ⎜ 3.5 ⎟
                   ⎜ 4.5 ⎟
                   ⎜ ⎟
                   ⎝ 5.5 ⎠
pr_sp :=       for k ∈ 0 .. 5           pr2_sp :=         for k ∈ 0 .. 5                       z := −sin ( xx)
                   h ← B xx
                   k       ( k)                               g ← C xx
                                                              k             ( k)               u := −cos ( xx)
               h                                          g




pr_sp =                         z=                        pr2_sp =                              u=




        Рис. 3.2. Построение кубического интерполяционного сплайна
                                                     37