ABC 1

Embed Size (px)

Citation preview

Mclc1 Giithiu 62 Hphngtrnhtuyntnhvphngphpgiitrctip 92.1 Phn tch nhy ca nghim . . . . . . . . . . . . . . . . . . . . . . 92.2 Phn tch sai s thut ton . . . . . . . . . . . . . . . . . . . . . . . . 112.2.1 Php tnh du chm ng . . . . . . . . . . . . . . . . . . . . 112.2.2 Sai s lm trn ca cc php tnh c bn. . . . . . . . . . . . 112.3 Phn tch LU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132.3.1 Phn tch LU c pivot . . . . . . . . . . . . . . . . . . . . . . 152.3.2 Sai s ca thut ton LU . . . . . . . . . . . . . . . . . . . . . 173 Matrnthavccphngphpgiilp 193.1 Biu din th ca ma trn tha . . . . . . . . . . . . . . . . . . . . 203.2 Hon v v sp li . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203.2.1 Cc php sp li in hnh. . . . . . . . . . . . . . . . . . . . 223.3 Lu tr ma trn tha . . . . . . . . . . . . . . . . . . . . . . . . . . . 223.4 Ton t chiu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243.4.1 Biu din ma trn ca ton t chiu . . . . . . . . . . . . . . 263.4.2 Ton t chiu vung gc . . . . . . . . . . . . . . . . . . . . . 263.4.3 Tnh cht ca ton t chiu . . . . . . . . . . . . . . . . . . . 273.5 Trc giao ha Householder . . . . . . . . . . . . . . . . . . . . . . . . 283.6 Phng php chiu . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303.6.1 Mt m t hnh hc ca phng php chiu . . . . . . . . . . 343.6.2 Phng php ng dc nht (steepest descent) . . . . . . . . 353.6.3 Phng php s d nh nht . . . . . . . . . . . . . . . . . . 353.6.4 Phng php ng dc nht cho s d . . . . . . . . . . . . 363.7 Phng php khng gian con Krylov . . . . . . . . . . . . . . . . . . 363.7.1 Mt s tnh cht ca khng gian con Krylov . . . . . . . . . . 373.7.2 Xy dng c s cho khng gian con Krylov. . . . . . . . . . . 383.7.3 Phng php GMRES . . . . . . . . . . . . . . . . . . . . . . 403.7.4 Phng php Conjugate Gradient . . . . . . . . . . . . . . . . 424 Ccmhnhtnhtonsongsong 464.1 Phm vi ng dng . . . . . . . . . . . . . . . . . . . . . . . . . . . . 474.2 Cc khi nim c bn . . . . . . . . . . . . . . . . . . . . . . . . . . . 484.2.1 Cu trc my tnh von Newman . . . . . . . . . . . . . . . . . 481Chng 0 MC LC4.2.2 M hnh thc thi chng trnh . . . . . . . . . . . . . . . . . . 494.3 Cc m hnh b nh song song . . . . . . . . . . . . . . . . . . . . . . 494.3.1 B nh chia s . . . . . . . . . . . . . . . . . . . . . . . . . . 494.3.2 B nh phn tn . . . . . . . . . . . . . . . . . . . . . . . . . 514.3.3 M hnh b nh lai . . . . . . . . . . . . . . . . . . . . . . . . 514.4 Cc k thut lp trnh song song . . . . . . . . . . . . . . . . . . . . . 524.4.1 Lp trnh song song dng MPI . . . . . . . . . . . . . . . . . 534.4.2 Lp trnh song song dng OpenMP. . . . . . . . . . . . . . . 534.5 Thit k chng trnh song song. . . . . . . . . . . . . . . . . . . . . 544.5.1 Phn hoch vng chc nng v d liu . . . . . . . . . . . . . 544.5.2 Giao tip . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 554.5.3 Cn bng ti . . . . . . . . . . . . . . . . . . . . . . . . . . . 564.6 Phn tch hiu qu ca mt chng trnh song song . . . . . . . . 565 Preconditioningmatrn 585.1 Preconditioning cho phng php Conjugate Gradient . . . . . . . . . 585.2 Preconditioning cho phng php GMRES. . . . . . . . . . . . . . . 595.3 Cc k thut Preconditioning . . . . . . . . . . . . . . . . . . . . . . . 606 Bitonbindngnhituyntnh 636.1 M t ton hc ca bi ton tnh bin dng . . . . . . . . . . . . . . 636.2 Phng php phn t hu hn . . . . . . . . . . . . . . . . . . . . . 687 Chngtrnhtnhton 707.1 Cu trc chng trnh . . . . . . . . . . . . . . . . . . . . . . . . . . 707.1.1 Cc lp tru tng . . . . . . . . . . . . . . . . . . . . . . . . 707.1.2 Cc lp k tha. . . . . . . . . . . . . . . . . . . . . . . . . . 707.1.3 M t d liu u vo . . . . . . . . . . . . . . . . . . . . . . 717.1.4 S class . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 737.1.5 Solver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 767.2 Kt qu tnh ton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 817.2.1 Bi ton 1 - Tnh ton bin dng cho chi tit dm . . . . . . . 817.2.2 Bi ton 2 - Tnh ton bin dng cho chi tit hnh ch L . . . 838 Ktlunvhngphttrincati 85AMchngtrnhPhnt huhn 88A.1 FemBrick.h . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88A.2 FemBrick.cpp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91A.3 FemBrickLE.h. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99A.4 FemBrickLE.cpp . . . . . . . . . . . . . . . . . . . . . . . . . . . . .101A.5 FemElementLE.h . . . . . . . . . . . . . . . . . . . . . . . . . . . . .107A.6 FemElementLE.cpp. . . . . . . . . . . . . . . . . . . . . . . . . . . .113A.7 FemLEDefine.h . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .131BMchngtrnhPetscSolver 133Bi Hong Giang 2 Lun vn thc sDanhschbng2.1 Thut ton xy dng dy ma trnMi . . . . . . . . . . . . . . . . . . 142.2 Thut ton phn tch LU . . . . . . . . . . . . . . . . . . . . . . . . . 142.3 Thut ton LU c pivot (partial pivoting) . . . . . . . . . . . . . . . 162.4 Thut ton LU vi pivot y (complete pivoting) . . . . . . . . . 173.1 Gii thut Cuthill-McKee . . . . . . . . . . . . . . . . . . . . . . . . 223.2 Thut ton khi phc li ma trn gc t dng CSR. . . . . . . . . . 243.3 Thut ton trc giao ha Householder . . . . . . . . . . . . . . . . . 303.4 Thut ton mu cho phng php chiu . . . . . . . . . . . . . . . . 323.5 Thut ton ng dc nht . . . . . . . . . . . . . . . . . . . . . . . 353.6 Thut ton s d nh nht . . . . . . . . . . . . . . . . . . . . . . . . 363.7 Thut ton ng dc nht cho s d . . . . . . . . . . . . . . . . . . 363.8 Thut ton Arnoldi xy dng s s cho khng gian con Krylov. . . . 383.9 Thut ton Arnoldi sa i . . . . . . . . . . . . . . . . . . . . . . . 393.10Thut ton Householder . . . . . . . . . . . . . . . . . . . . . . . . . 403.11Thut ton GMRES . . . . . . . . . . . . . . . . . . . . . . . . . . . 413.12Thut ton GMRES . . . . . . . . . . . . . . . . . . . . . . . . . . . 423.13Gii thut Lanczos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 433.14Gii thut CG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 433.15Gii thut CG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455.1 Gii thut CG vi Preconditioning . . . . . . . . . . . . . . . . . . . 595.2 Thut ton GMRES vi preconditioning . . . . . . . . . . . . . . . . 605.3 Thut ton ILU(0) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 615.4 Thut ton ILU(p) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 627.1 Kch thc li tnh ton . . . . . . . . . . . . . . . . . . . . . . . . . 837.2 Kt qu tnh ton trn my P4 2.26Ghz 512Mb RAM. . . . . . . . . 843Danhschhnhv3.1 Mt v d v ma trn tha. . . . . . . . . . . . . . . . . . . . . . . . 193.2 Mt v d v th v ma trn k . . . . . . . . . . . . . . . . . . . . 203.3 th ca ma trn tha hnh 3.1 . . . . . . . . . . . . . . . . . . . . 213.4 Ma trn k ca th trc v sau gii thut Cuthill-McKee . . . . . 233.5 Hnh chiu cax lnMv vung gc viL . . . . . . . . . . . . . . 253.6 Ton t chiu vung gc . . . . . . . . . . . . . . . . . . . . . . . . . 263.7 Minh ha cho iu kin trc giao . . . . . . . . . . . . . . . . . . . . 313.8 Minh ha mt phng php chiu trong trng hp 2D. . . . . . . . 344.1 M hnh tnh ton tun t. . . . . . . . . . . . . . . . . . . . . . . . 464.2 M hnh tnh ton song song . . . . . . . . . . . . . . . . . . . . . . . 474.3 ng dng ca tnh ton song song . . . . . . . . . . . . . . . . . . . . 484.4 M hnh my tnh von Newman . . . . . . . . . . . . . . . . . . . . . 484.5 M hnh thc thi MIMD. . . . . . . . . . . . . . . . . . . . . . . . . 494.6 M hnh b nh ng nht. . . . . . . . . . . . . . . . . . . . . . . . 504.7 M hnh b nh khng ng nht . . . . . . . . . . . . . . . . . . . . 504.8 M hnh b nh phn tn . . . . . . . . . . . . . . . . . . . . . . . . 514.9 M hnh b nh lai . . . . . . . . . . . . . . . . . . . . . . . . . . . . 524.10M hnh thc thi ca OpenMP . . . . . . . . . . . . . . . . . . . . . 544.11Phn chia d liu s trong mt chng trnh song song . . . . . . . . 544.12Phn chia lung chng trnh . . . . . . . . . . . . . . . . . . . . . . 554.13 th ca lut Amdahl cho 1 chng trnh song song ha . . . . . . 564.14 th ca lut Amdahl cho 1 chng trnh song song ha tnh n s lng m chng trnh6.1 Minh hc cho vector chuyn v theo qui c Lagrange. . . . . . . . . 636.2 Cc thnh phn ca tensor ng sut . . . . . . . . . . . . . . . . . . 646.3 Minh ha chia li v nh s nt cc phn t . . . . . . . . . . . . . 697.1 S class cho lp Model v FemBrick . . . . . . . . . . . . . . . . . 737.2 S class cho lp FemMaterial v cc lp k tha . . . . . . . . . . 747.3 S class cho lp c d liu v Solver . . . . . . . . . . . . . . . . 757.4 S class cho cc lp tnh ton trn phn t t gic. . . . . . . . . 767.5 M hnh chi tit 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 817.6 Bin dng ca chi tit di tc dng ca ti trng. . . . . . . . . . . 827.7 Bin dng ca chi tit di tc dng ca ti trng (tnh bng Ansys) 827.8 M hnh chi tit 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 837.9 Chia li cho chi tit 2 . . . . . . . . . . . . . . . . . . . . . . . . . . 834Chng 0 DANH SCH HNH V7.10Bin dng ca chi tit . . . . . . . . . . . . . . . . . . . . . . . . . . 84Bi Hong Giang 5 Lun vn thc sChng1GiithiuMctiuvnidungnghincuMctiucati ltmhiuphngphpsongsonggii hphngtrnhtuyn tnh cho bi ton c hcAx = b (1.1)Trong ,A Mn[R], x Rn, b Rn.Nhbit,phngtrnh(1.1)lktquphntchsaucngcartnhiuvn trong l thuyt v thc tin sau nhng php ri rc ha v lp ghp ma trn cngphnt(VD: FEM, BEM,. . . ). cbitltrongbitonchctnhbindngnhicaktcu.Victmramtcchgiihiuquvthigianvbnh l iu cn thit, tuy nhin rt kh tm ra mt phng php chung cho ttc cc kiu bi ton v thc t l khng th tm ra c phng php nh vy. Saurtnhiunlccaccnhtonhc,mtsphngphpcchngnhnlhiu qu c ra cho nhng kiu ma trn ring nh ma trn tha, ma trn khic cutrc c bit,. . . Victm ra mt phngphphiuqucho tngbi toncn nhng kho st c th v nhiu tnh ton th nghim. Trong lun vn ny, tcgi kho st nhng phng php hiu lc sn c dnh cho h phng trnh tuyntnhvi matrnthavtmhiucchthcgiisongsongtrnclusterdatrnnhng phng php ny. C th hn, tc gi gii mt bi ton c th l bi tontnh bin dng n hi tuyn tnh ca kt cu s dng phng php lp (ConjugateGradient&GMRES)vsdngmtphngphptrc tipsosnhktqu.Da trn kt qu thu c, bi ton s c tnh li trong Ansys kim nghim chnh xc. Ansys c chn v y l phn mm c chng nhn c tronggii hn lm v k thut.TnhhnhvphmvinghincuTnh n thi im hin nay, cc phng php c in c nghin cu y trong cc cng trnh ca cc tc gi ln (nh Golub & van Loan [6], Ke Chen [4]).Rt nhiu code c pht trin gii h phng trnh tuyn tnh theo phngphp trc tip nh Lapack, UmfPack v c hiu nng rt cao vi ma trn c kch ctrung bnh. Cc code ny cng c tinh chnh trong mt s h thng phn cng6Chng 1c th t c nhng hiu nng vt tri. Cc phng php lp cng cnghincurtsu(chnghnSaad[1]), cngvi nhngphngphplp(CG,BiCG,. . . )vpreconditioningmatrn,torartnhiucngcchocck svnh khoa hc thc hin tnh ton. Hn na, nu ma trn l tha v c cu trc cbit (ba ng cho) hoc c nhng tnh cht c bit (i xng xc nh dng)th tn ti nhng phng php hiu qu gii. Mt khc, c nhng cch chnphng php hiu qu trong thng k v ti u ha trong ma trn tha c cutrc c th v gn suy bin. Tuy nhin cha c mt phng php no thc s hiuqu cho mi loi bi ton.NhngnggpmicalunvnLun vn thc hin nghin cu nhng gii thut lp c sn cng cch song song hathut ton trn cluster gii bi ton tnh bin dng n hi. Mt thc t l chac nhiu nghin cu p dng tnh ton song song cho nhng bi ton dng ny. CcphnmmcsnnhAnsysch htrtnhtonsongsongchonhnghthngc thm khng c sh tr kh chuynv rng ri. Mt im mnh calunvn l thit lp c gi phn mm tnh ton phn t hu hn cho bi ton c hchiu qu trn C++. Lu rng vi s tinh vi v phc tp ca phng php phnt hu hn, khng c nhiu code m ngun m c h tr. Mc ch ca tc gikhi vit code l nhm phc v nghin cu v cng c kh nng m rng cho nhngloi bi ton khc. Hn na tnh kh chuyn v d hiu cng c cn nhc nhmhng ti mc tiu m ngun m trong tng lai.TngquanvphngphpPhngphpthngdngnhtgiihphngtrnhtuyntnhlccphngphpcin:khGauss,phntchLU,phntchCholesky,. . . Ccphngphpny c c im:Bao gm 2 giai on: ma trn A c phn tch thnh cc nhn t mt cchtrc tip hoc gin tip. y l bc tnh ton lu v chim nhiu thi gian.Trong bc th 2, bi ton c gii da theo cc nhn t c phn tch.S lng php tnh v b nh cn cho php gii trc tip ph thuc vo lytha bc 2 hoc bc 3 ca s chiu ma trn. iu ny rt kh chp nhn khigii cc bi ton ln khi s chiu ma trn thng rt ln.Trong vicgii quyth phngtrnhtuyntnhvima trntha, phngphplp cng t ra khng hiu qu v php phn tch LU hoc Cholesky lm mt i tnhchtthacamatrn,lmchokchthcbnhcnthitb tngln. Vnny gi l fill-in. gii quyt fill-in cn tm mt ma trn h s nhm gi nguyntnh chttha cacc matrn nhn t.Trong mt s trng hpma trn h sny khng tn ti hoc rt kh tnh ton. Trong trng hp ma trn A gn suybin, phng php trc tip cng t ra khng hiu qu. gii quytcc vn ca phng php trc tip, phng php lp c raBi Hong Giang 7 Lun vn thc sChng 1nhm a n kt qu chnh xc trong mt thi gian xc nh chp nhn c.Trong bclp thn,phngphplptnhxpxnghimxncanghimchnhxc ca phng trnhx= A1b. Vect sai s c xc nh birn= b Axn(1.2)Vectsai sxcnhmcttcanghimvcsdnglmnntngchobc tnh tip theo. Mc tiu ca phng php lp l lm cho vectsai s hi tv vect0. Lc vectnghim xpxs xp xgn tt nht nghim chnhxc.V hiu qu v mt phc tp tnh ton, cc phng php lp c ra vi phc tp tnh ton thp hn(n3) nhm tt hn phng php trc tip. Ngoira, nhm ci thin mc tt ca ma trn A khi ma trn A gn suy bin, mt sma trn h s c tnh ton tng tc hi t v ci thin sai s ca li gii, l cc phng php preconditioning ma trn.Bi Hong Giang 8 Lun vn thc sChng2HphngtrnhtuyntnhvphngphpgiitrctipXt h phng trnh tuyn tnh (1.1), trng hp A khng suy bin, nghim ca hlx=A1b. Nu A suy bin th hoc (1.1) c v s nghim nub Ran(A) hocv nghim nub/ Ran(A).2.1 PhntchnhycanghimGi s A l ma trn vung c chiunn v khng suy bin. Ta cn tm nghimca phng trnh(A + E)x() = b + e x(0) = x (2.1)Trong l mt i lng nh ty . iu ny hay gp phi khi cc d liu thcnghimcsai sdnnphngtrnhmatrncmtsai snhsovi gitrchnh xc. Hoc mt trng hp d thy hn khi tnh ton ma trn trn my tnhdng php tnh du chm ng, cc h s caA vb ch l gi tr xp x m mytnh c th biu din c. Trong trng hp ny, ta ni h (1.1) b nhiu.t() = x() x. Khi (A+ E)() = (b + e) (A+ E)x = (e Ex) (2.2)() = (A+ E)1(e Ex) (2.3)Ly o hm cax() ti = 0, ta c x(0) = lim0()

= A1(e Ex) (2.4)Ly khai trin Taylor cax() ti 0:x() = x + x(0) + O(x2) (2.5)T y, ta c c lng sai s tng i ca nghim|x() x||x| [[|A1|

|e||x|+|E|

+ O(2) (2.6)9Chng 2 Phn tch nhy ca nghimnh ngha s iu kin ca ma trn A(A) = |A||A1| (2.7)Lu rng(A) = nu A suy bin. S dng bt ng thc |b| |A||x|, (2.6)dn n|x() x||x| (A)(A + b) + O(2) (2.8)Vi A=[[|E||A|vb=[[|e||b|lccsaistngicaAvb.Tbtngthc (2.8) dn nsai s tng i cax c th bng(A) ln tng sai s tngi caA vb. iu chng t rng s iu kin(A) c lng nhy ca h.Mt h c gi l ill-condition nu s iu kin ln v ngc li.Lu rng (2.8) c ly vi chun bt k. Mt cch r rng, ta c th chng minhcc s iu kin tng ng nhau trong cc chun khc nhau. Tht vy vi 2 chun vbt k, lun tm cc1 vc2 sao choc1(A) (A) c2(A) A Rnn(2.9)Vi cc chun thng dng, ta c1n2(A) 1(A) n2(A) (2.10)1n(A) 2(A) n(A) (2.11)1n21(A) (A) n21(A) (2.12)V vy nu h ill-condition vi chun th cng s ill-condition so vi chun.Nh ta bit, mt ma trn suy bin c nh thc bng 0. Tuy nhin ln canhthc khngbiuthmcgnsuybincamatrn.iucth thyqua vic mt s ma trn c nh thc xp x 0 nhng c s iu kin bng 1. Chnghn ma trnDn= diag(101, . . . , 101) (2.13)c (Dn) = 1 nhngdet(Dn) = 10n. Trn thc t ta c th thay i nh thc caA m khng lm thay i s iu kin. Lu rngdet(A) = ndet(A) (2.14)V(A) = (A) (2.15)Trong cc php tnh lp, ta thng xp x nghimx bng x. Lc A x = b, ta cA(x x) = b b (2.16)x x = A1(b b) (2.17)|x x| |A1||b A x| = |A1||r| (2.18)Ax = b |A||x| |b| |x| |A|1|b| (2.19)(2.18)(2.19) |x x||x| |A||A1||r||b|= (A)|r||b|(2.20)Bt ng thc (2.20) hay c s dng nh gi sai s trong cc qu trnh lp.Bi Hong Giang 10 Lun vn thc sChng 2 Phn tch sai s thut ton2.2 PhntchsaisthuttonNh phn tch trn, my tnh ch c th biu din s thc vi chnh xc huhn. V vy s thc trn my tnh lun c lm trn. Trong qu trnh tnh ton,cc kt qu trung gian cng c lm trn theo m hnh s thc ca my tnh. Chonn mi php ton trn my tnh u c sai s. Tnh ton ma trn gm phn lncc php tnh cng v nhn trn cc phn t ca cc ma trn i s. V vy sai stchlysxyra.Phnnytaskhostmhnhsthcduchmngcamy tnh v sai s ca cc php tnh trn my tnh2.2.1 PhptnhduchmngMt h thng s chm ng c c trng bi 4 tham s: c s, chnh xct,v phm vi ca phn m[L, U]. S du chm ngfc dngf= .d1d2. . . die, 0 di , d1 = 0, L e U, i t (2.21)chnhxctbiuthslngkstiaphnnhtrmhthng cthbiu din ng. Ta cng cm [f[ M, trong m = L1vM= U(1 t) (2.22)Khi mt php tnh cho kt qu ln hnM, ta ni php tnh b trn trn (overflow)cn nu kt qu nh hnm, php tnh b trn di (underflow).HthngsduchmngcaccmytnhhinnaytuntheochunIEEE754-1985. Theo chun IEEE 754, s du chm ng chnh xc n c lu trvi 32bit, trong24bitdngchophnnhtr v8chophnm. NhvyL = 2128 1038vU= 2127 1038. S du chm ng vi chnh xc kp luvi 64 bit (53 bit nh tr v 11 bit s m).253 1016nn s vi chnh xc kpc th biu din chnh xc ti 16 k s. ln s du chm ng chnh xc kp t21024 10308ti21023 10308. Chun IEEE 754 cng qui nh cch x l vi cctrng hp c bit nh trn trn, trn di v chia cho 0.2.2.2 SaislmtrncaccphptnhcbnGifl(C) l kt qu tnh ton theo du chm ng ca php tonC. V my tnhlm trn nnfl(C) = C +e vie l sai s tuyt i ca php ton. Ta cng c thvitfl(C) = C(1 + ) (2.23)Vi lsai stngi caphpton. Ccmytnhhini cthitk u =12101s. V vyu c xem l cn trn ca mi sai s tng i.Ngoi ra, v s hu hn ca h thng du chm ng, nn cc tham s u vo cngblm trn.Gi xlgi trthamscntnhtonthtrongbnhmytnh, xc lu bi x = x(1 + x), trong [x[ p bng 012. endThut ton 5.4: Thut ton ILU(p)Bi Hong Giang 62 Lun vn thc sChng6BitonbindngnhituyntnhBi ton tnh bin dng l bi ton c bn ca c hc vt rn bin dng. Trong mcny ta s kho st cc khi nim c bn v c s l thuyt ca bi ton ny.6.1 MttonhccabitontnhbindngnhnghavtthrnlmtthtchlintcR3.Mtimtrongvtthrn c ta X . Di tc ng ca ngoi lc, vt th b bin dng, cc imvt liu trong vt th s dch chuynv tr trong khng gian. Theo qui tc k hiuLagrange, mt im (X, Y, Z) s chuyn n v tr (x, y, z). Theo s xc nh mtvector chuyn vu = [ux, uy, uz] = [x X, y Y, z Z]Trong ux= x X, uy= y Y, uz= z Z.Hnh 6.1: Minh hc cho vector chuyn v theo qui c LagrangeTensor ng sut l tensor bc hai c trng cho trng thi ng sut ca mt im63Chng 6 M t ton hc ca bi ton tnh bin dngtrong vt th=

xxxyxzyxyyyzzxzyzzHnh 6.2: Cc thnh phn ca tensor ng sutTensor bin dng cng l tensor bc hai c trng cho mc bin dng =

xx

xy

xz

yx

yy

yz

zx

zy

zzCc thnh phn ca tensor bin dng l cc chuyn v trn n v di. Di dngtensor, quan h gia tensor bin dng v vector chuyn v nh sau = su =12(u +u)Hay =

uxX12(uxY+uyX )12(uxZ+uzX )12(uyX+uxY)uyY12(uyZ+uzY)12(uzX+uxZ )12(uzY+uyZ )uzZ(6.1)iu kin cn bng moment trong vt th xc nh l tensor i xng (=T). Ta cng d thy rng cng l tensor i xng. Trong phm vi tnh ton, ta quinh cc vector ng sut v vector bin dng=

xxyyzzxyyzxz =

xx

yy

zz2xy2yz2xzBi Hong Giang 64 Lun vn thc sChng 6 M t ton hc ca bi ton tnh bin dngT (6.1), ta suy ra

xx

yy

zz2xy2yz2xz=

X0 00Y00 0ZYX00ZYZ0X

uxuyuz= D

u (6.2)Vivtliunhituyntnhnghng,tensorngsutvtensorbindngtun theo nh lut Hook= C:Hay di dng vector=C (6.3)Vi Cl ma trn vt liuC=E(1 + )(1 2)

1 0 0 01 0 0 01 0 0 01220 01220sym122(6.4)Trong El mun n hi,l h s Poisson ca vt liu. xc nh mt trng thi c hc ca vt th, ta cn xc nh cc vectoru, , .T (6.1) v(6.3) ta c c hai phng trnh xc nh quan h gia vu v v. Ta cn tm thm mt phng trnh giau, v. Ta c phng trnh cnbng lc trong vt th nh sau u1=xxX+xyY+xzZ+ b1 u2=yxX+yyY+yzZ+ b2 u3=zxX+zyY+zzZ+ b3Vi b= [b1, b2, b3] l vector lc khi (trng lc, lc t trng,. . . ) tc ng ln vtth. lkhi lngringcavtliu. Phngtrnhtrncthvitdi dngvector di dng vector u = div + b (6.5)Ba phng trnh (6.1),(6.3), (6.5) xc nh y trng thi ng sut v chuyn vtrong vt th c vt liu ng nht ng hng. Tuy nhin, do s xut hin ca ccton t vi phn theo khng gian v thi gian nn ta cn iu kin bin v iu kinu xc nh cc hng s tch phn. Vi bi ton c hc, ta c cc iu kin binDirichlet v Neumann.iu kin bin Dirichletu(X, t) = u(X, t)X uBi Hong Giang 65 Lun vn thc sChng 6 M t ton hc ca bi ton tnh bin dngTrong phm vi lun vn ny, ta ch xt iu kin bin Dirichlet ng nhtu(X, t) = 0X uiu kin bin Neumann(X, t).n =t(X, t)X iu kin uu(X, t0) =u0(X)X Trong iu kin u, thng thngt0= 0.Ccphngtrnhchcvcciukinbin, iukinugi ldngmnh(strong form) ca bi ton tnh bin dng. Trn thc t, dng mnh ch ph hp khiiu kin bin n gin (bin ca bi ton khng qu phc tp) v khi s d dngtm cnghimgiitchc thchoiukinbin. Khiiukinbintrnnphc tp (binkhng lintc,bincdng hnhhc bt k)th victm nghimgii tch tr nn khng kh thi. V vy ta ch c th tm c nghim gn ng datrn ri rc ha bi ton v s dng cc phng php s. Mt trong nhng phngphphiuqunht giibitontnhbindnglphngphpphnthuhn(FEM).PhngphpFEMgiignngtrngchuynvcavtthditc ng ca ngoi lc thng qua vic tm nghim xp x ca dng yu ca h ccphng trnh (6.1), (6.3), (6.5). Vic tm dng yu da trn nguyn l cng o. yl nguyn l h qu ca nguyn l di chuyn kh d v c xem l ng cho mi ch trong cng kh d do ngoi lc sinh ra phi bng bin thin nng lng trongch.Mtiucnlultach xtccchbotonnghalccthngsnhit ng nh nhit , entropy l hng s.Nguyn l cng oWdyn + Wint= Wext(6.6)Trong Wdyn=

u udVl ng nng ca c hWint=

dVl nng lng bin dng, vWext=

ubdV+

utdAl cng ngoi lc.i vi bi ton tnh, u=0Wdyn=0. Lc khi b thng l trng lc. Trongthc t, tc ng bi trng lc thng c b qua v n rt nh so vi tc ngca cc ngoi lc khc, v vyWext =

utdABi Hong Giang 66 Lun vn thc sChng 6 M t ton hc ca bi ton tnh bin dngV vy dng yu ca bi ton bin dng tr thnh

dV=

utdA (6.7)T (6.1) v (6.3) ta c = D

u = C =CD

uV vy(6.7)

uDT

CD

udV=

utdA (6.8)Theo Galerkin, ta xp x trng chuynv u bng hm ni suy chuynv ti mts hu hn im trong min c h ang xt ()u = NT u (6.9)Trong u =[u1, . . . , un] l ma trn chuyn v ti cc im xp x trong min vNl ma trn hm dng.Vit (6.8) di dng ma trn(6.8)

(u)TDT

CD

udV=

(u)TtdA

( u)TNDT

CD

NT udV=

( u)TNtdA (6.10)Trong cng thc trn u l hng s nn(6.10) ( u)T

NDT

CD

NT udV= ( u)T

NtdA

NDT

CD

NT udV=

NtdA

NDT

CD

NTdV

u =

NtdA (6.11)Ta c(6.11) K u =F (6.12)ViK=

NDT

CD

NTdV (6.13)l ma trn cng ca c h vF=

NtdA (6.14)l ma trn lc tc dng ln c h.Phng trnh (6.12) l phngtrnh c bn gii bi ton bindng tnh v cth p dng cc k thut gii h tuyn tnh (trc tip, lp, . . . ) gii.Bi Hong Giang 67 Lun vn thc sChng 6 Phng php phn t hu hn6.2 Phngphpphnt huhnTrng tm ca cc suy din trn nhm tnh ton ma trn cng v vector lc lhm ni suy (6.9). Cc phng php khc nhau (Mesh Free, FEM, XFEM) c cccch chn hm ni suy khc nhau. Trong phm vi ca lun vn, phng php phnt hu hnc cp nhm chnhm ni suy v thit lpcc iukintngng gii h (6.12).u tin, mt tp im c chn trong min ang xt. Mc ch cui cng caphng php l tnh chnhxc cc gi tr chuynv ti cc im ny v datrncng thc ni suy (6.9), a n mt xp x "kh d" cho chuyn v trn ton min.Gi tp cc im c chn lX= X1, . . . ,Xn, vit li (6.9)u =ni=1Ni(X) ui(6.15)Cc hm dngNi(X) c chn sao cho (Galerkin)Ni( Xj) = ijNi(X) H10() phc v cho tnh tch phn (6.13) v (6.14), min c chia thnh cc phnt (chia li). Hm dng ti mi nh ca mi phn t s l hm dng ti nh trongminnhngch tcnglnphnttrongphmvi caphnt. KhiuIje= i1, . . . , ik, j 1, . . . , ne l k hiu cc nt (nh) ca phn t thjNi( Xj) = iji, j Ie ue=iIeNi(X) XiVic chia li phi tha mn =nej=1jeje ke= j= kBi Hong Giang 68 Lun vn thc sChng 6 Phng php phn t hu hnHnh 6.3: Minh ha chia li v nh s nt cc phn tT , cng thc tnh ma trn cng tr thnhK=nej=1Kje(6.16)ViKje=

jeNeDT

CD

NTe dV (6.17)Tng t cho vector ngoi lcF=nej=1FjeFje=

j,eNetdALu rng hm dng ch khc 0 ti nh tng ng v vi qui trnh ri rc ha trn, ta c th tnhma trn cngcho tng phnt sau chngchp li voma trn cng ton cc theo th t cc nt. Ta gi l qu trnh lp ghp matrn.Bi Hong Giang 69 Lun vn thc sChng7ChngtrnhtnhtonChng trnh c thit k nhm tnh ton chuyn v ca vt th di ngoi lc tcdng.Chngtrnhcmodule haringnhm biudinktquvchophpxem ng sut phn b trn vt th. Chng trnh c vit bng ngn ng C++7.1 CutrcchngtrnhTrng tm ca chngtrnh l lp Model,lp ny l lp tru tng quinhcchmkhi to(Init), hmxydngmatrncng(Build), hmgii matrn(Run) v xut kt qu (Post). Lp ny cng cung cp giao din tru tng canthip vo d liu nt v phn t trong chng trnh (GetBrick)7.1.1 CclptrutngCc lp tru tng bao gm:FemObject: cung cp cc hm tru tng to ma trn cng ton cc vcc hm giao dinFemElement: giao din tru tng cho cc lp tnh ton ma trn cng phntFemBrick: lp tru tng cha hm lp ghp ma trn (assembly) v cc hmkim tra tnh hp l ca li7.1.2 CclpkthaCc lp k tha gm cc lp k tha trc tip hin thc ha qu trnh tnh toncho bi ton tnh bin dng n hiFemObjectLE: khi to vector lc v hm c lp tnh ton vector lc trongtrng hp lc ntFemMaterial: lp hin thc cc kiuma trn vt liu ca bi ton tnh bindng (ng sut phng, bin dng phng hoc ma trn vt liu thng thng(6.4))70Chng 7 Cu trc chng trnhFemElementLE: tnh ton ma trn cng (theo (6.17))ioXmlLE: c d liu u vo7.1.3 Mtd liuuvoDliuuvo clitkdidngXmlnhm tngtnht chcchodliu.Vic s dng mt chun d liu rng cho php chng trnh s dng tn dng ccc li th ca mt ngn ng hin i v s dng cc m ngun m c sn c& ghi d liu.D liu tnh ton bao gm 5 tab chnh sau y:1. MaterialArray: qui nh s lng cc loi vt liu s dng trong m hnh. Miloi vt liu i trong tab con l Material.Vd:

Qui tc:Nu type="Isotropic 3D" th tham s E v mu cn c cung cp (nhtrong v d)Nu type="Truss" th tham s cn thit l A v E.Nu type="Plane Stress" th tham s cn thit l E, mu, thickness2. ForceArray: qui nh tp hp cc lc tc dng ln bin ca m hnh.Vd:

Qui tc:type="nodal": lc nt, cnqui nhcc thuc tnh node (tc dng lnnt no) v gi tr ca lc (fx, fy, fz)type="line": lc phn b trn ng thngtype="surface": p sut phn b trn b mt3. ConstraintArray: nh ngha cc iu kin binVd:Bi Hong Giang 71 Lun vn thc sChng 7 Cu trc chng trnh

type="fixed": rng buc c nh. Nu object="1" th rng buc ti nt,object="2": rng buc ti ng, object="3": rng buc ti mt. dir=xyzl ch s cho bit phng no b rng buc, chng hn dir="111" l c 3phng x, y, z u b rng buc.4. NodeArray: d liu ntVd:

...

Qui tc:Nu thuc tnh type="sqlite3" th ta c th a vo file d liu sql (iunycnthitkhimhnhlnvkhngth hinthdliudngkiuASCIIthngthng). Khi type="sqlite3", tacncungcpthmpath("relative" hoc "absolute"), dir (th mc cha file sql) v filenameCho c hai trng hp type="list" v type="sqlite3" th ch mc th tcc nt phi bt u t 15. ElementArray: d liu topo ca cc phn tVd:

...

Qui tc:CngnhNodeArray,nutype="sqlite3"tacngcthnhpvofiled liu sqlite.Ch mc th t phn t phi lun bt u t 1Bi Hong Giang 72 Lun vn thc sChng 7 Cu trc chng trnh7.1.4 SclassHnh 7.1: S class cho lp Model v FemBrickBi Hong Giang 73 Lun vn thc sChng 7 Cu trc chng trnhHnh 7.2: S class cho lp FemMaterial v cc lp k thaBi Hong Giang 74 Lun vn thc sChng 7 Cu trc chng trnhHnh 7.3: S class cho lp c d liu v SolverBi Hong Giang 75 Lun vn thc sChng 7 Cu trc chng trnhHnh 7.4: S class cho cc lp tnh ton trn phn t t gic7.1.5 SolverTrong chng trnh s dng cc package x l ma trn sau:Newmat: dngtnhtonmatrncngcngphnt, vcthsdnglpghpmatrncngtonccbngcchdngdirective_USE_NEWMAT_FOR_ASSEMBLE_.Newmat cng c th s dng lmBi Hong Giang 76 Lun vn thc sChng 7 Cu trc chng trnhsolver nu chn directive _USE_NEWMAT_FOR_SOLVER_ tuy nhin khngth gii c bi ton ln v package ny khng lm vic trn ma trn tha.Gmm: dng lp ghp ma trn cng ton cc (nu directive_USE_GMM_FOR_ASSEMBLE_cchn)vsolvergiiphngtrnhma trn (nu directive _USE_GMM_FOR_SOLVER_ c chn)UmfPack: dnglmsolver gii phngtrnhmatrn(khi chndirective_USE_UMFPACK_FOR_SOLVER_). UmfPack l solver gii trc tip hiuqu nht trn tt c cc bi ton v c th lm vic vi ma trn tha.Petsc: solversongsonggiimatrn.Dothigiancnhnchnnchac tch hp vo chng trnh tuy nhin Petsc c s dng trn mt modulec lp gii song song bi ton ln khi UmfPack khng th gii c trnmy n. Module Petsc ly ma trn cng ton cc v vector lc ca h gii sau xut file kt qu chng trnh c th c vo v a ra th(post processing).Qui cch s dng cc package trong chng trnh c lit k di yNewmatNewmat l mt package tnh ton ma trn tin dng cho php thc hin cc tnhton ma trn nh tnh ton hnh thc thng thng. Lp ma trn ca Newmat c overridecctontthngthng+, , nnvictnhtonmatrntrongm chng trnh rt d dng, v d A+B s cho ra gi tr ca ma trn A+B trongthc t.Khai bo mt ma trn mi di dngMatrix A = Matrix(2,2);Nhp cc gi tr phn t vo ma trn s dng ng vo chun ca C++A