BioCMAMC-ST
MC::MonteCarloUnit Struct Reference

General-purpose Monte Carlo unit to carry out simulations. More...

#include <unit.hpp>

Collaboration diagram for MC::MonteCarloUnit:
[legend]

Public Member Functions

 MonteCarloUnit (const MonteCarloUnit &)=delete
 Prevent copying of the MonteCarloUnit.
 
MonteCarloUnitoperator= (const MonteCarloUnit &)=delete
 Prevent copying of the MonteCarloUnit.
 
MonteCarloUnitoperator= (MonteCarloUnit &&) noexcept=default
 Allow moving of the MonteCarloUn.
 
 MonteCarloUnit (MonteCarloUnit &&) noexcept=default
 Allow moving of the MonteCarloUn.
 
 MonteCarloUnit ()=default
 
 ~MonteCarloUnit ()=default
 
uint64_t n_particle () const
 
std::vector< uint64_t > getRepartition () const
 
template<class Archive >
void serialize (Archive &ar)
 

Public Attributes

EventContainer events
 Container to manage and store simulation events.
 
ReactorDomain domain
 Represents the domain within which the simulation occurs.
 
AutoGenerated::ContainerVariant container
 
KPRNG rng
 Random number generator used for Monte Carlo methods.
 
double init_weight {}
 Initial weight or factor used in the simulation.
 

Detailed Description

General-purpose Monte Carlo unit to carry out simulations.

The MonteCarloUnit struct encapsulates the components necessary for running Monte Carlo simulations. The MonteCarloUnit is non-copyable but movable, ensuring that only one instance manages its resources at any time.

Constructor & Destructor Documentation

◆ MonteCarloUnit() [1/3]

MC::MonteCarloUnit::MonteCarloUnit ( const MonteCarloUnit & )
delete

Prevent copying of the MonteCarloUnit.

◆ MonteCarloUnit() [2/3]

MC::MonteCarloUnit::MonteCarloUnit ( MonteCarloUnit && )
defaultnoexcept

Allow moving of the MonteCarloUn.

◆ MonteCarloUnit() [3/3]

MC::MonteCarloUnit::MonteCarloUnit ( )
default

◆ ~MonteCarloUnit()

MC::MonteCarloUnit::~MonteCarloUnit ( )
default

Member Function Documentation

◆ getRepartition()

std::vector< uint64_t > MC::MonteCarloUnit::getRepartition ( ) const
nodiscard
Here is the call graph for this function:

◆ n_particle()

uint64_t MC::MonteCarloUnit::n_particle ( ) const
nodiscard
Here is the caller graph for this function:

◆ operator=() [1/2]

MonteCarloUnit & MC::MonteCarloUnit::operator= ( const MonteCarloUnit & )
delete

Prevent copying of the MonteCarloUnit.

◆ operator=() [2/2]

MonteCarloUnit & MC::MonteCarloUnit::operator= ( MonteCarloUnit && )
defaultnoexcept

Allow moving of the MonteCarloUn.

◆ serialize()

template<class Archive >
void MC::MonteCarloUnit::serialize ( Archive & ar)
inline

Member Data Documentation

◆ container

AutoGenerated::ContainerVariant MC::MonteCarloUnit::container

◆ domain

ReactorDomain MC::MonteCarloUnit::domain

Represents the domain within which the simulation occurs.

◆ events

EventContainer MC::MonteCarloUnit::events

Container to manage and store simulation events.

◆ init_weight

double MC::MonteCarloUnit::init_weight {}

Initial weight or factor used in the simulation.

◆ rng

KPRNG MC::MonteCarloUnit::rng

Random number generator used for Monte Carlo methods.


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