Celeritas 0.7.0-dev.541+develop.dcb9ae126
Loading...
Searching...
No Matches
Classes | Public Member Functions | List of all members
celeritas::CoreParams Class Referencefinal

Global parameters required to run a problem. More...

#include <CoreParams.hh>

Inheritance diagram for celeritas::CoreParams:
Inheritance graph
[legend]

Classes

struct  Input
 

Public Member Functions

 CoreParams (Input inp)
 Construct with all problem data, creating some actions too.
 
HostRef const & host_ref () const final
 Access data on the host.
 
DeviceRef const & device_ref () const final
 Access data on the device.
 
template<MemSpace M>
ConstPtr< M > ptr () const
 
CoreSizes const & sizes () const
 Per-process state and buffer capacities.
 
size_type max_streams () const
 Maximum number of streams.
 
size_type tracks_per_stream () const
 Number of track slots per stream.
 
template<MemSpace M>
auto ptr () const -> ConstPtr< M >
 Access a native pointer to a NativeCRef.
 
template<MemSpace M>
auto ptr () const -> ConstPtr< M >
 Access a native pointer to a NativeCRef.
 
- Public Member Functions inherited from celeritas::ParamsDataInterface< CoreParamsData >
CoreParamsData< Ownership::const_reference, M > const & ref () const
 
CoreParamsData< Ownership::const_reference, M > const & ref () const
 Dispatch a "ref" call to host or device data.
 

Type aliases

using SPConstCoreGeo = std::shared_ptr< CoreGeoParams const >
 
using SPConstMaterial = std::shared_ptr< MaterialParams const >
 
using SPConstGeoMaterial = std::shared_ptr< GeoMaterialParams const >
 
using SPConstParticle = std::shared_ptr< ParticleParams const >
 
using SPConstCutoff = std::shared_ptr< CutoffParams const >
 
using SPConstPhysics = std::shared_ptr< PhysicsParams const >
 
using SPConstRng = std::shared_ptr< RngParams const >
 
using SPConstSim = std::shared_ptr< SimParams const >
 
using SPConstSurface = std::shared_ptr< SurfaceParams const >
 
using SPConstTrackInit = std::shared_ptr< TrackInitParams const >
 
using SPConstVolume = std::shared_ptr< VolumeParams const >
 
using SPConstDetectors = std::shared_ptr< DetectorParams const >
 
using SPConstWentzelOKVI = std::shared_ptr< WentzelOKVIParams const >
 
using SPActionRegistry = std::shared_ptr< ActionRegistry >
 
using SPOutputRegistry = std::shared_ptr< OutputRegistry >
 
using SPAuxRegistry = std::shared_ptr< AuxParamsRegistry >
 
using SPConstMpiCommunicator = std::shared_ptr< MpiCommunicator const >
 
template<MemSpace M>
using ConstRef = CoreParamsData< Ownership::const_reference, M >
 
template<MemSpace M>
using ConstPtr = ObserverPtr< ConstRef< M > const, M >
 
SPConstCoreGeo const & geometry () const
 
SPConstMaterial const & material () const
 
SPConstGeoMaterial const & geomaterial () const
 
SPConstParticle const & particle () const
 
SPConstCutoff const & cutoff () const
 
SPConstPhysics const & physics () const
 
SPConstRng const & rng () const
 
SPConstSim const & sim () const
 
SPConstVolume const & volume () const
 
SPConstSurface const & surface () const
 
SPConstTrackInit const & init () const
 
SPConstDetectors const & detectors () const
 
SPConstWentzelOKVI const & wentzel () const
 
SPActionRegistry const & action_reg () const
 
SPOutputRegistry const & output_reg () const
 
SPAuxRegistry const & aux_reg () const
 
SPConstMpiCommunicator const & mpi_comm () const
 

Additional Inherited Members

- Public Types inherited from celeritas::ParamsDataInterface< CoreParamsData >
using HostRef = HostCRef< CoreParamsData >
 
using DeviceRef = DeviceCRef< CoreParamsData >
 
- Protected Member Functions inherited from celeritas::ParamsDataInterface< CoreParamsData >
 ParamsDataInterface (ParamsDataInterface const &)=default
 
 ParamsDataInterface (ParamsDataInterface &&)=default
 
ParamsDataInterface & operator= (ParamsDataInterface const &)=default
 
ParamsDataInterface & operator= (ParamsDataInterface &&)=default
 

Detailed Description

Global parameters required to run a problem.

Todo:
Applications specify tracks_per_stream to build the states, but unit tests currently omit this option.

Member Typedef Documentation

◆ ConstPtr

Access shared problem parameter data.

◆ ConstRef

Access shared problem parameter data.

◆ SPActionRegistry

Access shared problem parameter data.

◆ SPAuxRegistry

Access shared problem parameter data.

◆ SPConstCoreGeo

Access shared problem parameter data.

◆ SPConstCutoff

Access shared problem parameter data.

◆ SPConstDetectors

Access shared problem parameter data.

◆ SPConstGeoMaterial

Access shared problem parameter data.

◆ SPConstMaterial

Access shared problem parameter data.

◆ SPConstMpiCommunicator

Access shared problem parameter data.

◆ SPConstParticle

Access shared problem parameter data.

◆ SPConstPhysics

Access shared problem parameter data.

◆ SPConstRng

Access shared problem parameter data.

◆ SPConstSim

Access shared problem parameter data.

◆ SPConstSurface

Access shared problem parameter data.

◆ SPConstTrackInit

Access shared problem parameter data.

◆ SPConstVolume

Access shared problem parameter data.

◆ SPConstWentzelOKVI

Access shared problem parameter data.

◆ SPOutputRegistry

Access shared problem parameter data.

Member Function Documentation

◆ action_reg()

SPActionRegistry const & celeritas::CoreParams::action_reg ( ) const
inline

Access shared problem parameter data.

◆ aux_reg()

SPAuxRegistry const & celeritas::CoreParams::aux_reg ( ) const
inline

Access shared problem parameter data.

◆ cutoff()

SPConstCutoff const & celeritas::CoreParams::cutoff ( ) const
inline

Access shared problem parameter data.

◆ detectors()

SPConstDetectors const & celeritas::CoreParams::detectors ( ) const
inline

Access shared problem parameter data.

◆ device_ref()

DeviceRef const & celeritas::CoreParams::device_ref ( ) const
inlinefinalvirtual

Access data on the device.

Implements celeritas::ParamsDataInterface< CoreParamsData >.

◆ geomaterial()

SPConstGeoMaterial const & celeritas::CoreParams::geomaterial ( ) const
inline

Access shared problem parameter data.

◆ geometry()

SPConstCoreGeo const & celeritas::CoreParams::geometry ( ) const
inline

Access shared problem parameter data.

◆ host_ref()

HostRef const & celeritas::CoreParams::host_ref ( ) const
inlinefinalvirtual

Access data on the host.

Implements celeritas::ParamsDataInterface< CoreParamsData >.

◆ init()

SPConstTrackInit const & celeritas::CoreParams::init ( ) const
inline

Access shared problem parameter data.

◆ material()

SPConstMaterial const & celeritas::CoreParams::material ( ) const
inline

Access shared problem parameter data.

◆ mpi_comm()

SPConstMpiCommunicator const & celeritas::CoreParams::mpi_comm ( ) const
inline

Access shared problem parameter data.

◆ output_reg()

SPOutputRegistry const & celeritas::CoreParams::output_reg ( ) const
inline

Access shared problem parameter data.

◆ particle()

SPConstParticle const & celeritas::CoreParams::particle ( ) const
inline

Access shared problem parameter data.

◆ physics()

SPConstPhysics const & celeritas::CoreParams::physics ( ) const
inline

Access shared problem parameter data.

◆ ptr() [1/2]

template<MemSpace M>
auto celeritas::CoreParams::ptr ( ) const -> ConstPtr<M>

Access a native pointer to a NativeCRef.

This way, CUDA kernels only need to copy a pointer in the kernel arguments, rather than the entire (rather large) DeviceRef object.

◆ ptr() [2/2]

template<MemSpace M>
auto celeritas::CoreParams::ptr ( ) const -> ConstPtr<M>

Access a native pointer to a NativeCRef.

This way, CUDA kernels only need to copy a pointer in the kernel arguments, rather than the entire (rather large) DeviceRef object.

◆ rng()

SPConstRng const & celeritas::CoreParams::rng ( ) const
inline

Access shared problem parameter data.

◆ sim()

SPConstSim const & celeritas::CoreParams::sim ( ) const
inline

Access shared problem parameter data.

◆ surface()

SPConstSurface const & celeritas::CoreParams::surface ( ) const
inline

Access shared problem parameter data.

◆ volume()

SPConstVolume const & celeritas::CoreParams::volume ( ) const
inline

Access shared problem parameter data.

◆ wentzel()

SPConstWentzelOKVI const & celeritas::CoreParams::wentzel ( ) const
inline

Access shared problem parameter data.


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