PhysicsBasedAnimationToolkit 0.0.10
Cross-platform C++20 library of algorithms and data structures commonly used in computer graphics research on physically-based simulation.
Loading...
Searching...
No Matches
pbat::gpu::impl::vbd::kernels Namespace Reference

Device-side VBD kernels. More...

Classes

struct  BackwardEulerMinimization
 Device-side BFD1 minimization problem. More...
 
struct  ContactPenalty
 Penalty rescaler for mesh independent contact response. More...
 
struct  VbdIterationTraits
 Traits for VBD iteration kernel. More...
 

Functions

template<auto kBlockThreads>
__global__ void VbdIteration (BackwardEulerMinimization BDF)
 VBD iteration kernel.
 
template<template< auto > class TKernelTraits, class... TArgs>
void Invoke (GpuIndex nBlocks, GpuIndex nThreads, TArgs &&... args)
 Invokes a VBD kernel on the GPU with the specified number of blocks and threads.
 

Detailed Description

Device-side VBD kernels.

Function Documentation

◆ Invoke()

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.

Template Parameters
TKernelTraitsKernel traits type
TArgsArgument types
Parameters
nBlocksGrid size
nThreadsBlock size
argsArguments to pass to the kernel

◆ VbdIteration()

template<auto kBlockThreads>
__global__ void pbat::gpu::impl::vbd::kernels::VbdIteration ( BackwardEulerMinimization BDF)

VBD iteration kernel.

Template Parameters
kBlockThreadsNumber of threads per block
Parameters
BDFBDF1 time-stepping minimization problem