计算力学无网格学习报告.doc_第1页
计算力学无网格学习报告.doc_第2页
计算力学无网格学习报告.doc_第3页
计算力学无网格学习报告.doc_第4页
计算力学无网格学习报告.doc_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

无网格数值求解学习报告一、 无网格法的概念当前数值模拟欧拉方程和 N-S方程的空间离散方法主要有三种:有限差分法、有限体积法和有限元法。有限差分法的主要思想是将微分型控制方程应用到每个网格节点上,对某个节点的导数值用相关网格节点值进行差分求得。再利用各种时间推进格式进行迭代求得流场的稳定解。有限体积法的主要思想是把流体力学的积分型控制方程应用到每一个由网格剖分得到的控制体微元上,从而把积分方程的求解转化为代数方程或常微分方程的求解,再利用各种时间推进格式进行迭代,最后在每个控制体微元上得到流场的稳定解。有限元方法的数值基础是变分原理和加权余量法,其主要思想是在每个网格单元上选择若干合适的点作为解函数的插值节点,方程的近似解由各网格单元的近似函数逼近,而网格中的近似函数又由单元基函数的线性组合得到。以上三种空间离散方法都是在网格的基础上进行的。无网格方法是一种只需要节点信息而不需将节点连接成网格单元的数值解法,这是无网格算法区别于网格算法之处。因此,无网格算法不能直接沿用网格算法中的有限差分和有限体积法等的离散格式。无网格算法的基本思想是在求解域内布置一系列的离散的点称之为“节点”,然后采用一种形函数(或称为核函数)近似拟合曲线,要求每个小域(称为“点云”)内节点的个数多于建立的方程的数目,在该点云上建立矛盾方程组,通过解矛盾方程组求得变量的梯度,进而可以求得问题的解。典型无网格法无网格法大致可分成两类:一类是以Lagrange方法为基础的粒子法(Particle method),如光滑粒子流体动力学(Smoothed particle hydrodynamics,简称SPH)法,和在其基础上发展的运动粒子半隐式(Movingparticle semiimplicit,简称MPS)法等;另一类是以Euler方法为基础的无格子法(Gridless methods),如无格子Euler/NS算法(Gridless Euler/Navier-Stokes solution algorithm)和无单元Galerkin法(Element free Galerkin,简称EFG)等。伽辽金型无网格法:等效积分弱形式(虚位移原理) 特点:计算量大、精度高,稳定性好、需要背景网格进行积分、系数矩阵对称、不易施加本质边界条件处理。背景网格积分:加权余量法:线弹性力学的控制方程加权余量法不要求余量在各店均为零,而要求余量的加权积分为零 平均意义上满足方程: 等效积分形式加权余量法的物理意义:选取合适的待定参数强迫余量在某种意义下为零无网格方法可以方便地利用坐标点计算模拟复杂形状流场计算,但不足之处是在高雷诺数流动时提高数值计算精度较困难。无网格方法中比较常见的还有径向基函数方法(Radious Basis Function),主要使用某径向基函数(如(MQ)f(r)=r5)的组合,来逼近原函数。吴忠敏院士在这方面有比较突出的工作。以上方法中,无网格伽辽金法成为目前影响最大,应用最广的无网格计算方法,现有的 LS-dyna,Abaqus,Radioss等商业软件都加入了该方法的计算模块。二、无网格法应用悬臂梁在自由端受突加载荷作用后的动力学问题%-tic % 计时开始clear; % 清屏,将要讨论的是悬臂梁的弹性动力学问题% DEFINE BOUNDARIES/PARAMETERS 定义边界条件和几何参数Lx = 100; % Lx指的是问题域(矩形域)x向的边长Ly = 10; % Ly指的是矩形域y向的边长young = 210e9; % young是材料的弹性模量nu=0.3; % nu是材料的泊松比midu=10000; % midu是材料的弹性模量%-nx = 20; % x方向的划分网格ny = 6; % y方向的划分网格%-ndivl=10; % x方向的积分背景划分网格 ndivw=5; % y方向的积分背景划分网格dmax=3.8; % 影响半径%-%建立弹性刚度阵(平面应力问题)Dmat = (young/(1-nu2)*1 nu 0;nu 1 0;0 0 (1-nu)/2;% 建立节点信息x,numnod,dm = mesh1(Lx,Ly,nx,ny,dmax); % 形成区域内的节点坐标%作悬臂梁的节点分布图figurehold onplot(x(1,1:(ny+1),x(2,1:(ny+1),k-,linewidth,3);axis equal; % 左边界plot(x(1,(ny+1):(ny+1):numnod),x(2,(ny+1):(ny+1):numnod),k-,linewidth,2); % 下边界plot(x(1,numnod:-1:(numnod-ny),x(2,numnod:-1:(numnod-ny),k-,linewidth,2); % 右边界plot(x(1,1:(ny+1):(numnod-ny),x(2,1:(ny+1):(numnod-ny),k-,linewidth,2); % 上边界%plot(x(1,:),x(2,:),k.);axis off;plot(x(1,:),x(2,:),k.);axis equal; axis off; % 所有的点hold off% 建立域内积分单元和角点信息xc,conn,numcell,numq = mesh2(Lx,Ly,ndivl,ndivw);%建立T1和T2边界上的积分单元和角点信息nnu,nnt,numT1,numT2 = mesh3(numq,xc,Lx,Ly);% 建立高斯点基本信息quado = 4;gauss = gauss2(quado);%建立整个求解域内的高斯点信息numq2 = numcell*quado2;gs = zeros(4,numq2);gs = egauss(xc,conn,gauss,numcell); % 形成所有高斯点的坐标、牙科比、权% 建立整体质量M矩阵M=Mjuzhen(numnod,gs,x,dm,dmax,midu);%建立k矩阵k=kjuzhen(numnod,gs,x,dm,dmax,Dmat);%建立ka矩阵rfa=200e12;ka=kajuzhen(numnod,nnu,numT1,xc,gauss,x,dm,dmax,rfa);% 建立K矩阵K=k+ka;%建立f矩阵f = fjuzhen( numnod,nnt,numT2,xc,gauss,x,dm,dmax);%建立fa矩阵fa = zeros(2*numnod,1);%建立F矩阵F=f+fa;%给出初始条件tbu=1e-3;a=1/4;delta=1/2;b1=1/(a*tbu2);b2=1/(a*tbu);b3=1/(2*a)-1;u0=zeros(2*numnod,1);v0=zeros(2*numnod,1);a0 = MF;%记入板悬臂端中点轴向位移随时间的变化规律for i=1:numnod xi=x(1,i); yi=x(2,i); if (abs(xi-100)100*eps)&(abs(yi-5)100*eps) dian=i; endend%进入时间循环uAx=zeros(71,1);stressxx=zeros(71,1);uAy=zeros(71,1);%取B点的坐标,后面好计算该点的应力gpos=0;0.05;v=domain(gpos,x,dm,numnod);L=length(v);en=zeros(1,2*L);phi,dphix,dphiy = shape(gpos,dmax,x,v,dm);Bmat=zeros(3,2*L);for j=1:L Bmat(1:3,(2*j-1):2*j) = dphix(j) 0;0 dphiy(j);dphiy(j) dphix(j);endfor i=1:L en(2*i-1) = 2*v(i)-1; en(2*i) = 2*v(i);endt1=zeros(71,1);%t2=zeros(101,1);ind1=1;%ind2=1;xiang1=K+b1*M;for nt=1:1400 if (nt=1) u1=u0; v1=v0; a1=a0; else u1=u2; v1=v2; a1=a2; end xiang2=b1*u1+b2*v1+b3*a1; xiang3=F+M*xiang2; u2=xiang1xiang3; a2=b1*(u2-u1)-b2*v1-b3*a1; v2=v1+(1-delta)*tbu*a1+delta*tbu*a2; %* if (nt=ind1*20) % 隔50个时间步长挑一个点出来 ind1=ind1+1; uAx(ind1)=u2(2*dian-1)*1000; t1(ind1)=nt*tbu; %计算B点的应力 stress=zeros(3,1); stress = Dmat*Bmat*u2(en); %stress存放的是B点上的计算应力 stressxx(ind1)=stress(1,1); % uAy(ind1)=u2(2*dian)*1000; end% if (nt=ind1*20)% ind1=ind1+1;% uAy(ind1)=u2(2*dian)*1000;% t2(ind1)=nt*tbu;% end end% 计算悬臂端中点的扰度变化解析解itx = sqrt(12*midu*Lx4/(young*Ly2);T = 2*3.1415926/(1.875)2*tx;Wmax = 2*Ly*Lx3/(3*young*Ly3/12);dt = 0:0.02:1.4;L=length(dt);for i=1:L W(i) = 1000*(1-cos(2*3.1415/T*dt(i)*Wmax/2;end%plot(dt,-W,r*);%作图比较结果figure plot(t1,uAx,r-); % a点的水平方向的位移legend(Displacement of A point in the x direction);xlabel(t/s,fontweight,bold);ylabel(UAx ,fontweight,bold);figure hold on plot(t1,uAy,r.);plot(dt,-W,K-);legend(EFG Solution,Exact Solut

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论