background image

Mariusz PYRZ

SIMR (PW), Instytut Pojazdów

Metody numeryczne w mechanice

Wprowadzenie de oblicze

ń

 numerycznych

1.

background image

Metody numeryczne

Dokładne rozwiązania analityczne wielu problemów mechaniki są trudne

(lub niemoŜliwe) do uzyskania.

Metody numeryczne zajmują się analizą sposobów rozwiazywania 
problemów matematycznych za pomocą działań arytmetycznych oraz  

doborem takich procedur 

(i ich zastosowaniem) 

które są najbardziej 

odpowiednie do rozwiązania rozwaŜanego problemu.

M.Pyrz   Metody numeryczne w mechanice - Wprowadzenie  10.2011

2

odpowiednie do rozwiązania rozwaŜanego problemu.

Analiza numeryczna zajmuje się badaniem metod umoŜliwiających  

wyznaczanie numeryczne wartości liczbowej oraz wartości funkcji.

W mechanice dotyczy to problemów modelowania i projektowania, 

opracowywania  wyników eksperymentalnych, … 

background image

Znajomość numeryczna wartości liczbowej

Liczbę uwaŜamy za „znaną” numerycznie jeśli dysponujemy jej zapisem w 
dziesiętnym systemie liczbowym , np.

(tzn., jeŜeli znamy pewną liczbę cyfr opisujących rozwinięcie dziesiętne 

e

=

±

2 7183 10

4

,

3

(tzn., jeŜeli znamy pewną liczbę cyfr opisujących rozwinięcie dziesiętne 

oraz znamy dokładność z jaką to rozwinięcie jest podane)

Niektóre liczby rzeczywiste będą traktowane jako „dobrze znane” poniewaŜ moŜna
znaleźć ich przybliŜoną wartość z wymaganą dokładnością (np. w tablicach)

2

3

,

, ,

π

e

M.Pyrz   Metody numeryczne w mechanice - Wprowadzenie  10.2011

background image

Znajomość numeryczna funkcji

Funkcję traktujemy jako znaną numerycznie jeŜeli moŜna obliczyć jej
wartość* w kaŜdym punkcie dziedziny określoności funkcji.

*) w sensie znajomości numerycznej wartości liczbowej

tj. podania wartości przybliŜonej i wskazania jej dokładności

4

M.Pyrz   Metody numeryczne w mechanice - Wprowadzenie  10.2011

background image

Liczba cyfr znaczących

(wyznacza granicę błędu)

Niech x będzie liczbą rzeczywistą, której rozwinięcie dziesiętne jest w 

ogólnym przypadku nieskończone.

x =     4 1 2 8 , 4 5 0 6 7

3  2  1  0   -1 -2 -3 … -d



numery cyfr

Liczba x jest poprawnie zaokrąglona do pozycji (co oznaczymy 

Przykłady:

Uwaga: moŜna wybrać zaokrąglenie do wartości wyŜszej lub niŜszej
Z zasady zaokrągla się zawsze do wartości wyŜszej albo zawsze do wartości niŜszej

5

Liczba x jest poprawnie zaokrąglona do pozycji (co oznaczymy 

symbolem x

(d)

)  jeśli błąd zaokrąglenia wynosi

ε

= −

x

x

d

d

( )

1

2

10

x

x

x

=

=

=

6 74 3 9 9 6 66

6 7 4 4

6 7 43 9 9 6 7

3

7

.

.

.

(

)

(

)

M.Pyrz   Metody numeryczne w mechanice - Wprowadzenie  10.2011

background image

Równania nieliniowe i ich układy

Wyznaczyć 

x

x

Poszukiwanie wartości liczbowych  

– przykłady problemów

( )

0

f x

=

f(x) = 0

Układy równań liniowych

Wyznaczyć                      

– dana macierz kwadratowa rzędu n,  

- dany wektor 

6

x

R

n

Ax

b

=

b

R

n

M.Pyrz   Metody numeryczne w mechanice - Wprowadzenie  10.2011

background image

Interpolacja 

Wyznaczyć

Aproksymacja

Poszukiwanie wartości liczbowych  

– przykłady problemów

,

0,

,

i

a

R i

n

=

2

0

1

2

( )

...

n

n

n

P x

a

a x

a x

a x

= +

+

+ +

( )

m

f x

a

ϕ

=

Aproksymacja

Wyznaczyć 

- dane funkcje 

7

M.Pyrz   Metody numeryczne w mechanice - Wprowadzenie  10.2011

0

( )

j

j

j

f x

a

ϕ

=

=

,

0,

,

j

a

R

j

n

=

j

ϕ

background image

Wartości  własne

Wyznaczyć

Wektory własne

Poszukiwanie wartości liczbowych  

– przykłady problemów

λ

C

Ax

x

=

λ

x

0

Ax

x

=

λ

Wyznaczyć  

8

x

R

n

M.Pyrz   Metody numeryczne w mechanice - Wprowadzenie  10.2011

background image

Poszukiwanie wartości liczbowych  

– przykłady problemów

Całkowanie numeryczne

2

2.7

1

1

2

2

2

(

)

x

D

e

dx

x

y dxdy

α

α

=

=

+

∫∫

9

Minimalizacja funkcji 

Znaleźć  takie  

aby

2

1,...,

sup

(

)

min

i

i

i

i

n

y

ax

bx

c

ω

=

=

+

+

a b c

R

, ,

M.Pyrz   Metody numeryczne w mechanice - Wprowadzenie  10.2011

background image

Poszukiwanie wartości funkcji

– przykłady problemów

Równania róŜniczkowe zwyczajne

Problem warunków początkowych

Wyznaczyć tak, aby

( )

( , ( ))

[ , ],

( )

y x

f x y x

x

a b

y a

α

=

=

10

Problem wartości granicznych

Wyznaczyć tak, aby

M.Pyrz   Metody numeryczne w mechanice - Wprowadzenie  10.2011

( )

( , ( ),

( ))

[ , ],

( )

,

( )

y x

f x y x y x

x

a b

y a

y b

α

β

′′

=

=

=

background image

Poszukiwanie wartości funkcji

– przykłady problemów

Równania róŜniczkowe cząstkowe

Problem Dirichleta

Dany jest  zbiór otwarty  

i jego „brzeg”      .

Wyznaczyć tak, aby

( )

( )

( )

u x

u x

f x

w

λ

−∆

+

=

Γ

11

Wyznaczyć tak, aby

dane lub do wyznaczenia (wtedy jest to zagadnienie na wartości własne)

- operator róŜniczkowy,              - znane funkcje

( )

( )

( )

( )

( )

u x

u x

f x

w

u x

x

na

λ

ϕ

−∆

+

=

=

Γ

M.Pyrz   Metody numeryczne w mechanice - Wprowadzenie  10.2011

λ

,

f

ϕ

background image

Poszukiwanie wartości funkcji

– przykłady problemów

Problemy optymalizacji

Optymalizacja funkcji wielu zmiennych

Wyznaczyć x tak aby 

1

2

1

2

1

2

( ,

,...,

)

min

( ,

,...,

)

0,

( ,

,...,

)

0

n

n

n

f x x

x

x x

x

x x

x

=

h

g

12

Kontrola optymalna

Wyznaczyć u

aby (na przykład) 

( )

( , ( ), ( ))

[ , ]

( )

,

,

y x

f x y x u x

x

a b

y a

f

dane

α

α

=

=

( , ( ), ( ))

min

b

a

g x y x u x dx

M.Pyrz   Metody numeryczne w mechanice - Wprowadzenie  10.2011

background image

Rozwiązywanie zadań za pomocą metod numerycznych

Sprzęt 

papier + długopis   

(bardzo prosty problem )

kalkulator  

(problem o łatwym algorytmie)

komputer 

(powaŜne zagadnienia) 

Metoda 

ZaleŜy od rozpatrywanego problemu i posiadanego sprzętu 

Algorytm

13

Algorytm

Precyzyjny opis kolejnych działań, pozwalających na obliczenie wyniku

Badanie algorytmów

opis algorytmu

badanie teoretyczne zbieŜności (błąd metody)
badanie praktyczne zbieŜności 

M.Pyrz   Metody numeryczne w mechanice - Wprowadzenie  10.2011

background image

Źródła i natura błędów

Błędy podczas definiowania problemu ( sformułowanie matematyczne)

Błędy sformułowania (przybliŜenie stanu rzeczywistego za pomocą modeli 

matematycznych– margines błędu trudny do oszacowania)

Błędy danych (błędy i niedokładności pomiarów i zaokrągleń)

Błędy przybliŜeń w procesie obliczeniowym 

14

Błędy przybliŜeń w procesie obliczeniowym 

(rozwiązywanie numeryczne)

Błędy zaokrągleń – przybliŜenie wartości liczbowych posiadających 

nieskończenie wiele cyfr przez wartości o skończonej liczbie cyfr)

Błędy „obcięcia” będące konsekwencją zastąpienia „nieskończonej” liczby 

operacji matematycznych (wymaganych w teorii) przez skończoną liczbę 
operacji procesu obliczeniowego  

M.Pyrz   Metody numeryczne w mechanice - Wprowadzenie  10.2011

background image

Akumulacja błędów

Wszystkie błędy dodają się do siebie i rozprzestrzeniają w procesie obliczeń. 
Ich 

akumulacja

moŜe prowadzić do nieprzewidywalnych skutków.

Metoda (lub algorytm jest 

stabilny

jeŜeli jest ona mało wraŜliwa na 

akumulację (spiętrzenie) błędów zaokrąglenia (moŜe to być zaleŜne od 
wartości zmiennych).

Obliczanie błędu

błąd bezwzględny

błąd względny

(róŜnica miedzy wartością dokładną lub teoretyczną x* 

a wartością przybliŜoną x )

Przykład: Gdy przybliŜymy 

1/3

liczbą 

0.333

to 

epsilon=1/3*10

-3

, e=10

-3

.

15

ε

=

x

x

*

e

x

=

ε

*

M.Pyrz   Metody numeryczne w mechanice - Wprowadzenie  10.2011

background image

Komputer – narzędzie dla metod numerycznych

Komputer moŜe dostarczyć jedynie wartości 

przybliŜone, 

które zaleŜą 

jednocześnie od ograniczeń fizycznych (obszar pamięci, prędkość 
zegara, …) i od doboru metody przez autora programu.

Niebezpiecze

ń

stwo: 

zbyt duŜe zaufanie uŜytkownika do komputera 

(niezaleŜnie od tego czy jest to kalkulator czy super komputer)!

16

Reprezentacja (kodowanie) liczb na komputerze

System numeryczny komputera jest dyskretny (skończona liczba wartości)

Z wyjątkiem najprostszych przypadków,

wszystkie obliczenia są obarczone błędami.

M.Pyrz   Metody numeryczne w mechanice - Wprowadzenie  10.2011

background image

Obliczenia na kalkulatorze

Problem:

Obliczyć

(11 111 111)

2

Dokładna wartość :

123 456 787 654 321

Wartość wyświetlona przez kalkulator

1.2345E14

(wyświetlacz 9-cio cyfrowy)

1.2345*10

14 =

123 450 000 000 000 

Błąd bezwzględny

123 456 787 654 321 - 123 450 000 000 000 = 

17

Błąd bezwzględny

123 456 787 654 321 - 123 450 000 000 000 = 

6 787 654 321 

(rzędu 6*10

9

)

Błąd względny 

6 787 654 321 / 123 456 787 654 321 = 

0.0005%

W obliczeniach numerycznych naleŜy starać się o uzyskanie odpowiedzi 

charakteryzowanej prawidłowym rządem wielkości i maksymalną liczbą 

dokładnych cyfr rozwinięcia dziesiętnego.

M.Pyrz   Metody numeryczne w mechanice - Wprowadzenie  10.2011

background image

Reprezentacja liczb na komputerze: 

całkowite i zmiennoprzecinkowe 

(rzeczywiste).

Dokładność: 

zwykła i/lub podwójna

Liczby zmiennoprzecinkowe 

Problemy informatyczne

x

M b

E

= ±

*

18

gdzie M – mantysa, b – podstawa systemu liczbowego, E – wykładnik (liczba całkowita)

Zaokrąglanie 

liczby

Arytmetyka zmiennopozycyjna 

Reprezentacja zmiennopozycyjna została zaproponowana aby błąd względny liczb 

reprezentowanych w pamięci komputera był w przybliŜeniu stały (wartość tego błędu 
związana jest z dokładnością maszyny)

M.Pyrz   Metody numeryczne w mechanice - Wprowadzenie  10.2011

background image

Uwarunkowanie problemu i stabilność algorytmu

JeŜeli błędy powstałe na pośrednich etapach obliczeń mają pomijalny 
wpływ na końcowy wynik, wówczas mamy do czynienia z algorytmem 

stabilnym 

numerycznie. W przeciwnym przypadku algorytm jest 

numerycznie niestabilny.

19

Problem jest 

dobrze uwarunkowany

numerycznie, jeŜeli małe zmiany 

danych nie pociągają za sobą duŜych zmian w wynikach.

M.Pyrz   Metody numeryczne w mechanice - Wprowadzenie  10.2011

background image

Pytania przed przystąpieniem do rozwiązywania

Dane:

Jakie wielkości są danymi problemu?

W jakiej przestrzeni danych i wyników najlepiej wyrazić sens fizyczny lub
techniczny problemu?

Uwarunkowanie problemu

Czy problem jest wraŜliwy na perturbacje danych?

20

Czy problem jest wraŜliwy na perturbacje danych?

Czy moŜna go rozwiązać z wymagana dokładnością?

Czy istnieje równowaŜny problem lepiej uwarunkowany?

Dobór algorytmu

Czy algorytm jest stabilny i prawidłowy?

Jakie są moŜliwe straty w dokładności?

M.Pyrz   Metody numeryczne w mechanice - Wprowadzenie  10.2011