16 struct SimulationParameters;
void nextTick()
Remove charges from the simulation.
void balanceCharges()
Try to use the sources to keep the number of ChargeAgents balanced
static void chargeAgentCoulombInteractionQtConcurrentGPU(ChargeAgent *chargeAgent)
A method needed to call ChargeAgent::coulombGPU() in parallel.
void performRecombinations()
Recombine holes and electrons (in solarcell simulations only)
A class to hold all objects in a simulation.
Definition: world.h:51
void performInjections()
Tell sources to inject charges.
World & m_world
Reference to World object.
Definition: simulation.h:89
Simulation(World &world, QObject *parent=0)
Create a Simulation.
A class to represent moving charged particles.
Definition: chargeagent.h:13
static void chargeAgentCoulombInteractionQtConcurrentCPU(ChargeAgent *chargeAgent)
A method needed to call ChargeAgent::coulombCPU() in parallel.
virtual ~Simulation()
Destroy the Simulation.
virtual void performIterations(int nIterations)
simulate for a set number of steps
A class to orchestrate the calculation.
Definition: simulation.h:21