Skip to content

v1.0.4

Latest

Choose a tag to compare

@zfergus zfergus released this 04 Feb 04:30

Description

Add a new finite_jacobian_tensor<N> function which follows the convention that even-order tensors (e.g., matrices) are stored in column-blocks, while odd-order tensors are stored in row-blocks.

This is based on the tensor vectorization presented in "Dynamic Deformables" by Kim and Eberle [2022].

  • Update to C++17

Examples

  • finite_jacobian_tensor<3> (odd tensor order → row-block layout)
    • $f: \mathbb{R}^n \mapsto \mathbb{R}^{p \times q}$
    • $\nabla f: \mathbb{R}^n \mapsto \mathbb{R}^{pq \times n}$ where every $p$ rows represent one derivative w.r.t. $x_i$ for $0 \leq i &lt; n$
  • finite_jacobian_tensor<4> (even tensor order → column-block layout)
    • $f: \mathbb{R}^n \mapsto \mathbb{R}^{p \times q \times r}$
    • $\nabla f: \mathbb{R}^n \mapsto \mathbb{R}^{pq \times rn}$ where every $q$ columns represent one derivative w.r.t. $x_i$ for $0 \leq i &lt; n$

Full Changelog: v1.0.3...v1.0.4