|
PhysicsBasedAnimationToolkit 0.0.10
Cross-platform C++20 library of algorithms and data structures commonly used in computer graphics research on physically-based simulation.
|
VBD kernels. More...
#include "pbat/HostDevice.h"#include "pbat/gpu/Aliases.h"#include "pbat/math/linalg/mini/Mini.h"#include "pbat/physics/StableNeoHookeanEnergy.h"#include "pbat/sim/vbd/Kernels.h"#include <array>#include <cstddef>#include <cub/block/block_reduce.cuh>#include <cuda/api/device.hpp>#include <cuda/api/launch_config_builder.hpp>#include <cuda/std/tuple>#include <limits>Go to the source code of this file.
Classes | |
| struct | pbat::gpu::impl::vbd::kernels::BackwardEulerMinimization |
| Device-side BFD1 minimization problem. More... | |
| struct | pbat::gpu::impl::vbd::kernels::ContactPenalty< kMaxContacts > |
| Penalty rescaler for mesh independent contact response. More... | |
| struct | pbat::gpu::impl::vbd::kernels::VbdIterationTraits< kBlockThreads > |
| Traits for VBD iteration kernel. More... | |
Namespaces | |
| namespace | pbat::gpu::impl::vbd::kernels |
| Device-side VBD kernels. | |
| namespace | pbat |
| The main namespace of the library. | |
| namespace | pbat::gpu |
| GPU related public functionality. | |
| namespace | pbat::gpu::impl |
| GPU algorithm implementations. | |
| namespace | pbat::gpu::impl::vbd |
| Vertex Block Descent (VBD) algorithms. | |
Functions | |
| template<auto kBlockThreads> | |
| __global__ void | pbat::gpu::impl::vbd::kernels::VbdIteration (BackwardEulerMinimization BDF) |
| VBD iteration kernel. | |
| template<template< auto > class TKernelTraits, class... TArgs> | |
| void | pbat::gpu::impl::vbd::kernels::Invoke (GpuIndex nBlocks, GpuIndex nThreads, TArgs &&... args) |
| Invokes a VBD kernel on the GPU with the specified number of blocks and threads. | |
VBD kernels.