Shamrock 2025.10.0
Astrophysical Code
Loading...
Searching...
No Matches
Classes | Functions
generators.hpp File Reference
#include "shambase/constants.hpp"
#include "shamalgs/random.hpp"
#include "shambackends/sycl.hpp"
#include "shambackends/typeAliasVec.hpp"
#include "shamsys/NodeInstance.hpp"
#include "shamsys/legacy/log.hpp"
+ Include dependency graph for generators.hpp:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  generic::setup::generators::DiscOutput< Tscal >
 

Functions

template<class flt >
sycl::vec< flt, 3 > generic::setup::generators::get_box_dim (flt r_particle, u32 xcnt, u32 ycnt, u32 zcnt)
 
template<class flt >
std::tuple< sycl::vec< flt, 3 >, sycl::vec< flt, 3 > > generic::setup::generators::get_ideal_fcc_box (flt r_particle, std::tuple< sycl::vec< flt, 3 >, sycl::vec< flt, 3 > > box)
 
template<class flt , class Tpred_select , class Tpred_pusher >
void generic::setup::generators::add_particles_fcc (flt r_particle, std::tuple< sycl::vec< flt, 3 >, sycl::vec< flt, 3 > > box, Tpred_select &&selector, Tpred_pusher &&part_pusher)
 
template<class flt >
void generic::setup::generators::add_disc2 (u32 Npart, flt r_in, flt r_out, std::function< flt(flt)> sigma_profile, std::function< flt(flt)> cs_profile, std::function< flt(flt)> rot_profile, std::function< void(DiscOutput< flt >)> pusher)
 
template<class flt , class Tpred_pusher >
void generic::setup::generators::add_disc (u32 Npart, flt p, flt rho_0, flt m, flt r_in, flt r_out, flt q, Tpred_pusher &&part_pusher)
 

Detailed Description

Author
Timothée David–Cléris (tim.s.nosp@m.hamr.nosp@m.ock@p.nosp@m.roto.nosp@m.n.me)

Definition in file generators.hpp.

Function Documentation

◆ add_disc()

template<class flt , class Tpred_pusher >
void generic::setup::generators::add_disc ( u32  Npart,
flt  p,
flt  rho_0,
flt  m,
flt  r_in,
flt  r_out,
flt  q,
Tpred_pusher &&  part_pusher 
)
inline
Template Parameters
flt
Tpred_pusher
Parameters
Npartnumber of particles
pradial power law surface density (default = 1) sigma prop r^-p
rho_0rho_0 volumic density (at r = 1)
mmass part
r_ininner cuttof
r_outouter cuttof
qT prop r^-q

Definition at line 228 of file generators.hpp.

+ Here is the call graph for this function:

◆ add_disc2()

template<class flt >
void generic::setup::generators::add_disc2 ( u32  Npart,
flt  r_in,
flt  r_out,
std::function< flt(flt)>  sigma_profile,
std::function< flt(flt)>  cs_profile,
std::function< flt(flt)>  rot_profile,
std::function< void(DiscOutput< flt >)>  pusher 
)
inline
Template Parameters
flt
Parameters
Npart
r_in
r_out
sigma_profile
cs_profile
rot_profile
pusher

Definition at line 152 of file generators.hpp.

+ Here is the call graph for this function:

◆ add_particles_fcc()

template<class flt , class Tpred_select , class Tpred_pusher >
void generic::setup::generators::add_particles_fcc ( flt  r_particle,
std::tuple< sycl::vec< flt, 3 >, sycl::vec< flt, 3 > >  box,
Tpred_select &&  selector,
Tpred_pusher &&  part_pusher 
)
inline

Definition at line 82 of file generators.hpp.

◆ get_box_dim()

template<class flt >
sycl::vec< flt, 3 > generic::setup::generators::get_box_dim ( flt  r_particle,
u32  xcnt,
u32  ycnt,
u32  zcnt 
)
inline

Definition at line 31 of file generators.hpp.

◆ get_ideal_fcc_box()

template<class flt >
std::tuple< sycl::vec< flt, 3 >, sycl::vec< flt, 3 > > generic::setup::generators::get_ideal_fcc_box ( flt  r_particle,
std::tuple< sycl::vec< flt, 3 >, sycl::vec< flt, 3 > >  box 
)
inline

Definition at line 54 of file generators.hpp.