16.01.2015 Views

Mathcad - krata3t

Mathcad - krata3t

Mathcad - krata3t

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Statyka kratownicy stalowej o 3 różnych przekrojach prętów obciążonej temperaturą<br />

ORIGIN := 1 - Ustawienie sposobu numeracji wierszy i kolumn macierzy<br />

E<br />

:= 69GPa - Moduł Younga aluminium<br />

α t := 5 ⋅ 10 − 5 - Współczynnik rozszerzalności cieplnej aluminium<br />

A1 := π ⋅ 4 ⋅ ( 50 − 4)<br />

mm 2 - Pole powierzchni przekroju elementów 1...3<br />

A2 := π ⋅ 3 ⋅ ( 40 − 3)<br />

mm 2 - Pole powierzchni przekroju elementów 4...8<br />

Parametry pomocnicze:<br />

Lss := 2 - Liczba stopni swobody węzła<br />

Le := 8 - Liczba elementów<br />

Lw := 5 - Liczba węzłów<br />

Lr<br />

:= Lss ⋅ Lw - Liczba równań<br />

K oLr := 0<br />

, Lr<br />

Deklaracja globalnej macierzy sztywności i wypełnienie jej zerami<br />

pT oLr := 0 Deklaracja globalnego wektora obciążeń termicznych i wypełnienie go zerami


Funkcja LBM - Lokuj Blok Macierzy, używana przy agregacji macierzy sztywności i wektora obciążeń termicznych<br />

LBM ( A , B , w , k)<br />

:=<br />

for i ∈ 0 .. rows( B) − 1<br />

for j ∈ 0 .. cols( B) − 1<br />

A w+ i , k+<br />

j ← B 1+ i , 1+<br />

j<br />

A


Współrzędne węzłów kratownicy<br />

X<br />

0<br />

3<br />

5<br />

7<br />

10<br />

⎛<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎝<br />

⎞<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎠<br />

m<br />

:= Y<br />

0<br />

2<br />

0<br />

3<br />

0<br />

⎛<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎝<br />

⎞<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎠<br />

m<br />

:=<br />

Numery węzłów początkowych (Wp) i<br />

końcowych (Wk) elementów<br />

Przyrost temperatury elementów<br />

Przekroje elementów<br />

Wp<br />

1<br />

2<br />

4<br />

1<br />

3<br />

2<br />

2<br />

3<br />

⎛<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎝<br />

⎞<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎠<br />

:= Wk<br />

2<br />

4<br />

5<br />

3<br />

5<br />

3<br />

5<br />

4<br />

⎛<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎝<br />

⎞<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎠<br />

:=<br />

T<br />

0<br />

0<br />

0<br />

0<br />

0<br />

0<br />

50<br />

0<br />

⎛<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎝<br />

⎞<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎠<br />

:= A<br />

A1<br />

A1<br />

A1<br />

A2<br />

A2<br />

A2<br />

A2<br />

A2<br />

⎛<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎝<br />

⎞<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎠<br />

:=


e := 1 .. Le Pętla po wszystkich elementach kratownicy<br />

Rysunek elementów kratownicy pozwala kontrolować poprawność wprowadzonych danych<br />

⎡<br />

X Y<br />

( Wpe )<br />

Ex<br />

⎢<br />

( Wpe )<br />

e := Ey<br />

⎢<br />

e :=<br />

⎢ ⎥ Ex, Ey - współrzędne węzłów elementów kratownicy<br />

X ⎢Y Wke<br />

Wke<br />

Ey 1<br />

⎣<br />

( )<br />

⎤ ⎥<br />

⎥<br />

⎦<br />

4<br />

⎡<br />

⎣<br />

( )<br />

⎤<br />

⎥<br />

⎦<br />

Ey 2<br />

3<br />

Ey 3<br />

Ey 4<br />

2<br />

Ey 5<br />

Ey 6<br />

Ey 7<br />

1<br />

− 1 0 1 2 3 4 5 6 7 8 9 10 11<br />

Ey 8<br />

− 1<br />

Ex 1 , Ex 2 , Ex 3 , Ex 4 , Ex 5 , Ex 6 , Ex 7 , Ex 8


Macierze sztywności elementów kratownicy<br />

Lx e := X Wke<br />

− X Wpe<br />

Ly e := Y Wke<br />

− Y Wpe<br />

L e := Lx e<br />

( )<br />

( )<br />

( )<br />

( )<br />

( ) 2 + ( Ly e ) 2<br />

1<br />

1<br />

1<br />

1<br />

2<br />

3.000<br />

4.000<br />

1<br />

2<br />

2.000<br />

1.000<br />

1<br />

2<br />

3.606<br />

4.123<br />

Lx<br />

3<br />

4<br />

3.000<br />

= m<br />

Ly<br />

5.000<br />

5 5.000<br />

6 2.000<br />

3<br />

4<br />

-3.000<br />

= m<br />

L<br />

0.000<br />

5 0.000<br />

6 -2.000<br />

=<br />

3<br />

4<br />

5<br />

6<br />

4.243<br />

5.000<br />

5.000<br />

2.828<br />

m<br />

J e :=<br />

⎡<br />

( ) 2<br />

E ⋅ A e Lx<br />

⎢ e<br />

( L e ) 3 ⋅<br />

⎢<br />

Lx e ⋅ Ly e<br />

⎣<br />

Lx e ⋅ Ly e<br />

( Ly e ) 2<br />

⎤<br />

⎥<br />

⎥<br />

⎦<br />

7<br />

7.000<br />

7<br />

-2.000<br />

7<br />

7.280<br />

8<br />

2.000<br />

8<br />

3.000<br />

8<br />

3.606<br />

Mimo, że nie jest to potrzebne w dalczych obliczeniach, można pokazać bloki J macierzy sztywności wszystkich elementów<br />

⎛<br />

7658.5 5105.7<br />

9104.7 2276.2 kN<br />

4700.6<br />

J 1 = ⎜<br />

⋅<br />

J 2 = ⎜<br />

⎟ ⋅<br />

J 3 = ⎜<br />

5105.7 3403.8 m<br />

2276.2 569.0 m<br />

−4700.6<br />

⎝<br />

⎞ ⎟⎠<br />

kN<br />

⎛<br />

⎝<br />

⎞<br />

⎠<br />

⎛<br />

⎝<br />

−4700.6<br />

4700.6<br />

⎞<br />

⎟<br />

⎠<br />

⋅<br />

kN<br />

m<br />

⎛<br />

4812.3 0.0<br />

4812.3 0.0 kN<br />

4253.5<br />

J 4 = ⎜<br />

⋅<br />

J 5 = ⎜<br />

⎟ ⋅<br />

J 6 = ⎜<br />

0.0 0.0 m<br />

0.0 0.0 m<br />

−4253.5<br />

⎝<br />

⎞ ⎟⎠<br />

kN<br />

⎛<br />

⎝<br />

⎞<br />

⎠<br />

⎛<br />

⎝<br />

−4253.5<br />

4253.5<br />

⎞<br />

⎟<br />

⎠<br />

⋅<br />

kN<br />

m<br />

⎛<br />

3055.7 −873.0<br />

2053.4<br />

J 7 = ⎜<br />

⋅<br />

J 8 = ⎜<br />

−873.0 249.4 m<br />

3080.1<br />

⎝<br />

⎞ ⎟⎠<br />

kN<br />

⎛<br />

⎝<br />

3080.1<br />

4620.1<br />

⎞<br />

⎟<br />

⎠<br />

⋅<br />

kN<br />

m


Agregacja, czyli dodawanie bloków macierzy sztywności elementów do macierzy globalnej<br />

n e := Lss⋅ Wp e − 1 k e Lss⋅ Wk e − 1<br />

:=


Globalny wektor sił węzłowych<br />

Rzutowanie siły w węźle 6 na osie globalnego układu współrzędnych<br />

Fx 4 := −6kN⋅ sin ( 32deg)<br />

= −3.180⋅<br />

kN<br />

p<br />

:=<br />

⎛<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎜<br />

⎝<br />

0<br />

0<br />

0<br />

0<br />

0<br />

0<br />

Fx 4<br />

Fy 4<br />

0<br />

0<br />

⎞<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎟<br />

⎠<br />

p =<br />

1<br />

2<br />

3<br />

4<br />

5<br />

6<br />

7<br />

8<br />

9<br />

10<br />

1<br />

0.000<br />

0.000<br />

0.000<br />

0.000<br />

0.000<br />

0.000<br />

-3.180<br />

-5.088<br />

0.000<br />

0.000<br />

⋅ kN<br />

Fy 4 := −6kN⋅ cos ( 32deg)<br />

= −5.088⋅<br />

kN


- siły węzłowe wywołane temperaturą w elemencie "e"<br />

t e :=<br />

α t ⋅ T e<br />

⋅<br />

E ⋅ A e<br />

L e<br />

⎛<br />

⎜<br />

⎜<br />

⎝<br />

Lx e<br />

Ly e<br />

⎞<br />

⎟<br />

⎟<br />

⎠<br />

Agregacja wektora obciążeń termicznych pT (metodą podobną do stosowanej w agregacji macierzy sztywności)<br />

pT :=<br />

LBM ( pT o , t e , n e , 1 ) − LBM pT o , t e , k e ,<br />

∑ ( ( 1)<br />

)<br />

e<br />

pT T =<br />

1 2 3 4 5 6 7 8 9 10<br />

1 0.000 0.000 57.839 -16.525 0.000 0.000 0.000 0.000 -57.839 16.525<br />

⋅ kN


Kopiowanie Macierzy K i wektora p przed modyfikacją uwzględniającą warunki brzegowe<br />

K o := K p o := p − pT<br />

Uwzględnienie warunków brzegowych<br />

Lwb := 5 - liczba warunków brzegowych<br />

s<br />

⎛<br />

⎜<br />

1<br />

⎜<br />

2<br />

⎟<br />

:= - globalne numery przemieszczeń węzłów<br />

⎜ 9 blokowanych na podporach<br />

⎜<br />

⎝<br />

10<br />

⎞<br />

⎟<br />

⎟<br />

⎟<br />

⎠<br />

i := 1 .. Lr j := 1 .. rows( s)<br />

K osj<br />

, i<br />

K oi<br />

, sj<br />

:= 0 zerowanie wierszy<br />

:= 0 zerowanie kolumn<br />

K osj<br />

, s j<br />

:=<br />

1 kN<br />

m<br />

wstawianie jedności na przekątną<br />

macierzy sztywności<br />

p o<br />

( sj )<br />

:= 0 zerowanie wartości w wektorze "prawej strony"


1 2 3 4 5 6 7 8 9 10<br />

1<br />

2<br />

3<br />

4<br />

K o =<br />

5<br />

1.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0<br />

0.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0<br />

0.0 0.0 24072.3 2255.3 -4253.5 4253.5 -9104.7 -2276.2 0.0 0.0<br />

0.0 0.0 2255.3 8475.8 4253.5 -4253.5 -2276.2 -569.0 0.0 0.0<br />

0.0 0.0 -4253.5 4253.5 15931.5 -1173.5 -2053.4 -3080.1 0.0 0.0<br />

6<br />

7<br />

8<br />

9<br />

10<br />

0.0<br />

0.0<br />

0.0<br />

0.0<br />

0.0<br />

0.0<br />

0.0<br />

0.0<br />

0.0<br />

0.0<br />

4253.5<br />

-9104.7<br />

-2276.2<br />

0.0<br />

0.0<br />

-4253.5<br />

-2276.2<br />

-569.0<br />

0.0<br />

0.0<br />

-1173.5<br />

-2053.4<br />

-3080.1<br />

0.0<br />

0.0<br />

8873.6<br />

-3080.1<br />

-4620.1<br />

0.0<br />

0.0<br />

-3080.1<br />

15858.6<br />

655.6<br />

0.0<br />

0.0<br />

-4620.1<br />

655.6<br />

9889.7<br />

0.0<br />

0.0<br />

0.0<br />

0.0<br />

0.0<br />

1.0<br />

0.0<br />

0.0<br />

0.0<br />

0.0<br />

0.0<br />

1.0<br />

⋅<br />

kN<br />

m<br />

K o ⋅ 1<br />

m<br />

kN<br />

= 7.548 × 10 23 - wyznacznik macierzy K o jest zawsze większy od zera, |K o |> 0<br />

T<br />

p<br />

1 2 3 4 5 6 7 8 9 10<br />

o =<br />

1 0.000 0.000 -57.839 16.525 0.000 0.000 -3.180 -5.088 0.000 0.000<br />

⋅ kN


( )<br />

Rozwiązanie układu równań: u := lsolve K o , p o<br />

u - wektor przemieszczeń węzłowych<br />

u T =<br />

1 2 3 4 5 6 7 8 9 10<br />

1 0.0000 0.0000 -4.9655 6.7195 -2.9459 4.7396 -1.5530 0.1290 0.0000 0.0000<br />

⋅ mm<br />

Rysunek przemieszczeń kratownicy pozwala kontrolować poprawność otrzymanych wyników<br />

skala := 100<br />

⎡<br />

u<br />

( 2 ⋅ Wpe −1)<br />

Dx e := Ex e + skala⋅<br />

⎢ ⎥<br />

Dy<br />

⎢<br />

e := Ey e + skala⋅<br />

u 2 ⋅ Wke −1<br />

⎣<br />

( )<br />

⎤<br />

⎥<br />

⎦<br />

⎡<br />

⎢<br />

⎢<br />

⎣<br />

u<br />

( 2 ⋅ Wpe )<br />

u<br />

( 2 ⋅ Wke )<br />

⎤<br />

⎥<br />

⎥<br />


4<br />

Ey 1<br />

Ey 2<br />

Ey 3<br />

Ey 4<br />

3<br />

Ey 5<br />

Ey 6<br />

Ey 7<br />

Ey 8<br />

2<br />

Dy 1<br />

Dy 2<br />

Dy 3<br />

Dy 4<br />

1<br />

Dy 5<br />

Dy 6<br />

Dy 7<br />

− 1<br />

0 1 2 3 4 5 6 7 8 9 10<br />

Dy 8<br />

− 1<br />

Ex 1 , Ex 2 , Ex 3 , Ex 4 , Ex 5 , Ex 6 , Ex 7 , Ex 8 , Dx 1 , Dx 2 , Dx 3 , Dx 4 , Dx 5 , Dx 6 , Dx 7 , Dx 8


Obliczenie reakcji podpór<br />

r<br />

:=<br />

K ⋅ u<br />

− p + pT<br />

r T =<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14<br />

1 17.897 2.480 -0.000 -0.000 -0.000 0.000 0.000 -0.000 -14.717 2.608<br />

⋅ kN<br />

Obliczenie sił wewnętrznych<br />

N e :=<br />

E ⋅ A e<br />

( L e ) 2 ⋅ ⎡ u 2 ⋅ Wke<br />

− u<br />

⎣ −1<br />

2 ⋅ Wpe −1<br />

( ) ⋅ Lx e<br />

+ ( u 2 ⋅ Wke<br />

− u 2 ⋅ Wpe ) ⋅ Ly e<br />

⎤<br />

⎦<br />

−<br />

α t ⋅ T e<br />

⋅ E ⋅ A e<br />

30<br />

N =<br />

1<br />

2<br />

3<br />

4<br />

5<br />

6<br />

7<br />

8<br />

1<br />

-4.471<br />

16.562<br />

11.181<br />

-14.176<br />

14.176<br />

24.058<br />

-38.273<br />

-20.445<br />

⋅ kN<br />

N e<br />

kN<br />

20<br />

10<br />

0<br />

− 10<br />

− 20<br />

− 30<br />

− 40<br />

0 1 2 3 4 5 6 7 8 9<br />

e


Obliczenie naprężeń<br />

σ e :=<br />

( ) ⋅ Lx e<br />

E<br />

( L e ) 2 ⋅ ⎡ u 2 ⋅ Wke<br />

− u<br />

⎣ −1<br />

2 ⋅ Wpe −1<br />

+ ( u 2 ⋅ Wke<br />

− u 2 ⋅ Wpe ) ⋅ Ly e<br />

⎤<br />

⎦<br />

−<br />

α t ⋅ T e<br />

⋅ E<br />

80<br />

1<br />

60<br />

σ =<br />

1<br />

2<br />

3<br />

4<br />

5<br />

6<br />

7<br />

8<br />

-7.735<br />

28.652<br />

19.343<br />

-40.653<br />

40.653<br />

68.990<br />

-109.753<br />

-58.630<br />

⋅ MPa<br />

σ e<br />

MPa<br />

40<br />

20<br />

0<br />

− 20<br />

− 40<br />

− 60<br />

− 80<br />

− 100<br />

− 120<br />

0 1 2 3 4 5 6 7 8 9<br />

e

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!