Efficient elasticity for character skinning with contact and collisions部分翻译(碰撞检测部分)

7 约束和碰撞 我们使用点约束(point constraints),这样一方面施加软体约束(例如bone attachments),一方面解决物体之间的碰撞/自碰撞。特别地,我们在规则网格(lattices)上放一些代理点(proxy points),在这些点上记录力,并用三次插值法把这些力分配回六面体网格节点上(hexahedral cells)。展示了这种方法的效率。 碰撞检测 对碰撞的响应(collision response)由一系列代理点决定,它们大致覆盖了碰撞表面。我们使用一种基于惩罚项(penalty)的响应方式,这个惩罚项取决于代理点处的穿透深度,以及该点... 查看更多

读书笔记:An Introduction to Physically Based Modeling: Rigid Body Simulation I—Unconstrained Rigid Body Dynamics(SIGGRAPH’97 COURSE NOTES)

1 模拟基础 用“状态向量”表示一个质点的状态: 如果三维,就是六个数。这个Y可以扩展到n个质点: 我们先暂且考虑一个质点。F(t)是该质点t时刻所受合力。假设该点有质量m,那么状态向量的变化率就是: 2 刚体基本概念 2.1 位置和方向 质点没有方向,刚体有,所以复杂一点。描述刚体,首先需要位置x(t),然后是3*3旋转矩阵R(t).我们称x(t)和R(t)是刚体的“空间变量”。 在固定的body space里面定义刚体的形状。之后就可以用x(t)和R(t)把它变换到world space下。我们约定刚体质心在原点(0,0,... 查看更多

Peskin2002:The immersed boundary method阅读笔记

2 运动方程 文中推导的是不可压缩弹性固体的方程。目标是让弹性方程看起来尽量像流体方程一样。 (q,r,s)是固体上的曲线坐标。X(q,r,s,t)是该固体质点在t时刻的位置。M(q,r,s)是质量密度。由能量密度函数E定义固体材料性质。弹性力就是它的Frechet导数: 这里是小扰动的意思。的意思就是在X基础上的小扰动。类似地就是对总能量的小扰动。 定义体积改变比例J: 弹性固体材料不可压缩也就是: 根据最小作用量原理,物体运动应当最小化: 这个L是Lagrangian.而运动过程满足固体不可压方程(2.10)和初始... 查看更多

The Material Point Method for Simulating Continuum Materials读书笔记

3 简介 MPM是结合PIC和FLIP而发展的一种算法。MPM对Lagrangian mesh连通性没有要求。 和PIC/FLIP类似,MPM算法在背景Eularian网格的辅助下,隐式处理自碰撞和破碎。与传统的Lagrangian方法(例如FEM算固体)Eularian方法(流体)相比,MPM好处如下: 和FEM一样,MPM可以由弱动量守恒形式导出,因此求解精确。可以很容易在网格和粒子上施加边界条件、固壁碰撞和外力。自动解决自碰撞/接触。因为粒子的运动,是由网格上未被扭曲的节点运动插值而得。自动对物质进行分割/合并,因为物质是由粒子表示的。这对流体和颗粒状材料很有用。只要... 查看更多

Guendelman: Coupling Water and Smoke to Thin Deformable and Rigid Shells略读

摘要 本文提出一种流固耦合算法,能处理用三角面片表示的,无穷薄的固体。经典的流固耦合算法在三维格子上表示固体,但薄片没有内部区域,这就需要新方法。我们使用Robust ray casting来辅助插值,有限差分和渲染算法,使得液体不会穿过固体薄片。此外,我们提出了一种新方法,使得在enforcing incompressibility过程中,固体表面附近的流体不会被异常地压缩。这样,我们就可以模拟薄布料和少量水的互动。我们的方法既能处理刚体也能处理软体。我们提出了一种two-way coupling算法,让流体压力能影响到固体。 我们的算法既能用在规则网格上,也能用于自适应八叉树网格。... 查看更多

Bridson:Fluid Simulation for Computer Graphics 11章 流固耦合

单向耦合 如果固体足够小,就可以忽略固体对流体的作用力,只考虑流体对固体的作用力。 固体受到的力分为两种:压力和粘性力。在固体非常小的时候,粘性力占主导,某点处的粘性力等于粘性张量乘以法向,总的受力就是: 这里S代表固体的体积,法向指向固体外部。由于是单向耦合,因此不在固体表面应用无滑移边界条件,也就不能直接把流体的粘性张量拿来用。那怎么办呢?理论上讲,固体周围应该有边界层,应该拿边界层内的速度场算粘性张量,但边界层的流场问题还没有解决。因此书中就搞了一个简单的式子: 这里面F_i是i号固体 (非常小,近似粒子) 受到的粘性力/拖曳力,u是流体的速度场... 查看更多

文章略读:A self-adaptive oriented particles Level-Set method for tracking interfaces

在初始时间,在界面上放个粒子,用表示粒子的位置。 显然,粒子跟着流场走,也就是: 由于是粒子,所以就是直接微分,没有什么物质导数之类的。 我们用有符号距离函数 做水平集的函数(level function)。那么根据这个就能求法向: 上面求出了粒子的时间演化方程,利用的性质可以把法向场的物质导数展开: 然后文章又对这个法向场的物质导数做了一下变换: 这个记号比较难懂,单独注明一下。首先是用了偏导的角标简写。在角标中逗号后面的做偏导。比如说就是对第i维坐标(x,y,z之一)做偏导,如果 就是对第i维和时间求二阶导, 就是的意思... 查看更多

Darcy-Brinkman-Forchheimer方程的无量纲化

根据文献,使用Darcy-Brinkman-Forchheimer扩展模型描述孔隙流动的方程如下: 不可压方程: 动量方程: 在这里的是Darcy velocity,或local average velocity,或superficial velocity。其意义是,单位截面积孔隙介质中流出的流体通量。这里的“单位截面积”是固体和液体一起算,所以这个Darcy velocity会比孔隙中流体质点的“真实速度”小一些。二者满足关系:Darcy velocity=真实速度*孔隙度(孔隙度一般记作)。而p*这个星号的含义是它是intrinsic也就是流体质点上的... 查看更多

气体动力学复习笔记

高速空气动力学的假设:1)流体看做理想。因为惯性力/粘性力的量级是Re,高速气流雷诺数很大,可忽略粘性力。2)视作绝热。携带热/传导热的量级是Re*Pr,其中Pr是普朗特数,量级为1,故可忽略传导热。3)忽略重力。重力/惯性力的量级是Fr(弗劳德数),即V^2/Lg,高速空气动力学中V大L小,故可忽略重力。4)假设气体是完全的(热力学中的理想气体,p=rho*R*T),比热是常数。在气体的压力和温度不是太大或太小的时候适用此假设,也就是240K<T<2000K,p<10大气压。如果是低温高压(接近液化),那么就要考虑完全气体中没有考虑的分子间吸引力以及分子本身占据的体积。如... 查看更多

粘性不可压缩流体运动复习笔记

基于吴望一《流体力学(下)》 运动方程组:略 边界条件:固壁上满足粘性边界条件,自由面边界条件 粘性流体运动的一般性质:a)有旋。原因是方程组中的粘性项可以写成,如果无旋,这一项就没了,就变成了理想不可压缩流体的方程,但理想不可压缩流体的方程满足滑移边界条件,看之前解的各个情况,绕流表面上的切向速度一般不为零,所以不科学。b)机械能的损耗性。变形速度越大损耗越大。c)涡旋的扩散性。例:涡量从长平板上扩散。 柱管内的流动首先看各种简化。1)流动定常,时间导数为零。2)在y,z方向速度为零,所以忽略在y,z方向的粘性力和惯性力。3)由于2,y,z的动量方程组消失,压力... 查看更多