www.mooseframework.org
LevelSetAdvection.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 // MOOSE includes
11 #include "LevelSetAdvection.h"
12 
14 
16  ADKernelValue,
17  params.addClassDescription(
18  "Implements the level set advection equation: $\\vec{v}\\cdot\\nabla "
19  "u = 0$, where the weak form is $(\\psi_i, \\vec{v}\\cdot\\nabla u) = "
20  "0$.");
21  params += validParams<LevelSetVelocityInterface<>>(););
22 
23 template <ComputeStage compute_stage>
24 LevelSetAdvection<compute_stage>::LevelSetAdvection(const InputParameters & parameters)
25  : LevelSetVelocityInterface<ADKernelValue<compute_stage>>(parameters)
26 {
27 }
28 
29 template <ComputeStage compute_stage>
30 ADReal
32 {
33  computeQpVelocity();
34  return _velocity * _grad_u[_qp];
35 }
defineADValidParams
defineADValidParams(LevelSetAdvection, ADKernelValue, params.addClassDescription("Implements the level set advection equation: $\\vec{v}\\cdot\\nabla " "u = 0$, where the weak form is $(\\psi_i, \\vec{v}\\cdot\\nabla u) = " "0$.");params+=validParams< LevelSetVelocityInterface<>>();)
LevelSetAdvection::LevelSetAdvection
LevelSetAdvection(const InputParameters &parameters)
Definition: LevelSetAdvection.C:24
LevelSetAdvection::precomputeQpResidual
virtual ADReal precomputeQpResidual() override
Definition: LevelSetAdvection.C:31
LevelSetVelocityInterface
A helper class for defining the velocity as coupled variables for the levelset equation.
Definition: LevelSetVelocityInterface.h:18
LevelSetAdvection.h
registerADMooseObject
registerADMooseObject("LevelSetApp", LevelSetAdvection)
LevelSetAdvection
Advection Kernel for the levelset equation.
Definition: LevelSetAdvection.h:18