prof. miodrag b. jovanovi´c metoda konaˇcnih elemenatamjovanovic/nm/baznamke.pdf · pokazuje...
TRANSCRIPT
U N I V E R Z I T E T U B E O G R A D U
Numericke metode
u hidrotehnici
prof. Miodrag B. Jovanovic
Metoda konacnih elemenata
Doktorski kurs
Gradjevinski fakultet
Beograd, april, 2008.
Sadrzaj
1 Metoda konacnih elemenata 1
1.1 Uvod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Opsta formulacije MKE . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2.1 Diskretizacija racunske oblasti . . . . . . . . . . . . . . . . 4
1.2.2 Linearne interpolacione funkcije . . . . . . . . . . . . . . . . 5
1.2.2.1 Referentni linearni element . . . . . . . . . . . . . 7
1.2.2.2 Pravila transformacije . . . . . . . . . . . . . . . . 8
1.3 Matricna formulacija MKE . . . . . . . . . . . . . . . . . . . . . . 10
1.4 Proracun elementarnih matrica i vektora . . . . . . . . . . . . . . . 12
1.4.1 Matrica mase [m] . . . . . . . . . . . . . . . . . . . . . . . . 12
1.4.2 Matrica konvektivnosti [k] . . . . . . . . . . . . . . . . . . . 14
1.4.3 Elementarni vektor fΩ . . . . . . . . . . . . . . . . . . . . . 14
1.5 Numericka integracija . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.6 Globalna matrica i globalni vektor . . . . . . . . . . . . . . . . . . 16
1.6.1 Problem ustaljenog stanja . . . . . . . . . . . . . . . . . . . 17
1.6.2 Problem neustaljenog stanja . . . . . . . . . . . . . . . . . . 18
1.7 Primer iz matematike . . . . . . . . . . . . . . . . . . . . . . . . . 19
1.7.1 Resavanje u globalnom koordinatnom sistemu . . . . . . . . 20
1.7.2 Resavanje u lokalnom koordinatnom sistemu . . . . . . . . 23
1.7.3 Poredjenje sa analitickim resenjem . . . . . . . . . . . . . . 24
i
ii Sadrzaj
1.8 Primer iz hidraulike . . . . . . . . . . . . . . . . . . . . . . . . . . 25
1.8.1 Galerkinova formulacija . . . . . . . . . . . . . . . . . . . . 25
1.8.2 Struktura globalnog sistema jednacina . . . . . . . . . . . . 29
1.8.3 Kodirani racunski algoritam . . . . . . . . . . . . . . . . . . 30
1.8.4 Rezultati proracuna . . . . . . . . . . . . . . . . . . . . . . 31
LiteraturaDodatak 1Dodatak 2
1
Metoda konacnih elemenata
1.1 Uvod
Metoda konacnih elemenata (MKE) omogucava priblizno resavanje granicnih i/ilipocetnih problema. Sustina ove metode je u podeli kontinuuma na veliki brojelemenata jednostavnog oblika (segmenti, trouglovi, cetvorouglovi), tako da sepostigne dobro poklapanje granica fizickog i racunskog domena.
Zavisno promenljiva diferencijalne jednacine se izrazava u obliku linearne kombi-nacije izabranih interpolacionih funkcija (najcesce polinoma) i vrednosti te promen-ljive ili njenih izvoda u odredjenom broju cvorova elementa. Koristeci metodutezinskih ostataka ili principe varijacionog racuna, osnovne diferencijalne jedna-cine se transformisu u integralne jednacine pojedinacnih elemenata. Sabiranjemdoprinosa svih elemenata, formira se globalni sistem algebarskih jednacina, kojepri tome obuhvataju i zadate granicne i/ili pocetne uslove. Vrednosti zavisnopromenljivih u cvorovima dobijaju se kao resenje ovog sistema jednacina.
Prednost MKE u odnosu na druge metode je u mogucnosti lakseg i tacnijegobuhvatanja geometrijski slozenih racunskih oblasti u prostorno visedimenzionomproblemima, kao i mogucnosti lakog lokalnog povecanja gustine racunske mreze uzonama od interesa. Tacnost rezultata zavisi od gustine mreze (broja elemenata)i od tipa interpolacionih funkcija.
U nastavku se daje rezime MKE zasnovan na autorovoj knjizi [6]. Ovaj tekst jezamisljen kao dopunski materijal za lakse razumevanje gradiva. Iz tog razloga seiskljucvo bavi resavanjem linijskih problema, iako prednosti MKE dolaze doizrazaja tek u visedimenzionim problemima.
Za pracenje teksta koji sledi vazna je sledeca napomena:
Da bi se jasnije uocila struktura matricnih operacija, koriste se ravnopravno oz-nake za vektor-vrstu: a i < a >, za vektor-kolonu: aT i < a >T = a i zamatricu: A i [A]. Oznaka < a, b > predstavlja skalarni proizvod dva vektora.
1
2 1. Metoda konacnih elemenata
1.2 Opsta formulacija MKE
Zakoni odrzanja mogu se napisati u obliku opste diferencijalne jednacine:
∂u
∂t+ L(u) + fΩ = 0, (1.1)
gde je Ω – racunska oblast, u – vektor zavisno promenljivih, L(u) – prostornidiferencijalni operator, a fΩ – vektor izvora/ponora u oblasti Ω.
Da bi se matricna jednacina (1.1) resila metodom konacnih elemenata (MKE),potrebno je da bude transformisana u odgovarajucu integralnu jednacinu.
Za formiranje integralnih jednacina postoje dva pristupa shematski prikazana naSlici 1.1.
Fizicki sistem:
Sistem parcijalnihdiferencijalnih jednacina
↓Metode ostatka (reziduuma)
↓Tezinske funkcije
Principi varijacionogracuna
↓Funkcionali
↓Uslovi stacionarnosti(jasan fizicki smisao)
Integralne forme (jednacine)
↓Diskretizacija (MKE)
↓Formiranje i resavanjesistema algebarskih jednacina
Slika 1.1: Metode za formiranje integralnih jednacina [6]
Metode ostatka (reziduuma). Neka je kontinualni fizicki sistem definisanjednacinom ustaljenog stanja:
L(u) + fΩ = 0 (1.2)
i neka je resenje problema funkcija u(x) koja zadovoljava skup odredjenih granicnihuslova na granici domena Ω.
1.2. Opsta formulacija MKE 3
Ako funkcije u nisu tacno, vec priblizno resenje, jednakost (1.2) nece biti zadovo-ljena: L(u) + fΩ 6= 0, a velicina greske:
R(u) = L(u) + fΩ 6= 0 (1.3)
zove se reziduum ili ostatak. Kako je problem definisan matricnom jednacinom,odnosno sistemom jednacina, to je reziduum R vektor. Ako je u tacno resenjeproblema, vektor R je jednak nultom vektoru.
Greska ili reziduum se svodi na nulu u ,,prosecnom smislu” ako je skalarni proizvodfunkcije reziduuma R(u) i odredjenih tezinskih funkcija W jednak nuli [1, 2, 5, 6]:
I(u) =⟨W , R
⟩=
∫
Ω
W · R(u)dΩ =
=
∫
Ω
< W > L(u) + fΩ dΩ = 0. (1.4)
Imajuci u vidu definiciju skalarnog proizvoda i znacenje njegove nulte vrednosti,moze se reci da integralna jednacina (1.4) predstavlja uslov ortogonalnosti projek-cije reziduuma na podskup odredjenih tezinskih funkcija.
Metode reziduuma, ili metode tezinskih ostataka (MTO), sastoje se u iznalazenjufunkcija u za koje ce vaziti jednacina (1.4). Sva resenja u koja zadovoljavaju (1.2)istovremeno zadovoljavaju i (1.4), bez obzira na izbor tezinskih funkcija. Dimenzijevektora tezinskih funkcija zavise od broja nepoznatih (,,stepeni slobode”) datogproblema, a ove funkcije moraju biti diferencijabilne i moraju imati nulte vrednostina granicama, na kojima su granicnim uslovima zadate vrednosti u.
U zavisnosti od izbora tezinskih funkcija postoji nekoliko varijanti minimizacijereziduuma. Varijante MTO poznate su pod imenima ,,metoda kolokacije”, ,,me-toda podoblasti”, ,,metoda najmanjih kvadrata” i ,,metoda Galerkina” [1, 2, 3]itd.
Varijacione metode. Fizicki zakoni se mogu matematicki formulisati uslovom daizvesni integrali dostignu ekstremne vrednosti. Za razliku od metoda konacnih za-premina koje su zasnovane na diferencijalnom racunu funkcija, teorija MKE je za-snovana na varijacionom racunu koji se bavi ekstremnim vrednostima funkcionala– funkcija drugih funkcija. Tipican primer je linijski problem:
I(u) =
∫ x2
x1
Π
(
x, u(x),du(x)
dx, . . .
)
dx, (1.5)
gde je Π(. . .) – funkcional funkcija u(x), du(x)/dx itd. Problem je utvrditi onufunkciju u(x) i odgoravajuci funkcijonal Π(. . .) koji daje ekstremnu vrednost (mak-simalnu ili minimalnu) integralu I(u).
4 1. Metoda konacnih elemenata
Varijacione metode se zasnivaju na principu stacionarnosti funkcionala koji imajasno fizicko tumacenje. (Na primer, u mehanici funkcional ima znacenje poten-cijalne energije sistema.) Uslov stacionarnosti se definise primenom varijacionogoperatora δ na funkcional (po analogiji sa primenom diferencijalnog operatora nafunkciju):
δΠ
(
x, u(x),du(x)
dx, . . .
)
= 0. (1.6)
Moze se pokazati da je uslov stacionarnosti za visedimenzioni problem (1.1) inte-gralna jednacina [6]:
I(u) =
∫
Ω
δu
(∂u
∂t+ L(u) + fΩ
)
dΩ = 0, (1.7)
gde je δu – vektor malih promena (varijacija) zavisno promenljivih u.
Iz skupa dopustenih funkcija u (sa stanovista diferencijabilnosti i granicnih uslova),samo one funkcije koje zadovoljavaju jednacinu (1.1) cine funkcional stacionarnim,odnosno ispunjavaju uslov (1.7).
Ako se (zanemarujuci izvod po vremenu), uporede jednacine (1.7) i (1.4) vidi seda je formalno:
W = δu. (1.8)
Najpoznatija varijaciona metoda je metoda Ritza [2, 6, 8]. Resenja koja daje ovametoda identicna su resenjima koja se dobijaju primenom Galerkinove metode.
1.2.1 Diskretizacija racunske oblasti
Racunska oblast Ω deli se na konacan broj podoblasti – konacnih elemenata Ω(e),pri cemu se nepoznate u odredjuju u cvorovima elemenata (Slika 1.2-(a)).
Ako se pretpostavi da se u svakom cvoru javlja samo jedna nepoznata (u), inte-gralna jednacina elementa (1.7) postaje:
I(e) =
∫
Ω
δu(e)
(∂u
∂t+ L(u) + fΩ
)
dΩ = 0. (1.9)
Do tacnog ili pribliznog resenja ove jednacine dolazi se na nivou svakog elementa,dok se konacno resenje problema dobija kao zbir pojedinacnih resenja:
∑
e
I(e) = 0. (1.10)
1.2. Opsta formulacija MKE 5
Slika 1.2: (a) diskretizacija racunske oblasti konacnim elementima; (b) jednacina
za cvor ,,i” sadrzi doprinos svih elemenata oko tog cvora, sa povrsine∑Mi
j=1 Ω(e).
Ako se podintegralne funkcije u (1.9) na odredjen nacin (koji je prikazan u nas-tavku), aproksimiraju po cvorovima, u izrazu (1.9) ce se pojaviti vektori izabranihinterpolacionih funkcija i vektor nepoznatih u cvorovima. Jednacine (1.9) i (1.10)tako postaju matricne jednacine. Sabiranje (1.10) podrazumeva da se, kao stopokazuje skica na Slici 1.2-(b), uzme u obzir ,,doprinos” svih elemenata oko datogcvora. Takodje se podrazumeva da se u (1.10) uvedu i vrednosti u cvorovima kojesu zadate granicnim uslovima.
Ishod ovog nacelnog postupka je sistem algebarskih (obicno nelinearnih) jednacina,cijim resavanjem se odredjuju nepoznate vrednosti u svim cvorovima.
1.2.2 Linearne interpolacione funkcije
Razmatra se linijski (1D) problem, gde je nepoznata funkcija u = u(x). Racunskidomen Ω, koji u ovom slucaju predstavlja pravu odredjene duzine u pravcu ko-ordinatne osovine x, moze se podeliti na veci broj segmenata – elemenata Ω(e).Pretpostavlja se da su linearni elementi, sto znaci da je promena funkcije u(x) posvakom elementu linearna (Slika 1.3-(a)):
u(x)(e) = a + b · x. (1.11)
Slika 1.3: (a) linearni element; (b) interpolacione funkcije linearnog elementa.
6 1. Metoda konacnih elemenata
Nepoznati koeficijenti prave a i b odredjuju se iz uslova da funkcija u(x) ima odre-djene vrednosti u cvorovima:
u(xi)(e) ≡ ui = a + b · xi
U(xi+1)(e) ≡ ui+1 = a + b · xi+1
(1.12)
ili, u matricnom obliku:
ui
ui+1
=
[1 xi
1 xi+1
]a
b
, (1.13)
odakle sledi resenje:
a
b
=
[1 xi
1 xi+1
]−1
ui
ui+1
, (1.14)
odnosno,
a =xi+1 · ui − xi · ui+1
∆xi
(1.15)
b =ui+1 − ui
∆xi
, (1.16)
gde je ∆xi = xi+1 − xi.
Zamenom u (1.11) dobija se:
u(e)(x) =xi+1 − x
∆xi︸ ︷︷ ︸
N(e)i
·ui +x − xi
∆xi︸ ︷︷ ︸
N(e)i+1
·ui+1, (1.17)
ili:
u(e)(x) = N(e)i · ui + N
(e)i+1 · ui+1 =< Ni(x)(e) Ni+1(x)(e) >
ui
ui+1
, (1.18)
ili skraceno:
u(e)(x) =< N(x) > un, (1.19)
gde vektor vrsta < N(x) >=< Ni(x)(e) Ni+1(x)(e) > sadrzi interpolacione (bazne)funkcije u globalnom koordinatnom sistemu (x), kao sto je prikazano na Slici 1.3-(b), dok vektor kolona un = ui ui+1T sadrzi nepoznate u cvorovima.
1.2. Opsta formulacija MKE 7
1.2.2.1 Referentni linearni element
Da bi se racun uprostio i uvek na isti nacin sistematski sprovodio tako da seizbegne rad sa elementima razlicite duzine, uvodi se referentni element, u lokalnomkoordinatnom sistemu (Slika 1.4-(a)).
Slika 1.4: (a) referentni linearni element; (b) interpolacione funkcije u lokalnomkoordinatnom sistemu. Moze se primetiti da su u lokalnom sistemu (ξ) i globalnomsistemu (x) iste vrednosti u cvorovima (ui, ui+1).
Referentni element mora takodje biti linearan:
u(ξ) = a′ + b′ · ξ (1.20)
pod uslovom: u(−1) = ui i u(1) = ui+1. Odavde sledi:
ui = a′ + b′ · (−1)ui+1 = a′ + b′ · (+1),
(1.21)
ili u matricnom obliku:
ui
ui+1
=
[1 −1
1 1
]a′
b′
, (1.22)
odakle sledi resenje:
a′
b′
=
[1 −1
1 1
]−1ui
ui+1
=1
2
[1 1
−1 1
]ui
ui+1
, (1.23)
odnosno,
a′ =1
2(ui + ui+1) (1.24)
b′ =1
2(ui+1 − ui). (1.25)
8 1. Metoda konacnih elemenata
Zamenom u (1.20) konacno je:
u(ξ) =1
2(1 − ξ)︸ ︷︷ ︸
N1
·ui +1
2(1 + ξ)︸ ︷︷ ︸
N2
·ui+1 =< N1(ξ) N2(ξ) >
ui
ui+1
, (1.26)
ili skraceno:
u(ξ) =< N(ξ) > un. (1.27)
U navedenom izrazu < N(ξ) >=< N1(ξ) N2(ξ) > su interpolacione funkcijereferentnog linearnog elementa, u lokalnom koordinatnom sistemu.
Izrazi (1.19) i (1.27) predstavljaju ,,interpolaciju po cvorovima elemenata” (,,nodalinterpolation”).
1.2.2.2 Pravila transformacije
Metrika prelaza iz jednog koordinatnog sistema u drugi obuhvata uslov jednozna-cnosti, kao i pravila transformacije funkcije, izvoda funkcije i integrala.
Jednoznacnost. Integracija se moze obaviti po referentnom elementu ako svakojtacki prostora (ξ) odgovara samo jedna tacka prostora (x). Ovaj uslov jednoznacnegeometrijske korespondencije polazi od pretpostavke da je x = x(ξ) i kaze dasvaka tacka ξ∗ u lokalnom koordinatnom sistemu referentnog elementa ima samojednu, odgovarajucu tacku x(ξ∗) = x∗ u globalnom koordinatnom sistemu stvarnogelementa.
Zavisnost x(ξ) se moze definisati na sledeci nacin:
x = x(ξ) =< N(ξ) > xn =< N1(ξ) N2(ξ) >
xi
xi+1
, (1.28)
pretpostavljajuci da su interpolacione funkcije geometrijske transformacije identi-cne interpolacionim funkcijama zavisno promenljive.
Uslov da geometrijska transformacija bude jednoznacna (,,bijektivna”) je da:
∣∣dx
dξ
∣∣ > 0. (1.29)
Ovo je specijalni slucaj uslova: |det[J ]| > 0 kod visedimenzionih problema, gde je[J ] – Jakobijeva matrica izvoda, a det[J ], njena determinanta.
1.2. Opsta formulacija MKE 9
U linijskom problemu, Jakobijeva matrica se svodi samo na jedan element: [J ] =J11 = dx/dξ, pa je i njena determinanta: det[J ] = J11 = dx/dξ, ili u razvijenomobliku:
det[J ] =dx
dξ=
d
dξ(< N(ξ) > xn) =
d
dξ(< N1(ξ) N2(ξ) > xn) =
= <dN1
dξ
dN2
dξ>
xi
xi+1
=< −1/2 1/2 >
xi
xi+1
=
= −∆xi
2+
∆xi+1
2=
xi+1 − xi
2=
∆xi
2. (1.30)
Dakle, uslov jednoznacnosti transformacije je:
det[J ] =∆xi
2. (1.31)
Funkcija. Pravilo transformacije funkcije iz globalnog u lokalni koordinatni sistemje:
u(x) = u( (x(ξ) ) = u (< N(ξ) > xn) =< N(ξ) > u(xn) =
= < N(ξ) > un = u(ξ), (1.32)
pri cemu treba naglasiti da funkcije u(x) i u(ξ) nisu iste, ali su im iste vrednosti ucvorovima, sto je ocito ako se ima u vidu (1.18), odnosno (1.19). Ovim je dokazanopravilo tranformacije funkcije:
u(x) = u(ξ). (1.33)
Izvod funkcije. Pravilo transformacije izvoda funkcije se lako izvodi iz prethod-nih pravila:
du
dx=
du
dξ· dξ
dx=
du
dξ· [J ]−1. (1.34)
Ako se ima u vidu da je: [J ]−1 = 1/J11 = 2/∆xi, sledi:
du
dx=
du
dξ· 2
∆xi
. (1.35)
10 1. Metoda konacnih elemenata
Integral. Kao u prethodnom slucaju, transformacija integrala direktno sledi izprethodno definisanih pravila:
∫ xi+1
xi
f(x) dx =
∫ +1
−1
f( x(ξ) ) · dx
dξdξ =
∫ +1
−1
f( x(ξ) ) · ∆xi
2dξ. (1.36)
Ako se ovo primeni na opstu formulaciju problema (1.9), dobija se:
I(e) =
∫ xi+1
xi
δu(x)
[∂u(x)
∂t+ L( u(x) ) + fΩ
]
dx =
=
∫ +1
−1
δu(ξ)
[du(ξ)
dt+ L( u(ξ) ) + fΩ
]
· ∆xi
2dξ. (1.37)
Naglasava se da se u MKE sistematski koristi integracija u lokalnom koordinatnomsistemu.
1.3 Matricna formulacija MKE
Integralna formulacija problema (1.9) u globalnom koordinatnom sistemu je:
I ≈ne∑
e=1
I(e) =
ne∑
e=1
∫
Ω(e)
δu(e)
(∂u(e)
∂t+ L(u(e)) + fΩ
)
dΩ =
=
ne∑
e=1
∫
Ω(e)
δu(e) ∂u(e)
∂tdΩ
︸ ︷︷ ︸
I(e)1
+
+
ne∑
e=1
∫
Ω(e)
δu(e)(
L(u(e)) + fΩ
)
dΩ
︸ ︷︷ ︸
I(e)2
= 0, (1.38)
gde simbol ,,e” oznacava proizvoljni element u skupu od ne elemenata na koje jeizdeljena racunska oblast.
Ako se primeni aproksimacija po cvorovima:
u(e) = < N > unδu(e) = < N > δun,
(1.39)
1.3. Matricna formulacija MKE 11
integrali I(e)1 i I
(e)2 se mogu razviti na sledeci nacin:
I(e)1 =
∫
Ω(e)
< N > δun∂
∂t
(
< N > un)
dΩ =
= < δun >
∫
Ω(e)
N < N > dΩ
︸ ︷︷ ︸
[m]
dun
dt
(1.40)
I(e)2 =
∫
Ω(e)
< N > δun(
L(< N > un) + fΩ
)
dΩ =
= < δun >( ∫
Ω(e)
N L(< N >) dΩ
︸ ︷︷ ︸
[k]
un +
∫
Ω(e)
N fΩ dΩ
︸ ︷︷ ︸
fΩ
)
. (1.41)
Moze se zapaziti da se u jednacinama (1.40) i (1.41) sada javlja elementarni vektorvarijacija promenljivih u cvorovima < δun >.
Integrali uz vektore nepoznatih u cvorovima elementa un, odnosno uz njihoveizvode po vremenu dun/dt, predstavljaju elementarne matrice [k] i [m]. VektorfΩ je elementarni vektor spoljasnjih uticaja1.
Clanovi elementarne matrice [m] su konstante – ne zavise od nepoznatih un, dokclanovi elementarne matrice [k] zavise od nepoznatih un kada je problem neline-aran.
Iz (1.40) i (1.41) sledi da za bilo koju varijaciju (promenu) u cvorovima < δun >,uslov (1.38) ce biti zadovoljen ako je:
ne∑
e=1
∫
Ω(e)
N < N > dΩ
dun
dt
+ne∑
e=1
∫
Ω(e)
NL(< N >) dΩun +
+ne∑
e=1
∫
Ω(e)
NfΩ dΩ = 0.(1.42)
U linijskim problemima je: N = N(x), Ω(e) ∈ (xi, xi+1) i dΩ =dx.
U kontekstu metoda tezinskih ostataka (MTO), integrali (1.42) iskazuju uslov dagreska pribliznog resenja (ili ostatak, ,,rezidual”) bude jednak nuli. U opstemslucaju to se moze postici pomocu neke tezinske funkcije W (x).
1U teoriji konstrukcija se koriste termini: [m] – ,,matrica mase”, [k] – ,,matrica krutosti” i fΩ– ,,vektor opterecenja”. Matrici krutosti u hidrotehnici bi odgovarala ,,matrica konvektivnosti”ili ,,matrica difuzivnosti”, u zavisnosti od prirode problema.
12 1. Metoda konacnih elemenata
Galerkinova varijanta MTO podrazumeva da su tezinske i interpolacione funkcijeidenticne:
Wi(x) ≡ Ni(x)Wi+1(x) ≡ Ni+1(x),
(1.43)
tako da izraz (1.42) predstvlja ustvari Galerkinovu formulaciju MKE.
1.4 Proracun elementarnih matrica i vektora
Za proracun elementarnih matrica mase [m] i konvektivnosti [k], kao i elemen-tarnog vektora fΩ, sistematski se koristi integracija u lokalnom koordinatnomsistemu, vodeci racuna o pravilima transformacije (1.31)-(1.36). Elementi elemen-tarnih matrica i elementarnog vektora su integrali!
Ako su podintegralne funkcije polinomi, elementi matrica se odredjuju analiticki, aako su podintegralne funkcije vrlo slozene, mora se primeniti numericka integracija.
1.4.1 Matrica mase [m]
Ova matrica, definisana u opstem slucaju:
[m] =
∫
Ω(e)
N(x) < N(x) > dΩ,
u linijskom problemu koji se resava linearnim elementima ima oblik:
[m] =
∫ xi+1
xi
Ni
Ni+1
< Ni Ni+1 > dx. (1.44)
Kako je:
N < N >=
Ni
Ni+1
2×1
< Ni Ni+1 >1×2=
[N2
i Ni Ni+1
Ni+1 Ni N2i+1
]
2×2
sledi:
[m] =
∫ xi+1
xi
N2i dx
∫ xi+1
xi
Ni Ni+1 dx
∫ xi+1
xi
Ni+1 Ni dx
∫ xi+1
xi
N2i+1 dx
. (1.45)
1.4. Proracun elementarnih matrica i vektora 13
Elementi ove matrice su koristeci pravila transformacije:
m11 =
∫ xi+1
xi
N2i dx =
∫ +1
−1
N1(ξ)2 · ∆xi
2dx =
∆xi
2
∫ +1
−1
N1(ξ)2 dξ (1.46)
m12 =
∫ xi+1
xi
Ni Ni+1 dx =∆xi
2
∫ +1
−1
N1 N2 dξ (1.47)
m21 =
∫ xi+1
xi
Ni+1 Ni dx =∆xi
2
∫ +1
−1
N2 N1 dξ (1.48)
m22 =
∫ xi+1
xi
N2i+1 dx =
∆xi
2
∫ +1
−1
N22 dξ. (1.49)
Vodeci racuna da je: N1 = 12(1−ξ) i N2 = 1
2(1+ξ), unapred su sracunati integraliza linearni referentni element pomocu pravila:
∫ 1
−1
ξi dξ =
0 neparno i
2
i + 1i = 0, parno i
(1.50)
Gotovi (,,sintetizovani”) izrazi dati su u Dodatku 1. Njihovim koriscenjem se mozepokazati da je:
m11 =∆xi
2· 2
3=
∆xi
3(1.51)
m12 =∆xi
2· 1
3=
∆xi
6(1.52)
m21 =∆xi
2· 1
3=
∆xi
6(1.53)
m22 =∆xi
2· 2
3=
∆xi
3, (1.54)
odnosno:
[m] =∆xi
3
1 1/2
1/2 1
. (1.55)
14 1. Metoda konacnih elemenata
1.4.2 Matrica konvektivnosti [k]
Ova matrica, definisana u opstem slucaju:
[k](e) =
∫
Ω(e)
N(x) < N(x) > dΩ,
u linijskom problemu koji se resava linearnim elementima ima oblik:
[k](e) =
∫ xi+1
xi
Ni
Ni+1
L(< Ni Ni+1 >) dx. (1.56)
Kakav ce konkretno biti oblik elemenata ove matrice zavisi od operatora L(u),odnosno L(< N >). Na primer, ako se pretpostavi L(u) = u:
NL(< N >) =
Ni
Ni+1
< Ni Ni+1 >=
[N2
i Ni Ni+1
Ni+1 Ni N2i+1
]
,
pa sledi da je u ovom slucaju [k] ≡ [m].
1.4.3 Elementarni vektor fΩ
Elementi ovog vektora su integrali proizvoda N i neke konstante fΩ, koja pred-stavlja izvor/ponor (,,spoljasnje opterecenje”). Ovi integrali se lako definisu pomocuizraza datih u Dodatku 1.
1.5 Numericka integracija
Ako su podintegralne funkcije clanova elementarne matrice [k] slozene funkcije,moze se primeniti neka numericka metoda integracije (,,kvadrature”), pa se dobijapriblizno resenje integrala. Najcesce se koristi Gaussova kvadratura zasnovana nazameni funkcije polinomom:
+1∫
−1
f(ξ) dξ ≈r∑
i=1
ωi · f(ξi), (1.57)
1.5. Numericka integracija 15
gde su: r – broj integracionih tacaka (najcesce r ≤ 4), ωi – tezinski koeficijenti iξi – koordinate (apscise) tacaka koje se koriste u Gaussovom postupku.
U Tabeli 1.1 date su vrednosti apscisa i tezinskih faktora za linijske probleme [9].
Tabela 1.1: Vrednosti Gaussovih koeficijenata za linijske probleme
Broj tacaka Koordinate Tezinski faktori Najveci redr ξi ωi polinoma
1 0 2 1
2 ±1/√
3 = ±0.5773502691 1 3
3 0 0.8888888888 5
±√
3/5 = ±0.7745966692 0.5555555555
4 ±0.3399810435 0.6521451548 7±0.8611363115 0.3478548451
Moze se primetiti da su apscise ξi simetricne u odnosu na ξ=0, a vrednosti tezinskihfaktora ωi, koje odgovaraju simetricnim integracionim tackama, su jednake. Nu-mericka integracija pomocu Gaussove metode ilustrovace se jednim primerom.
Primer 1.1. Sracunati pribliznu vrednost integrala I =5∫
3
x3 dx.
Resenje. Koriscenjem lokalnog koordinatnog sistema:
I ≈∫ +1
−1
(x(ξ))3 · ∆x
2dξ,
gde je:
x(ξ) = N1(ξ) · x1 + N2(ξ) · x2 =1
2(1 − ξ) · 3 +
1
2(1 + ξ) · 5
i ∆x/2 = (5 − 3)/2 = 1, dobija se za dve Gaussove tacke (r = 2):
I =
∫ +1
−1
[1
2(1 − ξ) · 3 +
1
2(1 + ξ) · 5]3 · 1 · dξ ≈
≈2∑
i=1
ωi · [1
2(1 − ξ) · 3 +
1
2(1 + ξ) · 5]3 =
= ω1 · [1
2(1 − ξ1) · 3 +
1
2(1 + ξ1) · 5]3 + ω2 · [
1
2(1 − ξ2) · 3 +
1
2(1 + ξ2) · 5]3 =
16 1. Metoda konacnih elemenata
= 1, 00 · [ 12(1 +
1√3) · 3 +
1
2(1 − 1√
3) · 5]3 +
+ 1, 00 · [ 12(1 − 1√
3) · 3 +
1
2(1 +
1√3) · 5]3 =
= 40, 094 + 95, 905 = 135, 999 ≈ 136, (1.58)
sto se moze lako proveriti pomocu analitickog resenja.
* * *
Iz prethodno pokazanog, vidi se da je u kontekstu MKE:
∫ xi+1
xi
f(x) dx =∆xi
2
∫ +1
−1
f(ξ) dξ ≈ ∆xi
2
r∑
i=1
ωi · f(ξi). (1.59)
Clanovi elementarne matrice konvektivnosti mogu se, u slucaju linijskih linearnihelemenata, numericki racunati na sledeci (simbolicki) nacin:
kij =
∫ xi+1
xi
f
(
u(x),du(x)
dx, . . .
)
dx =
=
∫ +1
−1
f(
u(ξ),du(ξ)
dξ· [J(ξ)]−1
︸ ︷︷ ︸
2
∆xi
, . . .)
|det[J ]|︸ ︷︷ ︸
∆xi
2
dξ ≈
≈r∑
i=1
ωi · f(
u(ξi),du(ξi)
dξ· 2
∆xi
, . . .
)∆xi
2. (1.60)
1.6 Globalna matrica i globalni vektor
Na osnovu (1.38)-(1.41) moze se sumiranjem elemenata, napisati globalni sistemjednacina:
I =∑
e
[
< δun > [m]
dun
dt
+ < δun > [k]un+ < δun > fΩ]
= 0, (1.61)
odnosno,
< δun >
(
[M ]
dun
dt
+ [K]un + F )
= 0, (1.62)
1.6. Globalna matrica i globalni vektor 17
i konacno:
[M ]
dun
dt
+ [K]un = −F . (1.63)
U ovoj matricnoj diferencijalnoj jednacini prvog reda po vremenu, [M ] je glo-balna matrica mase, [K] je globalna matrica konvektivnosti/difuzivnosti, F jeglobalni vektor slobodnih clanova koji ukljucuje granicne uslove, a un je vektornepoznatih u cvorovima.
1.6.1 Problem ustaljenog stanja
U ovom slucaju je dun/dt = 0, pa se sistem (1.63) svodi na:
[K]un = F . (1.64)
Pri formiranju racunskog algoritma, treba voditi racuna o sledecim cinjenicama:
• Red elementarne matrice [k] jednak je broju nepoznatih (,,stepena slobode”)elementa; u slucaju linearnih elemenata, taj red je 2×2, jer su 2 nepoznate:ui i ui+1.
• Red globalne matrice [K] jednak je ukupnom broju nepoznatih u datomproblemu; na primer, ako je broj nepoznatih u cvoru jedan, onda je redmatrice [K] n × n, gde je n – ukupan broj cvorova u razmatranoj oblasti.
Postupak formiranja globalne matrice [K] sastoji se u prikupljanju (,,asembli-ranju”) elementarnih matrica i sprovodi se u dve etape:
(i) najpre se prosiruju elementarne matrice do dimenzija koje su odredjene re-dom globalne matrice, odnosno ukupnim brojem nepoznatih u datom problemu.Prosirenje elementarnih matrica se obavlja umetanjem nultih kolona i nultih redova– vrsta. Simbolicki ovo se moze prikazati na sledeci nacin:
[k](e) → [K](e).
(ii) Globalna matrica [K] se dobija sabiranjem prosirenih elementarnih matrica:
[K] =∑
e
[K](e) = [K](1) + [K](2) + [K](3) + . . .
18 1. Metoda konacnih elemenata
Na isti nacin se, sabiranjem prosirenih elementarnih vektora, formira globalni vek-tor sistema:
F =∑
e
F (e) = F (1) + F (2) + F (3) + . . . (1.65)
Uvodjenje granicnih uslova obavlja se tako sto se izostavlja jednacina onog cvorau kome je granicni uslov zadat. U ostale jednacine se unose vrednosti zadatoggranicnog uslova, pa se tako dobijena konstanta ,,prebacuje” na desnu stranu, gdeulazi u sastav vektora slobodnih clanova F .
1.6.2 Problem neustaljenog stanja
Resavanje sistema jednacina (1.63):
[M ]
dun
dt
+ [K]un = F
zavisi od nacina na koji se izvod po vremenu zameni konacnom razlikom. Unastavku se prikazuju dve mogucnosti.
Eksplicitni Eulerov postupak. U ovom slucaju se izvod po vremenu aproksimirakonacnom razlikom unapred:
dun
dt
≈ 1
∆t
(
unt+∆t − unt
)
=1
∆t∆unt+∆t, (1.66)
pri cemu indeks ,,t” oznacava poznate, a indeks ,,t + ∆t”, nepoznate vrednosti.Vektor un sadrzi zavisno promenljive u cvorovima, a vektor ∆un, razlike vred-nosti un u trenutku t i trenutku t + ∆t.
Rezultat diskretizacije po vremenu je:
[M ] · 1
∆t∆unt+∆t + [K]tunt = F t, (1.67)
odnosno:
[M ] ∆unt+∆t = ∆t(
F − [K]un)
t. (1.68)
1.7. Primer iz matematike 19
Direktnim resavanjem ovog sistema algebarskih jednacina dobija se vektor razlikaun, a odavde i trazeni vektor nepoznatih u trenutku t + ∆t:
unt+∆t = unt + ∆unt+∆t. (1.69)
Implicitni Eulerov postupak. Ako se u matricnoj jednacini (1.67), matrica[K] i vektori un i F , umesto na vremenskom nivou t, definisu na vremenskomnivou t + ∆t, dobija se implicitna Eulerova formulacija:
[M ] · 1
∆t∆unt+∆t + [K]t+∆tunt+∆t = F t+∆t. (1.70)
Oduzimanjem vektora [K]t+∆t · unt od obe strane ove jednacine:
[M ] ∆unt+∆t + [K]t+∆tunt+∆t − [K]t+∆t · unt =
= F t+∆t − [K]t+∆t · unt (1.71)
dobija se:
[M ] ∆unt+∆t + [K]t+∆t∆unt+∆t = F t+∆t − [K]t+∆t · unt, (1.72)
odnosno,
(
[M ] + [K]t+∆t
)
∆unt+∆t = ∆t(
F t+∆t − [K]t+∆t · unt
)
. (1.73)
Ova jednacina se moze direktno resiti po nepoznatim inkrementima ∆unt+∆t
samo ako je problem linearan, sto znaci da clanovi globalne matrice ne zaviseod nepoznatih vrednosti u cvorovima: [K] 6= [K(un)]. Ako to nije slucaj, vecje: [K] = [K(un)], problem se mora resavati iterativno, nekom od metoda zaresavanje sistema nelinearnih algebarskih jednacina, kao sto je na primer Gauss-Seidelova metoda.
1.7 Primer iz matematike
Resiti diferencijalnu jednacinu:
du
dx− u = 0 (1.74)
u oblasti 1 ≤ x ≤ 2, sa 2 linearna elementa iste duzine. Granicni uslov: u(1) = 1.Numericko resenje uporediti sa analitickim resenjem.
20 1. Metoda konacnih elemenata
Resenje. U ovom slucaju je: L(u) ≡ du/dx−u. Na Slici 1.5 je prikazana racunskaoblast sa dva linearna elementa duzine ∆x(1) = ∆x(2) = ∆x = 0, 5 i tri cvora.
Slika 1.5: Racunska oblast sa dva konacna elementa i odgovarajucim linearniminterpolacionim funkcijama
1.7.1 Resavanje u globalnom koordinatnom sistemu
Interpolacione funkcije
Element br. 1
N(1)1 =
xi+1 − x
∆x=
1, 5− x
0, 5= 2(1, 5− x) = 3 − 2x;
dN(1)1
dx= −2 (1.75)
N(1)2 =
x − xi
∆x=
x − 1
0, 5= 2(x− 1) = 2x − 2;
dN(1)2
dx= 2 (1.76)
Element br. 2
N(2)2 =
xi+1 − x
∆x=
2 − x
0, 5= 2(2 − x) = 4 − 2x;
dN(2)2
dx= −2 (1.77)
N(2)3 =
x − xi
∆x=
x − 1, 5
0, 5= 2(x − 1, 5) = 2x− 3;
dN(2)3
dx= 2 (1.78)
Galerkinova formulacija za element
Ie =
∫ xi+1
xi
NL(< N >) dx
︸ ︷︷ ︸
[k]
·u = 0, (1.79)
1.7. Primer iz matematike 21
gde je u konkretnom primeru:
L(< N >) =d < N >
dx− < N >=<
dN
dx> − < N > (1.80)
NL(< N >) = N <dN
dx> −N < N >
=
Ni
Nn+1
<dNi
dx
dNi+1
dx> −
Ni
Nn+1
< Ni Ni+1 >=
=
Ni
dNi
dxNi
dNi+1
dx
Ni+1dNi
dxNi+1
dNi+1
dx
−
[N2
i Ni Ni+1
Ni+1 Ni N2i+1
]
=
=
Ni
dNi
dx− N2
i Ni
dNi+1
dx− Ni Ni+1
Ni+1dNi
dx− Ni+1 Ni Ni+1
dNi+1
dx− N2
i+1
(1.81)
Elementarne matrice
Element br. 1
k(1)11 =
∫ 1,5
1
(
N(1)1
dN(1)1
dx− N
(1)21
)
dx =
=
∫ 1,5
1
[(3 − 2x)(−2) − (3 − 2x)2]dx = 0, 6666 (1.82)
k(1)12 =
∫ 1,5
1
(
N(1)1
dN(1)2
dx− N
(1)1 · N (1)
2
)
dx =
=
∫ 1,5
1
[(3 − 2x)(2) − (3 − 2x)(2x− 2)]dx = 0, 4166 (1.83)
k(1)21 =
∫ 1,5
1
(
N(1)2
dN(1)1
dx− N
(1)2 · N (1)
1
)
dx =
=
∫ 1,5
1
[(2x − 2)(−2) − (2x − 2)(3x− 2)]dx = −0, 5833 (1.84)
k(1)22 =
∫ 1,5
1
(
N(1)2
dN(1)2
dx− N
(1)22
)
dx =
=
∫ 1,5
1
[(2x − 2)(2) − (2x − 2)2]dx = 0, 3333 (1.85)
22 1. Metoda konacnih elemenata
Element br. 2
k(2)11 =
∫ 2
1,5
(
N(2)2
dN(2)2
dx− N
(2)22
)
dx =
=
∫ 2
1,5
[(4 − 2x)(−2) − (4 − 2x)2]dx = −0, 66667 (1.86)
k(2)12 =
∫ 2
1,5
(
N(2)2
dN(2)3
dx− N
(2)2 · N (2)
3
)
dx =
=
∫ 2
1,5
[(4 − 2x)(2) − (4 − 2x)(2x − 3)]dx = 0, 41666 (1.87)
k(2)21 =
∫ 2
1,5
(
N(2)3
dN(2)2
dx− N
(2)3 · N (2)
2
)
dx =
=
∫ 2
1,5
[(2x− 3)(−2) − (2x − 3)(4 − 2x)]dx = −0, 5833 (1.88)
k(2)22 =
∫ 2
1,5
(
N(2)3
dN(2)3
dx− N
(2)23
)
dx =
=
∫ 2
1,5
[(2x− 3)(2) − (2x− 3)2]dx = 0, 3333 (1.89)
[k](1) = [k](2) =
[−0, 6666 0, 4166−0, 5833 0, 3333
]
(1.90)
Globalna matrica. Red globalne matrice je odredjen brojem nepoznatih (ste-pena slobode); u datom slucaju su 3 nepoznate, u tri racunska cvora. To znaci damatrice elemenata treba prosiriti dodavanjem jedne vrste, odnosno kolone:
−0,6666 0, 4166 0
−0,5833 0, 3333 0
0 0 0
︸ ︷︷ ︸
[K](1)
+
0 0 0
0 −0, 6666 0,4166
0 −0, 5833 0,3333
︸ ︷︷ ︸
[K](2)
=
−0, 6666 0, 4166 0
−0, 5833 −0, 3333 0,4166
0 −0, 5833 0,3333
︸ ︷︷ ︸
[K]
Resenje sistema
[K]u = 0, (1.91)
1.7. Primer iz matematike 23
ili u razvijenom obliku:
−0, 6666 u1 + 0, 4166 u2 = 0−0, 5833 u1 − 0, 3333 u2 + 0, 4166 u3 = 0
− 0, 5833 u2 + 0, 3333 u3 = 0
(1.92)
Prva jednacina otpada – zamenjuje se granicnim uslovom: u1 = 1. Ostaje sistemod dve algebarske jednacine sa dve nepoznate:
−0, 3333 u2 + 0, 4166 u3 = 0, 5833−0, 5833 u2 + 0, 3333 u3 = 0,
(1.93)
odakle sledi resenje: u3 = 1, 75 · u2, odnosno:
u2 = 1, 4737
u3 = 2, 5789.
1.7.2 Resavanje u lokalnom koordinatnom sistemu
Koristec referentni element prikazan na Slici 1.4-(a), sa interpolacionim funkcijamaprikazanim na Slici 1.4-(b), a primenjujuci pravila transformacije (1.31)-(1.37),posebno (1.37), pri cemu je u konkretnom slucaju:
L(< N(ξ) >) =d < N(ξ) >
dξ· dξ
dx− < N(ξ) >=
= <dN(ξ)
dξ· 2
∆x> − < N(ξ) >=
= <dN1
dξ· 2
∆x
dN2
dξ· 2
∆x> − < N1 N2 >, (1.94)
moze se definisati integral u razvijenom obliku na nivou svakog elementa:
I(e) =
∫ 1
−1
(N1
N2
<dN1
dξ·
2
∆x
dN2
dξ·
2
∆x> −
N1
N2
< N1 N2 >
)∆x
2dξ =
=
∫ 1
−1
N1dN1
dξ·
2
∆xN1
dN2
dξ·
2
∆x
N2dN1
dξ·
2
∆xN2
dN2
dξ·
2
∆x
−
[N2
1 N1 · N2
N2 · N1 N22
]
∆x
2dξ =
24 1. Metoda konacnih elemenata
=
∫ 1
−1
N1dN1
dξ·
2
∆x− N2
1 N1dN2
dξ·
2
∆x− N1 · N2
N2dN1
dξ·
2
∆x− N2 · N1 N2
dN2
dξ·
2
∆x− N2
2
∆x
2dξ =
=
∫ 1
−1
(
N1dN1
dξ− N2
1
∆x
2
)
dξ
∫ 1
−1
(
N1dN2
dξ− N1 · N2
∆x
2
)
dξ
∫ 1
−1
(
N2dN1
dξ− N2 · N1
∆x
2
)
dξ
∫ 1
−1
(
N2dN2
dξ− N2
2
∆x
2
)
dξ
. (1.95)
Imajuci u vidu da izraz (1.95) predstavlja matricu elementa [k], a koristeci gotoveizraze za vrednosti integrala po jedinicnom referentnom elementu iz Dodatka 1,pri cemu je: ∆x/2 = 0, 25, dobijaju se sledece vrednosti:
k(1)11 = −0, 5000− 0, 6666 · 0, 25 = −0, 6666
k(1)12 = +0, 5000− 0, 3333 · 0, 25 = +0, 4166
k(1)21 = −0, 5000− 0, 3333 · 0, 25 = −0, 5833
k(1)22 = +0, 5000− 0, 6666 · 0, 25 = +0, 3333.
Moze se konstatovati da su dobijene iste vrednosti kao u slucaju kada nije koriscenreferentni element, vec je integracija obavljena u globalnom koordinatnom sistemu.
1.7.3 Poredjenje sa analitickim resenjem
du
dx= u ⇒
∫du
u=
∫
dx (1.96)
lnu = u + C ⇒ u = ex+C (1.97)
Za x = 1 i u(1) = 1 sledi:
1 = e1+C ⇒ ln 1 = (1 + C) ln e ⇒ 0 = (1 + C) ⇒ C = −1, (1.98)
pa je analiticko resenje:
u(x) = ex−1. (1.99)
Odavde je: u(1, 5) = e0,5 = 1, 6487 i u(2) = e1,00 = 2, 7183. Poredjenjem sanumerickim resenjem, moze se konstatovati da je greska priblizno 5–10%. Savecim brojem elemenata, moze se ocekivati da greska bude manja.
1.8. Primer iz hidraulike 25
1.8 Primer iz hidraulike
Razmatra se promena nivoa u izdani sa slobodnom povrsinom pod uticajem kise istrujanje ka reci. Izdan je na horizontalnoj nepropusnoj podlozi, sa nepropusnomlevom granicom, dok se na desnoj granici nalazi reka (Slika 1.6). Pocetni uslov jedefinisan konstantnim nivoom h = 1, 0 m.
Slika 1.6: Racunska oblast i njena diskretizacija linijskim konacnim elementima
Problem se opisuje Boussinesqovom difuzionom jednacinom [7]:
∂h
∂t=
Kf
2λo
(∂2h2
∂x2
)
+ q, (1.100)
gde je Kf – koeficijent filtracije, λo – poroznost, a q – izvorni clan, koji je u ovomslucaju odredjen kisom datog intenziteta.
Sracunati primenom MKE promenu nivoa slobodne povrsine u izdani i odgo-varajuci dotok u reku za kisu ciji je hijetogram dat na Slici 1.7. Problem serazmatra po jedinici duzine recnog korita. Ostali podaci: Kf=50 m/h, λo=0,4.
Resenje. Na Slici 1.6 prikazana je diskretizacija racunske oblasti linijskim konacnimelementima.
1.8.1 Galerkinova formulacija
Jednacina (1.100) se moze formulisati u obliku (1.42):
ne∑
e=1
I(e) =
ne∑
e=1
[∫ xi+1
xi
N < N > dx
dhn
dt
−
− Kf
2λo
∫ xi+1
xi
NL(< N >) dx h2n −
∫ xi+1
xi
Nq dx
]
= 0. (1.101)
26 1. Metoda konacnih elemenata
Slika 1.7: Hijetogram kise za definiciju izvornog clana u jednacini (1.100)
Slaba Galerkinova formulacija podrazumeva snizenje reda izvoda u operatoru L(h),sto se u 1D problemima moze postici parcijalnom integracijom (a primenom Green-ove teoreme u 2D i 3D problemima). Parcijalna integracija se u opstem slucajudefinise izrazom:
∫ x2
x1
AdB
dxdx = AB
∣∣∣
x2
x1
−∫ x2
x1
dA
dx· Bdx. (1.102)
Imajuci ovo u vidu, clan sa operatorom L u polaznoj jednacini (1.101):
∫ xi+1
xi
NL(< N >) dx =
∫ xi+1
xi
N · ∂
∂x
(∂ < N >
∂x
)
dx (1.103)
moze se transformisati na sledeci nacin:
∫ xi+1
xi
N︸︷︷︸
A
· ∂
∂x
(∂ < N >
∂x
)
︸ ︷︷ ︸
dB
dx
dx = N︸︷︷︸
A
· ∂ < N >
∂x︸ ︷︷ ︸
B
∣∣∣
xi+1
xi
−
−∫ xi+1
xi
∂N
∂x︸︷︷︸
dA
dx
· ∂ < N >
∂x︸ ︷︷ ︸
B
dx. (1.104)
Ovaj izraz pokazuje da se integral izvoda drugog reda transformise u integralproizvoda dva izvoda prvog reda, uz pojavu ,,novog” clana.
1.8. Primer iz hidraulike 27
Ovi novi clanovi se kod susednih elemenata uzajamno potiru (jer su suprotnogznaka2), kada se doprinos elemenata prikuplja (,,asemblira”) u jednacine glob-alnog sistema. Ostaju samo vrednosti na granicama domena, a ove su definisanegranicnim uslovima. Iz ovog sledi da se jednacina (1.104) svodi na:
∫ xi+1
xi
N ∂
∂x
(∂ < N >
∂x
)
dx = −∫ xi+1
xi
∂N
∂x· ∂N
∂xdx. (1.105)
Zamenom u (1.101) dobija se:
∫ xi+1
xi
N < N > dx ·
dhn
dt
+Kf
2λo
∫ xi+1
xi
∂N
∂x· ∂N
∂xdx · h2
n −
−∫ xi+1
xi
N · q dx = 0. (1.106)
Prvi integral daje elementarnu matricu mase, drugi integral, elementarnu matricudifuzivnosti, a treci, elementarni vektor optrecenja. U nastavku se posebno definisesvaki od navedenih integrala.
Elementarna matrica mase je (videti Dodatak 1):
∫ xi+1
xi
N < N > dx =∆xi
3
1 1/2
1/2 1
. (1.107)
Elmentarna matrica difuzivnosti je (videti Dodatak 1):
∫ xi+1
xi
∂N∂x
· ∂ < N >
∂xdx =
1
∆xi
1 −1
−1 1
. (1.108)
Elementarni vektor opterecenja je (videti Dodatak 1):
q
∫ xi+1
xi
N dx = q · ∆xi
2
1
1
. (1.109)
2Za linearne elemente duzine ∆x je: dNi/dx=-1/∆x i dNi+1/dx=1/∆x, pa sledi:
Ni
Ni+1
< −1
∆x
1
∆x>=< −
Ni
∆x
Ni+1
∆x>
28 1. Metoda konacnih elemenata
Zamenom u osnovnu jednacinu (1.106) za jedan element:
∆xi
3
1 1/2
1/2 1
dhi
dt
dhi+1
dt
+Kf
2λo
· 1
∆xi
1 −1
−1 1
h2i
h2i+1
−
− q · ∆xi
2
1
1
= 0. (1.110)
Ako se primeni eksplicitna shema, koristeci Eulerovu metodu za diskretizaciju povremenu:
∂h
∂t≈ hk+1 − hk
∆t, (1.111)
gde je k – oznaka vremenskog nivoa, jednacina (1.110) postaje:
∆xi
3∆t·
1 1/2
1/2 1
hk+1i − hk
i
hk+1i+1 − hk
i+1
=
= −Kf
2λo
· 1
∆xi
1 −1
−1 1
(hk
i
)2
(hk
i+1
)2
+ q · ∆xi
2
1
1
, (1.112)
odnosno,
∆xi
3
1 1/2
1/2 1
hk+1i
hk+1i+1
=
∆xi
3
1 1/2
1/2 1
hki
hki+1
−
− Kf
2λo
· 1
∆xi
1 −1
−1 1
(hk
i
)2
(hk
i+1
)2
+
+ q · ∆xi
2
1
1
. (1.113)
1.8. Primer iz hidraulike 29
Elementi matrice koeficijenata uz nepoznate na vremenskom nivou k + 1 su:
kei,i = ∆xi/3
kei,i+1 = ∆xi/6
kei+1,i = ∆xi/6
kei+1,i+1 = ∆xi/3
(1.114)
Elementi vektora slobodnih clanova su:
bi =
(
hki
3+
hki+1
6
)
∆xi −Kf · ∆t
2λo · ∆xi
[(hk
i
)2 −(hk
i+1
)2]
+ q · ∆xi
2· ∆t (1.115)
bi+1 =
(
hki
6+
hki+1
3
)
∆xi −Kf · ∆t
2λo · ∆xi
[
−(hk
i
)2+(hk
i+1
)2]
+ q · ∆xi
2·∆t.(1.116)
1.8.2 Struktura globalnog sistema jednacina
Nacin formiranja globalnog sistema jednacina ilustrovace se primerom 3 elementasa 4 racunska cvora (Slika 1.8).
Slika 1.8: Racunski domen od 3 linijska elementa
Elemenatarne matrice su prosirene do reda 4×4, jer, s obzirom da postoje 4 nepoz-nate (po jedna u svakom cvoru), globalna matrica uz te nepoznate mora biti reda4 × 4. Struktura elementarnih matrica i njihovo sabiranje u globalnu matricushematski se moze prikazati na sledeci nacin:
k(1)
1,1k(1)
1,20 0
k(1)2,1
k(1)2,2
0 0
0 0 0 0
0 0 0 0
︸ ︷︷ ︸
[K](1)
+
0 0 0 0
0 k(2)2,2
k(2)2,3
0
0 k(2)
3,2k(2)
3,30
0 0 0 0
︸ ︷︷ ︸
[K](2)
+
0 0 0 0
0 0 0 0
0 0 k(3)
3,3k(3)
3,4
0 0 k(3)4,3
k(3)4,4
︸ ︷︷ ︸
[K](3)
=
+ + 0 0
+
⊕+ 0
0 +
⊕+
0 0 + +
︸ ︷︷ ︸
[K]
gde simbol + oznacava prenosenje clanova elementarnih matrica u globalnu ma-tricu, a simbol
⊕, njihovo sabiranje.
30 1. Metoda konacnih elemenata
Formiranje globalnog vektora slobodnih clanova na osnovu prosirenih elementarnihvektora, shematski izgleda ovako:
b(1)1
b(1)2
0
0
︸ ︷︷ ︸
B(1)
+
0
b(2)2
b(2)3
0
︸ ︷︷ ︸
B(2)
+
0
0
b(3)3
b(3)4
︸ ︷︷ ︸
B(3)
=
+
⊕
⊕
+
︸ ︷︷ ︸
B
Matricna jednacina:
[K]hk+1 = B (1.117)
oznacava sistem nelinearnih algebarskih jednacina koji se resava iterativno, Gauss-Seidelovom metodom. Rezultat proracuna je vremenski raspored nivoa vode uizdani, na osnovu koga se, primenjujuci hipotezu Dupuita, u svakom trenutkumoze sracunati infiltracioni protok ka reci:
qr(t) = u(t) · h(t) = −Kf · ∂h(t)
∂x· h(t). (1.118)
Ovde se radi o protoku po jedinici duzine recnog korita [m2/h]. Dubina h i odgo-varajuci izvod ∂h/∂x definisu se na spoju izdani sa rekom.
1.8.3 Kodirani racunski algoritam
U Dodatku 2 je dat listing programa, koji je napisan u jeziku Fortran90. Program,pod imenom ,,K2mke”, objektno je struktuiran tako da sadrzi tri modula (,,klase”):
1. UlaznoIzlazniPodaci2. KonturniUslovi3. MKE
Imena modula ukazuju na nacin objektne dekompozicije.
Promenljive koje se odnose na ulazne podatke i rezultate proracuna, sa odgo-varajucim funkcijama za ucitavanje i stampanje, objedinjene su u modulu koji sezove ,,UlaznoIzlazniPodaci”. U ovom modulu koriste se i dve promenljive izve-denog tipa; promenljiva ,,izdan”, izvedenog tipa ,,Izdani”, sadrzi tematski srodnepodatke (koeficijent filtracije, poroznost) tipa ,,realni broj”, a promenljiva ,,kisa”,
1.8. Primer iz hidraulike 31
izvedenog tipa ,,Kise”, sadrzi podatke za definisanje konkretnog hijetograma, gdesu vreme i intenzitet kise, dinamicki alocirani vektori tipa ,,realni broj”.
Modul ,,Konturni uslovi” preuzima sve iz prethodnog modula, a objedinjuje po-datke koji se odnose na pocetne i granicne uslove, kao i na funkcije koje sluzeza manipulaciju tih podataka. U konkretnom slucaju, to su funkcije ucitavanjapocetnog nivoa vode u izdani i kise, kao i funkcija za linearnu interpolaciju kisepo vremenu.
Poslednji modul ,,MKE”, koji preuzima sve iz prethodna dva modula, objedinjujesamo ono sto je uze vezano za metodu konacnih elemenata: formiranje globalnematrice koeficijenata uz nepoznate i globalnog vektora slobodnih clanova, kao iiterativno resavanje sistema nelinearnih algebarskih jednacina metodom Gauss-Seidela.
Glavni program ,,K2mke” je kratak; u njemu se definisu imena ulazno-izlaznihfajlova, ucitavaju ulazni podaci, otvara i zatvara racunski ciklus po vremenu, arezultati povremeno salju na stampanje.
1.8.4 Rezultati proracuna
Mnozenjem intenziteta kise sa povrsinom svakog elementa (duzinom elementa ×1 m), dobija se dotok na element od padavina, a time i vrednost izvornog clanau svakom racunskom cvoru. Vremenski raspored dotoka od kise u celoj racunskojoblasti dat je na Slici 1.9.
Slika 1.9: Zbirni dotok od kise za sve elemente
Sracunata dinamika nivoa vode u izdani prikazana je na Slici 1.10, a promenajedinicnog dotoka u reku, na Slici 1.11.
32 1. Metoda konacnih elemenata
Slika 1.10: Promena nivoa u izdani tokom vremena
Slika 1.11: Promena jedinicnog dotoka u reku tokom vremena
Literatura 33
Literatura
[1] Baker, A.J., Finite Element Computational Fluid Mechanics, HemispherePublishing Corporation, McGraw-Hill, 1985.
[2] Chung, T.J., Finite Element Analysis in Fluid Dynamics, McGraw-Hill, 1978.
[3] Connor, J.J., Brebbia, C.A., Finite Element Techniques for Fluid Flow,Newnes-Butterworths, 1976.
[4] Dhatt, G., Touzot, G., Une presentation de la methode des elements finis,Maloine, S.A., Paris, 1984.
[5] Hervouet, J-M., Hydrodynamics of Free Surface Flows - Modelling with theFinite Element Method, John Wiley & Sons, 2007.
[6] Jovanovic, M., Osnove numerickog modeliranja ravanskih otvorenih tokova,Gradjevinski fakultet, Beograd, 1998.
[7] Koutitas, C.G., Elements of Computational Hydraulics, Pentech Press, 1983.
[8] Pinder G.F, Gray, W.G., Finite Element Simulation in Surface and Subsur-face Hudrology, Academic Press, 1977.
[9] Radojkovic, M., Klem, N., Primena racunara u hidraulici, Gradjevinska knji-ga, Beograd, 1989.
[10] Sekulovic, M., Metod konacnih elemenata, Gradjevinska knjiga, 1984.
[11] Zienkiewicz, O., C., Taylor, R., L., The Finite Element Method, Fourth Edi-tion, McGraw-Hill, London, New York, 1989.
34 Literatura
35
Dodatak 1
1. Tablica vrednosti integrala za jedinicni referentni linearni element:
∫ 1
−1N1 dξ =
∫ 1
−1
1
2(1 − ξ) dξ 1,0000
∫ 1
−1N2 dξ =
∫ 1
−1
1
2(1 + ξ) dξ 1,0000
∫ 1
−1N2
1 dξ =∫ 1
−1
1
4(1 − ξ)2 dξ
2
3= 0, 6666
∫ 1
−1N2
2 dξ =∫ 1
−1
1
4(1 + ξ)2 dξ
2
3= 0, 6666
∫ 1
−1N1 · N2 dξ =
∫ 1
−1[ 12(1 − ξ) · 1
2(1 + ξ)] dξ
1
3= 0, 3333
∫ 1
−1N2 · N1 dξ =
∫ 1
−1[ 12(1 + ξ) · 1
2(1 − ξ)] dξ
1
3= 0, 3333
∫ 1
−1
N1
dN1
dξdξ =
∫ 1
−1
1
2(1 − ξ)(−
1
2) dξ −
1
2= −0, 5000
∫ 1
−1
N1
dN2
dξdξ =
∫ 1
−1
1
2(1 − ξ)(
1
2) dξ
1
2= 0, 5000
∫ 1
−1
N2
dN1
dξdξ =
∫ 1
−1
1
2(1 + ξ)(−
1
2) dξ −
1
2= −0, 5000
∫ 1
−1
N2
dN2
dξdξ =
∫ 1
−1
1
2(1 + ξ)(
1
2) dξ
1
2= 0, 5000
∫ 1
−1
dN1
dξ
dN1
dξdξ =
∫ 1
−1
(
−1
2
)(
−1
2
)
dξ1
2= 0, 5000
∫ 1
−1
dN2
dξ
dN2
dξdξ =
∫ 1
−1
(
1
2
)(
1
2
)
dξ1
2= 0, 5000
∫ 1
−1
dN1
dξ
dN2
dξdξ =
∫ 1
−1
(
−1
2
)(
1
2
)
dξ −1
2= −0, 5000
36
2. Tablica vrednosti integrala za linijski linearni element:
∫
xi+1
xi
Ni dx =∆xi
2
∫ 1
−1
N1 dξ =∆xi
2· 1 =
∆xi
2
∫
xi+1
xi
Ni+1 dx =∆xi
2
∫ 1
−1
N2 dξ =∆xi
2· 1 =
∆xi
2
∫
xi+1
xi
N2i
dx =∆xi
2
∫ 1
−1
N21 dξ =
∆xi
2·2
3=
∆xi
3
∫
xi+1
xi
Ni · Ni+1 dx =∆xi
2
∫ 1
−1
N1 · N2 dξ =∆xi
2·1
3=
∆xi
6
∫
xi+1
xi
Ni+1 ·Ni dx =∆xi
2
∫ 1
−1
N2 · N1 dξ =∆xi
2·1
3=
∆xi
6
∫
xi+1
xi
N2i+1 dx =
∆xi
2
∫ 1
−1
N22 dξ =
∆xi
2·2
3=
∆xi
3
∫
xi+1
xi
N dx =
∫
xi+1
xi
Ni
Ni+1
dx =
∫
xi+1
xi
Ni dx
∫
xi+1
xi
Ni+1 dx
=
∆xi
2
∆xi
2
=∆xi
2
1
1
37
∫
xi+1
xi
N < N > dx =
∫
xi+1
xi
Ni
Ni+1
< Ni Ni+1 > dx =
=
∫
xi+1
xi
Ni dx
∫
xi+1
xi
Ni+1 dx
<
∫
xi+1
xi
Ni dx
∫
xi+1
xi
Ni+1 dx >=
=
∫
xi+1
xi
N2i
dx
∫
xi+1
xi
Ni Ni+1 dx
∫
xi+1
xi
Ni+1 Ni dx
∫
xi+1
xi
N2i+1 dx
=
=
∆xi
3
∆xi
6
∆xi
6
∆xi
3
=∆xi
3
[
1 1/2
1/2 1
]
∫
xi+1
xi
∂N
∂x·∂ < N >
∂xdx =
∫
xi+1
xi
∂Ni
∂xdx
∫
xi+1
xi
∂Ni+1
∂xdx
<
∫
xi+1
xi
∂Ni
∂xdx
∫
xi+1
xi
∂Ni+1
∂xdx >=
=
∫
xi+1
xi
∂Ni
∂x·∂Ni
∂xdx
∫
xi+1
xi
∂Ni
∂x·
∂Ni+1
∂xdx
∫
xi+1
xi
∂Ni+1
∂x·
∂Ni
∂xdx
∫
xi+1
xi
∂Ni+1
∂x·
∂Ni+1
∂xdx
=
=
1
∆xi
−1
∆xi
−1
∆xi
1
∆xi
=1
∆xi
[
1 −1
−1 1
]
38
Dodatak 2
!-----------------------------------------------------------------------------
! Program: K2mke
! Funkcija: Neustaljeno 1D filtraciono strujanje ka reci
! Opis: Jednacina izdani sa slobodnom povrsinom resava se
! metodom konacnih elemenata (linearni elementi)
! Autor: M.Jovanovic, 1983, 1992, 2000, 2004.
! Okruzenje: Visual Fortran, V.6.6
!-----------------------------------------------------------------------------
!-----------------------------------------------------------------------------
MODULE UlaznoIzlazniPodaci
implicit none
character(75) :: text ! identifikacija/komentar
integer, parameter :: maxcv = 1000 ! maks. broj cvorova
integer, parameter :: maxdt = 1000 ! maks. broj vremenskih koraka
integer :: i,n ! indeksi
integer :: ncv ! broj cvorova
integer :: ne ! broj elemenata
integer :: ndt ! broj racunskih koraka
integer :: nprint ! korak stampanja rezultata
integer :: it ! broj iteracije
real :: c ! konstanta
real :: ho ! pocetna dubina (pocetni uslov)
real :: qr ! filtracioni dotok u reku (Dupuit)
real :: t, dt ! vreme, vremenski korak
real :: sumqe ! ukupni dotok od kise
real, allocatable, dimension( :,: ) :: k ! matrica koeficijenata
real, allocatable, dimension( : ) :: b ! vektor slobodnih clanova
real, allocatable, dimension( : ) :: qe ! izvorni clan (dotok)
real, allocatable, dimension( : ) :: h ! dubina iz prethodnog rac. koraka
real, allocatable, dimension( : ) :: hn ! dubina iz tekuceg rac. koraka
real, allocatable, dimension( : ) :: xc ! polozaj cvora (stacionaza)
real, allocatable, dimension( : ) :: dx ! duzina elemenata
TYPE :: Izdani
real :: Kf ! koeficijent filtracije
real :: epor ! efektivna poroznost
END TYPE Izdani
TYPE( Izdani ) :: izdan
TYPE :: Kise
integer :: nii ! broj podataka
real, allocatable, dimension( : ) :: ii ! intenzitet kise
real, allocatable, dimension( : ) :: tt ! vreme
END TYPE Kise
TYPE( Kise ) :: kisa
39
contains
SUBROUTINE RacunskiParametri( ir1, iw2, iw3 )
integer, intent( in ) :: ir1, iw2, iw3
read ( ir1, "(A)" ) text
write( iw2, "(A)" ) text
write( iw3, "(A/)" ) text
write( iw3, "(9x,’t’,7x,’sumqe’,6x,’qr’)" )
read ( ir1, * ) ncv
if( ncv > maxcv ) stop ’Premasen broj cvorova!’
ne = ncv - 1
allocate( k( ncv,ncv ), b( ncv ), h( ncv ), hn(ncv) )
allocate( xc( ncv ), dx( ne ), qe( ncv ) )
read ( ir1, * ) ( dx( i ), i = 1, ne )
xc( 1 ) = 0.
do i = 2, ncv
xc( i ) = xc( i-1 ) + dx( i-1 )
enddo
read ( ir1, * ) izdan%Kf
read ( ir1, * ) izdan%epor
c = izdan%Kf / 2. / izdan%epor
read ( ir1, * ) ndt, dt, nprint
if( ndt > maxdt ) stop ’Premasen broj racunskih koraka!’
END SUBROUTINE RacunskiParametri
SUBROUTINE Rezultati( iw2, iw3 )
integer, intent( in ) :: iw2, iw3
write( iw2,"(//2x,’t=’,f10.3,’ it=’,i5,’ qr=’,f10.3/)" ), t,it,qr
write( iw2,"(9x,’x’,8x,’hn’)" )
do i = 1, ncv
write( iw2, "(2x,2f10.3)" ) xc(i), hn(i)
end do
write( iw3, "(2x,3f10.3)" ), t, sumqe, qr
END SUBROUTINE Rezultati
END MODULE UlaznoIzlazniPodaci
!-----------------------------------------------------------------------------
40
!-----------------------------------------------------------------------------
MODULE KonturniUslovi
use UlaznoIzlazniPodaci
contains
SUBROUTINE IzvorniClan( ir1 )
integer, intent( in ) :: ir1
read ( ir1, * ) kisa%nii
if( kisa%nii > ndt ) stop ’Broj podataka za izvorni clan?!’
allocate( kisa%ii( ndt ), kisa%tt( kisa%nii ) )
kisa%ii = 0.
read ( ir1, * ) ( kisa%ii( i ), i = 1, kisa%nii )
read ( ir1, * ) ( kisa%tt( i ), i = 1, kisa%nii )
END SUBROUTINE IzvorniClan
SUBROUTINE PocetniUslov( ir1 )
integer, intent( in ) :: ir1
read ( ir1, * ) ho
do i = 1, ncv
h( i ) = ho; hn( i ) = ho
enddo
END SUBROUTINE PocetniUslov
FUNCTION flin1( Nx, x, y, xx )
integer, intent( in ) :: Nx
real, dimension( Nx ), intent( in ) :: x, y
real :: xx, flin1
integer :: j, ip, ik
if( xx < x( 1 ) .or. xx > x( Nx ) ) stop ’Interpolacija?’
do j = 2, Nx
if( xx <= x( j ) ) then
ip = j - 1; ik = j; exit
endif
enddo
flin1 = y(ip) + ( y(ik) - y(ip) )/( x(ik) - x(ip) ) * (xx - x(ip) )
END FUNCTION flin1
END MODULE KonturniUslovi
!-----------------------------------------------------------------------------
41
!-----------------------------------------------------------------------------
MODULE MKE
use KonturniUslovi
contains
SUBROUTINE GlobalnaMatrica
k = 0. ! inicijalizacija
do i = 1, ne
k( i,i ) = k( i,i ) + dx( i ) / 3.
k( i,i+1 ) = k( i,i+1 ) + dx( i ) / 6.
k( i+1,i ) = k( i+1,i ) + dx( i ) / 6.
k( i+1,i+1 ) = k( i+1,i+1 ) + dx( i ) / 3.
enddo
END SUBROUTINE GlobalnaMatrica
SUBROUTINE VektorSlobodnihClanova
b = 0. ! inicijalizacija
do i = 1, ne
b( i ) = b( i ) + ( h( i ) / 3. + h( i+1 ) / 6. ) * dx( i ) &
- c * dt / dx( i ) * ( h( i )**2 - h( i+1 )**2 ) &
+ qe( i ) * dt / 2.
b( i+1 ) = b( i+1 ) + ( h( i ) / 6. + h( i+1 ) / 3. ) * dx( i ) &
- c * dt / dx( i ) * ( - h( i )**2 + h( i+1 )**2 ) &
+ qe( i ) * dt / 2.
enddo
END SUBROUTINE VektorSlobodnihClanova
SUBROUTINE GaussSeidel
integer, parameter :: itmax = 100 ! maks. broj iteracija
real :: Temp, Dif, Difmax ! racunski parametri
real, parameter :: eps = 1.e-4 ! tacnost
do it = 1, itmax
Difmax = 0.
do i = 2, ne
Temp = hn( i )
hn( i ) = ( b( i ) - k( i,i-1 ) * hn( i-1 ) &
- k( i,i+1 ) * hn( i+1 ) ) / k( i,i )
Dif = ABS( Temp - hn( i ) )
if( Dif > Difmax ) Difmax = Dif
enddo
if( Difmax <= eps ) return
enddo
stop ’Premasen broj iteracija!’
END SUBROUTINE GaussSeidel
END MODULE MKE
!-----------------------------------------------------------------------------
42
PROGRAM K2mke
use MKE
character(12) :: datio, datu1, dati2, dati3
print "(5x,A)", "Ime fajla sa imenima I/O fajlova? "
read "(A)", datio
open( unit = 10, file = datio, status = "old" )
read( 10, "(A)" ) datu1 ! ulazni podaci
read( 10, "(A)" ) dati2 ! rezultati hn(x,t)
read( 10, "(A)" ) dati3 ! rezultati qr(t)
open( unit = 1, file = datu1, status = "old" )
open( unit = 2, file = dati2, status = "replace" )
open( unit = 3, file = dati3, status = "replace" )
call RacunskiParametri( 1, 2, 3 )
call IzvorniClan( 1 )
t = 0.
call PocetniUslov( 1 )
call GlobalnaMatrica
do n = 1, ndt ! ciklus po vremenu
t = t + dt
q = flin1( kisa%nii, kisa%tt, kisa%ii, t )
sumqe = 0.
do i = 1, ne
qe( i ) = q * dx( i ) ! izvorni clan (kisa->dotok)
sumqe = sumqe + qe( i )
enddo
qe( ncv ) = qe( ne )
call VektorSlobodnihClanova
call GaussSeidel; hn( 1 ) = hn( 2 )
if( n / nprint * nprint == n) then
qr = izdan%Kf * hn( ncv ) * ( hn( ne ) - hn( ncv ) ) / dx( ne )
call Rezultati( 2, 3 )
endif
do i = 1, ncv ! prenos promenljive
h( i ) = hn( i )
enddo
enddo
close( 1 ); close( 2 ); close( 3 ); close( 10 )
END PROGRAM K2mke
43
Fajl ,,K2mke.iof"
K2mke.dat ulazni podaci
K2mke.rez rezultati h(x,t)
K2mke.req rezultati qr(t)
Fajl ,,K2mke.dat"
Primer za program K2mke
21 ncv - broj cvorova
9*200 7*100 4*25 dx - duzine elemenata [m]
50 Kf - koef.filtracije [m/h]
0.4 epor - efektivna poroznost [-]
300, 1, 10 ndt [-], dt [h], nprint [-]
4 nqt - broj podataka za izvor
0 0.01 0 0 qq - intenzitet kise [m/h]
0 40 80 1000 tt - vreme [h]
1 ho - pocetni nivo u izdani [m]