Particle and Rigid Body Dynamics

The course notes give detailed code implementation and mathematical derivation. Newton Method $$ \begin{gather*} f(x)\approx f(x_n)+f'(x_n)\Delta x+\frac{1}{2}f''(x_n)\Delta x^2 \\ 0=\frac{d}{d\Delta x}\left(f(x_n)+f'(x_n)\Delta x+\frac{1}{2}f''(x_n)\Delta x^2\right)=f'(x_{n})+f''(x_{n})\Delta x \end{gather*} $$ so $$ x_{n+1}=x_n-H^{-1}\nabla f(x_n) $$ where $H=\nabla^2f$ is the Hessian matrix Euler Method $$ \mathbf{x}(t_0 + h) = \mathbf{x}_0+h \dot{\mathbf{x}}(t_0) $$ Euler Method is the simplest numerical method and achieve $O(h^2)$ accuracy. But it has many disadvantages. It will produce outward drift when evaluating an orbiting movement so it is not accurate....

March 20, 2018 · 7 min

Projective Dynamics

Paper Reading Note Implicit Euler Solver $$ \begin{gather*} \mathbf{q}_{n+1}=\mathbf{q}_n+h\mathbf{v}_{n+1} \\ \mathbf{v}_{n+1}=\mathbf{v}_n+h\mathbf{M}^{-1}(\mathbf{f}_{\text{int}}(\mathbf{q}_{n+1})+\mathbf{f}_{\text{ext}}) \end{gather*} $$ This system can be converted to an optimization problem: $$ \require{mathtools} \DeclarePairedDelimiters\norm{\lVert}{\rVert} \min_{\mathbf{q}_{n+1}} \dfrac{1}{2h^2} \norm*{\mathbf{M}^{\frac{1}{2}} (\mathbf{q}_{n+1} - \mathbf{s}_n)}_F^2 + \sum_i W_i(\mathbf{q}_{n+1}) $$ where $\mathbf{s}_n = \mathbf{q}_n + h\mathbf{v}_n + h^2\mathbf{M}^{-1}\mathbf{f}_{\text{ext}}$ and $W_i(\mathbf{q})$ is a scalar potential energy function. Intuitively, this minimization problem describes the compromise between the momentum potential $$ \begin{equation}\label{potential} \dfrac{1}{2h^2} \norm*{\mathbf{M}^{\frac{1}{2}} (\mathbf{q}_{n+1} - \mathbf{s}_n)}_F^2 \end{equation} $$ which states that the solution should follow its momentum (plus external forces), and the elastic potential, that requires the solution to minimize the elastic deformation....

March 17, 2018 · 5 min

Position Based Dynamics

This paper introduces position-based methods and its differences from other methods. Moreover, it presents the algorithm and several solvers. Specific constraints are also discussed in detail. Finally, Implementation and application are briefly presented. Constraints Constraints are kinematic restrictions in the form of equations and inequalities that constrain the relative motion of bodies. Equality and inequality constraints are referred to as bilateral and unilateral constraints, respectively. Bilateral constraint $$ C(\mathbf{x}_{i_1}, \mathbf{q}_{i_1}, \cdots , \mathbf{x}_{i_{n_j}}, \mathbf{q}_{i_{n_j}}) = 0 $$ Unilateral constraint $$ C(\mathbf{x}_{i_1}, \mathbf{q}_{i_1}, \cdots , \mathbf{x}_{i_{n_j}}, \mathbf{q}_{i_{n_j}}) \ge 0 $$ where $\{i_1, \cdots, i_{n_j}\}$ is a set of body indices and $n_j$ is the cardinality of the constraint....

March 16, 2018 · 6 min

Physically Based Deformable Models

This paper presents the most important methods used in computer graphics to produce realistic animations and simulations: finite element/difference/volume methods, mass-spring systems, meshfree methods, coupled particle systems and reduced deformable models based on modal analysis. Also, it discusses the benefits and drawbacks of each method, reports the improvement that made in other papers. Time Integration Time integration schemes are evaluated by two main criteria, their stability and their accuracy. In the field of physically based animation in Computer Graphics, stability is often much more important than accuracy....

March 15, 2018 · 12 min