This UserObject manages the insertion and expiration of nuclei in the simulation domain.
static InputParameters validParams()
const Real _radius
hold the radius of the nucleus
MooseUtils::DelimitedFileReader _reader
CSV file to read.
bool _fixed_radius
Is a fixed radius or variable radius used?
void initialize() override
void threadJoin(const UserObject &) override
unsigned int & _history_pointer
index to the next nucleation event in the history
const Real & getRate() const override
NucleusList _nucleation_history
Total nucleation history read from file.
const Real _nucleation_rate
total nucleation rate
const Real _hold_time
Duration of time each nucleus is kept active after insertion.
const Real _tol
tolerance for determining insertion time
This UserObject manages the insertion and expiration of nuclei in the simulation domain it manages a ...
std::vector< NucleusLocation > NucleusList
Every MPI task should keep a full list of nuclei (in case they cross domains with their finite radii)
const InputParameters & parameters() const