www.mooseframework.org
DiscreteNucleationTimeStep.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 
12 #include "GeneralPostprocessor.h"
14 
16 
17 template <>
19 
25 class DiscreteNucleationTimeStep : public GeneralPostprocessor
26 {
27 public:
28  DiscreteNucleationTimeStep(const InputParameters & parameters);
29 
30  virtual void initialize() override {}
31  virtual void execute() override {}
32  virtual void finalize() override {}
33  virtual PostprocessorValue getValue() override;
34 
35 protected:
38 
40  const Real _dt_nucleation;
41 
44 
46  const Real & _rate;
47 
54 };
55 
DiscreteNucleationTimeStep::_dt_nucleation
const Real _dt_nucleation
User specified nucleation time step.
Definition: DiscreteNucleationTimeStep.h:40
DiscreteNucleationTimeStep::finalize
virtual void finalize() override
Definition: DiscreteNucleationTimeStep.h:32
DiscreteNucleationInserterBase
This UserObject manages the insertion and expiration of nuclei in the simulation domain it manages a ...
Definition: DiscreteNucleationInserterBase.h:25
DiscreteNucleationTimeStep::_changes_made
const DiscreteNucleationInserterBase::NucleusChanges & _changes_made
nucleus count changes performed by the inserter
Definition: DiscreteNucleationTimeStep.h:43
DiscreteNucleationTimeStep::_rate
const Real & _rate
total nucleation rate integrated over teh entire domain
Definition: DiscreteNucleationTimeStep.h:46
DiscreteNucleationTimeStep::DiscreteNucleationTimeStep
DiscreteNucleationTimeStep(const InputParameters &parameters)
Definition: DiscreteNucleationTimeStep.C:37
DiscreteNucleationTimeStep::_inserter
const DiscreteNucleationInserterBase & _inserter
UserObject that manages nucleus insertion and deletion.
Definition: DiscreteNucleationTimeStep.h:37
DiscreteNucleationTimeStep
Returns a user defined timestep limit for the simulation step right after the introduction of a new n...
Definition: DiscreteNucleationTimeStep.h:25
DiscreteNucleationTimeStep::initialize
virtual void initialize() override
Definition: DiscreteNucleationTimeStep.h:30
DiscreteNucleationInserterBase::NucleusChanges
std::pair< unsigned int, unsigned int > NucleusChanges
Definition: DiscreteNucleationInserterBase.h:37
DiscreteNucleationTimeStep::execute
virtual void execute() override
Definition: DiscreteNucleationTimeStep.h:31
validParams< DiscreteNucleationTimeStep >
InputParameters validParams< DiscreteNucleationTimeStep >()
Definition: DiscreteNucleationTimeStep.C:18
DiscreteNucleationTimeStep::getValue
virtual PostprocessorValue getValue() override
Definition: DiscreteNucleationTimeStep.C:96
DiscreteNucleationInserterBase.h
DiscreteNucleationTimeStep::_max_lambda
Real _max_lambda
Maximum total event expectation value that is low enough so that the probability for more than one * ...
Definition: DiscreteNucleationTimeStep.h:53