《有限元的自动生成及其应用演示.ppt》由会员分享,可在线阅读,更多相关《有限元的自动生成及其应用演示.ppt(89页珍藏版)》请在三一文库上搜索。
1、一、通用有限元软件的局限性,通用软件并不通用,只能求解很少的一部分有限元问题。 需要有一支训练有素、组织严密、长期稳定的有限元软件队伍,不断维护和改进其通用有限元程序。 只能求解今天已有的微分方程,不能求解明天的有限元问题, 只能采用今天已出现的算法,不可能采用明天才有的算法。 不公开源代码,对用户来说程序是不可改动的,极大地限制了用户的创造性。,二、自己编程的种种困难,有限元程序复杂,代码庞大。 编程者缺乏软件专业训练,代码可读性差,再用性差,程序难以维护,程序缺乏严密组织与发展。 大多数工程师、教授与研究人员,他们主要是研究有限元方法或把有限元方法应用于工程设计与科学研究,而不是致力于有限
2、元软件的开发,因此他们不可能花很多时间编写程序。,三、开发FEPG的动机与目的,许多专家希望有自己的有限元程序,但不愿花许多时间编程。 FEPG应该不受领域的限制,各种专业的有限元问题都可采用本系统求解。 本系统不可能象通用有限元软件那样,通过不断增加单元模块和算法模块来逐步扩大其求解范围。 不管什么样的有限元问题,不管采用什么样的算法,都能采用本系统求解。 本系统是一种公开源代码的自由软件,任何非本系统开发者都可维护和修改。,四、由有限元公式自动产生有限元程序,有限元是求解偏微分方程的数值方法。 有限元公式包括: (1)弱形式的微分方程表达式。 (2)形函数表达式。 (3)算法表达式。 a.
3、 形成代数方程组的矩阵表达式。 b. 计算步骤与迭代控制。,五、软件实现思想,1、元件化程序设计方法 把有限元程序分解为五个元件程序。,有限元程序结构,有限元程序流程框图,线性稳态问题流程,前处理程序,START元件程序,E元件程序,SOLV求解器,U元件程序,DEFER元件程序,计算结果图形显示,有限元程序流程框图,线性动态问题流程,前处理程序,START元件程序,BFT元件程序,E元件程序,SOLV求解器,U元件程序,DEFER元件程序,时间计算是否结束,计算结果图形显示,否,是,有限元程序流程框图,非线性稳态问题流程,前处理程序,START元件程序,E元件程序,SOLV求解器,U元件程序
4、,迭代是否结束,计算结果图形显示,否,是,DEFER元件程序,有限元程序流程框图,非线性动态问题流程,前处理程序,START元件程序,BFT元件程序,E元件程序,SOLV求解器,U元件程序,DEFER元件程序,迭代是否结束,计算结果图形显示,否,是,时间计算是否结束,是,否,自动生成系统由近百个元件程序组成。 元件程序是以文件名为输入输出参数的可独立运行的程序。 由脚本(批命令)文件把元件程序组成一个“程序系统”。 大大降低程序的复杂性,大大提高程序的可读性和再用性。 实现软件自由化(即自由软件)的一种软件设计方法。,提供一种用以描述有限元问题的语言,以下称为有限元(描述)语言。 有限元语言是
5、一种有层次的脚本语言。 有限元语言应包括微分方程表达式,形函数表达式,算法表达式等有限元公式的书写形式。 有限元语言应与有限元的专业语言尽可能一致,以便广大科技工作者易于理解与接受。 有限元语言要适用于各种领域和各种有限元方法与有限元问题。 关键问题是如何描述有限元问题,采用什么样的方式准确表达有限元问题及其求解算法。,2、人工智能技术,用FEPG生成求解二维线弹性平面应变问题的有限元程序,六、程序生成实例,问题的方程描述,平衡方程,几何方程,本构方程,虚功方程,虚功方程弱形式,将本构关系代入上式即可得以位移为基本未知量的虚功方程,需填写的FEPG公式文件,GIO文件,VDE文件,GCN文件,
6、Strn.gcn文件,defi a ell & b str a startsin a solvsin a stress b,Strn.gio文件,disp strs #elemtype t3 2dxy,Disp.vde文件,disp u v coor x y func ex ey exy shap %1 %2 gaus %3 mate pe pv fu fv 1.0e10;0.3;0.0;-100.0; $c6 fact = pe/(1.+pv)/(1.-2.*pv) vect u u v vect ed ex ey vect fs fu fv matr de 2 2 (1.-pv) pv p
7、v (1.-pv),Disp.vde文件,func ex=+u/x ey=+v/y exy=+u/y+v/x stif dist=+ed_i;ed_j*de_i_j*fact+exy;exy*(0.5-pv)*fact load=+u_i*fs_i end,Disp.vde文件,func ex=+u/x ey=+v/y exy=+u/y+v/x stif dist=+ed_i;ed_j*de_i_j*fact+exy;exy*(0.5-pv)*fact load=+u_i*fs_i end,Strs.vde文件,disp sa,sb,sc, coef u v coor x y shap %1
8、%2 gaus %3 mass %1 mate pe pv fu fv 1.0e10;0.3;0.0;-100.0; $c6 fact = pe/(1.+pv)/(1.-2.*pv) vect u u v vect ed ex ey vect fs fsa fsb vect ss sa sb sc vect ff fsa fsb fsc matr de 2 2 (1.-pv) pv pv (1.-pv),Strs.vde文件,stif $cv ex=+u/x $cv ey=+v/y $cv fs_i=+de_i_j*ed_j*fact $cv func=+u/y+v/x $c6 fsc=fun
9、c*(0.5-pv)*fact dist=+sa;sa*0.0 load=+ss_i*ff_i end,三维正交各向异性材料计算,FEPG系统在复合材料中的应用,三维弹性本构关系,其中,其中,需填写的FEPG公式文件,GIO文件,VDE文件,GCN文件,GCN文件,defi a ell & b str a startsin a solvsin a stress b,Gio文件,disp strs #elemtype w4 3dxyz,Disp.vde文件,disp u v w coor x y z func gex gey gez geyz gexz gexy shap %1 %2 gaus
10、%3 array re(6,6) mate e1 e2 e3 v12 v13 v23 g23 g13 g12 cita fx fy fz 127.6d3;10.3d3;10.3d3;0.32;0.32;0.32;6.0d3;6.0d3;6.0d3;45;0.0;0.0;5.e3; $c6 pi=3.14159 $c6 s=sin(cita*pi/180.0) $c6 c=cos(cita*pi/180.0) $c6 c2=cos(2.0*cita*pi/180.0) $c6 s2=sin(2.0*cita*pi/180.0) fvect le 6 fvect ge 6 vect gev gex
11、 gey gez geyz gexz gexy vect u u v w vect fu fx fy fz,Disp.vde文件,matrix te 6 6 c*c s*s 0 0 0 s2 s*s c*c 0 0 0 (-s2/2) 0 0 0 1 0 0 0 0 0 c (-s) 0 0 0 0 s c 0 (-s2/2) s2/2 0 0 0 c2 matr Re 6 6 1/e1 (-v12/e1) (-v13/e1) 0 0 0 (-v12/e1) 1/e2 (-v23/e2) 0 0 0 (-v13/e1) (-v23/e2) 1/e3 0 0 0 0 0 0 1/g23 0 0
12、0 0 0 0 1/g13 0 0 0 0 0 0 1/g12,Disp.vde文件,func l deform.xyz f le x y z u v w a ge_i=+le_j*te_i_j w gev ge l revmatri n 6 re stif dist=+gev_i;gev_j*re_i_j load=+u_i*fu_i end,平面二维水沙运动问题,FEPG系统在水力学中的应用,问题描述,如右图所示,水在1/4环形水渠内流动,进口处x方向单宽流量为4, y方向单宽流量为0,水深为2,出口处水面高度为4。求水渠内的单宽流量和水边高度。,该问题的偏微分方程,水流连续性方程: 水流
13、动量方程:,该问题的偏微分方程,悬移质不平衡输移方程 悬移质引起的河床变形方程,算子分裂法求解该问题,采用算子分裂法分五步骤求解上述平面二维水沙运动方程,1解水流扩散方程和水位,需填写的FEPG公式文件,GIO文件,VDE文件,GCN文件,GCN文件,defi a shola & b sholb c sholc d shold e shole startsin a startsin b startsin c startsin d startsin e call trans,if exist stop del stop :1 bft solvsin a copy unod unoda if ex
14、ist end del end :2 solvsin b if not exist end goto 2 solvsin c solvsin d solvsin e call post if not exist stop goto 1,GIO文件,fld flc sdd sdc zbh #elemtype q4 2dxy,FLD.VDE文件,disp hu,hv,z coor x,y coef hun,hvn,zn,hn, func div vect hu hu hv vect x x y shap %1 %2 gaus %3 mass %1 vol mate epsilon eg en fx
15、 fy 0.1d-1 9.8d0 2.0d-2 0.0d0 0.0d0 vect fl fx fy,FLD.VDE文件,func $c6 vol = 1.0d0 $c6 const=1.0 div = +hu/x+hv/y stif $cv u2v2=dsqrt(hun*hun+hvn*hvn) dist=+hu_i/x_j;hu_i/x_j*vol*epsilon +div;z*vol+z/x_i;hu_i*vol*eg*hn +hu_i;hu_i*eg*vol*en*en*u2v2/hn*(7.0d0/3.0d0) +z/x_i;z/x_i*vol*const load=+hu_i*vol
16、*fl_i end,算子分裂法求解该问题,2用基于牛顿法的最小二乘法求解水流对流方程,FLC.VDE文件,disp hu hv coor x y func fhu fhv coef hun1 hvn1 hun hvn un1 vn1 un vn hn1 mate rou 1.0 shap %1 %2 gaus %3 mass %1 1.0 vect hun hun hvn vect x x y vect fhun1 fhun1 fhvn1 vect un un vn vect un1 un1 vn1 vect hu hu hv vect fhu fhu fhv,func $cv fhun1=+
17、un_j/x_j*hun+hun/x_j*un_j $cv fhun1=+fhun1*dt+hun1 $cv fhvn1=+un_j/x_j*hvn+hvn/x_j*un_j $cv fhvn1=+fhvn1*dt+hvn1 fhu=+hu+hu_j*un/x_j*dt+hu_j/x_j*un*dt +hu*un_j/x_j*dt+hu/x_j*un_j*dt fhv=+hv+hu_j*vn/x_j*dt+hu_j/x_j*vn*dt +hv*un_j/x_j*dt+hv/x_j*un_j*dt stif dist=+fhu_i;fhu_i load=+fhu_i*fhun1_i end,算子
18、分裂法求解该问题,3解挟沙方程扩散项,SDD.VDE文件,disp hs coor x,y coef hn1,u,v func gradhsx gradhsy vect gradhs gradhsx gradhsy vect x x y shap %1 %2 gaus %3 mass %1 vol mate edt rho rous rfai omeg ek eg 0.1d-1 2650 1.0 1.0 1.5d-4 2.2d-1 9.8,func $c6 vol = 1.0d0 gradhsx = +hs/x gradhsy = +hs/y stif $c6 u2v2=dsqrt(u*u+v
19、*v) $c6 ao=rfai*omega $c6 sstar=ek*(u2v2*3.0d0/(eg*hn1*omega)*em dist=+gradhs_i;gradhs_i*vol*edt+hs;hs*rfai*omeg*rho/hn1/rous load=+hs*sstar*rfai*omeg*rho/rous end,算子分裂法求解该问题,4解挟沙方程对流项,SDC.VDE文件,disp hs coor x y func fhs coef hs1 un1 vn1 hn1 hn shap %1 %2 gaus %3 mate rho 1.0 vect x x y vect un1 un1
20、 vn1,func fhs=+hs+hs/x_j*un1_j*dt +hs*un1_j/x_j*dt stif dist=+fhs;fhs load=+fhs*(hs1-rho*(hn-hn1) end,算子分裂法求解该问题,5解河床变形方程,ZBH.VDE文件,disp zb coor x,y coef hs,u,v,h shap %1 %2 gaus %3 mass %1 rhos mate rhos rfai omeg ek eg em 1.4d1 1.0d0 1.5d-4 2.2d-1 9.8d0 7.6d-1,stif $c6 u2v2=dsqrt(u*u+v*v) $c6 ao=r
21、fai*omeg $cv sstar=ek*(u2v2*3.0d0/(eg*h*omeg)*em dist=+zb;zb*0.0d0 load=+zb*ao*(hs/h-sstar) end,结果图,线性正弦稳态涡流问题 (TEAM Workshop 问题7), FEPG系统在电磁学中的应用,问题描述,TEAM Workshop 问题7是用来检验三维线性正弦涡流场分析方法计算精度的实验模型,其结构如右图所示。该模型由带有方孔的铝板和载流线圈组成,线圈中通有随时间按正弦规律变化的电流,其幅值为2742安匝。铝板的电导率为 求涡流和磁通密度分布。,求解方程及边界条件,需填写的FEPG公式文件,GI
22、O文件,VDE文件,GCN文件,GCN文件,defi a ell & b str a & c str a & startc a solvc a stress b stress c,GIO文件,afi mage magb,方程的afi.vde文件,disp Ax,Ay,Az,u coor x,y,z func curlx,curly,curlz,div shap %1 %2 gaus %3 mass %1 1.0d0 mate sigma epsilon omega fmu fjx fjy fjz 0.0d0;0.0d0;50.d0;1.256d-6;0.0d0;0.0d0;0.0d0; vec
23、t A Ax Ay Az vect x x y z vect fj fjx fjy fjz vect curl curlx curly curlz,方程的afi.vde文件,disp Ax,Ay,Az,u coor x,y,z func curlx,curly,curlz,div shap %1 %2 gaus %3 mass %1 1.0d0 mate sigma epsilon omega fmu fjx fjy fjz 0.0d0;0.0d0;50.d0;1.256d-6;0.0d0;0.0d0;0.0d0; vect A Ax Ay Az vect x x y z vect fj fj
24、x fjy fjz vect curl curlx curly curlz,afi.vde文件,func curlx=+Az/y-Ay/z curly=+Ax/z-Az/x curlz=+Ay/x-Ax/y div=+Ax/x+Ay/y+Az/z,afi.vde文件,stif $c6 eu1=omega*sigma $c6 eu2=1/fmu dist=+curl_i;curl_i*|eu2;0.0| +div;div*|eu2;0.0| +A_i;A_i*|0.0;eu1| +u/x_i;A_i*|sigma;0.0| +A_i;u/x_i*|0.0;eu1| +u/x_i;u/x_i*|s
25、igma;0.0| load=+A_i*fj_i*|1.0;0.0| end,计算涡流的mage.pde文件,disp exr exi eyr eyi ezr ezi coef axr axi ayr ayi azr azi ur ui coor x y z shap %1 %2 gaus %3 mass %1 load =fexr fexi feyr feyi fezr fezi mate sigma epsilon omega fmu fjx fjy fjz 0.0d0;0.0d0;50.d0;1.256d-6;0.0d0;0.0d0;0.0d0;,mage.pde文件,stif $cv
26、fexr = +axi*omega*sigma-ur/x*sigma $cv fexi = -axr*omega*sigma-ui/x*sigma $cv feyr = +ayi*omega*sigma-ur/y*sigma $cv feyi = -ayr*omega*sigma-ui/y*sigma $cv fezr = +azi*omega*sigma-ur/z*sigma $cv fezi = -azr*omega*sigma-ui/z*sigma dist=+exr;exr*0.0 end,计算磁通密度的magb.pde文件,disp bxr bxi byr byi bzr bzi c
27、oef axr axi ayr ayi azr azi ur ui coor x y z shap %1 %2 gaus %3 mass %1 load =fbxr fbxi fbyr fbyi fbzr fbzi mate sigma epsilon omega fmu fjx fjy fjz 0.0d0;0.0d0;50.d0;1.256d-6;0.0d0;0.0d0;0.0d0;,magb.pde文件,stif $cv fbxr = +azr/y-ayr/z $cv fbxi = +azi/y-ayi/z $cv fbyr = +axr/z-azr/x $cv fbyi = +axi/z
28、-azi/x $cv fbzr = +ayr/x-axr/y $cv fbzi = +ayi/x-axi/y dist=+bxr;bxr*0.0 end,结果图,导体表面z=0.019m处涡流的矢量图,结果图,Bz的计算值与测量值的比较图( y=0.072m,z=0.034m ),地下厂房洞室群的 三维围岩稳定分析, FEPG系统在水电工程中的应用,工程背景 进行索风营电站的建设和进一步优化索风营电站地下工程的设计和施工。 通过模拟计算揭示出索风营围岩稳定状态,进行围岩稳定评价,为设计的优化和施工程序的安排提供指导。,地下厂房结构图,模拟计算的主要困难 1.考虑横观各向同性的弹塑性; 2.主变
29、室及尾水隧洞所处岩层大部分为薄层; 3.大量支护锚杆的存在如何处理; 4.岩体渗流对围岩稳定的影响;,岩石的横观各向同性特征,利用FEPG生成横观各向同性弹塑性计算程序,软弱结构面三维造型,利用组合网格技术处理软弱面,加锚杆岩体单元,利用等效方法构造加锚杆的岩体单元,渗流计算网格图,利用生(死)节点法处理渗流自由面,Step15_厂房位移云图 Step15_厂房变形示意图,Step15_厂房第一主应力,Step15_厂房屈服区,Step15_衬砌支护上的变形,Step15_衬砌支护上的第一主应力,七、结论,采用元件化程序设计方法,大大降低了有限元程序的复杂性。 采用脚本语言形式的有限元语言,免去了大量繁琐的,费力耗时的有限元编程。 由有限元公式自动产生有限元代码,不仅节省了编程时间,并且大大提高了程序的可读性和再用性,为有限元程序的维护和发展创造了前所未有的前景。 FEPG完全基于有限元方法的基本原理(虚位移原理),不受专业领域的限制,各种有限元问题和有限元方法均可采用。 FEPG是一个开放源码的,任何人都可参与开发的自由软件。,联系我们,http:/ ,谢谢大家!,
链接地址:https://www.31doc.com/p-3392159.html