首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >fenics:在特定点施加武力

fenics:在特定点施加武力
EN

Stack Overflow用户
提问于 2014-08-11 14:42:45
回答 1查看 903关注 0票数 1

我是fenics和有限元方法的新手。

本文尝试实现一种估计变形物体弹性参数(弹性模量和泊松比)的方法。我想做的是:

  • 从底部固定的对象(作为多维数据集的开始)
  • 在物体顶部的某一特定位置施加外力,并采用梯度下降等方法,通过比较实际位移和估计位移来估计弹性参数。

我正在查看fenics (http://fenicsproject.org/documentation/dolfin/1.0.1/python/demo/pde/hyperelasticity/python/documentation.html)中的超弹性演示,但我不知道如何在网格上的特定节点上应用,然后根据该力变形对象。我认为在这个演示中,在整个网格上,在-y方向上施加了力。有身体力矢量:

B = Constant((0.0, -0.5, 0.0))

如果我将它改变为与网格大小相同的向量,并将一个力值放到与网格上的节点单元对应的向量的元素上。

抱歉,如果我说不通的话。这个概念对我来说是新的,所以我很难说出我脑子里在想什么。

EN

回答 1

Stack Overflow用户

发布于 2014-08-15 19:55:57

如果它是各向同性的,均匀的弹性材料,我会说你不需要立方体。一个二维的问题就行了。

我不明白你所说的“估计弹性参数”是什么意思。为了计算位移,你必须把这些值输入到模型中。你是说你有实验数据来比较你的计算结果。对吗?

我不会用身体力量的。如果你的身体是一个沿x轴方向的矩形,x方向是L-x,y方向是L-y,我会在x= L-x处沿垂直面施加牵引力(分布均匀的力)。

你可以很容易地计算一个简单的一维物体的杨氏模量:

代码语言:javascript
复制
stress = modulus * strain

对于菌株较小的一维扩展:

代码语言:javascript
复制
sigma-xx = E * eps-xx

你知道的

代码语言:javascript
复制
sigma-xx = f-x/area-x = F/A

代码语言:javascript
复制
eps-xx = u-x/L-x = u/L

代以:

F= (AE/L) *u

您可以重新排列以得到E的一个简单方程:

代码语言:javascript
复制
E = FL/Au

其中F=施加载荷,L=车身长度,A=横截面积,u=位移

如果你知道剪应力和剪切应变之间的关系,你就可以得到泊松比的相似关系。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25245987

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档