https://mooseframework.inl.gov
Loading...
Searching...
No Matches
INSADMomentumTimeDerivative.C
Go to the documentation of this file.
1//* This file is part of the MOOSE framework
2//* https://mooseframework.inl.gov
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
11#include "INSADObjectTracker.h"
12#include "FEProblemBase.h"
13
15
18{
20 params.addClassDescription("This class computes the time derivative for the incompressible "
21 "Navier-Stokes momentum equation.");
22 params.addCoupledVar("temperature",
23 "The temperature on which material properties may depend. If properties "
24 "do depend on temperature, this variable must be coupled in in order to "
25 "correctly resize the element matrix");
26 return params;
27}
28
30 : ADVectorTimeKernelValue(parameters),
31 _td_strong_residual(getADMaterialProperty<RealVectorValue>("td_strong_residual"))
32{
33 // Bypass the UserObjectInterface method because it requires a UserObjectName param which we
34 // don't need
35 auto & obj_tracker = const_cast<INSADObjectTracker &>(
36 _fe_problem.getUserObject<INSADObjectTracker>("ins_ad_object_tracker"));
37 for (const auto block_id : blockIDs())
38 obj_tracker.set("has_transient", true, block_id);
39}
40
registerMooseObject("NavierStokesApp", INSADMomentumTimeDerivative)
static InputParameters validParams()
virtual const std::set< SubdomainID > & blockIDs() const
T & getUserObject(const std::string &name, unsigned int tid=0) const
This class computes the time derivative for the incompressible Navier-Stokes momentum equation.
INSADMomentumTimeDerivative(const InputParameters &parameters)
virtual ADRealVectorValue precomputeQpResidual() override
const ADMaterialProperty< RealVectorValue > & _td_strong_residual
Object for tracking what kernels have been added to an INSAD simulation.
void set(const std::string &name, const T &value, SubdomainID sub_id)
Set the internal parameter name to value.
void addClassDescription(const std::string &doc_string)
void addCoupledVar(const std::string &name, const std::string &doc_string)
FEProblemBase & _fe_problem