Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
clvisc::CLIdeal Class Reference

#include <JETSCAPE/blob/main/external_packages/clvisc_wrapper/include/clideal.h>

+ Collaboration diagram for clvisc::CLIdeal:

Public Member Functions

 CLIdeal (const Config &cfg, std::string device_type, int device_id)
 
const Configget_config ()
 
template<typename ValueType >
void read_ini (const std::vector< ValueType > &ed)
 
template<typename ValueType >
void read_ini (const std::vector< ValueType > &ed, const std::vector< ValueType > &vx, const std::vector< ValueType > &vy, const std::vector< ValueType > &vz)
 
void one_step ()
 
void predict_first_step ()
 
float max_energy_density ()
 
void evolve ()
 
OpenclBackendget_backend ()
 
std::string & get_compile_option ()
 
 ~CLIdeal ()
 

Public Attributes

std::vector< cl_real4h_ev_
 
cl::Buffer d_ev_ [3]
 
cl::Buffer d_src_
 
cl::Image2D eos_table_
 

Private Member Functions

void read_eos_table_ (std::string fname, CompileOption &opts_)
 
void initialize_gpu_buffer_ ()
 
void half_step_ (int step)
 

Private Attributes

double tau0_
 
double tau_
 
Config cfg_
 
OpenclBackend backend_
 
std::string compile_option_
 
cl::Buffer d_submax_
 
std::vector< cl_realmax_ed_history_
 
cl::Kernel kernel_kt_src_christoffel_
 
cl::Kernel kernel_kt_src_alongx_
 
cl::Kernel kernel_kt_src_alongy_
 
cl::Kernel kernel_kt_src_alongz_
 
cl::Kernel kernel_update_ev_
 
cl::Kernel kernel_reduction_
 

Detailed Description

for JetScape

Definition at line 75 of file clideal.h.

View newest version in sPHENIX GitHub at line 75 of file clideal.h

Constructor & Destructor Documentation

clvisc::CLIdeal::~CLIdeal ( )

Definition at line 309 of file clideal.cc.

View newest version in sPHENIX GitHub at line 309 of file clideal.cc

Member Function Documentation

void clvisc::CLIdeal::evolve ( )

Definition at line 271 of file clideal.cc.

View newest version in sPHENIX GitHub at line 271 of file clideal.cc

References cfg_, check_license::err(), ErrorMessage(), max_energy_density(), clvisc::Config::ntskip, one_step(), step, tau_, and Acts::Test::time.

Referenced by main().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

OpenclBackend & clvisc::CLIdeal::get_backend ( )

Definition at line 300 of file clideal.cc.

View newest version in sPHENIX GitHub at line 300 of file clideal.cc

References backend_.

std::string & clvisc::CLIdeal::get_compile_option ( )

Definition at line 304 of file clideal.cc.

View newest version in sPHENIX GitHub at line 304 of file clideal.cc

References compile_option_.

Referenced by clvisc::CLVisc::CLVisc().

+ Here is the caller graph for this function:

const Config& clvisc::CLIdeal::get_config ( )
inline

Definition at line 118 of file clideal.h.

View newest version in sPHENIX GitHub at line 118 of file clideal.h

References cfg_.

void clvisc::CLIdeal::half_step_ ( int  step)
private

Definition at line 177 of file clideal.cc.

View newest version in sPHENIX GitHub at line 177 of file clideal.cc

References backend_, clvisc::Config::block_size, cfg_, d_ev_, d_src_, clvisc::OpenclBackend::enqueue_run(), eos_table_, kernel_kt_src_alongx_, kernel_kt_src_alongy_, kernel_kt_src_alongz_, kernel_kt_src_christoffel_, kernel_update_ev_, cl::NullRange, clvisc::Config::nx, clvisc::Config::ny, clvisc::Config::nz, cl::Kernel::setArg(), size, and tau_.

Referenced by one_step(), and predict_first_step().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void clvisc::CLIdeal::initialize_gpu_buffer_ ( )
private

Definition at line 138 of file clideal.cc.

View newest version in sPHENIX GitHub at line 138 of file clideal.cc

References backend_, clvisc::OpenclBackend::CreateBuffer(), clvisc::OpenclBackend::CreateBufferByCopyVector(), d_ev_, d_src_, d_submax_, h_ev_, i, and clvisc::REDUCTION_BLOCKS.

Referenced by read_ini().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

float clvisc::CLIdeal::max_energy_density ( )

Definition at line 237 of file clideal.cc.

View newest version in sPHENIX GitHub at line 237 of file clideal.cc

References backend_, cfg_, d_ev_, d_submax_, clvisc::OpenclBackend::DeviceType(), clvisc::OpenclBackend::enqueue_copy(), clvisc::OpenclBackend::enqueue_run(), kernel_reduction_, clvisc::Config::nx, clvisc::Config::ny, clvisc::Config::nz, clvisc::REDUCTION_BLOCKS, cl::Kernel::setArg(), and size.

Referenced by evolve(), and clvisc::CLVisc::evolve().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void clvisc::CLIdeal::one_step ( )

Definition at line 259 of file clideal.cc.

View newest version in sPHENIX GitHub at line 259 of file clideal.cc

References cfg_, clvisc::Config::dt, half_step_(), and tau_.

Referenced by evolve().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void clvisc::CLIdeal::predict_first_step ( )

Definition at line 267 of file clideal.cc.

View newest version in sPHENIX GitHub at line 267 of file clideal.cc

References half_step_().

Referenced by clvisc::CLVisc::evolve().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void clvisc::CLIdeal::read_eos_table_ ( std::string  fname,
CompileOption opts_ 
)
private

Definition at line 102 of file clideal.cc.

View newest version in sPHENIX GitHub at line 102 of file clideal.cc

References backend_, clvisc::OpenclBackend::CreateImage2DByCopyVector(), eos_table_, clvisc::CompileOption::SetFloatConst(), clvisc::CompileOption::SetIntConst(), and width.

Referenced by CLIdeal().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

template<typename ValueType >
void clvisc::CLIdeal::read_ini ( const std::vector< ValueType > &  ed)

Definition at line 150 of file clideal.cc.

View newest version in sPHENIX GitHub at line 150 of file clideal.cc

References f, h_ev_, ambiguity_solver_full_chain::idx, and initialize_gpu_buffer_().

Referenced by main(), and clvisc::CLVisc::read_ini().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

template<typename ValueType >
void clvisc::CLIdeal::read_ini ( const std::vector< ValueType > &  ed,
const std::vector< ValueType > &  vx,
const std::vector< ValueType > &  vy,
const std::vector< ValueType > &  vz 
)

Definition at line 160 of file clideal.cc.

View newest version in sPHENIX GitHub at line 160 of file clideal.cc

References h_ev_, ambiguity_solver_full_chain::idx, and initialize_gpu_buffer_().

+ Here is the call graph for this function:

Member Data Documentation

OpenclBackend clvisc::CLIdeal::backend_
private

Definition at line 83 of file clideal.h.

View newest version in sPHENIX GitHub at line 83 of file clideal.h

Referenced by CLIdeal(), get_backend(), half_step_(), initialize_gpu_buffer_(), max_energy_density(), and read_eos_table_().

Config clvisc::CLIdeal::cfg_
private

Definition at line 82 of file clideal.h.

View newest version in sPHENIX GitHub at line 82 of file clideal.h

Referenced by CLIdeal(), evolve(), get_config(), half_step_(), max_energy_density(), and one_step().

std::string clvisc::CLIdeal::compile_option_
private

Definition at line 85 of file clideal.h.

View newest version in sPHENIX GitHub at line 85 of file clideal.h

Referenced by CLIdeal(), and get_compile_option().

cl::Buffer clvisc::CLIdeal::d_src_

Definition at line 112 of file clideal.h.

View newest version in sPHENIX GitHub at line 112 of file clideal.h

Referenced by half_step_(), clvisc::CLVisc::half_step_visc_(), and initialize_gpu_buffer_().

cl::Buffer clvisc::CLIdeal::d_submax_
private

Definition at line 88 of file clideal.h.

View newest version in sPHENIX GitHub at line 88 of file clideal.h

Referenced by initialize_gpu_buffer_(), and max_energy_density().

cl::Image2D clvisc::CLIdeal::eos_table_
std::vector<cl_real4> clvisc::CLIdeal::h_ev_

Definition at line 110 of file clideal.h.

View newest version in sPHENIX GitHub at line 110 of file clideal.h

Referenced by initialize_gpu_buffer_(), and read_ini().

cl::Kernel clvisc::CLIdeal::kernel_kt_src_alongx_
private

Definition at line 94 of file clideal.h.

View newest version in sPHENIX GitHub at line 94 of file clideal.h

Referenced by CLIdeal(), and half_step_().

cl::Kernel clvisc::CLIdeal::kernel_kt_src_alongy_
private

Definition at line 95 of file clideal.h.

View newest version in sPHENIX GitHub at line 95 of file clideal.h

Referenced by CLIdeal(), and half_step_().

cl::Kernel clvisc::CLIdeal::kernel_kt_src_alongz_
private

Definition at line 96 of file clideal.h.

View newest version in sPHENIX GitHub at line 96 of file clideal.h

Referenced by CLIdeal(), and half_step_().

cl::Kernel clvisc::CLIdeal::kernel_kt_src_christoffel_
private

Definition at line 93 of file clideal.h.

View newest version in sPHENIX GitHub at line 93 of file clideal.h

Referenced by CLIdeal(), and half_step_().

cl::Kernel clvisc::CLIdeal::kernel_reduction_
private

Definition at line 98 of file clideal.h.

View newest version in sPHENIX GitHub at line 98 of file clideal.h

Referenced by CLIdeal(), and max_energy_density().

cl::Kernel clvisc::CLIdeal::kernel_update_ev_
private

Definition at line 97 of file clideal.h.

View newest version in sPHENIX GitHub at line 97 of file clideal.h

Referenced by CLIdeal(), and half_step_().

std::vector<cl_real> clvisc::CLIdeal::max_ed_history_
private

Definition at line 91 of file clideal.h.

View newest version in sPHENIX GitHub at line 91 of file clideal.h

double clvisc::CLIdeal::tau0_
private

Definition at line 79 of file clideal.h.

View newest version in sPHENIX GitHub at line 79 of file clideal.h

Referenced by CLIdeal().

double clvisc::CLIdeal::tau_
private

Definition at line 81 of file clideal.h.

View newest version in sPHENIX GitHub at line 81 of file clideal.h

Referenced by CLIdeal(), evolve(), half_step_(), and one_step().


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