www.mooseframework.org
DiscreteNucleation.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 "DerivativeFunctionMaterialBase.h"
13 
14 // Forward declaration
15 class DiscreteNucleation;
17 
18 template <>
19 InputParameters validParams<DiscreteNucleation>();
20 
24 class DiscreteNucleation : public DerivativeFunctionMaterialBase
25 {
26 public:
27  DiscreteNucleation(const InputParameters & params);
28 
29  virtual void computeProperties();
30 
31 protected:
32  unsigned int _nvar;
33 
35  std::vector<unsigned int> _op_index;
36 
38  const std::vector<Real> _op_values;
39 
41  const Real _penalty;
42 
44  const unsigned int _penalty_mode;
45 
48 };
49 
DiscreteNucleation::computeProperties
virtual void computeProperties()
Definition: DiscreteNucleation.C:57
DiscreteNucleation::DiscreteNucleation
DiscreteNucleation(const InputParameters &params)
Definition: DiscreteNucleation.C:36
DiscreteNucleationMap
This UserObject maintains a per QP map that indicates if a nucleus is present or not.
Definition: DiscreteNucleationMap.h:25
DiscreteNucleation::_op_index
std::vector< unsigned int > _op_index
map op_names indices to _args indices
Definition: DiscreteNucleation.h:35
DiscreteNucleation::_penalty
const Real _penalty
Nucleation free energy prefactor.
Definition: DiscreteNucleation.h:41
DiscreteNucleation::_map
const DiscreteNucleationMap & _map
UserObject providing a map of currently active nuclei.
Definition: DiscreteNucleation.h:47
DiscreteNucleation::_op_values
const std::vector< Real > _op_values
Target concentration values.
Definition: DiscreteNucleation.h:38
DiscreteNucleation::_nvar
unsigned int _nvar
Definition: DiscreteNucleation.h:32
validParams< DiscreteNucleation >
InputParameters validParams< DiscreteNucleation >()
Definition: DiscreteNucleation.C:19
DiscreteNucleation
Free energy penalty contribution to force the nucleation of subresolution particles.
Definition: DiscreteNucleation.h:24
DiscreteNucleation::_penalty_mode
const unsigned int _penalty_mode
Match concentration exactly or use the target as a minumum or maximum value.
Definition: DiscreteNucleation.h:44