Shamrock 2025.10.0
Astrophysical Code
Loading...
Searching...
No Matches
shammodels::sph::modules::CartesianRender< Tvec, Tfield, SPHKernel > Class Template Reference
Collaboration diagram for shammodels::sph::modules::CartesianRender< Tvec, Tfield, SPHKernel >:

Public Types

using Tscal = shambase::VecComponent<Tvec>
using Kernel = SPHKernel<Tscal>
using Config = SolverConfig<Tvec, SPHKernel>
using Storage = SolverStorage<Tvec, u32>
using field_getter_t

Public Member Functions

 CartesianRender (ShamrockCtx &context, Config &solver_config, Storage &storage)
sham::DeviceBuffer< Tfield > compute_slice (std::function< field_getter_t > field_getter, const sham::DeviceBuffer< Tvec > &positions)
sham::DeviceBuffer< Tfield > compute_column_integ (std::function< field_getter_t > field_getter, const sham::DeviceBuffer< shammath::Ray< Tvec > > &rays)
sham::DeviceBuffer< Tfield > compute_azymuthal_integ (std::function< field_getter_t > field_getter, const sham::DeviceBuffer< shammath::RingRay< Tvec > > &ring_rays)
sham::DeviceBuffer< Tfield > compute_slice (std::string field_name, const sham::DeviceBuffer< Tvec > &positions, std::optional< std::function< pybind11::array_t< Tfield >(size_t, pybind11::dict &)> > custom_getter)
sham::DeviceBuffer< Tfield > compute_column_integ (std::string field_name, const sham::DeviceBuffer< shammath::Ray< Tvec > > &rays, std::optional< std::function< pybind11::array_t< Tfield >(size_t, pybind11::dict &)> > custom_getter)
sham::DeviceBuffer< Tfield > compute_azymuthal_integ (std::string field_name, const sham::DeviceBuffer< shammath::RingRay< Tvec > > &ring_rays, std::optional< std::function< pybind11::array_t< Tfield >(size_t, pybind11::dict &)> > custom_getter)
sham::DeviceBuffer< Tfield > compute_slice (std::function< field_getter_t > field_getter, Tvec center, Tvec delta_x, Tvec delta_y, u32 nx, u32 ny)
sham::DeviceBuffer< Tfield > compute_column_integ (std::function< field_getter_t > field_getter, Tvec center, Tvec delta_x, Tvec delta_y, u32 nx, u32 ny)
sham::DeviceBuffer< Tfield > compute_slice (std::string field_name, Tvec center, Tvec delta_x, Tvec delta_y, u32 nx, u32 ny, std::optional< std::function< pybind11::array_t< Tfield >(size_t, pybind11::dict &)> > custom_getter)
sham::DeviceBuffer< Tfield > compute_column_integ (std::string field_name, Tvec center, Tvec delta_x, Tvec delta_y, u32 nx, u32 ny, std::optional< std::function< pybind11::array_t< Tfield >(size_t, pybind11::dict &)> > custom_getter)
sham::DeviceBuffer< Tfield > compute_slice (std::string field_name, const std::vector< Tvec > &positions, std::optional< std::function< pybind11::array_t< Tfield >(size_t, pybind11::dict &)> > custom_getter)
sham::DeviceBuffer< Tfield > compute_column_integ (std::string field_name, const std::vector< shammath::Ray< Tvec > > &rays, std::optional< std::function< pybind11::array_t< Tfield >(size_t, pybind11::dict &)> > custom_getter)
sham::DeviceBuffer< Tfield > compute_azymuthal_integ (std::string field_name, const std::vector< shammath::RingRay< Tvec > > &ring_rays, std::optional< std::function< pybind11::array_t< Tfield >(size_t, pybind11::dict &)> > custom_getter)

Public Attributes

ShamrockCtxcontext
Config & solver_config
Storage & storage

Static Public Attributes

static constexpr u32 dim = shambase::VectorProperties<Tvec>::dimension

Detailed Description

template<class Tvec, class Tfield, template< class > class SPHKernel>
class shammodels::sph::modules::CartesianRender< Tvec, Tfield, SPHKernel >

Definition at line 31 of file CartesianRender.hpp.

Member Typedef Documentation

◆ Config

template<class Tvec, class Tfield, template< class > class SPHKernel>
using shammodels::sph::modules::CartesianRender< Tvec, Tfield, SPHKernel >::Config = SolverConfig<Tvec, SPHKernel>

Definition at line 37 of file CartesianRender.hpp.

◆ field_getter_t

template<class Tvec, class Tfield, template< class > class SPHKernel>
using shammodels::sph::modules::CartesianRender< Tvec, Tfield, SPHKernel >::field_getter_t
Initial value:
A buffer allocated in USM (Unified Shared Memory).
PatchDataLayer container class, the layout is described in patchdata_layout.
Patch object that contain generic patch information.
Definition Patch.hpp:33

Definition at line 47 of file CartesianRender.hpp.

◆ Kernel

template<class Tvec, class Tfield, template< class > class SPHKernel>
using shammodels::sph::modules::CartesianRender< Tvec, Tfield, SPHKernel >::Kernel = SPHKernel<Tscal>

Definition at line 35 of file CartesianRender.hpp.

◆ Storage

template<class Tvec, class Tfield, template< class > class SPHKernel>
using shammodels::sph::modules::CartesianRender< Tvec, Tfield, SPHKernel >::Storage = SolverStorage<Tvec, u32>

Definition at line 38 of file CartesianRender.hpp.

◆ Tscal

template<class Tvec, class Tfield, template< class > class SPHKernel>
using shammodels::sph::modules::CartesianRender< Tvec, Tfield, SPHKernel >::Tscal = shambase::VecComponent<Tvec>

Definition at line 33 of file CartesianRender.hpp.

Constructor & Destructor Documentation

◆ CartesianRender()

template<class Tvec, class Tfield, template< class > class SPHKernel>
shammodels::sph::modules::CartesianRender< Tvec, Tfield, SPHKernel >::CartesianRender ( ShamrockCtx & context,
Config & solver_config,
Storage & storage )
inline

Definition at line 44 of file CartesianRender.hpp.

Member Function Documentation

◆ compute_azymuthal_integ()

template<class Tvec, class Tfield, template< class > class SPHKernel>
sham::DeviceBuffer< Tfield > shammodels::sph::modules::CartesianRender< Tvec, Tfield, SPHKernel >::compute_azymuthal_integ ( std::string field_name,
const std::vector< shammath::RingRay< Tvec > > & ring_rays,
std::optional< std::function< pybind11::array_t< Tfield >(size_t, pybind11::dict &)> > custom_getter )
inline

Definition at line 137 of file CartesianRender.hpp.

◆ compute_column_integ()

template<class Tvec, class Tfield, template< class > class SPHKernel>
sham::DeviceBuffer< Tfield > shammodels::sph::modules::CartesianRender< Tvec, Tfield, SPHKernel >::compute_column_integ ( std::string field_name,
const std::vector< shammath::Ray< Tvec > > & rays,
std::optional< std::function< pybind11::array_t< Tfield >(size_t, pybind11::dict &)> > custom_getter )
inline

Definition at line 126 of file CartesianRender.hpp.

◆ compute_slice()

template<class Tvec, class Tfield, template< class > class SPHKernel>
sham::DeviceBuffer< Tfield > shammodels::sph::modules::CartesianRender< Tvec, Tfield, SPHKernel >::compute_slice ( std::string field_name,
const std::vector< Tvec > & positions,
std::optional< std::function< pybind11::array_t< Tfield >(size_t, pybind11::dict &)> > custom_getter )
inline

Definition at line 115 of file CartesianRender.hpp.

Member Data Documentation

◆ context

template<class Tvec, class Tfield, template< class > class SPHKernel>
ShamrockCtx& shammodels::sph::modules::CartesianRender< Tvec, Tfield, SPHKernel >::context

Definition at line 40 of file CartesianRender.hpp.

◆ dim

template<class Tvec, class Tfield, template< class > class SPHKernel>
u32 shammodels::sph::modules::CartesianRender< Tvec, Tfield, SPHKernel >::dim = shambase::VectorProperties<Tvec>::dimension
staticconstexpr

Definition at line 34 of file CartesianRender.hpp.

◆ solver_config

template<class Tvec, class Tfield, template< class > class SPHKernel>
Config& shammodels::sph::modules::CartesianRender< Tvec, Tfield, SPHKernel >::solver_config

Definition at line 41 of file CartesianRender.hpp.

◆ storage

template<class Tvec, class Tfield, template< class > class SPHKernel>
Storage& shammodels::sph::modules::CartesianRender< Tvec, Tfield, SPHKernel >::storage

Definition at line 42 of file CartesianRender.hpp.


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