用户登录

你在这里

如何从全局坐标求出自然坐标?

对于三维等参元素,我们可以很容易地从(r,s,t)中找到evaluate x(r,s,t), y(r,s,t)和z(r,s,t)。给定一个全局点(x,y,z),我们如何找到/推导出相应的自然坐标(r,s,t)?有什么方程吗?即使是线性元素,坐标变换也不是线性的。

这是一个实际的FEM实现问题,如果用户想查询在给定全局点的位移,我们该如何做到这一点?如果我们知道(r, s, t),那么我们可以很容易地找到U(r, s, t) = ΣNi(r, s, t)Ui

我们需要解一个小的非线性方程吗?

谢谢你的帮助。

yawlou的照片

基本的牛顿-拉弗森格式可以得到相应的自然坐标。(据我所知)没有直接的方程式。你确实需要解一个小的非线性方程(牛顿-拉弗森迭代)。

以下是基本大纲:

0.设置你感兴趣的全局点,创建列向量Xg=[Xg;yg; zg]

1.设置Rn=[Rn;sn;tn]的初始猜测列向量

2.在rn,sn,tn的当前值处计算列向量X=[X (rn,sn,tn);y (rn、锡、tn);z (rn、锡、tn)]

3.计算残差(误差)的范数,|Rs|=|Xg-X|,比较允许的公差,也许你想要|Rs|<10^-6

4.当公差未满足时,迭代直到公差满足

a.在rn,sn,tn的当前值(或猜测值)处,求出雅可比矩阵,J(rn,sn,tn)=[dx/dr dx/ds dx/dt;Dy /dr Dy /ds Dy /dt;Dz /dr Dz /ds Dz /dt]

b.确定Rn的校正,deltaRn= -J-1Rs

c.计算列向量Rn+1=Rn+deltaRn = [Rn+1;sn+1;tn+1]

d.计算新的残差,在[rn+1;sn+1;tn+1]处使用新的X,则Rs=Xg-X

e.重复操作,直到期望的剩余|Rs|的标准低于公差

结束迭代

Rn+1包含r s t的值,它们对应于全局值Xg

我认为我已经正确地解决了上述算法。希望它至少能让你朝着正确的方向前进。

你也可以看看下面的链接

https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4991307/

https://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.971.6670&rep=r..。

yawlou的照片

deltaRn =逆(J) *

mohammedlamine的照片

你必须从x(r,s,t), y(r,s,t)和z(r,s,t)中确定雅可比矩阵,其中x(r,s,t)=ΣNi(r,s,t)*xi

人们必须找到Ni 8节点形状函数,例如,如果节点1位于r=-1, s=-1和t=-1,那么所有其他节点都位于r=1(即1-r=0), s=1(即1-s=0)或t=1(即1-t=0)

N1(r,s,t)=(1-r)(1-s)(1-t)/8这个多边形必须扫描所有其他节点。如果替换节点1坐标,则必须在该节点上找到值N1=1,除以8可以做到这一点。其他节点N1=0。

x,r=ΣNi,r*xi在雅可比矩阵中。同样的公式也适用于其他节点,x,s, x,t, y,r, y,s, y,t, z,r, z,s和z,t。元素矩阵在积分中使用形状函数导数,可以用高斯积分公式计算。

订阅“如何从全局坐标评估自然坐标?”

最近的评论

更多的评论

辛迪加

订阅辛迪加