www.mooseframework.org
LaplacianSplit.C
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 #include "LaplacianSplit.h"
11 
12 registerMooseObject("PhaseFieldApp", LaplacianSplit);
13 
16 {
18  params.addClassDescription(
19  "Split with a variable that holds the Laplacian of a phase field variable.");
20  params.addRequiredCoupledVar("c", "Field variable to take the Laplacian of");
21  return params;
22 }
23 
25  : KernelGrad(parameters), _var_c(coupled("c")), _grad_c(coupledGradient("c"))
26 {
27 }
28 
31 {
32  return _grad_c[_qp]; // * _grad_test[_i][_qp]
33 }
34 
37 {
38  return 0.0;
39 }
40 
41 Real
43 {
44  if (jvar == _var_c)
45  return _grad_phi[_j][_qp] * _grad_test[_i][_qp];
46 
47  return 0.0;
48 }
virtual RealGradient precomputeQpJacobian()
const VariableGradient & _grad_c
virtual Real computeQpOffDiagJacobian(unsigned int jvar)
const VariablePhiGradient & _grad_phi
static InputParameters validParams()
LaplacianSplit(const InputParameters &parameters)
virtual RealGradient precomputeQpResidual()
Split with a variable that holds the Laplacian of the phase field.
unsigned int _i
void addRequiredCoupledVar(const std::string &name, const std::string &doc_string)
registerMooseObject("PhaseFieldApp", LaplacianSplit)
static InputParameters validParams()
unsigned int _j
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
const VariableTestGradient & _grad_test
void addClassDescription(const std::string &doc_string)
const unsigned int _var_c
unsigned int _qp