CUDA implementation · research software
YASPS documentation
Examples
Dropping in a container
Drop mixed soft and affine bodies into a container with dynamic collision sets and custom CCD.
Cubify
Alternate local rotation and global position minimizers to stylize a bunny.
Inverse simulation
Differentiate a trajectory, solve adjoint systems, and update material designs with Adam.
Available now
Getting started
Requirements, repository installation, and verification.
Scene
The root object, energy registration, minimization, and solver access.
Mesh
Primitives, primitive unions, and mesh-level attributes.
Primitive
Repeated elements, attributes, connectivity, and dynamic instance counts.
Primitive union
Ordered attribute views across several primitives.
Connectivity
GPU mappings between primitive instances.
Attribute
Stored values, symbolic expressions, and supported operations.
Minimizer
Energy registration, derivative assembly, and solve directions.
Solver
MAS and block-Jacobi PCG selection and execution.
Differentiator
First- and second-order symbolic differentiation.
Matrix
Shared block-sparse GPU storage and multiplication.
Jacobian
First-order and mixed second-order sparse derivatives.
Hessian
Symmetric second derivatives and numeric assembly.
Gradient
Target-aligned derivative vectors on the GPU.