www.mooseframework.org
ExternalForceDensityMaterial.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 "Material.h"
13 #include "DerivativeMaterialInterface.h"
14 
15 // Forward Declarations
17 class Function;
18 
19 template <>
21 
26 class ExternalForceDensityMaterial : public DerivativeMaterialInterface<Material>
27 {
28 public:
29  ExternalForceDensityMaterial(const InputParameters & parameters);
30 
31 protected:
32  virtual void computeQpProperties();
33 
34 private:
35  const Function & _force_x;
36  const Function & _force_y;
37  const Function & _force_z;
38 
40  const VariableValue & _c;
41  VariableName _c_name;
43  const Real _k;
44 
45  unsigned int _op_num;
46  std::vector<const VariableValue *> _vals;
47  std::vector<VariableName> _vals_name;
48 
50  MaterialProperty<std::vector<RealGradient>> & _dF;
52  MaterialProperty<std::vector<RealGradient>> & _dFdc;
53 
54  std::vector<MaterialProperty<std::vector<RealGradient>> *> _dFdeta;
55 };
ExternalForceDensityMaterial::_vals
std::vector< const VariableValue * > _vals
Definition: ExternalForceDensityMaterial.h:46
validParams< ExternalForceDensityMaterial >
InputParameters validParams< ExternalForceDensityMaterial >()
Definition: ExternalForceDensityMaterial.C:17
ExternalForceDensityMaterial::_dF
MaterialProperty< std::vector< RealGradient > > & _dF
force density material
Definition: ExternalForceDensityMaterial.h:50
ExternalForceDensityMaterial::_c_name
VariableName _c_name
Definition: ExternalForceDensityMaterial.h:41
ExternalForceDensityMaterial::_vals_name
std::vector< VariableName > _vals_name
Definition: ExternalForceDensityMaterial.h:47
ExternalForceDensityMaterial::_force_z
const Function & _force_z
Definition: ExternalForceDensityMaterial.h:37
ExternalForceDensityMaterial
This Material calculates the force density acting on a particle/grain due to interaction between part...
Definition: ExternalForceDensityMaterial.h:26
ExternalForceDensityMaterial::computeQpProperties
virtual void computeQpProperties()
Definition: ExternalForceDensityMaterial.C:58
ExternalForceDensityMaterial::ExternalForceDensityMaterial
ExternalForceDensityMaterial(const InputParameters &parameters)
Definition: ExternalForceDensityMaterial.C:31
ExternalForceDensityMaterial::_op_num
unsigned int _op_num
Definition: ExternalForceDensityMaterial.h:45
ExternalForceDensityMaterial::_force_x
const Function & _force_x
Definition: ExternalForceDensityMaterial.h:35
ExternalForceDensityMaterial::_c
const VariableValue & _c
concentration field considered to be the density of particles
Definition: ExternalForceDensityMaterial.h:40
ExternalForceDensityMaterial::_k
const Real _k
stiffness constant
Definition: ExternalForceDensityMaterial.h:43
ExternalForceDensityMaterial::_dFdc
MaterialProperty< std::vector< RealGradient > > & _dFdc
first order derivative of force density material w.r.t c
Definition: ExternalForceDensityMaterial.h:52
ExternalForceDensityMaterial::_dFdeta
std::vector< MaterialProperty< std::vector< RealGradient > > * > _dFdeta
Definition: ExternalForceDensityMaterial.h:54
ExternalForceDensityMaterial::_force_y
const Function & _force_y
Definition: ExternalForceDensityMaterial.h:36