You are on page 1of 9

Sawomir Milewski

Metody komputerowe - laboratorium - instrukcja wykonania wiczenia 1



wiczenie 1a: Statyka rozciganego prta

Dany jest prt o dugoci L, zamocowany na lewym kocu, obciony w sposb jednorodny
cigy (obcienie q) i skupiony (sia P na prawym swobodnym kocu). Prt wykonany jest
z materiau sprystego (modu E), o prostoktnym przekroju poprzecznym (wymiary b i d).

P [kN]
q [kN/m]
E [kPa], A [m
2
]
L [m]


Zastosowa MES do znalezienia przemieszcze Q i rozkadu si podunych prta S.

Dyskretyzacja MES: n wzw, N elementw,
ss
N n = stopni swobody (przemieszczenia
poziome wzw).

1 2 3 n n-1
1 2

N
1
Q
2
Q
3
Q
1 n
Q
n
Q


Aproksymacja MES: dwie linowe funkcje ksztatu,
1
( ) N x ,
2
( ) N x , o wasnociach
1 1 1 2
( ) 1, ( ) 0 N x N x = = oraz
2 1 2 2
( ) 0 , ( ) 1 N x N x = =

el = i
i i+1
1
( ) N x
2
( ) N x
x
1
x
2
x
h
1
1



Wzr na macierz sztywnoci elementu

[ ]
( )
2
1
2 2
x T
e e e
x
E A dx

K B B (1)

gdzie
e
B - macierz pochodnych funkcji ksztatu

Sawomir Milewski

Metody komputerowe - laboratorium - instrukcja wykonania wiczenia 1


[ ]
1 2
1 2
( ) ( )
e
dN x dN x
dx dx

(
=
(

B (2)

Wzr na wektor obcienia elementu

[ ]
( )
2
1
2 1
x T
e e
x
q dx

F N (3)

gdzie
e
N - macierz funkcji ksztatu elementu

[ ]
[ ]
1 2
1 2
( ) ( )
e
N x N x

= N (4)

oraz q - obcienie cige (stae lub zmienne) wzdu elementu.

Schemat agregacji globalnej macierzy sztywnoci
[ ]
ss ss
N N
K i globalnego wektora obcienia
[ ] 1
ss
N
F (z uwzgldnieniem obcienia skupionego P)

(1)
11
K
(1)
12
K
(1)
21
K
(1)
22
(2)
11
K
K +
(2)
12
K
(2)
21
K
(2)
22
(3)
11
K
K +
(1)
1
F
(
(1)
2
2)
1
F
F +
(
(2)
2
3)
1
F
F +
+
P



Uwzgldnienie warunkw brzegowych
1
0 Q =

Rozwizanie ukadu rwna (wyznaczenie przemieszcze wzowych)


[ ] 1
ss
N
= Q K Q F (5)

Wyznaczenie si podunych S dla kadego elementu

[ ] 2 1
e e e

= S K Q (6)

Wyznaczenie przemieszczenia i siy podunej w dowolnym punkcie elementu

Sawomir Milewski

Metody komputerowe - laboratorium - instrukcja wykonania wiczenia 1
1 1 2 2
( ) ( ) ( )
e e
u x N x Q N x Q = + (7)

1 2
1 2
( ) ( )
( )
e e
dN x dN x
s x E A Q Q
dx dx
| |
= +
|
\
(8)

Zadania
1. Przyj dane: L = 1 m, E = 207 GPa, b = d = 5 cm, q = 10 3 e x kN/m (obcienie
rozcigajce, liniowo zmienne), P = - 1e3 kN (sia ciskajca)
2. Wykona obliczenia rczne dla dwch elementw skoczonych
3. Wykona obliczenia komputerowe w programie Matlab dla dowolnej liczby
elementw, sprawdzi poprawno oblicze rcznych (N = 2) za pomoc
programu. Wywietli wyniki dla N = 10.

Wskazwki
W programie w Matlabie wykorzysta ptl for oraz nastpujce funkcje:
- do oblicze symbolicznych: syms, diff, int
- do oblicze macierzowych: zeros
- do grafiki: figure, plot, title, axis, xlabel, ylabel, legend, hold
- do oblicze MES (z przybornika Calfem): assem, solveq.

Skadnia funkcji assem: [K,F]=assem(edof,K,Ke,F,Fe)
Skadnia funkcji solveq: [Q,R]=solveq(K,F,bc)

Schemat programu:
%% MK: rozciganie prta
clc % wyczyszczenie Command Window
clear all % wyczyszczenie Workspace
close all % zamknicie okien graficznych

syms x % deklaracja zmiennej symbolicznej

%% DANE
E = % modu Younga
A = % pole przekroju
L = % dugo prta
q = % wzr na obcienie cige
P = % sia skupiona

%% DYSKRETYZACJA MES
N = % okreli liczb elementw
n = % obliczy liczb wzw
Nss = % obliczy liczb ss
h = % obliczy dugo elementu
X = % wygenerowa wsprzdne wzw

%% BUDOWA UKADU RWNA MES
K = % przygotowanie zerowej globalnej macierzy sztywnoci
F = % przygotowanie zerowego globalnego wektora obcie
F() = % wpisanie w odpowiednie miejsce siy skupionej
for i = % ptla po elementach
x1 = % wsprzdna pierwszego wza i-tego elementu
x2 = % wsprzdna drugiego wza i-tego elementu
N1 = % pierwsza funkcja ksztatu
N2 = % druga funkcja ksztatu
Ne = % wektor funkcji ksztatu [1x2]
Be = % macierz pochodnych funkcji ksztatu [1x2]
Sawomir Milewski

Metody komputerowe - laboratorium - instrukcja wykonania wiczenia 1
Ke = % obliczenie macierzy sztywnoci elementu [2x2]
Fe = % obliczenie wektora obcienia elementu [2x1]
edof = % wektor [1x3] zawierajcy numer elementu oraz numery jego ss
[]=assem( % agregacja
end

%% ROZWIZANIE MES
bc = [ % okrelenie wektora 1x2 war.brzeg. (numer zablokowanego ss i warto
przem.)
[Q,R] = solveq % rozwizanie ukadu rwna MES (wyznaczenie przemieszcze i
reakcji)
figure(1) % otwarcie pierwszego okna graficznego
plot( % wykres przemieszczenia
title( % wstawienie tytuu
legend( % wstawienie legendy
xlabel( % wstawienie opisu osi x
ylabel( % wstawienie opisu osi y

%% POWRT DO ELEMENTU
figure(2)
hold on
M = 10; % liczba punktw porednich w elemencie
for i % ptla po elementach
% powtrzenie procesu obliczenia macierzy sztywnoci elementu
Qe = % wybranie przemieszcze wzowych i-tego elementu
Se = % obliczenie si przywzowych
xe = % generacja punktw porednich w elemencie
s = % obliczenie siy podunej w punktach porednich
plot( % rysunek siy podunej w elemencie
end
title( % wstawienie tytuu
xlabel( % wstawienie opisu osi x
ylabel( % wstawienie opisu osi y

wiczenie 1b: Dynamika rozciganego prta - drgania swobodne

Prt z poprzedniego zadania poddany jest podunym drganiom swobodnym (bez obcienia
zewntrznego). Znale cztery pierwsze czstotliwoci drga wasnych oraz odpowiadajce
im postacie drga. Obliczenia wykona dla dwch wariantw rozoenia masy prta - masy
skupionej oraz rozoonej w sposb cigy.

W analizie MES wykorzystywana jest najczciej konsystentna (pena) macierz mas,
obliczania wedug wzoru (dla elementu)

[ ]
( )
2
1
2 2
x T
e e e
x
A dx

M N N (9)

gdzie oznacza gsto masy elementu (prta). Macierze mas poszczeglnych elementw
podlegaj agregacji podobnie jak macierze sztywnoci.

Oprcz macierzy konsystentnej (czyli posiadajcej elementy pozaprzektniowe), mona
stosowa diagonalne macierze mas, wynikajce z punktowego rozoenia masy (podobnie jak
w zagadnieniach mechaniki budowli)

[ ] 2 2
1 0
0 1 2
e
pun
h
A

(
=
(

M (10)

Sawomir Milewski

Metody komputerowe - laboratorium - instrukcja wykonania wiczenia 1
Agregacja macierzy sztywnoci i mas prowadzi do uoglnionego problemu wasnego na
poziomie caego ukadu (prta)

( )
2
0 = K M Q (11)

gdzie - czsto drga wasnych. Z czstoci drga wasnych mona wyliczy
czstotliwo f oraz okres drga wasnych T.

2
2 f
T

= = (12)

Zadania
Dla prta z poprzedniego przykadu przyj gsto masy
3
2800
kg
m
= . Do istniejcego
programu dopisa procedury znajdujce pierwsze czstotliwoci i postacie drga wasnych, w
oparciu o macierze mas MES (pene) oraz skupione. Narysowa postacie drga dla wynikw
MES.

Wskazwki
Obliczenia dla macierzy mas mona zorganizowa w tej samej ptli, co dla macierzy
sztywnoci - przed ptl naley przygotowa (wyzerowa) odpowiednie globalne macierze

Mkons = zeros(
Mdiag = zeros(

a nastpnie wewntrz ptli zbudowa odpowiednie macierze elementowe na podstawie
wzorw (9), (10) i zagregowa je do macierzy globalnych (funkcja assem).

W dalszej czci programu, oprcz wymienionych poprzednio funkcji, wykorzysta do
oblicze MES (z przybornika Calfem) funkcj eigen, rozwizujc uoglniony problem
wasny.
Skadnia funkcji: [L, Q]=eigen(K,M,bc) (L - wartoci wasne, Q - wektory wasne (w
kolumnach), K - globalna macierz sztywnoci, M - globalna macierz mas, bc - wektor
zawierajcy numery zablokowanych stopni swobody czyli pierwsza kolumna macierzy bc dla
oblicze statycznych).

Dla macierzy penej:

[L,Q] = eigen(
Czest =

i dla macierzy diagonalnej

[L1,Q1] = eigen(
Czest1 =

Zmienne Czest i Czes1 oznaczaj czstotliwoci drga wasnych, ktre naley wyznaczy ze
wzoru (12).
Schemat czci programu rysujcej postacie drga
Sawomir Milewski

Metody komputerowe - laboratorium - instrukcja wykonania wiczenia 1
figure(
liczba_postaci = min([4 N]);
for i = % ptla po liczbie postaci drga
subplot(2,2,i);
title(['f_M_E_S = ' num2str(Czest(i),3) ...
', f_d_i_a_g = ' num2str(Czest1(i),3)]);
hold on
plot( % wykres postaci drga wasnych Q dla macierzy Mkons
plot( % wykres postaci drga wasnych Q1 dla macierzy Mdiag
legend('kons','diag');
end

Przykadowe rozwizanie - porwnanie czterech pierwszych postaci drga wasnych
0 0.5 1
-1
-0.5
0
0.5
1
f
MES
= 2.15e+03, f
diag
= 2.15e+03


kons
diag
0 0.5 1
-1
-0.5
0
0.5
1
f
MES
= 6.51e+03, f
diag
= 6.39e+03


kons
diag
0 0.5 1
-1
-0.5
0
0.5
1
f
MES
= 1.1e+04, f
diag
= 1.05e+04


kons
diag
0 0.5 1
-1
-0.5
0
0.5
1
f
MES
= 1.58e+04, f
diag
= 1.43e+04


kons
diag

wiczenie dodatkowe
Program w obecnej formie (dla statyki i drga swobodnych) rozszerzy o interpolacj
kwadratow w elemencie skoczonym za pomoc hierarchicznych funkcji ksztatu
1
( ) N x ,
2
( ) N x i
3
( ) N x , gdzie
1
( ) N x i
2
( ) N x - liniowe funkcje ksztatu z poprzedniego wariantu, a
3
( ) N x - "bbelkowa" kwadratowa funkcja ksztatu:

( ) ( )
3 1 2
( ) N x x x x x = (13)

Aproksymacja w elemencie wyglda nastpujco (
3
e
- dodatkowy stopie swobody):

1 1 2 2 3 3
( ) ( ) ( ) ( )
e e e
u x N x Q N x Q N x = + + (14)


Sawomir Milewski

Metody komputerowe - laboratorium - instrukcja wykonania wiczenia 1
3 1 2
1 2 3
( ) ( ) ( )
( )
e e e
dN x dN x dN x
s x E A Q Q
dx dx dx

| |
= + +
|
\
(15)

el = i
i i+1
1
( ) N x
2
( ) N x
x
1
x
2
x
h
1
1
3
( ) N x



Zmiany w algorytmie sprowadzaj si do wikszych rozmiarw macierzy ([ ] 3 3 ) i wektorw
elementowych ([ ] 1 3 lub [ ] 3 1 ). Natomiast na poziomie caego ukadu konieczne jest
wprowadzenie dodatkowego matematycznego (bez interpretacji fizycznej) stopnia swobody
w rodku kadego z elementw.

1 2 3 Nss Nss-2
1 2

N
1
Q
3
Q
5
Q
2 Nss
Q
Nss
Q
4 5
Nss-1


Uwaga! Prosz dziaajcy program dla liniowej interpolacji zapisa, a rozszerzenia
wprowadza na jego kopii, tak, aby wersja oryginalna bya rwnie dostpna.

wiczenie 1c: Dynamika rozciganego prta - drgania wymuszone
Prosz przyj obcienie zalene od czasu i wykorzysta metod Newmarka do wyznaczenia
osiowych przemieszcze w ustalonej chwili czasu. Narysowa histori przemieszczenia w
punkcie x L = . Obliczenia prosz wykona dla wariantu aproksymacji z liniowymi funkcjami
ksztatu.

Rwnanie drga wymuszonych swobodnych (bez tumienia)

( ) t + = Mu Ku f (16)

gdzie
- ( , ) x t = u u - odpowied ukadu,
- ( ) t = f f - funkcja obcienia,
- M - macierz mas,
- K - macierz sztywnoci.

Metoda Newmarka:
Sawomir Milewski

Metody komputerowe - laboratorium - instrukcja wykonania wiczenia 1
- dane wielkoci pocztkowe:
0
u ,
0 0
= v u , ( )
1
0 0 0 0

= = a u M f Ku
- warto przyspieszenia:

( ) ( )
1
2
1 1
1
2
k k k k
t t

+ +
| |
= +
|
\
a M + K f K u v (17)

- warto prdkoci:

1 1 k k k
t
+ +
= + v v a (18)

- warto przemieszczenia:

2
1 1
1
2
k k k k
t t
+ +
= + + u u v a (19)

Prosz przyj nastpujce wielkoci:
- czstotliwo obcienia f : 0.8 najmniejszej czstotliwoci dla drga wasnych
obliczonej za pomoc MES dla penej macierzy mas,
- czsto obcienia wg wzoru (12),
- obcienie dynamiczne wg wzoru ( ) ( ) sin
f
t t = f A , gdzie amplituda obcienia
f
= A F - wektor obcienia statycznego,
- czas pocztku procesu
0
0 t = ,
- czas koca procesu
1
0.1 t = ,
- liczba krokw czasowych 500
t
N = ,
- dugo kroku czasowego wg wzoru
1 0
1
t
t t
t
N


Uwaga! W przypadku niestabilnych rezultatw, odpowiednio zmniejszy czas kocowy lub
zwikszy liczb krokw czasowych.

Schemat ostatniej czci programu:

%% DRGANIA WYMUSZONE - METODA NEWMARKA

% uwzgldnienie w macierzach mas i sztywnoci kin.war.brzeg.
Mkons(1,:) = []; % usunicie z macierzy mas pierwszego wiersza
Mkons( % usunicie z macierzy mas pierwszej kolumny
K( % usunicie z macierzy sztywnoci pierwszego wiersza
K( % usunicie z macierzy sztywnoci pierwszej kolumny

% definicja obcienia
Czest_obc = % czstotliwo obcienia
W_obc = % czsto obcienia
Amp_obc = F( % elementy wektora obcienia od 2 do Nss
t_0 = % czas pocztku procesu
t_1 = % czas koca procesu

% dyskretyzacja osi czasu
Nt = % liczba krokw czasowych
Sawomir Milewski

Metody komputerowe - laboratorium - instrukcja wykonania wiczenia 1
dt = % dugo kroku czasowego

% metoda Newmarka
Q = zeros(Nss-1,1); % pocztkowe przemieszczenia wzw od 2 do Nss
Qv = zeros( % pocztkowe prdkoci wzw od 2 do Nss
Qa = zeros( % pocztkowe przyspieszenia wzw od 2 do Nss
Q_hist = zeros( % historia N przemieszcze wzw od 1 do Nss
q_hist = zeros( % historia przemieszczenia wza x = L
t_hist = zeros( % historia zmian czasu


t_hist(1) = t_0;
q_hist(1) = Q(Nss-1);
Q_hist(1,:) = [0; Q]';
czas = t_0;

for i = % ptla po krokach czasowych od 2 do Nt
czas = % czas w nastpnym kroku
Qa_pop = Qa;
Qv_pop = Qv;
Q_pop = Q;
Qa = % nowa warto przyspieszenia
Qv = % nowa warto prdkoci
Q = % nowa warto przemieszczenia

t_hist(i) = % zapamitanie aktualnego czasu
q_hist(i) = % zapamitanie przemieszczenia ostatniego wza
Q_hist(i,:) = [0;Q]'; % zapamitanie przemieszcze wszystkich wzw
end

%animacja drgajcego prta
figure(4);
title('
xlabel('
ylabel('
for i = % ptla po krokach czasowych od 1 do Nt
plot(% wykres przemieszczenia wzowego w kolejnej chwili czasu (na osi
x: X, na osi y: i-ta kolumna macierzy Q
pause(0.001)
end

% wykres historii przemieszczenia ostatniego wza
figure(5);
plot(% wykres historii przemieszcze ostatniego wza
hold on
grid on
title('
legend('
xlabel('
ylabel('

You might also like