Mathcad
©dr inż. Konrad Witkiewicz • kwit.zut.edu.pl Aproksymacja za pomoca funkcji linfit Zad. 1. Dane są macierze yexp oraz xexp z danymi eksperymentalnymi: Aby aproksymować je wielomianem 2. stopnia o postaci:
0
51
2
1.1
55
y
aprox(x)
a0 + a1⋅x +
=
a2⋅x
y
:=
:=
exp
5
xexp
58
12
63
należy zdefiniować funkcję f(x) w postaci macierzy, w kórej
25
67
stały człon funkcji aproksymacyjnej oznaczamy przez wartość 1, pozostałe człony definiujemy oddzielnie w wierszach macierzy:
30
1
20
f (x)
x
:=
yexp
2
10
x
0
Obliczamy współczynniki funkcji yaprox(x): 50
55
60
65
70
xexp
291.153
a := linfit x
=
exp y
, exp f
,
(
)
−11.201
0.108
Definiujemy yaprox(x), w której indeksy przy a są numeryczne: 2
yaprox(x) := a0 + a1⋅x + a2⋅x Przedstawiamy dopasowanie na wykresie: Obliczamy błąd dopasowania: x := 50 .. 70
y
( exp − yaprox x ( exp))2
∑
błąd :=
= 1.388
40
length x
( exp) − length(a) 30
yexp
20
błąd
y
= 13.665⋅%
aprox( x)
mean y
(
)
10
exp
0
50
55
60
65
70
xexp x
,
1
Zmieńmy funkcję aproksymacyjną dodając kolejny człon ln(x):
1
3
−7.131 × 10
x
f2(x)
−110.34
:= 2
a2 := linfit x
,
f2
,
(
) =
x
exp yexp
0.53
ln(x)
3
2.894 × 10
2
y2aprox(x) := a20 + a21⋅x + a22⋅x + a23⋅ln(x) x := 50 .. 70
40
y
( exp − y2aprox x ( exp))2
∑
30
y
błąd2 :=
= 0.708
exp
20
length x
( exp) − length(a) y2
( ) 10
aprox x
0
błąd2
= 9.765⋅%
mean y
− 10
( exp)
50
55
60
65
70
xexp x
,
2