You are on page 1of 10

Ivica Koar

Graevinski fakultet Sveuilita u Rijeci

1 Programsko okruenje za modeliranje Mathcad


1.1 Modeliranje
Programsko okruenje Mathcad moemo, u prvom redu, smatrati alatom za ininjersko
modeliranje putem raznih matematikih postupaka. Ininjersko modeliranje je opisivanje
stvarnih pojava na nain koji nam omoguuje predikciju dogaaja vezanih uz pojavu koju
razmatramo. Najei predmet naih razmatranja su ininjerske konstrukcije/tvorevine, a
metode idu od ispitivanja umanjenih modela u laboratoriju, preko ispitivanja/mjerenja na
stvarnoj konstrukciji, pa do simulacija na raunalnim modelima. U ovim predavanjima
neemo se baviti ispitivanjem konstrukcija, nego samo modelima na raunalu. Metode koje
se pri tome koriste razliite su; najee su to fizikalni principi iskazani putem raznih
matematikih modela, ali mogu biti i modeli bazirani na metodama umjetne inteligencije
(ekspertni sustavi, baze znanja, genetski algoritmi) ili nekim drugim principima
(stohastiki modeli, Monte-Carlo metoda).
Modeli mogu vie ili manje odgovara stvarnoj pojavi. Neki problemi se mogu vrlo tono
modelirati, na pr. geometrijski problemi tipa raunanje volumena nekakve graevine,
odnosno, openito problemi opisani linearnim modelima. Problemi koje opisujemo
nelinearnim modelima su u pravilu sloeniji, na pr. problemi elastinih i neelastinih tijela
pri velikim pomacima, meudjelovanje tijela i fluida i mnogi drugi (linearne zakonitosti su
u prirodi rijetke).
Mathcad kao programsko okruenje omoguuje nam postavljanje i rjeavanje razliitih
matematikih izraza i grafiki prikaz veliina u 2 i 3 dimenzije (ak i u 4 jer moemo raditi
animacije). Jedinstveno je svojstvo Mathcada da se matematike operacije, postupci
rjeavanja i grafiki prikazi slobodno mogu slagati po ekranu/papiru, tj. postupak rada
maksimalno mogue slijedi postupak rada olovkom na papiru. Rad u Mathcadu moe biti
numeriki (sve nepoznanice poprimaju brojane vrijednosti i rezultat je takoer izraen
preko brojki) i simboliki (nepoznanice zadravaju svoje simboliko ime i rezultat je
izraen preko simbola).
1.2 Neke osnovne znaajke
U pravilu se matematike operacije u Mathcadu zadaju preko odgovarajuih menija,
pisanje operatora putem tipkovnice uglavnom ne daje eljene rezultate (Mathcad je
interpretersko okruenje i svaka komanda/operacija ima svoj token; nema meutim
parser za tekst pa se naredbe ne mogu zadavati na taj nain).
Tako treba pripaziti da postoje tri vrste znaka jednako:
Zadavanje brojane vrijednosti nepoznanice
:=

a := 1

Prikaz brojane vrijednosti nepoznanice


=

a=1

2+ 3=5

Logiko jednako usporedba vrijednosti nepoznanica


a

1=1

2=0

Nepoznanice/varijable sastoje se od slova i brojeva, a mogu imati i indekse (indeksi tipa


superscript nisu doputeni, eksponent uvijek oznaava operaciju potenciranja). Budui da
Mathcad moe raditi s nizovima (vektorima i matricama) potrebno je razlikovati indeks
___________________________________________________________________________________
rujan 2009
1
OZR

Ivica Koar

Graevinski fakultet Sveuilita u Rijeci

tipa subscript koji je sastavni dio imena (znak .) i indeksa koji oznaava komponentu niza
(znak [).
ap :=

a =
p

Vizualno su ta dva indeksa vrlo slina (znakovi . i [ ne vide se na ekranu ili ispisu), ali im
je znaenje sasvim razliito!
1.3 Matrina algebra
Za potrebe rjeavanja problema u linearnim prostorima definirane su operacije nad
matricama. Ovdje se prikazuju samo osnovne matrine operacije:
transponiranje
mnoenje matrica
invertiranje
determinanta matrice
Te se operacije u pravilu raunski intenzivne i izvode se na raunalu a ovdje su prikazane u
Mathcad okruenju:
4
3
A:=
2

3 2 1
3 2 1
2 2 1

1 1 1

20
19
B:=
16

10

Transponirana matrica se dobije kombinacijom tipki Alt !:


4
3
A T :=
2

3 2 1
3 2 1
2 2 1

1 1 1

Invertirana matrica se dobije ako za eksponent napiemo -1:

1 1 0 0
1 2 1 0

A 1: =
0 1 2 1

0 0 1 2
a determinanta ako napiemo znak | (naalost, to je znak za malo slovo na novim
hrvatskim tipkovnicama, tako da se korisnik ponekad moe zbuniti):

A =1
Rjeenje sistema jednadbi se dobiva mnoenjem vektora desne strane inverznom
matricom (naravno, pravilnom organizacijom nepoznanica tako je mogue dobiti vie
stupaca rjeenja istovremeno):
___________________________________________________________________________________
rujan 2009
2
OZR

Ivica Koar

Graevinski fakultet Sveuilita u Rijeci

1
2
X =
3

4

X : = A 1 * B

U MathCAD-u moemo razlikovati izmeu skalarnog i vektorskog produkta dvaju vektora


(u prvom sluaju rezultat je skalar, a u drugom vektor):

1 3
2 * 2 = 10

3 1

1 3
2 2 =

3 1

4
8

4

Znak za skalarni produkt je obino mnoenje, a za vektorski produkt to je kombinacija


tipki Alt * (ili preko menija matrix toolbar).
Svojstvene vrijednosti matrice dobiju se funkcijom eigenvals

0.283
0.426
eigenvals ( A ) =
1
8.291

Svojstveni vektori mogu se dobiti funkcijama eigenvec i eigenvecs

0.228
0.577
eigenvecs ( A ) =
0.657
0.429

Kontrola

0.429 0.577 0.657


0.577

0.577

0.228 0.577 0.429


0.657

0.577 0.228

15
0.283 0
0
1.057 10

15

1
0
0.426
0
2.136 10
A =

0
1
0
0

15
0 1.578 10
8.291
0

:= eigenvecs ( A )

1.4 Neke osnovne funkcije


Razlikujemo definirane funkcije i korisnike funkcije. Definirane funkcije mogu se pronai
u meniju insert function (i drugdje). Na pr.:
= 1

2
Korisnik svoje funkcije zadaje preko imena i liste ulaznih varijabli, a vrijednost funkcije
pridodaje nekoj varijabli.
cos ( 0) = 1

f( x) := x

sin

f( 2) = 4

___________________________________________________________________________________
rujan 2009
3
OZR

Ivica Koar

Graevinski fakultet Sveuilita u Rijeci


x

g ( x) := f( x) dx

g ( 1) = 0.333

g ( 2) = 2.667

1.5 Grafiki prikaz


Razlikujemo grafiki prikaz u 2 i 3 dimenzije i animaciju. Svaki od navedenih prikaza ima
razliite mogunosti ureivanja grafike: izbor linija (pune, isprekidane, sa ili bez toaka),
boja, palete, prikaza (ploha, izo-linije, stupci). Argumenti za crtanje mogu biti skalari,
vektori i matrice (funkcije se interno prije crtanja pretvore u vektore).
Primjer grafikog prikaza
u 2 dimenzije:

100

f( x)

100

50

10
10

0
x

10
10

Primjer grafikog prikaza u


3 dimenzije:

Primjer animacije:

___________________________________________________________________________________
rujan 2009
4
OZR

Ivica Koar

Graevinski fakultet Sveuilita u Rijeci

1.6 Uvod u programiranje


Mathcad omoguuje izradu raunalnih programa unutar svog okruenja (to znai da ne
proizvodi samostojee programe nego se oni mogu pokrenuti samo unutar Mathcada).
Program se slae tako da se definicija nepoznanice proiri dodavanjem novih linija. U te se
linije upisuju programski simboli (iz menija) za izvoenje logikih kontrola, petlje,
pridodavanje vrijednosti, a u svemu se mogu koristiti funkcije (predefinirane ili vlastite).
Meni programskih simbola koji je na raspolaganju:
Programming_____________________________________________________________
Add Line
if
otherwise
for

while
break
continue
return
on error
Primjeri jednostavnih programa:
T := 427.0

R := 390

T
:= asin

2R

180

v :=

= 0.579

= 33.191
T

v = 326.371

2 tan( )

t ( L) :=

T2

T
L
2

R2

T2 + v

R1 R R2

T2

2v

atan
R1

cos ( )
t ( 0) = 5.981 10

T
t = 63.629
2

L := 10 , 20 .. 210

14
kontrola :

T
t + v = 390
2
L =

t ( L) =

10
20
30
40

5.6
11
16.2
21.1

50
60
70
80
90
100
110

25.7
30.1
34.3
38.2
41.8
45.1
48.2

120
130
140
150
160
170

51
53.6
55.8
57.8
59.5
60.9

180
190
200
210

62
62.8
63.4
63.6

T - duljina tangente

R - radijus

L - odmak od lijevog ruba tangente

- kut
- kut od zadanog L

t - visina od tangente do kruznog luka

___________________________________________________________________________________
rujan 2009
5
OZR

Ivica Koar

Graevinski fakultet Sveuilita u Rijeci

1.7 Simboliko raunanje


Mathcad moe, osim s brojevnim vrijednostima, raditi i sa simbolikim vrijednostima
nepoznanica.
2

( a + b) (1 + b)

d
f( x) 2 x
dx

( a + b ) expand 1 + 2 b + b

2
2

( a + b)

f( x) 2

dx

a + 2 a b + b

1 3
f( x) dx x
3

1.8 Rjeavanje jednadbi


Mathcad moe rjeavati linearne, nelinearne i diferencijalne jednadbe, sisteme
diferencijalnih jednadbi i parcijalne diferencijalne jednadbe.
E0 := 1000

f( t , y ) :=

a := 0.001

1
0

0 := 0.005

0 := 500

y 0

(0 y) E0 exp

t0 := 0

y0 := 0

N := 100

t1 := 25

Given
d
y(t)
dt

f( t , y ( t ) )

y ( t0)

y0
3

y := Odesolve ( t , t1)

y ( t1) = 5 10

0.006

0.004
y ( t)
0.002

10

15

20

25

Numeriko rjeavanje diferencijalnih jednadbi i sistema diferencijalnih jednadbi predmet


je posebnog poglavlja.
___________________________________________________________________________________
rujan 2009
6
OZR

Ivica Koar

Graevinski fakultet Sveuilita u Rijeci

1.9 Rad s podacima


Mathcad moe obraivati podatke, na pr. podatke dobivene mjerenjima. Podaci se uitaju
iz vanjskog izvora i pridodijele nekoj nepoznanici i dalje se s njima radi kao s bilo kojim
drugim nepoznanicama.
ip := 1 .. 2
Tocke

ip

Put := "D:\WinMCad\Danila\manning\"

:= READPRN concat Put , Nazivi

ip

))

"Profil1.kor"

"Profil1A.kor"

nizvodno
uzvodno

Nazivi :=

poprecni presjek profila


15

14

13

12

11

10

10

15

20

25

30

35

40

45

profil 1
profil 1A

Vie podataka obraeno i sklopljeno u 3D sliku:

Kn

___________________________________________________________________________________
rujan 2009
7
OZR

50

Ivica Koar

Graevinski fakultet Sveuilita u Rijeci

2 Primjeri Mathcad projekata


2.1

Savijanje grede na beskonanom elastinom tlu

EI

4
4

y q

=0

dx

KfL :=

1
3 x

16 2

2 1

B aL

KfD :=

1
3 x

1 2

2 16

B aD

2.2

2 .10

4 .10

6 .10

8 .10

0.6

0.4

0.2

0.2

0.4

0.6

0.8

1.2

1.4

1.6

Grafiki prikaz implicitno zadanih funkcija


neka su zadane funkcije:

) + x2 + y2 1.6

F( x, y ) := cos 0.4 y + x

G( x, y ) := 1.5 x

=0

0.36

=0

1.2

0.9

0.6

0.3

0.3

0.6

0.9

1.2

1.6

1.2

0.8

0.4

0.4

0.8

1.2

___________________________________________________________________________________
rujan 2009
8
OZR

1.6 .

Ivica Koar

2.3

Graevinski fakultet Sveuilita u Rijeci

Torzija presjeka
funkcija naprezanja

naprezanja

xz =

yz =

yz( x, y ) :=

Graf1

i, j

16 G a
2

k 1

k y

cosh

1
2 a
k x
2

( 1) 1
sin
k b 2 a
k2

cosh

2 a

( i j)

:= yz x , y

kN

yz( a , 0) = 58625.9

Graf

2.4

Teenje u kanalu
2

E( h ) := h +

2 g A ( h )

dE( h ) := 1 +

2 g

A(h)

1+

2 g

2
A ( h)

Energija - dubina

A ( h)

1
A ( h)

dA ( h )

kriticna dubina

100

5
4
3
2
dEi

Ei

1
2
3
4
10

10 10.5 11 11.5 12 12.5 13 13.5 14 14.5 15


hi

11

11.5

12

12.5

13

13.5

hi , hii

___________________________________________________________________________________
rujan 2009
9
OZR

Ivica Koar

2.5

Graevinski fakultet Sveuilita u Rijeci

Voenje topline
rjesava se jednadzba:


kd
x x

blok za rjesavanje

Given
wt( x, t )

a wxx( x, t)

diferencijalna jednadzba koja se rjesava


(parabolicna)

rubni i pocetni uvjeti


w( x, 0)

0.0

w( 0 , t)

pocetna temperatura tijela

w Lu , t

0 0
, t ,
Lu Tu

w := Pdesolve w , x,

i := w( x i, 5)

temperaturni rubni uvjeti na


krajevima tijela (Dirichletovi)

1.0

funkcija rjesenja

rjesenje u trenutku kad je proslo 5 sekundi

Xi
0.5

0.2

0.4

0.6

0.8

x i

2.6

Odreivanje kontakta elastinih tijela


5

4
y1 d

yd
y2 d

0
0.01

3
2

x1 d , xd, x2 d

6
5.522

___________________________________________________________________________________
rujan 2009
10
OZR

You might also like