Cpbat::gpu::geometry::Aabb | GPU axis-aligned bounding box (AABB) buffer public API |
Cpbat::gpu::impl::geometry::Aabb< kDims > | |
Cpbat::geometry::AabbKdTreeHierarchy< Dims > | Axis-aligned k-D tree hierarchy of axis-aligned bounding boxes |
Cpbat::geometry::AabbRadixTreeHierarchy< Dims > | Axis-aligned radix tree hierarchy of axis-aligned bounding boxes |
Cpbat::math::linalg::mini::Absolute< TMatrix > | |
►CEigen::AlignedBox | |
Cpbat::geometry::AxisAlignedBoundingBox< Dims > | Axis-aligned bounding box class |
Cpbat::io::Archive | Archive class for reading and writing data to HDF5 files |
Cpbat::math::optimization::BackTrackingLineSearch< TScalar > | |
Cpbat::gpu::impl::vbd::kernels::BackwardEulerMinimization | Device-side BFD1 minimization problem |
Cpbat::sim::integration::Bdf< TScalar, TIndex > | BDF (Backward Differentiation Formula) time integration scheme for a system of ODEs for an initial value problem (IVP) |
►Cpbat::geometry::sdf::BinaryNode | Base struct for all binary nodes |
Cpbat::geometry::sdf::Difference< TScalar > | Difference operation |
Cpbat::geometry::sdf::ExclusiveOr< TScalar > | Exclusive or operation |
Cpbat::geometry::sdf::Intersection< TScalar > | Intersection operation |
Cpbat::geometry::sdf::SmoothDifference< TScalar > | Smooth difference operation |
Cpbat::geometry::sdf::SmoothIntersection< TScalar > | Smooth intersection operation |
Cpbat::geometry::sdf::SmoothUnion< TScalar > | Smooth union operation |
Cpbat::geometry::sdf::Union< TScalar > | Union operation |
Cpbat::common::BinaryRadixTree< TIndex > | Binary radix tree implementation |
Cpbat::gpu::impl::math::Blas | |
Cpbat::geometry::BoundingVolumeHierarchy< TDerived, TBoundingVolume, TPrimitive, Dims > | CRTP base class for BVHs |
►Cpbat::geometry::BoundingVolumeHierarchy< TetrahedralAabbHierarchy, AxisAlignedBoundingBox< 3 >, IndexVector< 4 >, 3 > | |
Cpbat::geometry::TetrahedralAabbHierarchy | Tetrahedral AABB hierarchy class |
►Cpbat::geometry::BoundingVolumeHierarchy< TriangleAabbHierarchy2D, AxisAlignedBoundingBox< 2 >, IndexVector< 3 >, 2 > | |
Cpbat::geometry::TriangleAabbHierarchy2D | Bounding volume hierarchy for triangles in 2D |
►Cpbat::geometry::BoundingVolumeHierarchy< TriangleAabbHierarchy3D, AxisAlignedBoundingBox< 3 >, IndexVector< 3 >, 3 > | |
Cpbat::geometry::TriangleAabbHierarchy3D | Bounding volume hierarchy for triangles in 3D |
Cpbat::graph::BreadthFirstSearch< TIndex > | |
Cpbat::common::BruteSet< T, kCapacity > | Fixed-size brute-force set implementation |
Cpbat::gpu::common::Buffer | 1- or 2-dimensional GPU buffer of numeric types |
Cpbat::gpu::impl::common::Buffer< T, D > | |
Cpbat::gpu::geometry::Bvh | GPU linear BVH [6] public API |
Cpbat::gpu::impl::geometry::Bvh | Radix-tree linear BVH |
Cpbat::math::linalg::mini::CastView< TMatrix, NewType > | |
Cpbat::geometry::sdf::Composite< TScalar > | Composite signed distance function represented as a forest of SDFs |
Cpbat::sim::algorithm::newton::Config | Newton integrator configuration |
Cpbat::math::linalg::mini::ConstDiagonal< TMatrix > | |
Cpbat::math::linalg::mini::ConstEigenMatrixWrapper< TDerived > | |
Cpbat::math::linalg::mini::ConstSubMatrix< TMatrix, M, N > | |
Cpbat::math::linalg::mini::ConstTransposeSubMatrix< TMatrix, M, N > | |
Cpbat::math::linalg::mini::ConstTransposeView< TMatrix > | |
Cpbat::gpu::impl::vbd::kernels::ContactPenalty< kMaxContacts > | Penalty rescaler for mesh independent contact response |
Cpbat::math::linalg::mini::CrossProduct< TLhsMatrix, TRhsMatrix > | |
Cpbat::sim::vbd::Data | VBD simulation configuration |
Cpbat::sim::xpbd::Data | |
Cpbat::graph::DepthFirstSearch< TIndex > | |
Cpbat::gpu::impl::common::DeviceSynchronizedList< T > | |
Cpbat::math::linalg::mini::Diagonal< TMatrix > | |
Cpbat::graph::DisjointSetUnionFind< TIndex > | Disjoint Set Union-Find data structure |
►Cpbat::math::polynomial::detail::DivergenceFreeBasis< Dims, Order > | |
Cpbat::math::polynomial::DivergenceFreeBasis< Dims, Order > | Divergence-free polynomial basis \( \left\{ \mathbf{P}_i(X) \; \text{s.t.} \; \nabla_X
\mathbf{P}_i = 0 \right\} \) in dimensions \( d \) and order \( p \) |
Cpbat::math::DynamicQuadrature< Dims, Order > | Quadrature rule with variable points and weights |
Cpbat::sim::contact::MultibodyMeshMixedCcdDcd::EdgeEdgeContact | Edge-edge contact pair |
►CEigen::EigenBase | |
Cpbat::math::LinearOperator< TLinearOperators... > | |
Cpbat::math::LinearOperator< TLinearOperators > | Zero-overhead composite type satisfying the CLinearOperator concept |
Cpbat::math::linalg::mini::EigenMatrixWrapper< TDerived > | |
►CEnum | |
Cpython.pbatoolkit.py.geometry.Cell | |
Cpython.pbatoolkit.py.math.linalg.Ordering | |
Cpython.pbatoolkit.py.math.linalg.SolverBackend | |
Cpbat::sim::contact::Environment< TScalar > | Static environment geometry for contact simulation |
Cpbat::sim::dynamics::FemElastoDynamics< TElement, Dims, THyperElasticEnergy, TScalar, TIndex > | Finite Element Elasto-Dynamics initial value problem with Dirichlet boundary conditions using BDF (backward differentiation formula) as the time discretization |
Cpbat::gpu::impl::geometry::kernels::FGenerateHierarchy | |
Cpbat::math::FixedSizeVariableQuadrature< Quad > | Represents a quadrature scheme that can be constructed via existing quadrature schemes |
Cpbat::math::linalg::mini::FlatView< TMatrix > | |
Cpbat::geometry::sdf::Forest< TScalar > | CPU storage for a forest (of SDFs) |
Cstd::hash< pair< pbat::Index, pbat::Index > > | Hash function for pair of Index |
Cstd::hash< pbat::IndexVector< 2 > > | Hash function for pbat::IndexVector<2> |
Cstd::hash< pbat::IndexVector< 3 > > | Hash function for pbat::IndexVector<3> |
Cstd::hash< tuple< pbat::Index, pbat::Index > > | Hash function for 2-tuple of Index |
Cstd::hash< tuple< pbat::Index, pbat::Index, pbat::Index > > | Hash function for 3-tuple of Index |
Cpbat::geometry::HashGrid< Dims, TScalar, TIndex > | HashGrid is a spatial partitioning data structure that divides 3D space into a sparse grid of cells, allowing for efficient querying of point neighbours within a certain region |
Cpbat::common::Heap< T, Less, kCapacity > | Fixed-size max heap |
Cpbat::geometry::HierarchicalHashGrid< Dims, TScalar, TIndex > | Spatial partitioning data structure that divides 3D space into a set of sparse grids. Allowing for efficient querying of point neighbours within a certain region. Implements [4] |
Cpbat::sim::vbd::multigrid::Hierarchy | |
Cpbat::math::linalg::mini::HorizontalStack< TLhsMatrix, TRhsMatrix > | |
Cpbat::sim::vbd::multigrid::HyperReduction | |
Cpbat::math::linalg::mini::Identity< TScalar, M, N > | |
►Cpbat::gpu::impl::vbd::Integrator | VBD integrator [2] |
Cpbat::gpu::impl::vbd::AndersonIntegrator | AndersonIntegrator accelerated VBD integrator |
Cpbat::gpu::impl::vbd::ChebyshevIntegrator | Chebyshev semi-iterated method accelerated VBD integrator |
Cpbat::gpu::impl::vbd::TrustRegionIntegrator | Trust-Region accelerated VBD integrator |
Cpbat::gpu::impl::xpbd::Integrator | |
Cpbat::gpu::vbd::Integrator | The VBD public API wrapper around the VBD integrator implementation. [2] |
Cpbat::gpu::xpbd::Integrator | Public API of the GPU XPBD integrator |
Cpbat::sim::algorithm::newton::Integrator | Newton dynamics integrator |
►Cpbat::sim::vbd::Integrator | |
Cpbat::sim::vbd::AndersonIntegrator | Anderson accelerated VBD integrator |
Cpbat::sim::vbd::BroydenIntegrator | Accelerated Anderson accelerated VBD integrator |
Cpbat::sim::vbd::ChebyshevIntegrator | |
Cpbat::sim::vbd::NesterovIntegrator | |
Cpbat::sim::vbd::multigrid::Integrator | |
Cpbat::sim::xpbd::Integrator | |
Cpbat::geometry::KdTree< Dims > | KDTree class |
Cpbat::geometry::KdTreeNode | Node of a KDTree |
Cpbat::sim::vbd::multigrid::Level | |
Cpbat::gpu::impl::math::LinearSolver | |
Cpbat::gpu::impl::math::Matrix< T > | |
Cpbat::math::linalg::mini::MatrixMatrixPredicate< TLhsMatrix, TRhsMatrix, Compare > | |
Cpbat::math::linalg::mini::MatrixScalarPredicate< TMatrix, Compare > | |
Cpbat::gpu::impl::math::MatrixView< T > | |
Cpbat::math::linalg::mini::Maximum< TLhsMatrix, TRhsMatrix > | |
Cpbat::fem::Mesh< TElement, Dims, TScalar, TIndex > | A generic stateful finite element mesh representation |
Cpbat::sim::contact::MeshVertexTetrahedronDcd | Discrete contact detection system for vertex-tetrahedron contacts between multiple tetrahedral meshes |
Cpbat::math::linalg::mini::Minimum< TLhsMatrix, TRhsMatrix > | |
►Cpbat::math::polynomial::detail::MonomialBasis< Dims, Order > | |
Cpbat::math::polynomial::MonomialBasis< HyperReduction::kDims, HyperReduction::kPolynomialOrder > | |
Cpbat::math::polynomial::MonomialBasis< Dims, Order > | Polynomial basis \( \left\{ \Pi_{i=1}^{d} \mathbf{X}_i^{p_i} \; \text{s.t.} \; 0 \leq
\sum_{i=1}^d p_i \leq p \right\} \) in dimensions \( d \) and order \( p \) |
Cpbat::gpu::impl::geometry::Morton | |
Cpbat::sim::contact::MultibodyMeshMixedCcdDcd | Multibody triangle mesh continuous collision detection system |
Cpbat::sim::contact::MultibodyTetrahedralMeshSystem< TIndex, TScalar > | Multibody Tetrahedral Mesh System |
Cpbat::math::optimization::Newton< TScalar > | Newton's method for optimization |
Cpbat::math::linalg::mini::Ones< TScalar, M, N > | |
►Cpbat::math::polynomial::detail::OrthonormalBasis< Dims, Order > | |
Cpbat::math::polynomial::OrthonormalBasis< Dims, Order > | Orthonormal polynomial basis \( \left\{ P_i(X) \right\} \) in dimensions \( d \) and order \( p
\) |
Cpbat::math::OverflowChecked< Integer > | Wrapper around integer types that throws when integer overflow is detected |
Cpbat::graph::PartitioningOptions | Options for graph partitioning |
Cpbat::sim::algorithm::newton::Preconditioner | Cholesky preconditioner |
Cpbat::sim::algorithm::newton::PreconditionerOperator | Preconditioner operator Non-owning view over stateful preconditioner, to use with Eigen's matrix-free solvers |
►Cpbat::geometry::sdf::Primitive | Base struct for all primitive shapes |
Cpbat::geometry::sdf::Box< TScalar > | Axis-aligned box centered in \( (0,0,0) \) with half extents \( \text{he} \in
\mathbb{R}^3 \) |
Cpbat::geometry::sdf::BoxFrame< TScalar > | Box frame with half extents \( \text{he} \in \mathbb{R}^3 \) and thickness \( t \) |
Cpbat::geometry::sdf::CappedCylinder< TScalar > | Capped cylinder shape with endpoints \( a, b \in \mathbb{R}^3 \) and radius \( r \) |
Cpbat::geometry::sdf::CappedTorus< TScalar > | Capped torus centered in \( (0,0,0) \) with parameters sc, ra, rb |
Cpbat::geometry::sdf::Capsule< TScalar > | Capsule shape with endpoints \( a, b \in \mathbb{R}^3 \) and radius \( r \) |
Cpbat::geometry::sdf::Cone< TScalar > | Cone shape |
Cpbat::geometry::sdf::CutHollowSphere< TScalar > | Cut hollow sphere shape with radius \( r \), cut height \( h \) and thickness \( t
\) |
Cpbat::geometry::sdf::HexagonalPrism< TScalar > | Hexagonal prism shape |
Cpbat::geometry::sdf::InfiniteCone< TScalar > | Infinite cone shape |
Cpbat::geometry::sdf::InfiniteCylinder< TScalar > | Infinite cylinder |
Cpbat::geometry::sdf::Link< TScalar > | Link shape as elongated torus with elongation length \( le \) and minor+major radius \(t = (r,R) \) |
Cpbat::geometry::sdf::Octahedron< TScalar > | Octahedron shape |
Cpbat::geometry::sdf::Plane< TScalar > | Plane shape with normal \( n=(0,0,1) \) and point on the plane \( o=(0,0,0) \) |
Cpbat::geometry::sdf::Pyramid< TScalar > | Pyramid shape |
Cpbat::geometry::sdf::Quadrilateral< TScalar > | Quadrilateral shape with vertices \( a, b, c, d \in \mathbb{R}^3 \) |
Cpbat::geometry::sdf::RoundedCylinder< TScalar > | Rounded cylinder shape with height \( h \), radius \( \text{ra} \) and rounding radius \( \text{rb} \) |
Cpbat::geometry::sdf::Sphere< TScalar > | Sphere centered in \( (0,0,0) \) with radius \( R \) |
Cpbat::geometry::sdf::Torus< TScalar > | Torus centered in \( (0,0,0) \) with minor+major radius \( t = (r,R) \) |
Cpbat::geometry::sdf::Triangle< TScalar > | Triangle shape |
Cpbat::geometry::sdf::VerticalCappedCone< TScalar > | Capped cone shape with height \( h \) and minor+major radius \( r^1, r^2 \) |
Cpbat::geometry::sdf::VerticalCappedCylinder< TScalar > | Vertical capped cylinder shape with height \( h \) and radius \( r \) |
Cpbat::geometry::sdf::VerticalCapsule< TScalar > | Capsule shape with height \( h \) and radius \( r \) |
Cpbat::geometry::sdf::VerticalRoundCone< TScalar > | Vertical round cone shape with height \( h \), radii \( \text{r}^1, \text{r}^2 \) at endpoints |
Cpbat::math::linalg::mini::Product< TLhsMatrix, TRhsMatrix > | |
Cpython.pbatoolkit.py.profiling.Profiler | |
Cpbat::common::Queue< T, kCapacity > | Fixed-size queue implementation |
Cpbat::gpu::impl::geometry::kernels::FGenerateHierarchy::Range | |
Cpbat::math::Rational | Fixed size rational number \( \frac{a}{b} \) using std::int64_t for numerator and denominator |
Cpbat::math::linalg::mini::Reciprocal< TLhsMatrix > | |
Cpbat::physics::SaintVenantKirchhoffEnergy< Dims > | |
Cpbat::physics::SaintVenantKirchhoffEnergy< 1 > | Saint-Venant Kirchhoff hyperelastic energy for 1D |
Cpbat::physics::SaintVenantKirchhoffEnergy< 2 > | Saint-Venant Kirchhoff hyperelastic energy for 2D |
Cpbat::physics::SaintVenantKirchhoffEnergy< 3 > | Saint-Venant Kirchhoff hyperelastic energy for 3D |
Cpbat::math::linalg::mini::Scale< TMatrix > | |
Cpbat::math::linalg::mini::SMatrix< TScalar, M, N > | |
Cpbat::sim::vbd::multigrid::SMatrix< TScalar, M, N > | |
Cpbat::math::linalg::mini::SMatrixView< TScalar, M, N > | |
Cpbat::sim::vbd::multigrid::Smoother | |
Cpbat::math::linalg::SparsityPattern< TIndex, Options > | Sparsity pattern precomputer to accelerate sparse matrix assembly |
Cpbat::math::linalg::mini::Square< TMatrix > | |
Cpbat::physics::StableNeoHookeanEnergy< Dims > | |
Cpbat::physics::StableNeoHookeanEnergy< 1 > | Stable Neo-Hookean hyperelastic energy for 1D |
Cpbat::physics::StableNeoHookeanEnergy< 2 > | Stable Neo-Hookean hyperelastic energy for 2D |
Cpbat::physics::StableNeoHookeanEnergy< 3 > | Stable Neo-Hookean hyperelastic energy for 3D |
Cpbat::common::Stack< T, kCapacity > | Fixed-size stack implementation |
Cpbat::math::linalg::mini::SubMatrix< TMatrix, M, N > | |
Cpbat::math::linalg::mini::Subtraction< TLhsMatrix, TRhsMatrix > | |
Cpbat::math::linalg::mini::SubtractionScalar< TLhsMatrix > | |
Cpbat::math::linalg::mini::Sum< TLhsMatrix, TRhsMatrix > | |
Cpbat::math::linalg::mini::SumScalar< TLhsMatrix > | |
Cpbat::gpu::geometry::SweepAndPrune | GPU Sweep and Prune public API |
Cpbat::gpu::impl::geometry::SweepAndPrune | Single-axis parallel sweep and prune algorithm for detecting overlapping bounding boxes |
Cpbat::gpu::impl::common::SynchronizedList< T > | |
Cpbat::math::linalg::mini::TiledView< TMatrix, RepeatRows, RepeatCols > | |
Cpbat::geometry::sdf::Transform< TScalar > | A 3D rigid transform |
Cpbat::math::linalg::mini::TransposeSubMatrix< TMatrix, M, N > | |
Cpbat::math::linalg::mini::TransposeView< TMatrix > | |
►CTs... | |
Cpbat::common::Overloaded< Ts > | C++20 feature to allow multiple inheritance of operator() for lambdas |
►Cpbat::geometry::sdf::UnaryNode | Base struct for all unary nodes |
Cpbat::geometry::sdf::Bend< TScalar > | Bend operation around the z axis |
Cpbat::geometry::sdf::Bump< TScalar > | Wave-like bumpiness operation along the axes |
Cpbat::geometry::sdf::Elongate< TScalar > | Elongation operation along the axes |
Cpbat::geometry::sdf::Onion< TScalar > | Onion operation (i.e. carving interior) |
Cpbat::geometry::sdf::Repeat< TScalar > | Grid-like repetition operation along the axes |
Cpbat::geometry::sdf::RotationalRepeat< TScalar > | Circular repetition operation around axe |
Cpbat::geometry::sdf::Round< TScalar > | Rounding operation (i.e. positive offset surface) |
Cpbat::geometry::sdf::Scale< TScalar > | Uniform scaling operation |
Cpbat::geometry::sdf::Symmetrize< TScalar > | Symmetrization operation along the x axis |
Cpbat::geometry::sdf::Twist< TScalar > | Twist operation around the y axis |
Cpbat::gpu::impl::common::Var< T > | |
Cpbat::gpu::impl::vbd::kernels::VbdIterationTraits< kBlockThreads > | Traits for VBD iteration kernel |
Cpbat::gpu::impl::math::Vector< T > | |
Cpbat::gpu::impl::math::VectorView< T > | |
Cpbat::sim::contact::MultibodyMeshMixedCcdDcd::VertexTriangleContact | Vertex-triangle contact pair (i,f) |
Cpbat::gpu::contact::VertexTriangleMixedCcdDcd | Public API of vertex-triangle mixed continuous collision detection (CCD) and discrete collision detection system on the GPU |
Cpbat::gpu::impl::contact::VertexTriangleMixedCcdDcd | Vertex-triangle contact detection using a mixed CCD/DCD approach |
Cpbat::math::linalg::mini::VerticalStack< TLhsMatrix, TRhsMatrix > | |
Cpbat::graph::WeightedEdgeTraits< TWeightedEdge > | Traits for WeightedEdge |
Cpbat::math::linalg::mini::Zeros< TScalar, M, N > | |
Cpbat::sim::vbd::multigrid::Zeros< TScalar, M, N > | |
Cpbat::gpu::profiling::Zone | RAII class wrapping Tracy zones for CUDA host code |