Shamrock 2025.10.0
Astrophysical Code
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Public Attributes | Static Public Attributes | List of all members
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 = const sham::DeviceBuffer< Tfield > &(const shamrock::patch::Patch cur_p, shamrock::patch::PatchDataLayer &pdat)
 

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
 
Configsolver_config
 
Storagestorage
 

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 = const sham::DeviceBuffer<Tfield> &( const shamrock::patch::Patch cur_p, shamrock::patch::PatchDataLayer &pdat)

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() [1/2]

template<class Tvec , class Tfield , template< class > class SPHKernel>
auto shammodels::sph::modules::CartesianRender< Tvec, Tfield, SPHKernel >::compute_azymuthal_integ ( std::function< field_getter_t >  field_getter,
const sham::DeviceBuffer< shammath::RingRay< Tvec > > &  ring_rays 
)

Definition at line 439 of file CartesianRender.cpp.

◆ compute_azymuthal_integ() [2/2]

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() [1/4]

template<class Tvec , class Tfield , template< class > class SPHKernel>
auto shammodels::sph::modules::CartesianRender< Tvec, Tfield, SPHKernel >::compute_column_integ ( std::function< field_getter_t >  field_getter,
const sham::DeviceBuffer< shammath::Ray< Tvec > > &  rays 
)

Definition at line 324 of file CartesianRender.cpp.

◆ compute_column_integ() [2/4]

template<class Tvec , class Tfield , template< class > class SPHKernel>
auto shammodels::sph::modules::CartesianRender< Tvec, Tfield, SPHKernel >::compute_column_integ ( std::function< field_getter_t >  field_getter,
Tvec  center,
Tvec  delta_x,
Tvec  delta_y,
u32  nx,
u32  ny 
)

Definition at line 578 of file CartesianRender.cpp.

◆ compute_column_integ() [3/4]

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_column_integ() [4/4]

template<class Tvec , class Tfield , template< class > class SPHKernel>
auto shammodels::sph::modules::CartesianRender< Tvec, Tfield, SPHKernel >::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 
)

Definition at line 606 of file CartesianRender.cpp.

◆ compute_slice() [1/4]

template<class Tvec , class Tfield , template< class > class SPHKernel>
auto shammodels::sph::modules::CartesianRender< Tvec, Tfield, SPHKernel >::compute_slice ( std::function< field_getter_t >  field_getter,
const sham::DeviceBuffer< Tvec > &  positions 
)

Definition at line 210 of file CartesianRender.cpp.

◆ compute_slice() [2/4]

template<class Tvec , class Tfield , template< class > class SPHKernel>
auto shammodels::sph::modules::CartesianRender< Tvec, Tfield, SPHKernel >::compute_slice ( std::function< field_getter_t >  field_getter,
Tvec  center,
Tvec  delta_x,
Tvec  delta_y,
u32  nx,
u32  ny 
)

Definition at line 564 of file CartesianRender.cpp.

◆ compute_slice() [3/4]

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.

◆ compute_slice() [4/4]

template<class Tvec , class Tfield , template< class > class SPHKernel>
auto shammodels::sph::modules::CartesianRender< Tvec, Tfield, SPHKernel >::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 
)

Definition at line 592 of file CartesianRender.cpp.

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>
constexpr 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 files: