首页 > 代码库 > 11月22日

11月22日

11月22日

当前任务

stiffness matrix 究竟怎么算?

什么是tangent stiffnes matrix?


在Exact Corotational Linear FEM Stiffness Matrix之中

linear stiffness matrix     Krest    是指小变形的情形下,节点的力f = Krest * 节点位移x

tangent stiffness matrix K = df / dx 定义为f对位移x的雅可比矩阵,表示当前位置下,微小变形与节点力的关系,当元素发生显著旋转的时候,tangent stiffness matrix为准确值,对于非线性模型,并不能简单通过用K*x算出当前位置的准确节点力

在此篇论文中,给出一种算 K的准确方法


在Interactive Virtual Material中

前述的linear stiffness matrix 被简单称为stiffness matrix, 记为Ke

对于旋转的情形,其给出一种简单的近似办法,K' = R * Ke * RT, 这样的近似称为 rotated stiffness matrix


为什么K'是一种近似?

假设四面体经历了一个旋转R,之后再发生变形,

f = R * Ke * (RT * x - x0)

此式先把新位置映射回旋转前坐标系,再计算顶点位移RT * x - x0,乘以Ke得到力,最后把力映射会旋转之后的坐标系

因为准确的 K = df / dx

但R 实际上与x 有关

因此如果认为R是常数,推出 K' = df / dx =  R * Ke * RT, 此时的K’必定为近似值


现在的任务是要找到 Krest/Ke的明确定义

在Interactive Virtual Material中, 定义Ke = Ve * BeT * E Be

此式估计是在线性小变形的情形下推出的,此式与一些工程力学的有限元分析给出的公式符合。

(具体是怎么推导的?胡克定律?)

 

最后一个问题,就是K = df /dx 是否与由能量密度->P->f这种思路得到的结果一样?

估计可以。


三种stiffness matrix 的对比

标记名字含义定义
Krest  Ke(linear) stiffness matrix线性小变形情况,没有旋转

K’rotated stiffness matrix
考虑旋转时的近似方法K' = R * Ke * RT
Ktangent stiffness matrix旋转时的准确方法

K = df / dx





来自为知笔记(Wiz)


11月22日