mhtirogla
Home
Systems
API
Pricing
About
Log in
← Back
Home
›
Systems
›
Simulation and scientific computing
robotics-sim
robotics physics simulation
MuJoCo
System
Techniques · 8
Primitives · 25
robotics-sim
Complementarity contact solver
physics · medium: Contact as LCP or convex optimization (PGS, Newton) with friction cones; soft contacts
Joint constraints
physics · medium: Hinge, ball, slider and motor constraints as Jacobian rows for impulse solvers
Rigid body dynamics algorithms
physics · medium: Featherstone RNEA/ABA/CRBA for articulated-body inverse and forward dynamics
Sequential impulse solver
physics · medium: Iterative contact solver applying impulses one constraint at a time with accumulated clamping and warm starting; the standard solver for stacking and friction in real-time physics engines.
›
Inverse kinematics
robotics · medium: CCD/FABRIK/Jacobian solvers posing joint chains to reach targets
Levenberg marquardt
numerics · medium: Damped Gauss-Newton nonlinear least squares for model calibration
Contact manifold generation
physics · medium: Build persistent contact point sets from collision normals by clipping, with feature IDs for warm starts
Quaternion rotations
geometry · low: Unit quaternions as 3D rotations: 4 floats, cheap composition, no gimbal lock, plus the conversions, interpolation choices and numerical care needed in practice.
›
LU and Cholesky factorization
numerics · low: Factor A = PLU (any square matrix, partial pivoting) or A = LLᵀ (SPD) once in O(n³), then solve each right-hand side in O(n²).
›
GJK and EPA
physics · low: GJK decides whether (and how far apart) two convex shapes are from their support functions alone; EPA expands its simplex into penetration depth and normal.
›
Structure of arrays and hot/cold sp…
hardware-os · low: Store each field in its own array and keep rarely used fields apart, so a loop reads only the bytes it needs and the compiler can vectorize it.
›
Reverse-mode automatic differentiat…
ml-training · low: Record the forward computation on a tape, then sweep it backwards once to get the gradient of a scalar loss for all inputs.
›
Conjugate gradient
numerics · low: Krylov iteration for symmetric positive definite Ax = b using one matrix-vector product and two dot products per step; converges in about √κ iterations.
›
Newton root finding
numerics · low: Linearize at the guess and jump to the tangent root; quadratic convergence near a simple root, made robust by brackets (1D) or line search.
›
Runge-Kutta 4
numerics · low: The classic four-stage, fourth-order ODE step; error drops 16× when the step halves, with no derivatives or past steps needed.
›
Semi-implicit Euler
numerics · low: Update velocity from forces first, then position with the new velocity: explicit Euler cost, but symplectic and stable; the default game-physics integrator.
›
Bounding volume hierarchy
physics · low: Binary tree of nested bounding boxes; prunes overlap and ray queries to O(log n) for any size distribution, and supports cheap insert/remove for moving objects.
›
Sweep and prune
physics · low: Sort box endpoints along an axis and sweep: only intervals that overlap on that axis are tested; near-linear per frame thanks to temporal coherence.
›
Sparse matrices (CSR)
numerics · low: Compressed sparse row stores only nonzeros as row pointers, column indices and values; SpMV streams them once, so it is memory-bandwidth bound.
›
Rigid-body dynamics
physics · low: Advance one 3D rigid body per step from force and torque: semi-implicit Euler for position, an inertia tensor in the body frame, and quaternion orientation updated by the exponential map.
›
Rigid-body transforms (SE(3) poses)
robotics · low: Represent, compose, invert, integrate and interpolate 3D poses as unit quaternion plus translation, with exp/log maps for small motions and uncertainty.
›
Simulation islands sleeping
physics · low: Group touching bodies into islands, solve them independently and put resting islands to sleep
PCA and SVD
machine-learning · low: Find orthogonal directions of maximum variance by an SVD of the centred data; randomized SVD gets the top k components in a few passes.
›
+ 1 more techniques
+ 9 more primitives
System
Techniques · 8
Primitives · 25
robotics-sim
Complementarity contact solver
physics · medium: Contact as LCP or convex optimization (PGS, Newton) with friction cones; soft contacts
Joint constraints
physics · medium: Hinge, ball, slider and motor constraints as Jacobian rows for impulse solvers
Rigid body dynamics algorithms
physics · medium: Featherstone RNEA/ABA/CRBA for articulated-body inverse and forward dynamics
Sequential impulse solver
physics · medium: Iterative contact solver applying impulses one constraint at a time with accumulated clamping and warm starting; the standard solver for stacking and friction in real-time physics engines.
›
Inverse kinematics
robotics · medium: CCD/FABRIK/Jacobian solvers posing joint chains to reach targets
Levenberg marquardt
numerics · medium: Damped Gauss-Newton nonlinear least squares for model calibration
Contact manifold generation
physics · medium: Build persistent contact point sets from collision normals by clipping, with feature IDs for warm starts
Polygon clipping
geometry · medium: Polygon intersection/union/difference (Weiler-Atherton, Martinez) for spatial predicates
Quaternion rotations
geometry · low: Unit quaternions as 3D rotations: 4 floats, cheap composition, no gimbal lock, plus the conversions, interpolation choices and numerical care needed in practice.
›
LU and Cholesky factorization
numerics · low: Factor A = PLU (any square matrix, partial pivoting) or A = LLᵀ (SPD) once in O(n³), then solve each right-hand side in O(n²).
›
GJK and EPA
physics · low: GJK decides whether (and how far apart) two convex shapes are from their support functions alone; EPA expands its simplex into penetration depth and normal.
›
Structure of arrays and hot/cold sp…
hardware-os · low: Store each field in its own array and keep rarely used fields apart, so a loop reads only the bytes it needs and the compiler can vectorize it.
›
Reverse-mode automatic differentiat…
ml-training · low: Record the forward computation on a tape, then sweep it backwards once to get the gradient of a scalar loss for all inputs.
›
Conjugate gradient
numerics · low: Krylov iteration for symmetric positive definite Ax = b using one matrix-vector product and two dot products per step; converges in about √κ iterations.
›
Newton root finding
numerics · low: Linearize at the guess and jump to the tangent root; quadratic convergence near a simple root, made robust by brackets (1D) or line search.
›
Runge-Kutta 4
numerics · low: The classic four-stage, fourth-order ODE step; error drops 16× when the step halves, with no derivatives or past steps needed.
›
Semi-implicit Euler
numerics · low: Update velocity from forces first, then position with the new velocity: explicit Euler cost, but symplectic and stable; the default game-physics integrator.
›
Bounding volume hierarchy
physics · low: Binary tree of nested bounding boxes; prunes overlap and ray queries to O(log n) for any size distribution, and supports cheap insert/remove for moving objects.
›
Sweep and prune
physics · low: Sort box endpoints along an axis and sweep: only intervals that overlap on that axis are tested; near-linear per frame thanks to temporal coherence.
›
Sparse matrices (CSR)
numerics · low: Compressed sparse row stores only nonzeros as row pointers, column indices and values; SpMV streams them once, so it is memory-bandwidth bound.
›
Rigid-body dynamics
physics · low: Advance one 3D rigid body per step from force and torque: semi-implicit Euler for position, an inertia tensor in the body frame, and quaternion orientation updated by the exponential map.
›
Rigid-body transforms (SE(3) poses)
robotics · low: Represent, compose, invert, integrate and interpolate 3D poses as unit quaternion plus translation, with exp/log maps for small motions and uncertainty.
›
Simulation islands sleeping
physics · low: Group touching bodies into islands, solve them independently and put resting islands to sleep
PCA and SVD
machine-learning · low: Find orthogonal directions of maximum variance by an SVD of the centred data; randomized SVD gets the top k components in a few passes.
›
Finite differences
numerics · low: Replace derivatives with weighted differences of grid values; simple stencils plus a stability condition (CFL) turn PDEs like heat, advection and waves into array loops.
›
Separating axis theorem
physics · low: Convex shapes are disjoint iff some axis separates their projections; testing face normals and edge crosses gives overlap, depth and contact normal.
›
d-ary heap
data-structures · low: Array heap with d children per node (d = 4 typical): half the binary heap's depth, siblings in one cache line, faster priority queues.
›
Exact geometric predicates
geometry · low: Robust orient and incircle tests with adaptive-precision floats (Shewchuk) or exact arithmetic
Point in polygon
geometry · low: Ray-casting/winding tests and indexed polygon lookup for reverse geocoding
Homogeneous transforms
geometry · low: 4x4 affine and projective matrices, homogeneous coordinates, view and projection, normal matrices
Fixed timestep loop
graphics · low: Fixed simulation dt with accumulator, render interpolation, spiral-of-death guard
Explicit Euler
numerics · low: Step an ODE forward by its current slope, y += h·f(t, y); first-order, one evaluation per step, the baseline every other integrator is measured against.
›
Thomas tridiagonal solver
numerics · low: O(n) tridiagonal linear solve used in implicit finite-difference and spline schemes
Copy for AI
Similar systems
Share the most building blocks with this one.
physics-engine
25 %
industrial-robot-controller
15 %