www.mooseframework.org
DiscreteNucleationInserter.h
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://www.mooseframework.org
3 //*
4 //* All rights reserved, see COPYRIGHT for full restrictions
5 //* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6 //*
7 //* Licensed under LGPL 2.1, please see LICENSE for details
8 //* https://www.gnu.org/licenses/lgpl-2.1.html
9 
10 #pragma once
11 
13 
21 {
22 public:
24 
26 
27  virtual void initialize();
28  virtual void execute();
29  virtual void threadJoin(const UserObject & y);
30  virtual void finalize();
31 
32  const Real & getRate() const { return _nucleation_rate; }
33 
34 protected:
36  virtual void addNucleus(unsigned int & qp);
37 
40 
43 
46 
52 
55 
57  const bool _time_dep_stats;
58 };
virtual void addNucleus(unsigned int &qp)
Adds a nucleus to the list containing nucleus information.
const MaterialProperty< Real > & _local_radius
store the local nucleus radius
const MaterialProperty< Real > & _probability
Nucleation rate density (should be a material property implementing nucleation theory) ...
std::vector< NucleusLocation > NucleusList
Every MPI task should keep a full list of nuclei (in case they cross domains with their finite radii)...
const std::vector< double > y
static InputParameters validParams()
This UserObject manages the insertion and expiration of nuclei in the simulation domain it manages a ...
This UserObject manages the insertion and expiration of nuclei in the simulation domain it manages a ...
DiscreteNucleationInserter(const InputParameters &parameters)
Real _nucleation_rate
Total nucleation rate.
virtual void threadJoin(const UserObject &y)
NucleusList & _local_nucleus_list
the local nucleus list of nuclei centered in the domain of the current processor
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
Real _hold_time
Duration of time each nucleus is kept active after insertion.
const InputParameters & parameters() const
const bool _time_dep_stats
indicates whether time-dependent statistics are used or not