Shamrock 2025.10.0
Astrophysical Code
Loading...
Searching...
No Matches
Public Types | Static Public Member Functions | List of all members
shamtree::details::DTTCpuReference< Tmorton, Tvec, dim > Struct Template Reference

Public Types

using Tscal = shambase::VecComponent< Tvec >
 
using ObjItHost = shamtree::CLBVHObjectIteratorHost< Tmorton, Tvec, dim >
 
using ObjItHostAcc = typename ObjItHost::acc
 

Static Public Member Functions

static bool mac (shammath::AABB< Tvec > a, shammath::AABB< Tvec > b, Tscal theta_crit)
 
template<bool allow_leaf_lowering>
static void dtt_recursive_internal (u32 cell_a, u32 cell_b, const ObjItHostAcc &acc, Tscal theta_crit, std::vector< u32_2 > &interact_m2l, std::vector< u32_2 > &interact_p2p)
 We make the assumption that the root is not a leaf.
 
static void dtt_recursive_ref (const shamtree::CompressedLeafBVH< Tmorton, Tvec, dim > &bvh, Tscal theta_crit, std::vector< u32_2 > &interact_m2l, std::vector< u32_2 > &interact_p2p, bool allow_leaf_lowering)
 
static shamtree::DTTResult dtt (sham::DeviceScheduler_ptr dev_sched, const shamtree::CompressedLeafBVH< Tmorton, Tvec, dim > &bvh, shambase::VecComponent< Tvec > theta_crit, bool ordered_result, bool allow_leaf_lowering)
 

Detailed Description

template<class Tmorton, class Tvec, u32 dim>
struct shamtree::details::DTTCpuReference< Tmorton, Tvec, dim >

Definition at line 29 of file dtt_reference.hpp.

Member Typedef Documentation

◆ ObjItHost

template<class Tmorton , class Tvec , u32 dim>
using shamtree::details::DTTCpuReference< Tmorton, Tvec, dim >::ObjItHost = shamtree::CLBVHObjectIteratorHost<Tmorton, Tvec, dim>

Definition at line 33 of file dtt_reference.hpp.

◆ ObjItHostAcc

template<class Tmorton , class Tvec , u32 dim>
using shamtree::details::DTTCpuReference< Tmorton, Tvec, dim >::ObjItHostAcc = typename ObjItHost::acc

Definition at line 34 of file dtt_reference.hpp.

◆ Tscal

template<class Tmorton , class Tvec , u32 dim>
using shamtree::details::DTTCpuReference< Tmorton, Tvec, dim >::Tscal = shambase::VecComponent<Tvec>

Definition at line 31 of file dtt_reference.hpp.

Member Function Documentation

◆ dtt()

template<class Tmorton , class Tvec , u32 dim>
static shamtree::DTTResult shamtree::details::DTTCpuReference< Tmorton, Tvec, dim >::dtt ( sham::DeviceScheduler_ptr  dev_sched,
const shamtree::CompressedLeafBVH< Tmorton, Tvec, dim > &  bvh,
shambase::VecComponent< Tvec >  theta_crit,
bool  ordered_result,
bool  allow_leaf_lowering 
)
inlinestatic

Definition at line 155 of file dtt_reference.hpp.

◆ dtt_recursive_internal()

template<class Tmorton , class Tvec , u32 dim>
template<bool allow_leaf_lowering>
static void shamtree::details::DTTCpuReference< Tmorton, Tvec, dim >::dtt_recursive_internal ( u32  cell_a,
u32  cell_b,
const ObjItHostAcc &  acc,
Tscal  theta_crit,
std::vector< u32_2 > &  interact_m2l,
std::vector< u32_2 > &  interact_p2p 
)
inlinestatic

We make the assumption that the root is not a leaf.

Definition at line 42 of file dtt_reference.hpp.

◆ dtt_recursive_ref()

template<class Tmorton , class Tvec , u32 dim>
static void shamtree::details::DTTCpuReference< Tmorton, Tvec, dim >::dtt_recursive_ref ( const shamtree::CompressedLeafBVH< Tmorton, Tvec, dim > &  bvh,
Tscal  theta_crit,
std::vector< u32_2 > &  interact_m2l,
std::vector< u32_2 > &  interact_p2p,
bool  allow_leaf_lowering 
)
inlinestatic

We make the assumption that the root is not a leaf in this function

Definition at line 127 of file dtt_reference.hpp.

◆ mac()

template<class Tmorton , class Tvec , u32 dim>
static bool shamtree::details::DTTCpuReference< Tmorton, Tvec, dim >::mac ( shammath::AABB< Tvec >  a,
shammath::AABB< Tvec >  b,
Tscal  theta_crit 
)
inlinestatic

Definition at line 36 of file dtt_reference.hpp.


The documentation for this struct was generated from the following file: