近场动力学快速入门程序——板,常规态型本构及两种求解器(显示求解和隐式求解)

近场动力学入门(2)  

    近场动力学(PD)理论和经典连续介质力学是有较大差异的。经典连续介质力学范畴是以连续介质假设、Cauchy应力假设、局部化假设以及本构公理系统为基石的。经典弹性理论就属于这一范畴。PD理论则放松了连续介质假设、摒弃了Cauchy应力假设和局部化假设。因此,PD理论体系属于广义连续介质力学范畴,是一种非局部理论。初学者可能会对PD理论产生些许不适。本期就简单地梳理下PD理论中的一些基本问题。

一、PD理论与经典连续介质力学的符号对比

    首先,简单回顾一下经典连续介质力学中的符号体系。在该体系下,一般用大写字母表示初始构型中的物理量,用小写字母表示当前构型中的物理量。比如,连续体中的某一粒子P 在初始构型中的位矢记为X,而在t 时刻的位矢记为x,则x=χ(X,t),其中矢量场χ称为连续体的运动。拉格朗日形式的位移场记为U(X,t)且以X为参考位置,则有U(X,t)=x(X,t)-X;欧拉形式形式的位移场记为u(x,t)且以x为参考位置,则有u(x,t)=x-X(x,t)。

    PD理论所用的符号体系和经典连续介质力学是不同的。在Silling2000年和2007年的论文中,连续体B 中的某一粒子P 在参考构型(以初始构型为参考构型)中的位矢记为x,而在变形后的构型(当前构型)中的位矢记为y(x,t),且有y(x,t)=x+u(x,t)。如果将PD理论用经典连续介质力学的符号重新表示,则y(x,t)=x+u(x,t)将改写为x(X,t)=X+U(X,t)。同理,PD理论中的速度场v(x,t)和加速度场a(x,t)同样是拉格朗日形式的,平衡方程中的dv也是初始构型中的体元。

二、PD理论中其它符号的说明

   本主在阅读文献和书籍时发现有些资料中对于物质点x的horizon、family以及neig_hborhood(因为包含敏感词,所以加下划线)的定义存在混乱,虽然大多数时候是不会引起歧义的,但毕竟清楚的定义对初学者的帮助是很大的。因此,本主根据Silling的几篇论文中的定义做了一个总结。

(1)horizon:粒子相互作用的最大距离δ

(2)material family:在x的horizon内,除x外所有物质点的集合,记为Fx

(3)bond(键):矢量ξ=q-x,其中q属于x的邻域;

(4) neig_hborhood:x的邻域,记为Hx

(5) family:在x的horizon内,所有键的集合,有时也记为Hx

三、“态”与“态场”

    “态(state)”是2007年Silling建立态基(SB)近场动力学时提出的一个数学概念。其并未出现在2000年建立的键基(BB)近场动力学中,是因为用矢量就足以清楚描述键基本构模型。那为何描述态基本构模型时一定要用“态”呢?答案是方便。

    从Silling2007年论文中对m阶态的定义可以看出,“态”本质是一个函数(可类比函数f),用一个加了下划线的字母表示,比如A。该函数的定义域是一个球形邻域内所有矢量的集合,值域是m阶张量的集合。用A<ξ>表示矢量ξ被态A作用的结果(可类比f(x))。这么看,“态”也就是一个普通的函数,似乎没有引入的必要。然而,如果考虑1阶态即矢量态,那么“态”的出现就变得有意义了。因为,按照矢量态的定义,它是将矢量映射为矢量的一个函数,这类似于二阶张量的作用。应该注意,只是类似于二阶张量的作用并非类似于二阶张量本身。因为,矢量态是函数,它的作用结果是矢量,将函数或矢量说成类似于二阶张量是欠妥的。Silling2007年论文中也对此做出了说明,即矢量态比二阶张量更广义,这使得矢量态能完成二阶张量不能完成的操作。比如,在一簇矢量上定义一个非线性映射关系的函数(即矢量态),就可以将一簇矢量做不同的变换映射为另一簇矢量。但如果想用二阶张量对同样一簇矢量完成和之前同样的变换,则需要用一簇不同的二阶张量点乘该簇每个矢量才可以(如果每个矢量做的变换都相同,则只需定义一个二阶张量)。如果一簇矢量的个数不是有限个,则需要无数个不同的二阶张量,这显然是很难办到的。在PD理论中,正是由于要对邻域内无数个“键”做不同的操作,所以才用“态”而不用张量。说到这也许有人会有疑惑,为何键基本构模型不用“态”也可以描述清楚。那是因为,键基本构模型是一种特殊的态基本构模型,用矢量足以描述清楚,即遍历每一个“键”。其实,描述态基本构模型时也可以只使用矢量的概念,只不过态基本构模型相比于键基本构模型要复杂得多,用遍历每一个“键”的方式将它讲清楚还不如定义一个“态”的概念来的方便。接下来要讲下“态场”的概念。

    首先,简单回顾一下“场”的定义。场是某一物理量在空间的一个分布情况。其次,再来回顾一下张量函数的定义。张量函数是以一个或多个张量为自变量且其值亦为张量的函数。如果一个函数的自变量是一个张量且函数值是一个矢量,那么称该函数是一个张量的矢量值函数。按照Silling2007年论文中的定义,一个态场是一个关于参考构型中位矢和时间的态值函数,例如A[x,t]。简单来说,一个态场就是一个随空间和时间变化的态(可类比张量场A(x,t))。论文中紧接着定义了一个依赖于位置和时间的态的矢量态值函数。该函数的自变量是一个态且函数值是一个矢量态场,例如ψ[x,t](A)。简单来说,态的矢量态值函数就是一个将函数映射为另一个函数的映射,例如ψ[x,t]简记为ψ(可类比一个张量的矢量值函数u(A))。应该注意,这种映射ψ并非泛函,因为泛函是一个将函数映射为实数的映射。此外,由于映射ψ的像ψ[x,t](A)是一个矢量态场,所以ψ[x,t](A)<ξ>表示矢量ξ被ψ[x,t](A)作用的结果,该结果是一个矢量。

四、本构模型中的一些问题

    根据Silling2007年论文中的第8节对态基理论的本构模型的定义,我们能获得两点重要信息。第一,本构模型是指变形矢量态场Y[x,t]和力矢量态场T[x,t]之间的函数关系,即本构模型是一个矢量态场的矢量态值函数;第二,在不引起歧义的情况下,变形矢量态场常记为Y而力矢量态场简记为T。此外,根据该论文中的定义8.3和8.4可以看出,一个态场的单位矢量态值函数M[x,t](Y[x,t])简记为M并称为变形方向矢量态,力标量态场简记为t。应该注意,M并非指将Y[x,t]映射为M[x,t](Y[x,t])的映射,而是指映射后的矢量态场M[x,t](Y[x,t])。

    到此,我们可以做一个小结。第一,PD态基理论的运动方程是对力密度矢量T[x,t]<ξ>(简记为T<ξ>)的积分;第二,对简单材料,本构模型的一般形式为T[x,t]=Ť[x,t](Y[x,t])(简记为T=Ť(Y));第三,常规态基本构模型为T[x,t]=t[x,t] M[x,t](Y[x,t])(简记为T=t M);第四,将本构模型带入运动方程可得积分项为Ť[x,t](Y[x,t])<ξ>(不引起歧义时也可简记为Ť<ξ>);第五,PD理论中的本构模型不但可以显示表达(比如最常用的弹性材料可以通过应变能密度函数得到本构模型),而且可以抽象表达。

    最后,还有三点需要强调。第一,Madenci2014的书中阐述的常规态基本构模型与Silling2007年论文中给出的线性近场动力学固体(LPS)模型不是同一个本构模型,它们对体积应变以及影响函数的定义都有区别。第二,对于一维结构,由于只有弹性模量这一个材料参数,所以常规态基本构模型将退化为键基本构模型。第三,弹性材料中定义的应变能密度函数W 是一个将矢量态映射为实数的映射,因此它是一个泛函,而根据frechet导数的定义,ÑW 是一个将矢量态映射为矢量态的态值函数(即本构模型)。

五、本程序包简介

    该文件夹中的算例是一个二维矩形金属板四边给定位移的平面应力问题。该算例采用常规态型本构模型以及无网格离散方式,且分别使用显式求解器和隐式求解器求解。所有程序均采用matlab编写,可直接运行。更为详细的说明可参看文件夹中的word文件。

    所有的程序都经过作者用心的编写特别是隐式求解器,对初学者可以说干货满满,对有基础的研究者也有借鉴之处。

该付费内容为:该文件夹中的算例是一个二维矩形金属板四边给定位移的平面应力问题。该算例采用常规态型本构模型以及无网格离散方式,且分别使用显式求解器和隐式求解器求解。所有程序均采用matlab编写,可直接运行。更为详细的说明可参看文件夹中的word文件。所有的程序都经过作者用心的编写特别是隐式求解器,对初学者可以说干货满满,对有基础的研究者也有借鉴之处。

包含1个附件 10人购买
(4条)
默认 最新
👍🏻
评论 点赞 1
这是基于matlab编程吗
评论 1 点赞
回复
是的!
评论 点赞

查看更多评论 >

点赞 5 评论 6 收藏 7
关注