20 : m_mc_integration(false), m_include_specular(false), m_use_avg_materials(false), m_mc_points(1)
40 else if (nthreads > 0)
49 throw std::runtime_error(
"Error in SimulationOptions::getNumberOfThreads: Number of "
50 "threads must be positive");
57 throw std::runtime_error(
"Error in SimulationOptions::setNumberOfBatches: Number of "
58 "batches must be positive");
65 throw std::runtime_error(
"Error in SimulationOptions::getNumberOfBatches: Number of "
66 "batches must be positive");
73 throw std::runtime_error(
74 "Error in SimulationOptions::getCurrentBatch: current batch is out of range");
80 return std::thread::hardware_concurrency();
Defines class SimulationOptions.
void setNumberOfBatches(int nbatches)
Sets number of batches to split.
unsigned getNumberOfBatches() const
unsigned getCurrentBatch() const
unsigned getHardwareConcurrency() const
unsigned getNumberOfThreads() const
void setNumberOfThreads(int nthreads)
Sets number of threads to use during the simulation (0 - take the default value from the hardware)
void setMonteCarloIntegration(bool flag=true, size_t mc_points=50)
Enables/disables MonetCarlo integration.