Wyklad 14


WYKAAD 14
INTERPOLACJA FUNKCJI DWÓCH ZMIENNYCH
Wszystkie przedstawione podczas wykładów metody interpolacji funkcji jednej zmiennej mogą być
formalnie rozszerzone na przypadek funkcji n zmiennych niezależnych opierając się na zasadzie
uzmienniania stałych współczynników występujących w poszczególnych funkcjach jednej zmiennej
n
niezależnej. Oznacza to tym samym, że w każdym przekroju, w którym -1
zmiennych niezależnych
ma stałe wartości funkcja interpolująca jest funkcją jednej zmiennej niezależnej, a baza interpolacyjna
dla funkcji wielu zmiennych niezależnych jest iloczynem tensorowym odpowiednich baz rozważanych
przy interpolacji funkcji jednej zmiennej niezależnej.
Najbardziej użyteczne i najczęściej stosowane metody interpolacji funkcji wielu zmiennych są oparte
na wykorzystaniu wielomianowych funkcji sklejanych uogólnionych na większą liczbę zmiennych
niezależnych - ze względu na przedstawione problemy związane ze zbieżnością interpolacji
wielomianowej i trygonometrycznej oraz ich wadą jaką jest czułość na wybór węzłów interpolacyjnych.
Zapewnia to zachowanie podstawowych własności funkcji sklejanych jednej zmiennej i zezwala
na uzyskanie niezbyt skomplikowanych algorytmów.
Nasze rozważania ograniczymy do przedstawienia niektórych interpolacyjnych funkcji sklejanych
" = "x " ,
dwóch zmiennych w obszarze prostokątnym " = [ a, b] [c, d ], w którym zdefiniowano siatkę
y
gdzie:
"x: a = x0 < x1 < ... < xn = b;
ł
ł
żł
(1)
" : c = y0 < y1 < ... < ym = d,
ł
y
ł
dzielącą obszar &! na prostokątne komórki:
&!
&!
&!
ł
&!i j = (x, y) x " [xi-1, xi ], y " [ y , y ]
{ }
j-1 j ł
żł
(2)
ł
(i = 1, 2, ...., n; j = 1, 2, ..., m).
ł
Przedstawienie funkcji dwóch zmiennych w obszarze prostokątnym (1) jest dostatecznie ogólne, gdyż
większość powierzchni możemy sparametryzować wprowadzając dwie rodziny linii - takich, których
początki i końce znajdują się w punktach leżących na przeciwległych brzegach rozważanego płata
powierzchni.

(1 d" k d" )
Wielomianową funkcją sklejaną dwóch zmiennych stopnia z defektem k względem
(1 d" l d" ) ",
zmiennej x i stopnia  z defektem l
względem zmiennej y, z liniami sklejenia na siatce
nazywamy taką funkcję
S,(x, y) = S,,k ,l (x, y, "x , " ),
(3)
y
która:
P,

1) należy do zbioru algebraicznych wielomianów stopnia nie wyższego od względem zmiennej

x i nie wyższego od względem zmiennej y,
f ( x, y)
2) należy do przestrzeni C-k ,-l funkcji ciągłych na &!, mających ciągłe pochodne cząstkowe
&!
&!
&!
- k 
rzędu względem zmiennej x i rzędu - l
względem zmiennej y.
S1,1(x, y)
Zgodnie z podaną definicją dwuliniowa funkcja sklejana
może być zapisana w każdej komórce
&!i j (2) w postaci
S1,1(x, y) = ai j + bi j x + ci j y + di j x y.
(4)
Nieznane współczynniki we wzorze (4.141) wyznaczymy z warunków interpolacji
S1,1(xi , yj ) = fi j = f (xi , yj ) (i = 0, 1, ..., n; j = 0, 1, ..., m).
(5)
x, y
S1,1(x, y)
Ponieważ przy ustalonej wartości jednej ze zmiennych funkcja jest funkcją sklejaną
względem drugiej z tych zmiennych, to wykorzystując wzór
xi - x x - xi-1
S1(x) = yi-1 + yi (i = 0, 1, ..., n - 1),
hi hi
możemy napisać
S1,1(x, yk ) = (1- u) fi-1,k + u fi k (k = j -1, j),
(6)
gdzie:
(x - xi-1)
u = , hi = xi - xi-1.
(7)
hi
S1,1(x, yj-1) S1,1(x, yj )
Interpolując ponownie obliczone funkcje i otrzymujemy
S1,1(x, y) = (1- w) S1,1(x, y ) + w S1,1(x, y ),
(8)
j-1 j
gdzie:
(y - yj-1)
w = , lj = y - y
j j-1
(9)
lj
i ostatecznie po podstawieniu (6) do (8) jest
S1,1(x, y) = (1- w)[(1- u) fi-1, j -1 + u fi, j -1] + w[(1- u) fi-1, j + u fi j].
(10)
Biliniowa funkcja sklejana może posłużyć do wykreślania wykresów warstwicowych funkcji dwóch
z = f (x, y),
zmiennych określonej w sposób dyskretny na siatce (1). Dla wykreślenia wykresu funkcji
niezbędne jest wyznaczenie najpierw jej wartości ekstremalnych w węzłach siatki oraz obliczenie
Nz
przyrostu dla zadanej liczby podprzedziałów
" z = zmax - zmin Nz .
( )
Następnie w każdym oczku siatki (1) funkcja z = f (x, y) jest interpolowana funkcją sklejaną (10)
i w zależności od tego czy liczba całkowita
Kz = Entier (z - zmin) " z
[ ]
jest liczbą parzystą, czy też nieparzystą - wyświetlanemu pikselowi przypisywany jest odpowiedni kolor.
Linie z = const są więc liniami oddzielającymi obszary narysowane różnymi kolorami (w grafice czarno-
białej liniami oddzielającymi obszary o różnym stopniu szarości).
....................................................
N:=50;
h:=2*Pi/N;
for i:=0 to N do begin
x:=-Pi+i*h;
for j:=0 to N do begin
y:=-Pi+j*h;
fun[i,j]:=Sin(x-1.5*y)*Sqrt(Abs(x*y)/3);
end;
end;
N1:=N-1;
{.......................................}
ZX:=GetMaxX div 2; ZY:=GetMaxY;
a:=ZY-50; b:=ZY/2;
xw[1]:=ZX-a/2; xw[2]:=ZX+a/2;
xw[3]:=xw[2]; xw[4]:=xw[1];
yw[1]:=b+a/2; yw[2]:=yw[1];
yw[3]:=b-a/2; yw[4]:=yw[3];
h:=a/N; M:=Round(h);
for j:=0 to N1 do begin
SetBkColor(White); SetColor(Blue);
yp:=yw[1]-j*h;
min:=fun[0,0]; max:=fun[0,0];
for i:=0 to N1 do begin
for i:=0 to N do
xp:=xw[1]+i*h;
for j:=0 to N do begin
for jj:=0 to M do begin
pp:=fun[i,j];
s:=jj/h;
if pps1:=1-s;
if pp>max then max:=pp;
for ii:=0 to M do begin
end;
r:=ii/h;
del:=(max-min)/25;
r1:=1-r;
pp:=s1*(r1*fun[i,j]+r*fun[i+1,j])+
s*(r1*fun[i,j+1]+r*fun[i+1,j+1]);
K:=Trunc((pp-min)/del);
if Odd(K) then
PutPixel(Round(xp+ii),Round(ypjj),
LightGray)
else
PutPixel(Round(xp+ii),Round(yp-jj),White);
end;
end;
end;
end;
..................................................................
2 2
-2( x + y )
f (x, y) = sin(2 x2 + y2 ), D = [-Ą, Ą] [-Ą, Ą],
f (x, y) = 2e , D = [1.5,1.5] [-1.5,1.5],
KONIEC


Wyszukiwarka

Podobne podstrony:
Wykład 14
wyklad 14 2012
Chemia organiczna wykład 14
Wykład 3 14,4,12
Wykład 14 Regulacje prawne działalności deweloperów
wykład 14 przestrzenie afiniczne
ppmy wyklad 14 KasiaB
wykład 1 14 10 12
WYKŁAD 14 syndrom metaboliczny (otyłość, cukrzyca, nadciśnienie) SKRYPT
WDP Wykład 14
wyklad 14
Wykład 14 i 15 Wyznaczniki
Biochemia wykłady Wykład 14 10 2013r
WYKŁAD 14

więcej podobnych podstron