Wyklad mn no 7 piątek

background image

background image

Szereg zespolony.

Dana jest funkcja określona przez podanie jej wartości f

n

w punktach:

N

n

2

x

n

gdzie n=0,1,2,...,N-1. Aproksymujemy funkcję wielomianem
trygonometrycznym postaci:

1

i

gdzie

)

ikx

exp(

c

)

x

(

w

1

N

0

k

k

Otrzymujemy N równań dla wyznaczenia współczynników c

k

:

1

N

0

k

n

k

n

n

)

ikx

exp(

c

f

)

x

(

w

background image

Rozwiązanie ostatniego układu równań czyli współczynniki c

k

są określane równaniami:

1

N

0

n

n

n

p

)

ipx

exp(

f

N

1

c

Idea szybkie transformaty Fouriera tzw. FFT

Fast Fourier Transform

Ponieważ

N

n

2

x

n

więc

N

pn

2

i

exp

ipx

exp

n

Oznaczmy:

N

i

2

epx

w

background image

Zauważmy, że

Re

Im

w=w

N+1

N

2

w

p

=w

p+N

Każda całkowita potęga w leży na okręgu jednostkowym
i co więcej jeżeli wykładnik p potęgi w

p

jest większy od N

to punkty się nakrywają. Na tym spostrzeżeniu bazuje FFT.

background image

Piszemy:

1

N

0

n

n

pn

p

f

w

N

1

c

Możemy zapisać w postaci macierzowej:

Oznaczając:

1

N

,...,

1

,

0

n

dla

N

f

g

n

n

 

 

 

n

pn

p

g

w

c

gdzie

 

2

1

N

1

N

0

1

N

1

0

0

0

0

pn

w

w

w

.

.

.

w

w

w

w

w

w

w

Ponieważ w

0

=1 więc nie będziemy pisać zerowej kolumny i wiersza.

background image

Dalej mamy związki:

N

i

2

epx

w

 

k

k

N

w

k

N

i

2

exp

k

N

i

2

exp

N

N

i

2

exp

k

N

N

i

2

exp

w

 

 





czyli

 

k

k

N

w

w

a więc wiersze i kolumny: 1 i N-1
2 i N-2
..............
k i N-k
..............
N/2-1 i N/2+1 dla N parzystych
(N-1)2 i (N+1)/2 dla N nieparzystych

są sprzężone

.

background image

W praktyce najczęściej stosowane N=2

M

.

Jeżeli liczba węzłów interpolacyjnych mniejsza od 2

M

,

to uzupełniamy zerami.

N=8

w

w

2

w

3

w

4

=-1 (w

*

)

3

(w

*

)

2

w

*

w

2

w

4

w

6

w

8

=1 (w

*

)

6

(w

*

)

4

(w

*

)

2

w

3

w

6

w

9

w

12

=-

1

(w

*

)

9

(w

*

)

6

(w

*

)

3

w

4

w

8

w

12

w

16

=1 (w

*

)

1

2

(w

*

)

8

(w

*

)

4

w

5

w

10

w

15

w

20

=-

1

(w

*

)

1

5

(w

*

)

1

0

(w

*

)

5

w

6

w

12

w

18

w

24

=1 (w

*

)

1

8

(w

*

)

1

2

(w

*

)

6

w

7

w

14

w

21

w

28

=-

1

(w

*

)

2

1

(w

*

)

1

4

(w

*

)

7

8

i

2

epx

w

 

8

i

2

epx

w

*

background image

lub inaczej

a b c

-

1

c

*

b

*

a

*

b -

1

b

*

1 b -1 b

*

c b

*

a

-

1

a

*

b c

*

-1 1 -1 1 -1 1 -1

c

*

b a

*

-

1

a b

*

c

b

*

-

1

b 1 b

*

-1 b

a

*

b

*

c

*

-

1

c

b a

7

6

5

4

3

2

1

0

f

f

f

f

f

f

f

f

dla otrzymania tablicy mnożników wystarczy obliczyć połowę

pierwszego wiersza!!!

np. a=a

r

+ia

i

oraz a

*

=a

r

-ia

i

czyli np.

af

1

+a

*

f

7

=a

r

(f

1

+f

7

)+ia

i

(f

1

-f

7

)

i podobnie dla innych

operacji.

background image

Wykorzystanie przedstawionych uproszczeń pozwala w stosunku

do zwykłego algorytmu zawierającego N

2

działań zespolonych

zmniejszyć ich liczbę dla N=2

M

do 2NM

1

2

3

4

5

6

0

1200

2400

3600

4800

6000

2

2 m

m2

m 1

m

background image

Rozwiązywanie równań algebraicznych

f(x)=0

Metoda bisekcji

Przykład:

0

1

x

4

x

3

x

-1 0

-0.5

-0.25

-0.125

-

0.1875

f(x) -4 1

-

1.125

-

0.01562

5

0.4980

45

0.2430

8

x

-

0.21875

-

0.23437

5

-

0.242187

5

-

0.24609375

f(x

)

0.11453

2

0.04962
54

0.017044
5

0.00072103

7

background image

x

-
0.248046
9

-
0.2465820
3

-
0.2463379

-
0.2462158

f(x) -

0.007449
1

-
0.0013209
8

-
0.0002999
3

0.0002105
7

Zaleta metody: Jeżeli pierwiastek istnieje, to go znajdziemy.

Wada metody: Duża liczba obliczeń

Regula falsi.

Założenia:

a) funkcja ma w przedziale [a,b] tylko jeden pierwiastek
i zachodzi f(a)f(b)<0,
b) jest funkcja jest klasy C

2

[a,b], pierwsza i druga pochodna

nie zmieniają znaku na przedziale [a,b].

background image

Funkcja spełniająca powyższe założenia musi mieć w otoczeniu

miejsca zerowego jeden z następujących przebiegów:

f(a)

a

b

f(b)

x

y

f(a)

a

b

f(b)

x

y

f(a)

a

b

f(b)

x

y

f(a)

a

b

f(b)

x

y

background image

Przebieg obliczeń metodą regula falsi:

x

y

a

b

f(a)

f(b)

x

1

f(x

1

)

x

2

analitycznie: ustalamy koniec z
warunku f(x

1

)f(a)<0 lub f(x

1

)f(b)<0

Prowadzimy prostą:

   

   

a

f

b

f

a

f

x

f

a

b

a

x

background image

   

   

a

f

b

f

a

f

x

f

a

b

a

x

ale f(x

1

)=0 stąd

 

   

a

f

b

f

a

f

a

b

a

x

1

lub

     

a

f

a

f

b

f

a

b

a

x

1

Dla n-tej iteracji mamy b=x

n-1

i podstawiając mamy:

    

a

f

a

f

x

f

a

x

a

x

1

n

1

n

n

background image

Ocena błędu dla dostatecznie małego przedziału [x

n-1

,x

n

]

można przyjąć jako:

)

x

(

f

)

x

(

f

)

x

(

f

x

x

x

x

n

1

n

n

1

n

n

n

d

Metoda regula falsi jest zbieżna dowolnej funkcji ciągłej
na przedziale [a,b].
Poszukiwanie pierwiastka zostaje zakończone jeżeli:

1

n

n

x

x

Metoda jest wolno zbieżna.

Przykład:

0

1

x

4

x

3

background image

x

-1 0

-0.2

-

0.2366412

-

0.24423354

f(x) -4 1 0.19

2

0.0401342

7

0.00849729

2

     

 

   

2

.

0

x

4

4

1

1

0

1

x

a

f

a

f

b

f

a

b

a

x

1

1

1

Ponieważ f(-1)=-4, a f(x

1

)=0.192,

więc stałym punktem będzie x=-1

x

-

0.24583563

2

-

0.2461749

2

-

0.24624682

9

f(x) 0.00180035

9

0.0003816

03

0.00008089

1

x

-

0.24626207

2

f(x) 0.00001714

7

w metodzie bisekcji potrzebowaliśmy

14 kroków

ocena błędu:

)

x

(

f

)

x

(

f

)

x

(

f

x

x

x

x

n

1

n

n

1

n

n

n

d

background image

)

x

(

f

)

x

(

f

)

x

(

f

x

x

x

x

n

1

n

n

1

n

n

n

d

ocena błędu:

6

d

10

1

.

4

246262072

.

0

x

Metoda siecznych

Przepis:

)

x

(

f

)

x

(

f

)

x

(

f

x

x

x

x

n

1

n

n

1

n

n

n

1

n

Przykład:

0

1

x

4

x

3

x

-1

0

-0.2

-

0.24752475

2

-

0.24625643

9

f(x) -4

1 0.192

-

0.00526448

1

0.00004070

3

w regula falsi potrzeba 8 kroków

background image

x

-

0.2462661

7

f(x)

0.907E-8

w 6-tym kroku

Koniecznie trzeba obliczać f(x

n

) i jeżeli zaczyna narastać

należy zawęzić przedział i powtórzyć obliczenia.

Niebezpieczeństwo znalezienia fałszywego pierwiastka.

Metoda szybsza niż reguła falsi.

a

b

x

1

Pierwsza iteracja musi startować

z punktów spełniających warunek:

f(a)f(b)<0

background image

Metoda Newtona - Raphsona

Niech małe w mamy:

  

 

 

2

x

f

x

f

x

f

x

f

2

Pomijając małe drugiego rzędu

2

mamy, że f(x+)=0,

jeżeli

 

 

x

f

x

f

Graficznie:

x

y

x

n

n

 

n

n

x

f

tg

Równanie prostej stycznej
w punkcie x

n

jest:

  

  

n

n

n

x

f

x

x

x

f

y

x

n+1

background image

Prosta:

  

  

n

n

n

x

f

x

x

x

f

y

przechodzi przez zero, czyli y=0, w punkcie x

n+1

i mamy:

 

 

n

n

n

1

n

x

f

x

f

x

x

Przykład:

0

1

x

4

x

3

 

x

0

-0.25

-
0.24626865
7

-
0.24626617
2

f(x) 1 -

0.01562
5

-
0.00001039

-0.2E-10

W 3 krokach dokładność osiągana w metodzie siecznych

w 5 krokach

background image

W obliczeniach numerycznych pochodną najczęściej oblicza się
numerycznie:

Metoda Newtona – Raphsona jest zbieżna kwadratowo, tzn.

 

 

i

i

2
i

1

i

x

f

2

x

f



  

  

h

x

f

h

x

f

x

f

i

i

i

„Pechowe” przypadki:

x

f(x)

x

0

x

1

x

2

rozbieżna

Zmniejszyć przedział

[x

d

,x

0

]

x

d

background image

cykl

x

f(x)

x

1

=x

3

=...

x

2

=x

4

=...

x

d

Budując procedurę należy się zabezpieczyć przed taką możliwością.

Wystartować z punktu x

1

znajdującego się bliżej x

d

Pierwiastki wielokrotne:

 

 

0

x

f

i

0

x

f

d

d

Przy pierwiastkach wielokrotnych badać funkcję:

)

x

(

f

)

x

(

f

)

x

(

g

background image

Pierwiastki zespolone

Przykład

0

4

x

x

2

3

5

3

1

1

3

5

200

140

80

20

40

100

f x

( )

0

x

Szukamy zespolonych pierwiastków metodą Newtona - Raphsona

background image

n

2
n

2
n

3
n

n

1

n

x

2

x

3

4

x

x

x

x

Jako punkt startowy musimy wybrać liczbę zespoloną:

np.: x

0

=i

gdzie

1

i

i

2309

.

1

8462

.

0

x

e

6056

.

3

e

1623

.

3

i

i

2

3

i

3

i

x

1

69

.

213

i

43

.

198

i

1

x

2

=-0.50605+1.21289i

x

3

=-0.49471+1.32934i

x

4

=-0.50119+1.32409i

x

5

=-0.500059+1.322855i

x

6

=-0.5+1.32275i

błąd=-0.00083198+0.00043738i

x

d

=-0.5+1.322288i

background image

Układy równań nieliniowych

Dany jest układ równań:

0

x

,...,

x

,

x

f

..........

..........

..........

0

x

,...,

x

,

x

f

0

x

,...,

x

,

x

f

n

2

1

n

n

2

1

2

n

2

1

1

Dla skrócenia zapisu wprowadzamy oznaczenia:

 

X

f

x

,...,

x

,

x

f

k

n

2

1

k

oraz

)

x

,...,

x

,

x

(

f

.

.

)

x

,...,

x

,

x

(

f

)

x

,...,

x

,

x

(

f

)

X

(

F

n

2

1

n

n

2

1

2

n

2

1

1

background image

i równanie zapisujemy krótko:

 

0

X

F

Metoda iteracji prostej

Równanie:

 

0

X

F

zapisujemy w postaci:

 

X

G

X

i procedura iteracji prostej ma postać:

1

n

n

X

G

X

Stosowana szczególnie w przypadkach jeżeli mamy dobre

przybliżenie początkowe. Sytuacja taka występuje np. w

przypadku małej zmiany parametrów równania.

background image

Przykład:

1

y

2

x

1

y

x

2

2

2

2

którego rozwiązaniem jest: x

1

=1; y

1

=0 oraz x

2

=-1; y

2

=0

Szukamy rozwiązania układu po małej zmianie parametrów:

1

y

01

.

2

x

95

.

0

y

x

2

2

2

2

mamy schemat iteracyjny:

01

.

2

x

1

y

y

95

.

0

x

2

1

n

n

2

1

n

n

Jako startowy punkt wybieramy: x

0

=1; y

0

=0 i mamy:

background image

n

0

1

2

3

4

x

n

1

0.9746

8

0.97468

0.9618

34

0.96183

4

y

n

0

0

0.15771

8

0.1577

18

0.19300

6

n

5

6

7

8

x

n

0.9553

79

0.95537

9

0.95215

09

0.952151

y

n

0.1930

06

0.20834

7

0.20834

7

0.215573

6

n

9

10

11

12

x

n

0.95054

09

0.950541 0.949738

9

0.949739

y

n

0.21557

34

0.2190799

4

0.219079

7

0.220803

6

background image

Z przedstawionych obliczeń widać, że metoda jest wolno

zbieżna i dlatego stosowana tylko w przypadkach, gdy

znamy bardzo dobrze zerowe przybliżenie. Zastosowanie

w równaniach różniczkowych.

Metoda Newtona - Raphsona

Rozwijamy funkcję f

k

(X) w szereg Taylora w otoczeniu

punktu X

i

:

background image

0

)

x

x

(

x

f

...

)

x

x

(

x

f

)

X

(

f

...

..........

..........

..........

..........

..........

..........

..........

..........

0

)

x

x

(

x

f

...

)

x

x

(

x

f

)

X

(

f

.........

..........

..........

..........

..........

..........

..........

..........

0

)

x

x

(

x

f

...

)

x

x

(

x

f

)

X

(

f

i

,

n

n

X

X

n

n

i

,

1

1

X

X

1

n

i

n

i

,

n

n

X

X

n

k

i

,

1

1

X

X

1

k

i

k

i

,

n

n

X

X

n

1

i

,

1

1

X

X

1

1

i

1

i

i

i

i

i

i

Dla uproszczenia zapisu wprowadzamy macierz Jacobiego
zdefiniowaną następująco:

background image

i

X

X

n

n

2

n

1

n

n

2

2

2

1

2

n

1

2

1

1

1

i

x

f

.

.

x

f

x

f

.

.

.

.

.

.

.

.

.

.

x

f

.

.

x

f

x

f

x

f

.

.

x

f

x

f

)

X

(

J

i w postaci macierzowej możemy krótko zapisać układ równań:

   

0

X

X

J

X

F

i

i

i

gdzie oznaczono:

i

1

i

i

X

X

X

i rozwiązując symbolicznie mamy:

   

i

i

1

i

1

i

X

F

X

J

X

X

background image

Przykład

F x y

f1 x y

f2 x y



i równanie: F(x,y)=0

f1 x y

expx y

sin5 x

 

cosy

 



f2 x y

cosy

 

sinx

 

ln x y



Obliczamy pochodne:

p1xx y

expx y

sin5 x

 

5 expx y

cos5 x

 



p1yx y

expx y

sin5 x

 

cosy

 



p2xx y

cosx

 

cosy

 

1

x y



|

background image

J x y

p1xx y

p2xx y

p1yx y

p2yx y



Jakobian układu równań jest:

p2yx y

sinx

 

siny

 

1

x y



x

0

0.1



Przyjmujemy zerowe przybliżenie:

y

0

0



i liczymy z równania:

x

n 1

y

n 1

x

n

y

n

J x

n

y

n

1

F x

n

y

n



dla n=0,1,...,N

background image

x

0

0
1
2
3
4
5
6
7
8
9

10
11

0.1

-0.141899943936
-0.029185837303
-0.044892694856
-0.036465491584
-0.035920867262
-0.035912407482
-0.035912710982
-0.035912699597
-0.035912700025
-0.035912700009
-0.035912700009

background image

y

0

0
1
2
3
4
5
6
7
8
9

10
11

0

0.486244256751
0.743862659111
1.019360058647
1.053479318574
1.053828713899
1.053816932667
1.053817374634
1.053817358052
1.053817358674
1.053817358651
1.053817358652

background image

Błąd:

n

F x

n

y

n



1

0.03514978332

1.191145539803

n

F x

n

y

n



n

F x

n

y

n



10

8.754941216438

10

12

0

n

F x

n

y

n



5

1.226398353761

10

4

5.476867793418

10

7

background image

Obliczenia pierwiastka z pochodną liczoną numerycznie

p1xx y

h

f1 x h

y

f1 x y

h



p1yx y

h

f1 x y h

f1 x y

h



p2xx y

h

f2 x h

y

f2 x y

h



p2yx y

h

f2 x y h

f2 x y

h



Przybliżona macierz Jacobiego:

background image

J x y

h

p1xx y

h

p2xx y

h

p1yx y

h

p2yx y

h



Przyjmując dla kroku h:h

0.01



mamy wyniki:

background image

x

0

0
1
2
3
4
5
6
7
8
9

10
11

0.1

-0.245620510404

0.129212408651

-0.139883972512
-0.026332867153
-0.035690080158
-0.035909711413

-0.03591266157

-0.035912699505
-0.035912700003
-0.035912700009
-0.035912700009

background image

y

0

0
1
2
3
4
5
6
7
8
9

10
11

0

0.612829446354
0.575992105371
1.206911594234
1.055296091227
1.053366833955
1.053814123293
1.053817303719
1.053817357993
1.053817358643
1.053817358651
1.053817358652

background image

Błąd:

1

0.541728756272

1.200733537706

n

F x

n

y

n



1

0.03514978332

1.191145539803

Jakobian dokładnie

Jakobian numerycznie

n

F x

n

y

n



5

1.226398353761

10

4

5.476867793418

10

7

5

3.53469633664

10

3

1.279336142867

10

4

n

F x

n

y

n



10

8.754941216438

10

12

0

10

1.281363903871

10

12

1.06512021425

10

14

background image

h

0.0001



Zmiana kroku różniczkowania

x

0

0
1
2
3
4
5
6
7
8
9

10
11

0.1

-0.243293030521

0.133173725428

-0.147314343999
-0.019012944127
-0.035661321744
-0.035912657661
-0.035912700004
-0.035912700009
-0.035912700009
-0.035912700009
-0.035912700009

background image

y

0

0
1
2
3
4
5
6
7
8
9

10
11

0

0.597853320049
0.554664046616
1.208957700299
1.048065432775

1.05347013074

1.053817373468
1.053817358641
1.053817358652
1.053817358652
1.053817358652
1.053817358652

background image

h=0.01

h=0.0001

1

0.510450698944

1.235991747404

1

0.541728756272

1.200733537706

5

3.771637969603

10

3

1.923653534576

10

5

5

3.53469633664

10

3

1.279336142867

10

4

10

0
0

10

1.281363903871

10

12

1.06512021425

10

14

background image

Metody całkowania numerycznego

Obliczana jest całka:

b

a

dx

)

x

(

f

I

Wzory Newtona - Cotesa na węzłach równoodległych

Interpolujemy funkcję f(x) za pomocą wzoru Lagrange’a:

N

0

k

k

k

N

)

x

(

f

)

x

(

)

x

(

L

gdzie

)

x

x

)...(

x

x

)(

x

x

)...(

x

x

)(

x

x

(

)

x

x

)...(

x

x

)(

x

x

)...(

x

x

)(

x

x

(

)

x

(

N

k

1

k

k

1

k

k

1

k

0

k

N

1

k

1

k

1

0

k

background image

Dzieląc odcinek [a,b] na N jednakowych części h:

N

a

b

h

x

a=x

0

b=x

N

h

x

k

=a+kh

Biorąc pod uwagę, że x

k

=a+kh mamy:

h

)

N

k

)...(

h

)(

h

...(

h

)

1

k

(

kh

)

Nh

a

x

)...(

h

)

1

k

(

a

x

)(

h

)

1

k

(

a

x

)...(

a

x

(

)

x

(

k

przyjmując:

th

a

x

gdzie t[0,N] mamy:

background image

)!

k

N

(

!

k

)

1

(

)

N

t

)...(

1

k

t

)(

1

k

t

)...(

1

t

(

t

h

)!

k

N

(

!

k

)

1

(

h

)

N

t

...(

h

)

1

k

t

(

h

)

1

k

t

...(

h

)

1

t

(

th

)

t

(

)

th

a

(

k

N

N

k

N

k

k

Podstawiając zamiast f(x) wielomian interpolacyjny do

b

a

dx

)

x

(

f

I

otrzymujemy:

N

0

k

k

N

0

k

k

k

N

0

k

N

0

k

k

N

dt

)

t

(

h

A

gdzie

,

)

x

(

f

A

dt

)

t

(

h

)

x

(

f

I

background image

Błąd e

N

z jakim obliczana jest całka podaje oszacowanie:

b

a

N

1

0

r

)

r

(

r

dx

)

x

x

)...(

x

x

)(

x

x

(

)!

1

N

(

1

C

a

,

2

)

2

/

N

(

round

2

r

gdzie

)

(

f

C

)

f

(

e

Metoda trapezów

a; 0

x; t

b; 1

f(a)

f(b)

2

h

tdt

1

1

1

h

A

2

h

dt

)

1

t

(

1

1

1

h

A

1

0

1

1

0

0

t-1

t

)

b

(

f

)

a

(

f

2

a

b

I

background image

)

b

(

f

)

a

(

f

2

a

b

I

błąd e

1

wynosi:

)

(

f

12

h

e

)

2

(

3

1

Metoda Simpsona

a=x

0

x

y

b=x

2

b

a

2

1

x

1

f

0

f

1

f

2

1

0

1

2

background image

3

h

dt

)

1

t

(

t

)!

2

2

(

!

2

)

1

(

h

A

h

3

4

dt

)

2

t

(

t

)!

1

2

(

!

1

)

1

(

h

A

3

h

dt

)

2

t

)(

1

t

(

)!

0

2

(

!

0

)

1

(

h

A

2

0

2

2

2

2

0

1

2

1

2

0

0

2

0

Całka

b

a

dx

)

x

(

f

I

obliczana metodą Simpsona jest:

 

 

)

b

(

f

2

b

a

f

4

a

f

6

a

b

I

background image

Błąd obliczania całki metodą Simpsona jest:

)

(

f

90

2

a

b

e

)

4

(

5

5

2

Wielomian 3-go stopnia jest całkowany dokładnie!

Kwadratury złożone Newtona-Cotesa.

x

y

a

b

b

a

2

1

x

1

Metoda trapezów

background image

N

1

N

1

k

k

0

N

f

f

2

f

2

h

I

Całkę

b

a

dx

)

x

(

f

I

przy podziale odcinka [a,b] na N części liczymy ze wzoru:

Obliczenia prowadzimy w schemacie z połowieniem kroku
co pozwala wykorzystać poprzednie obliczenia f

k

:

N

1

k

1

k

2

N

2

N

N

2

f

h

I

2

1

I

a

b

1
2
3
4

background image

Błąd e

1N

złożonego wzoru trapezów przy podziale przedziału

całkowania [a,b] na N części jest:

Przykład:

4

dx

x

1

I

1

0

2

N

1

2

4

8

I

p

0.5

0.683013

0.748927

3

0.772455

I

0.785398

2

0.785398

2

0.785398

2

0.785398

2

eps

36

13

4.64

1.65

%

100

I

I

I

eps

p

  

f

N

12

a

b

e

2

3

N

1

 



 



1

x

5

.

1

2

x

1

1

x

f

background image

Metoda Simpsona liczba punktów podziału jest N=2

M

i całka I

N

określona jest wzorem:

N

1

N

1

k

k

2

N

1

k

1

k

2

0

N

N

f

f

2

f

4

f

3

h

I

2
2

2

2

3

Ocena błędu:

 

 

4

4

5

N

2

f

N

180

a

b

e

background image

4

dx

x

1

I

1

0

2

Przykład:

N

2

4

8

I

p

0.74402 0.770899

0.7802972

93

I

0.785398

2

0.785398

2

0.7853982

eps

5.3

1.85

0.65

%

100

I

I

I

eps

p

Formalna ocena błędu

 

 

4

4

5

N

2

f

N

180

a

b

e

jeszcze gorsza ze względu na czwartą pochodną.

background image

Metoda Romberga

Ogólna metoda przyśpieszania zbieżności

Ogólnie wzór kwadratur dla całki

ma postać:

 

b

a

dx

)

x

(

f

f

I

)

x

(

f

A

)

f

(

Q

)

n

(
i

n

0

i

)

n

(
i

n

Załóżmy, że resztę można przedstawić w postaci:

)

n

c

(

O

n

c

....

n

c

n

c

)

f

(

Q

)

f

(

I

1

m

m

2

1

a

1

m

a

m

a

2

a

1

n

gdzie

.

1

m

m

2

1

a

a

....

a

a

background image

Niech n=sp wtedy :

)

)

sp

(

c

(

O

)

sp

(

c

....

)

sp

(

c

)

sp

(

c

)

f

(

Q

)

f

(

I

1

m

m

2

1

a

1

m

a

m

a

2

a

1

sp

Mnożąc przez

1

a

s

i przyjmując p=n po odjęciu stronami

otrzymuje się:

)

n

c

(

O

n

c

....

n

c

n

c

)

f

(

Q

)

f

(

I

1

m

m

2

1

a

1

m

a

m

a

2

a

1

n

)

n

c

(

O

n

c

....

n

c

n

c

)

f

(

Q

s

)

f

(

I

s

1

m

m

2

1

1

1

a

1

m

a

m

a

2

a

1

sn

a

a

)

n

c

(

O

n

c

....

n

c

1

s

)

f

(

Q

)

f

(

Q

s

)

f

(

I

1

m

m

2

1

1

a

1

1

m

a

1

m

a

1

2

a

n

sn

a

background image

gdzie

i

a

a

a

1

i

c

1

s

1

s

c

1

i

1

Definiując:

1

s

)

f

(

Q

)

f

(

Q

s

)

f

(

Q

1

1

a

n

sn

a

1

n

widzimy, że przybliżona wartość całki

 

b

a

dx

)

x

(

f

f

I

 

f

Q

1

n

jest obliczona z dokładnością większą bo wynoszącą

2

a

1

2

n

c

O

Ogólnie po k+1 krokach mamy:

1

s

)

f

(

Q

)

f

(

Q

s

)

f

(

Q

1

k

1

k

a

k
n

k
sn

a

1

k
n

background image

Dla wzoru trapezów zachodzi oszacowanie:

)

n

1

(

O

n

c

...

n

c

n

c

)

f

(

Q

dx

)

x

(

f

2

m

2

m

2

m

4

2

2

1

n

b

a

Zakładając s=2 otrzymuje się:

1

4

)

f

(

Q

)

f

(

Q

4

)

f

(

Q

1

4

)

f

(

Q

)

f

(

Q

4

)

f

(

Q

1

k

k
n

k

n

2

1

k

1

k
n

n

n

2

1

n

Organizację obliczeń można zapisać w formie tablicy:

background image

4

1

3
2

2
4

1

8

16

3

1

2
2

1

4

8

2

1

1

2

4

1
1

2

1

Q

Q

Q

Q

Q

Q

Q

Q

Q

Q

Q

Q

Q

Q

Q

gdzie elementy macierzy obliczane zgodnie z podanym

powyżej algorytmem.

Uwaga - przy obliczaniu

m

2

Q korzystamy z

m

Q

m

1

i

m

2

m

2

m

m

2

)

h

)

1

i

2

(

a

(

f

h

5

.

0

Q

*

5

.

0

Q

background image

Przykład

4

dx

x

1

I

1

0

2

5

.

0

1

1

0

1

2

1

Q

1

Q

1

=0.5

Q

2

=0.683013

1

4

Q

Q

4

Q

1

2

1
1

Q

1

1

=0.744017333

Q

4

=0.7489273

1

4

Q

Q

4

Q

2

4

1

2

Q

1

2

=0.770898733

1

4

Q

Q

4

Q

2

1
1

1

2

2

2

1

Q

2

1

=0.772690827

background image

Q

8

=0.772455 =0.780297567

1

4

Q

1

4

Q

Q

4

Q

2

1

2

1

4

2

2
2

=0.780924156

2
2

Q

1

4

Q

Q

4

Q

3

2

1

2
2

3

3

1

=0.781054843

3

1

Q

Ocena błędu:

%

100

I

I

Q

eps

3

1

eps=0.55%

trapezy:

1.65%

Simpson: 0.65%

background image

Przykład z ograniczoną pochodną:

2

0

2

sin

8

.

0

1

d

Q

Wstępny krok .

2

h

Wartość dokładna Q=2.2572051728

1

2.541602

-

-

-

-

 

2

2.2847455

921

2.1991267

89

-

-

-

 

4

2.2576215

2.2485801

36

2.251877

026

-

-

 

8

2.2572054

6

2.2570667

8

2.257632

556

2.251785

668

-

 

1
6

2.2572053

268

2.2572052

81

2.257214

514

2.257207

878

2.2572291

42

 

3
2

2.2572053

268

2.2572053

268

2.257205

329

2.257205

183

2.2572051

73

2.2572051

49

Błąd względny wynosi: 0.1E-5%.

background image

Metoda Gaussa

Jak dobrać punkty podziału [a,b] przedziału na N części

aby uzyskać dokładność 2(N+1)?

b

a

dx

)

x

(

f

)

x

(

p

I

Rozwiązanie problemu można znaleźć za pomocą

wielomianów ortogonalnych.

Ciąg wielomianów:

)

x

(

P

),...,

x

(

P

),

x

(

P

N

1

0

jest ortogonalny w przedziale [a,b] z wagą p(x) jeżeli zachodzi:

background image

k

=

i

dla

A

k

i

dla

0

dx

)

x

(

P

)

x

(

P

)

x

(

p

))

x

(

P

),

x

(

P

(

k

k

i

b

a

)

x

(

p

k

i

Waga p(x)=1, przedział [-1,1].

Wielomiany Legendre’a:

n

2

n

n

n

n

)

1

x

(

dx

d

!

n

2

1

)

x

(

P

 

 
 

i.t.d.

1

x

3

4

1

x

P

x

x

P

1

x

P

2

2

1

0

background image

1 0.750.50.250 0.250.50.75 1

1

0.75

0.5

0.25

0

0.25

0.5

0.75

1

Leg0 x

(

)

Leg1 x

(

)

Leg2 x

(

)

Leg3 x

(

)

Leg4 x

(

)

x

background image

Interpolując funkcję podcałkową f(x) za pomocą

wielomianu Legendre’a otrzymujemy:

N

0

k

k

k

1

1

)

x

(

f

A

dx

)

x

(

f

gdzie

)

x

(

P

)

x

(

P

)

2

N

(

2

A

k

'

1

N

k

2

N

k

a x

k

jest k-tym pierwiastkiem równania:

0

)

x

(

P

1

N

i błąd metody jest:

]

1

,

1

[

);

(

f

)

)!

2

N

2

)((

3

N

2

(

)

)!

1

N

((

2

e

)

2

N

2

(

3

4

3

N

2

N

background image

Pierwiastki i współczynniki kwadratury Gaussa z wagą p(x)=1:

N

k

1

0

0

2

2

0
1

-0.577350269189626

0.577350269189626

1
1

3

0
1
2

-0.774596669241483

0

0.774596669241483

5/9
8/9
5/9

4

0
1
2
3

-0.861136311594053
-0.339981043584856

0.339981043584856
0.861136311594053

0.347854845137454
0.652145154862546
0.652145154862546
0.347854845137454

5

0
1
2
3

4 

-0.906179845938664
-0.538469310105683

0

0.538469310105683
0.906179845938664

0.236926885056189
0.478628670499366
0.568888888888889
0.478628670499366
0.236926885056189

węzły x

k

współczynniki A

k

background image

W przypadku całkowania w przedziale [a,b] dokonujemy
jego transformacji na przedział [-1,1]:

  

1

,

1

b

,

a

dt

2

a

b

dx

1

t

2

a

b

a

x

Przykład

4

dx

x

1

I

1

0

2

n

1

2

3

4

5

I

n

0.86602

54

0.79611

301

0.78725

969

0.78705

74

0.78629

544

błąd
%

10.3

1.36

0.237

0.211

0.114

background image

Ta sama całka, ale liczona w ten sposób, że przedział całkowania

jest podzielony na 5 równych części i w każdym przedziale

zastosowano aproksymację N=1

I

1

=0.792996956 z błędem 0.97%

Całki typu:

 

  

b

a

dx

x

f

a

x

x

b

Transformacja przedziału całkowania:

  

1

,

1

b

,

a

dt

2

a

b

dx

1

t

2

a

b

a

x

Pozwala zapisać całkę w postaci:

 

  

1

1

0

dt

t

f

t

1

t

1

A

gdzie

 

1

0

2

a

b

A

background image

Wystarczy więc rozważyć całkę:

 

  

1

1

dt

t

f

t

1

t

1

I

Mamy obliczyć całkę funkcji f(t) z wagą

Wielomiany ortogonalne na przedziale [-1,1] z wagą w(t)

są nazywane wielomianami Jacobiego i mają postać:

    

 

 

t

1

t

1

dt

d

t

1

t

1

!

n

2

1

t

P

n

n

n

n

n

n

,

n

i całkę I można obliczyć z zależności:

 

  

 

N

0

k

k

k

1

1

t

f

A

dt

t

f

t

1

t

1

  

 

t

1

t

1

t

w

background image

gdzie

 

 

 

 

 

 

k

,

2

N

k

,

1

N

k

t

P

t

P

2

N

2

N

!

2

N

2

N

2

N

4

N

2

2

A

a t

k

jest pierwiastkiem równania:

 

0

t

P

k

,

1

N

Przypadki szczególne:

i

 

 

0

1

x

dt

t

exp

t

x

!

n

1

n

dla n=0,1,2,...

 

n

2

1

n

2

5

3

1

2

1

n

dla n=1,2,3,...

 

n

dla n=0,-1,-2,...

background image

Typowe funkcje wagowe

.

1 ==-0.5 czyli

 

2

t

1

1

t

w

a całka ma postać:

 

1

1

2

dt

t

1

t

f

I

W tym przypadku wielomiany Jacobiego są powiązane

z wielomianami Czebyszewa T

n

(t) związkiem:

 

 

t

T

C

t

P

n

n

5

.

0

,

5

.

0

n

gdzie C

n

– stała , a

 

 

t

arccos

n

cos

t

T

n

a wykres:

  

 

t

1

t

1

t

w

background image

1 0.750.50.250 0.250.50.75 1

1.25

0.94

0.63

0.31

0

0.31

0.63

0.94

1.25

Jac 0 0.5

0.5

x

(

)

Jac 1 0.5

0.5

x

(

)

Jac 2 0.5

0.5

x

(

)

Jac 3 0.5

0.5

x

(

)

Jac 4 0.5

0.5

x

(

)

x

background image

Łatwo więc znaleźć pierwiastki t

k

z równania:

 

0

t

arccos

N

cos

t

T

k

k

N

i mamy:

N

2

1

k

2

cos

t

k

dla k=1,2,3,...,N

Korzystając z odpowiednich tożsamości dla funkcji Czebyszewa
i Jacobiego można wykazać, że współczynniki wagi są:

 

2

2

N

2

N

k

N

C

N

!

N

5

.

0

N

2

A

a ponieważ nie są zależne od k, więc dla danego N powinny być
stałe i równe A. Stałą A łatwo wyznaczymy jeżeli przyjmiemy, że
f(t)=1 i mamy:

NA

A

dt

t

1

N

1

k

k

1

1

2

i stąd

N

A

background image

mamy ostatecznie:

 

 

f

R

N

2

1

k

2

cos

f

N

dt

t

1

t

f

N

N

1

k

1

1

2





gdzie R

N

(f) jest błędem aproksymacji wynoszącym:

 

 

 

 

!

N

2

f

2

f

R

N

2

1

N

2

N

i –1<<1

Przykład

0

2

2

cos

k

1

d

I

gdzie |k|<1

Podstawiamy: cos=t i

2

t

1

dt

d

czyli:

 

1

1

2

2

t

1

kt

1

dt

I

background image

w tym przypadku:

 

1

1

2

2

t

1

kt

1

dt

I

funkcja f(t) ma postać:

 

 

2

kt

1

1

t

f

i na mocy zależności:

 

 

f

R

N

2

1

k

2

cos

f

N

dt

t

1

t

f

N

N

1

k

1

1

2





mamy:

N

1

i

2

2

0

2

2

N

2

1

i

2

cos

k

1

1

N

cos

k

1

d

I

background image

0

0.2

0.4

0.6

0.8

1

2

4

6

8

I k

( )

Ip k 2

(

)

Ip k 4

(

)

Ip k 6

(

)

k

background image

0

0.2

0.4

0.6

0.8

1

20

6.67

33.33

60

eps k 2

(

)

eps k 4

(

)

eps k 6

(

)

eps k 8

(

)

k

%

100

)

k

(

I

)

n

,

k

(

Ip

)

k

(

I

)

n

,

k

(

eps

background image

2. ==0.5

Funkcja wagowa:

 

2

t

1

t

w

 

1

1

2

dt

t

f

t

1

I

a całka ma postać:

W tym przypadku funkcje Jacobiego można wyrazić przez
funkcje Czebyszewa II – go rodzaju U

n

(t):

 

 

t

U

!

1

n

!

n

2

!

1

n

2

t

P

n

n

2

5

.

0

,

5

.

0

n

gdzie

 

 

2

n

t

1

t

arccos

1

n

sin

t

U

wykres wielomianu Jacobiego dla ==0.5 jest:

background image

1 0.750.50.250 0.250.50.75 1

2.5

1.88

1.25

0.63

0

0.63

1.25

1.88

2.5

Jac 0 0.5

0.5

x

(

)

Jac 1 0.5

0.5

x

(

)

Jac 2 0.5

0.5

x

(

)

Jac 3 0.5

0.5

x

(

)

Jac 4 0.5

0.5

x

(

)

x

background image

 

 

f

R

1

N

k

cos

f

1

N

k

sin

1

N

dt

t

f

t

1

N

N

1

k

2

1

1

2





gdzie błąd określa wzór:

 

 

 

 

!

N

2

f

2

f

R

N

2

N

2

N

-1<<1

Przykład:

1

0

2

2

dx

4

x

4

x

x

x

2

I

transformacja przedziału [0,1] do przedziału [-1,1]:1

t

x

i całka przyjmuje postać:

1

1

2

2

dt

1

t

2

t

t

1

I

Z oceny błędu widać, że wystarczy wybrać N=3, a wynik
będzie dokładny i mamy: I=1.96349541

a wzór dla całki jest:

background image

Jeszcze jeden przypadek szczególny

3. =0.5 =-0.5

Funkcja wagowa jest:

 

t

1

t

1

t

w

i liczymy całkę:

 

1

1

dt

t

f

t

1

t

1

I

Również w tym przypadku można wyrazić wielomiany
Jacobiego przez wielomiany Czebyszewa:

 

 

 

 

 

1

t

t

T

t

T

!

n

2

!

n

2

t

P

n

1

n

2

n

2

5

.

0

,

5

.

0

n

i wykres jest:

background image

1 0.750.50.250 0.250.50.75 1

2.5

1.88

1.25

0.63

0

0.63

1.25

1.88

2.5

Jac 0 0.5

0.5

x

(

)

Jac 1 0.5

0.5

x

(

)

Jac 2 0.5

0.5

x

(

)

Jac 3 0.5

0.5

x

(

)

Jac 4 0.5

0.5

x

(

)

x

background image

i kwadraturę można zapisać:

 

 

f

R

1

N

2

k

2

cos

f

1

N

2

k

sin

1

N

2

4

dt

t

f

t

1

t

1

N

N

1

k

2

1

1





gdzie

 

 

 

 

N

2

N

2

N

f

!

N

2

2

f

R

gdzie -1<<1

Całki na przedziale nieograniczonym

Można wybrać specjalne reguły całkowania za pomocą

wielomianów ortogonalnych Laguerre’a lub Hermite’a

w przedziale [0,] lub [-,+] odpowiednio.

 

 

dx

x

f

I

dx

x

f

I

2

a

1

background image

Całki postaci:

 

0

x

dx

x

f

e

x

gdzie >-1

wagą jest

 

x

e

x

x

w

Wielomianami ortogonalnymi na półosi [0,) z wagą w(x)

są wielomiany Laguerre’a:

 

   

x

n

n

n

x

n

n

e

x

dx

d

e

x

1

x

L

Dla =0 mamy:

 

 

N

1

k

k

k

0

x

x

f

A

dx

x

f

e

a x

k

– zera wielomianu Laguerre’a i współczynniki A

k

podaje

tablica:

background image

N=1 x

1

=1.00000000

A

1

=1.00000000

N=2 x

1

=0.585786437

627
x

2

=3.414213562

373

A

1

=0.853553390593

A

2

=0.146446609407

N=3 x

1

=0.215774556

783
x

2

=2.294280360

279
x

3

=6.289945082

937

A

1

=0.711093009929

A

2

=0.278517733569

A

3

=0.0103892565016

N=4 x

1

=0.322547689

619
x

2

=1.745761101

158
x

3

=4.536620296

921
x

4

=9.395070912

301

A

1

=0.603154104342

A

2

=0.357418692438

A

3

=0.038887908515

A

4

=0.539294705561·1

0

-3

background image

N=
5

x

1

=0.2635603197

18
x

2

=1.4134030591

07
x

3

=3.5964257710

41
x

4

=7.0858100058

59
x

5

=12.640800844

276

A

1

=0.521755610583

A

2

=0.398666811083

A

3

=0.0759424496817

A

4

=0.00361175867992

A

5

=233699723858·10

-4

N=

6

x

1

=0.2228466041

79
x

2

=1.1889321016

73
x

3

=2.9927363260

59
x

4

=5.7751435691

05
x

5

=9.8374674183

83
x

6

=15.982873980

602

A

1

=0.458964673950

A

2

=0.417000830772

A

3

=0.113373382074

A

4

=0.0103991974531

A

5

=0.261017202815·1

0

-3

A

6

=0.89854790643·10

-6

background image

Przykład:
Dana jest całka:

0

x

2

x

dx

e

1

xe

I

Dokładna wartość całki jest:

8

I

2

Obliczenia metodą trapezów przy obcięciu górnej granicy:

 

x

0

t

2

t

dt

e

1

te

x

In

Błąd obliczeń liczymy z zależności:

 

100

I

I

x

In

)

x

(

err

Wyniki przedstawia tabela:

background image

x=1

-61.6%

x=5

-3.28%

x=10

-0.04%

x=100

-2.28·10

-

10

%

x=1000

2.26·10

-9

%

dlaczego?

Obliczenia korzystając z wielomianu Laguerre’a

N=1

-6.26%

N=2

-0.7%

N=3

0.068%

N=4

0.048%

N=5

7.82·10

-3

%

N=6

-2.52·10

-3

%

background image

Można też zastosować następujące postępowanie dla całki:

 

0

a

;

dx

x

f

I

a

1

podstawiamy:

t

dt

dx

e

t

x

i mamy:

 

a

e

0

t

1

t

dt

e

f

I

Warunkiem istnienia całki I

1

jest:

 

0

t

e

f

t

0

t

lim





a więc stosując np. metodę trapezów trzeba w punkcie t=0

uwzględnić wartość graniczną.

background image

Całkę

 

dx

x

f

I

2

najwygodniej rozbić na dwie:

 

 

 

0

0

2

dx

x

f

dx

x

f

dx

x

f

I

które liczymy jak poprzednio.

Funkcja podcałkowa posiada osobliwość wewnątrz

przedziału całkowania

Np.:

2

0

x

1

dx

I

ogólnie:

 

b

a

dx

x

f

I

i w punkcie x

0

[a,b] występuje osobliwość.

background image

1. Jeżeli istnieje

   

0

x

x

x

f

x

f

lim

0

to wydzielamy osobliwość:

 

   

  

0

b

a

0

b

a

x

f

b

a

dx

x

f

x

f

dx

x

f

I

Przykład:

2

2

2

2

dx

5

x

6

x

4

x

3

x

I

wewnątrz przedziału całkowania mianownik ma miejsce
zerowe x

0

=1, a granica funkcji w tym punkcie wynosi:

25

.

1

5

x

6

x

4

x

3

x

lim

2

2

1

x

czyli

4

25

.

1

dx

25

.

1

5

x

6

x

4

x

3

x

dx

5

x

6

x

4

x

3

x

I

2

2

2

2

2

2

2

2





background image

5

dx

25

.

1

5

x

6

x

4

x

3

x

I

2

2

2

2





w obliczeniach numerycznych mamy funkcję podcałkową:

 



1

x

dla

0

1

x

dla

25

.

1

5

x

6

x

4

x

3

x

x

f

2

2

z której całkę w przedziale [-2,2] liczymy dowolną metodą.

2. Funkcja f(x) posiada słabą osobliwość w punkcie x

0

[a,b]:

 

0

x

x

x

g

)

x

(

f

gdzie 0<<1 oraz g(x

0

)0.

background image

i mamy:

 

   

 

b

a

b

a

0

0

0

0

b

a

0

x

x

dx

x

g

dx

x

x

x

g

x

g

dx

x

x

x

g

I

Ostatnią całkę można obliczyć analitycznie:

 

 

1

x

a

x

b

x

g

x

x

dx

x

g

1

0

1

0

0

b

a

0

0

Natomiast funkcja podcałkowa:

 

   

0

0

x

x

x

g

x

g

x

f

ma w punkcie x

0

granicę:

 

0

x

f

lim

0

x

x

jeżeli

0

x

x

dx

dg

background image

Równanie różniczkowe rzędu n-go

 

0

x

,...,

x

,

x

,

t

f

n

przykład:

t

sin

E

x

x

x

1

a

x

2

2



Układ równań różniczkowych I-go rzędu w postaci
normalnej:

n

2

1

n

n

n

2

1

2

2

n

2

1

1

1

x

,...,

x

,

x

,

t

f

x

........

..........

..........

x

,...,

x

,

x

,

t

f

x

x

,...,

x

,

x

,

t

f

x

Numeryczne metody całkowania równań różniczkowych

background image

Sprowadzenie równania rzędu n do układu równań na
przykładzie:

t

sin

E

x

x

x

1

a

x

2

2



oznaczamy:

 

 

2

2

2

1

1

x

x

dt

d

x

dt

d

x

x

x

x

x

x



i ostatecznie:

1

2

2

2

1

2

2

1

x

x

x

1

a

t

sin

E

x

x

x

Równanie różniczkowe rzędu n może praktycznie zawsze

być zapisane w formie układu n równań I-go rzędu

mówimy, że mamy układ równań w postaci normalnej.

background image

Zagadnienie początkowe dla równania różniczkowego:

Przykład:

 

t

f

x

x

całka ogólna:

0

x

x

t

exp

A

x

Rozwiązanie:

Całka szczególna metodą uzmienniania stałej:

  

t

f

t

exp

A

czyli

 

 



t

0

d

exp

f

C

A

background image

Rozwiązanie równania:

 

t

f

x

x

ma postać:

 

t

0

d

t

exp

f

t

exp

C

x

Stałą C wyznaczamy z warunków początkowych

Dla równania różniczkowego I-go rzędu potrzebujemy
jeden warunek początkowy:

0

x

0

t

x

i dla wyznaczenia stałej C mamy równanie:

C

x

0

background image

i rozwiązanie ma postać:

 

 

t

0

0

d

t

exp

f

t

exp

x

t

x

Przykład równania różniczkowego II rzędu:

R

0

E

C

R

L

t=0

i(t)

u

c

c

u

C

i

0

u

u

RC

u

LC

c

c

c



Warunki początkowe:

 

E

R

R

R

0

u

0

c

0

R

R

E

)

0

(

i

background image

 

E

R

R

R

0

u

0

c

0

R

R

E

)

0

(

i

Biorąc pod uwagę, że

c

u

C

i

zapisujemy warunki w postaci:

 

C

R

R

E

u

E

R

R

R

0

u

0

0

t

c

0

c

Warunków początkowych należy postawić tyle i nie więcej

ile wynosi rząd równania różniczkowego

background image

0

u

u

RC

u

LC

c

c

c



 

C

R

R

E

u

E

R

R

R

0

u

0

0

t

c

0

c

Rozwiązanie:

Niech równanie charakterystyczne:

0

1

RC

LC

2

ma dwa różne pierwiastki rzeczywiste

2

1

,

wtedy całka ogólna ma postać:

 

t

2

t

1

c

2

1

e

A

e

A

t

u

background image

Stałe A

1

i A

2

wyznaczamy z warunków początkowych:

 

C

R

R

E

u

E

R

R

R

0

u

0

0

t

c

0

c

czyli

C

R

R

E

A

A

E

R

R

R

A

A

0

2

2

1

1

0

2

1

Rozwiązując powyższy układ równań wyznaczamy stałe

a następnie znajdujemy napięcie na kondensatorze.

background image

Podsumowanie:

1. Mamy kłopoty z rozwiązywaniem równań o stałych
współczynnikach, jeżeli rząd wyższy od dwóch
równanie charakterystyczne jest wielomianem
rzędu n i nie znamy wzorów na pierwiastki.
2. Równań o zmiennych w czasie współczynnikach
i nieliniowych nie potrafimy rozwiązać w ogólnym
przypadku często już dla rzędu I-go

Konieczność użycia metod numerycznych

Ze względu na łatwość zbudowania ogólnego algorytmu

obliczenia prowadzimy dla układu równań różniczkowych

I-go rzędu w postaci normalnej

background image

który po wprowadzeniu formalnego zapisu w postaci wektorów:

 

 

 

 







t

x

t

x

t

x

t

X

n

2

1

 

 

 

 







t

x

t

x

t

x

t

X

n

2

1

n

2

1

n

n

n

2

1

2

2

n

2

1

1

1

x

,...,

x

,

x

,

t

f

x

........

..........

..........

x

,...,

x

,

x

,

t

f

x

x

,...,

x

,

x

,

t

f

x







n

2

1

n

n

2

1

2

n

2

1

1

x

,...,

x

,

x

,

t

f

x

,...,

x

,

x

,

t

f

x

,...,

x

,

x

,

t

f

X

,

t

F

i układ zapisujemy:

X

,

t

F

X

background image

X

,

t

F

X

Wniosek – Jeżeli opanujemy metodę numerycznego
rozwiązywania jednego równania różniczkowego
pierwszego rzędu, czyli

 

x

,

t

f

x

to wyniki łatwo uogólnimy na układ n równań
I-go rzędu w postaci normalnej

Rozpoczynamy od następującego zadania:

 

x

,

t

f

x

z warunkiem początkowym:

0

x

0

t

x

Należy znaleźć rozwiązanie dla t[0,T]

background image

Metoda aproksymacji wielomianowej

metody wielokrokowe

 

t

,

x

f

x

Przyjmujemy algorytm w postaci

p

0

i

p

1

i

i

n

i

n

i

i

n

i

1

n

)

t

,

x

(

f

b

h

x

a

x

t

k

=kh

Algorytm nazywamy

jawnym

, jeżeli sumowanie rozpoczyna

się od 0 w przeciwnym przypadku mówimy, że algorytm jest

niejawny

background image

Wyznaczenie współczynników a

i

, b

i

.

Metoda jest dokładna jeżeli rozwiązaniem równania:

 

t

,

x

f

x

jest wielomian stopnia zerowego, czyli równanie ma postać:

0

x

.

którego rozwiązaniem jest:

 

0

c

t

x

p

1

i

0

i

0

c

a

c

podstawiając do

p

0

i

p

1

i

i

n

i

n

i

i

n

i

1

n

)

t

,

x

(

f

b

h

x

a

x

mamy

ponieważ f(x,t)=0. Dzieląc przez c

0

background image

Wyznaczenie współczynników a

i

, b

i

.

Metoda jest dokładna dla wielomianu stopnia zerowego
jeżeli rozwiązaniem równania:

 

t

,

x

f

x

jest wielomian stopnia zerowego, czyli równanie ma postać:

0

x

.

którego rozwiązaniem jest:

 

0

c

t

x

p

1

i

0

i

0

c

a

c

podstawiając do

p

0

i

p

1

i

i

n

i

n

i

i

n

i

1

n

)

t

,

x

(

f

b

h

x

a

x

mamy

ponieważ f(x,t)=0. Dzieląc przez c

0

background image

otrzymujemy warunek:

1

a

p

0

i

i

Jeżeli współczynniki a

i

dobierzemy tak, aby spełnić

powyższy warunek, to algorytm jest dokładny dla
wielomianów stopnia zerowego.

Żądamy, jeżeli rozwiązaniem równania

0

1

c

t

c

x

 

t

,

x

f

x

jest wielomian pierwszego stopnia

to algorytm

p

0

i

p

1

i

i

n

i

n

i

i

n

i

1

n

)

t

,

x

(

f

b

h

x

a

x

jest dokładny.

background image

Równanie spełniane przez wielomian

0

1

c

t

c

x

ma postać:

1

.

c

x

czyli

c

)

t

,

x

(

f

1

a więc algorytm:

p

0

i

p

1

i

i

n

i

n

i

i

n

i

1

n

)

t

,

x

(

f

b

h

x

a

x

uwzględniając, że t

i

=ih przyjmuje postać:

p

1

i

i

i

p

0

i

0

1

i

0

1

c

b

h

]

c

h

)

i

n

(

c

[

a

c

h

)

1

n

(

c

Biorąc pod uwagę, że dla wielomianu stopnia zerowego
mamy warunek:

1

a

p

0

i

i

background image

Z równania:

p

1

i

i

i

p

0

i

0

1

i

0

1

c

b

h

]

c

h

)

i

n

(

c

[

a

c

h

)

1

n

(

c

otrzymujemy:

1

b

ia

p

1

i

i

p

0

i

i

Powtórzmy jeszcze jako ćwiczenie rozumowanie dla
wielomianu II-go stopnia:

0

1

2

2

c

t

c

t

c

x

który spełnia równanie

1

2

.

c

t

c

2

x

czyli

1

2

c

t

c

2

)

t

,

x

(

f

background image

Przyjmując dla skrócenia zapisu t

n

=0 algorytm:

p

0

i

p

1

i

i

n

i

n

i

i

n

i

1

n

)

t

,

x

(

f

b

h

x

a

x

zapisujemy:

i uwzględniając:

1

2

i

n

i

n

0

1

2

2

i

n

0

1

2

2

1

n

c

)

ih

(

c

2

)

t

,

x

(

f

c

)

ih

(

c

)

ih

(

c

x

c

h

c

h

c

x

p

1

i

1

2

i

p

0

i

0

1

2

2

i

0

1

2

2

]

c

ih

c

2

[

b

h

]

c

ih

c

)

ih

(

c

[

a

c

h

c

h

c

a biorąc pod uwagę dwa poprzednie warunki:

background image

1

a

p

0

i

i

1

b

ia

p

1

i

i

p

0

i

i

otrzymujemy:

1

i

b

2

i

a

p

1

i

i

2

i

Dla wielomianu stopnia k:

0

1

1

k

1

k

k

k

c

t

c

...

t

c

t

c

x

równie różniczkowe ma postać

1

2

k

1

k

1

k

k

.

c

...

t

c

)

1

k

(

t

kc

x

background image

Przyjmując podobnie jak dla drugiego stopniaih

t

i

k

1

m

1

m

m

i

n

i

n

k

0

m

m

m

i

n

k

0

m

m

m

1

n

)

ih

(

mc

)

t

,

x

(

f

)

ih

(

c

x

h

c

x

i podstawiając do:

p

0

i

p

1

i

i

n

i

n

i

i

n

i

1

n

)

t

,

x

(

f

b

h

x

a

x

otrzymujemy:

 

 

p

1

i

k

1

m

1

m

m

i

p

0

i

k

0

m

m

m

i

k

0

m

m

m

)

ih

(

mc

b

h

)

ih

(

c

a

h

c

background image

Porównując współczynniki przy tych samych potęgach
h i poprzednie k-1 równań znajdujemy:

1

)

i

(

b

k

)

i

(

a

p

1

i

1

k

i

p

0

i

k

i

Algorytm wielokrokowy:

p

0

i

p

1

i

i

n

i

n

i

i

n

i

1

n

)

t

,

x

(

f

b

h

x

a

x

jest dokładny dla wielomianu stopnia k, jeżeli współczynniki
a

i

, b

i

spełniają następujący układ k równań:

background image

1

a

p

0

i

i

1

b

ia

p

1

i

i

p

0

i

i

1

i

b

2

i

a

p

1

i

i

2

i

...............................

1

)

i

(

b

k

)

i

(

a

p

1

i

1

k

i

p

0

i

k

i

Każdy algorytm spełniający warunki dla k>1 nazywamy

zwartym. Jeżeli metoda jest dokładna dla wielomianu stopnia

k, to mówimy o metodzie rzędu k-go.

background image

Liczba niewiadomych do wyznaczenia w algorytmie:

p

0

i

p

1

i

i

n

i

n

i

i

n

i

1

n

)

t

,

x

(

f

b

h

x

a

x

Współczynników a

i

wynosi: p+1

Współczynników b

i

wynosi: p+2

Całkowita liczba niewiadomych: 2p+3

1

)

i

(

b

k

)

i

(

a

p

1

i

1

k

i

p

0

i

k

i

Układ równań:

k=0,1,...,n

można spełnić pod warunkiem, że liczba równań n+1 2p+3

background image

W metodzie Adamsa - Bashfortha przyjmujemy p=n-1

Liczba niewiadomych wynosi: 2(n-1)+3=2n+1, więc przy

spełnieniu n+1 równań możemy dowolnie wybrać

n współczynników

Przyjmujemy n-1 współczynników a

1

=a

2

=....=a

n-1

=0

Pierwsze

z równań przy spełnieniu powyższych warunków

przyjmuje postać:

1

a

p

0

i

i

1

a

0

Jako n-ty dowolnie wybrany współczynnik przyjmujemy b

-1

=0

A więc schemat Adamsa - Bashfortha jest

schematem jawnym

background image

Dla n=1 mamy p=0 i równanie wyznaczające b

0

1

)

i

(

b

k

)

i

(

a

p

1

i

1

k

i

p

0

i

k

i

jest

1

b

0

Przy n=2 będzie p=1 i mamy dwie niewiadome b

0

i b

1

spełniające układ równań:

2

1

b

1

b

b

1

1

0

czyli

2

1

b

;

2

3

b

1

0

background image

n

1

.

3

1

2

1

1

b

.

b

b

b

))

1

n

(

(

...

)

2

(

)

1

(

0

.

...

.

.

.

)

1

n

(

...

4

1

0

)

1

n

(

...

2

1

0

1

...

1

1

1

1

n

2

1

0

1

n

n

n

2

Ogólnie jeżeli mamy n niewiadomych współczynników b

i

,

to wyznaczamy je z równań

Rozwiązanie powyższego układu równań przedstawia

tabela:

background image

Współczynniki b

k

metoda Adamsa -

Bashfortha

n

b

0

b

1

b

2

b

3

b

4

b

5

1

1

2

3/2

-1/2

3

23/12

-16/12

5/12

4

55/24

-59/24

37/24

-9/24

5

1901/72

0

-

2774/720

2616/72

0

-

1274/720

251/720

6

4277/14

40

-

7923/144

0

9982/14

40

-

7298/144

0

2877/14

40

-475/1440

background image

Algorytm Adamsa - Bashfortha rzędu pierwszego jest

nazywany algorytmem Eulera i ma postać:

i

i

i

1

i

t

,

x

hf

x

x

Przykład:

 

t

30

sin

10

x

3

x

z warunkiem początkowym x(0)=0

Zapisujemy równanie w postaci normalnej:

 

x

3

t

30

sin

10

x

czyli w tym przypadku funkcja f(x,t) jest

 

 

x

3

t

30

sin

10

t

,

x

f

Wybór kroku całkowania h:

background image

Wybór kroku całkowania h:

Równanie jednorodne ma postać:

0

x

3

x

Całka ogólna tego równania ma postać:

t

3

exp

A

x

Przebieg rozwiązania jest scharakteryzowany przez

wielkość tłumienia, które w tym przypadku wynosi

a=3 i charakterystyczny czas wynosi 1/a=1/3 s.

Krok czasowy h należy wybrać co najwyżej

h<1/(10a), co w tym przypadku pozwala wybrać

h=0.03s.

background image

Należy również uważnie rozważyć funkcję wymuszającą,
która w rozpatrywanym przypadku ma postać:

 

t

30

sin

10

Okres T zmian analizowanej funkcji wynosi:

s

21

.

0

30

2

T

Rysunek funkcji sinus jest „gładki”, jeżeli podzielimy

okres na co najmniej 20 kroków, czyli krok h powinien

wynosić h<T/20, a więc h=0.01s.

t

0

h

2h

3h

4h

background image

Z obu ograniczeń h=0.03s i h=0.01s wybieramy mniejszy
czyli w tym przypadku przyjmujemy h=0.01s.
Algorytm przy przyjętym kroku h ma postać:

n

n

1

n

x

3

n

01

.

0

30

sin

10

01

.

0

x

x

x

0

=0

i mamy:

02955

.

0

0

3

01

.

0

30

sin

10

01

.

0

x

01

.

0

t

1

1

następny:

08513

.

0

02955

.

0

3

02

.

30

sin

10

01

.

02955

.

0

x

02

.

0

t

2

2

itd..

background image

0 15 30 45 60 75 90105120135150

0.5

0.25

0

0.25

0.5

0.75

1

x

n

y n h

(

)

n

h=0.01s

y(t) rozwiązanie dokładne

background image

0 15 30 456075 90105120135150

0.1

0.067

0.033

0

0.033

0.067

0.1

x

n

y n h

(

)

n

background image

0 3 6 9 12 15 18 21 24 27 30

0.5

0.25

0

0.25

0.5

0.75

1

x

n

y n h

(

)

n

h=0.05s

background image

0 3 6 9 12 1518 2124 27 30

0.5

0.33

0.17

0

0.17

0.33

0.5

x

n

y n h

(

)

n

background image

0 1.5 3 4.5 6 7.5 9 10.51213.515

1

0.67

0.33

0

0.33

0.67

1

x

n

y n h

(

)

n

h=0.1s

background image

0 1.5 3 4.5 6 7.59 10.51213.515

1

0.67

0.33

0

0.33

0.67

1

x

n

y n h

(

)

n

background image

Równanie drugiego rzędu na przykładzie wahadła
matematycznego o długości l:

0

sin

l

g

dt

d

2

2

Wprowadzamy nowe zmienne
celem zastąpienia układem
równań I-go rzędu:

sin

l

g

dt

d

dt

d

background image

Przyjmujemy wahadło o długości l=1m i g=10m/s

2

Warunki początkowe:

 

 

0

dt

d

0

18

0

0

t

Jeżeli zlinearyzujemy równanie:

0

sin

l

g

dt

d

2

2

to przyjmie on postać:

0

l

g

dt

d

2

2

którego całka ogólna ma postać:

t

l

g

cos

A

t

l

g

sin

A

2

1

background image

Okres T drgań zlinearyzowanego wahadła wynosi:

s

2

g

l

2

T

czyli krok należy przyjąć

1

.

0

h

20

T

h

ponieważ mamy nieliniowe równanie, więc dla bezpieczeństwa
przyjmujemy h=0.001s.

Jawny schemat Eulera dla układu równań

sin

l

g

dt

d

dt

d

background image

przyjmuje postać:

n

n

1

n

n

n

1

n

sin

l

g

h

h

z warunkiem startowym:

0

18

0

0

background image

0

4000 8000

1.2.10

4

1.6.10

4

2.10

4

0.2

0.13

0.067

0

0.067

0.13

0.2

n

x n h

(

)

n

h=0.001

background image

0

4000 80001.2.10

4

1.6.10

4

2.10

4

0.05

0.03

0.01

0.01

0.03

0.05

n

x n h

(

)

n

błąd

background image

0.20.12

0.04

0.04

0.120.2

1

0.6

0.2

0.2

0.6

1

y1

 

y2

 

ω

Płaszczyzna fazowa – rozwiązanie analityczne:

 

0

cos

cos

l

g

2

dt

d

background image

0.2 0.12 0.04 0.04 0.12 0.2

1

0.6

0.2

0.2

0.6

1

n

n

płaszczyzna fazowa

background image

0

400 800 1200 1600 2000

0.5

0.33

0.17

0

0.17

0.33

0.5

n

x n h

(

)

n

h=0.01

background image

0

400 800 1200 1600 2000

0.5

0.3

0.1

0.1

0.3

0.5

n

x n h

(

)

n

błąd

background image

0.5

0.3

0.1 0.1

0.3

0.5

2

1.2

0.4

0.4

1.2

2

n

n

płaszczyzna fazowa

background image

0

200 400 600 800 1000

200

100

0

100

200

300

400

n

x n h

(

)

n

h=0.05

background image

0

200 400 600 800 1000

200

80

40

160

280

400

n

x n h

(

)

n

błąd

background image

200 80

40

160 280 400

10

4

2

8

14

20

n

n

płaszczyzna fazowa


Document Outline


Wyszukiwarka

Podobne podstrony:
Wyklad mn no 8 piątek
Wyklad mn no 4 piątek
Wyklad mn no 5 piątek
Wyklad mn no 6 piątek
Wyklad mn no 3 piątek
Wyklad mn no 8 piątek
Wyklad mn no 1
Wyklad mn 2
Wyklad mn 9
Wyklad mn 16
Wyklad mn 9
Wyklad mn 3
Wyklad mn 6
Wyklad mn 12
Wyklad mn 10
Wyklad mn 6
Wyklad mn 15
Wyklad mn 8
Wyklad mn 5

więcej podobnych podstron