#include <TaggingInterface.h>
Classes | |
class | MatrixTagsKey |
Class that is used as a parameter to some of our matrix tag APIs that allows only blessed framework classes to call them. More... | |
class | VectorTagsKey |
Class that is used as a parameter to some of our vector tag APIs that allows only blessed framework classes to call them. More... | |
Public Types | |
enum | ResidualTagType { ResidualTagType::NonReference, ResidualTagType::Reference } |
Enumerate whether a (residual) vector tag is to be of a non-reference or reference tag type. More... | |
Public Member Functions | |
TaggingInterface (const MooseObject *moose_object) | |
virtual | ~TaggingInterface () |
void | useVectorTag (const TagName &tag_name, VectorTagsKey) |
void | useMatrixTag (const TagName &tag_name, MatrixTagsKey) |
void | useVectorTag (TagID tag_id, VectorTagsKey) |
void | useMatrixTag (TagID tag_id, MatrixTagsKey) |
bool | isVectorTagged () |
bool | isMatrixTagged () |
bool | hasVectorTags () const |
const std::set< TagID > & | getVectorTags (VectorTagsKey) const |
const std::set< TagID > & | getMatrixTags (MatrixTagsKey) const |
Static Public Member Functions | |
static InputParameters | validParams () |
Protected Member Functions | |
void | prepareVectorTag (Assembly &assembly, unsigned int ivar) |
Prepare data for computing element residual according to active tags. More... | |
void | prepareVectorTag (Assembly &assembly, unsigned int ivar, ResidualTagType tag_type) |
Prepare vector tags in a reference residual problem context. More... | |
void | prepareVectorTagNeighbor (Assembly &assembly, unsigned int ivar) |
Prepare data for computing element residual the according to active tags for DG and interface kernels. More... | |
void | prepareVectorTagLower (Assembly &assembly, unsigned int ivar) |
Prepare data for computing the residual according to active tags for mortar constraints. More... | |
void | prepareMatrixTag (Assembly &assembly, unsigned int ivar, unsigned int jvar) |
Prepare data for computing element jacobian according to the active tags. More... | |
void | prepareMatrixTag (Assembly &assembly, unsigned int ivar, unsigned int jvar, DenseMatrix< Number > &k) const |
void | prepareMatrixTagNonlocal (Assembly &assembly, unsigned int ivar, unsigned int jvar) |
Prepare data for computing nonlocal element jacobian according to the active tags. More... | |
void | prepareMatrixTagNeighbor (Assembly &assembly, unsigned int ivar, unsigned int jvar, Moose::DGJacobianType type) |
Prepare data for computing element jacobian according to the active tags for DG and interface kernels. More... | |
void | prepareMatrixTagNeighbor (Assembly &assembly, unsigned int ivar, unsigned int jvar, Moose::DGJacobianType type, DenseMatrix< Number > &k) const |
void | prepareMatrixTagLower (Assembly &assembly, unsigned int ivar, unsigned int jvar, Moose::ConstraintJacobianType type) |
Prepare data for computing the jacobian according to the active tags for mortar. More... | |
void | accumulateTaggedLocalResidual () |
Local residual blocks will be appended by adding the current local kernel residual. More... | |
void | assignTaggedLocalResidual () |
Local residual blocks will assigned as the current local kernel residual. More... | |
void | accumulateTaggedLocalMatrix () |
Local Jacobian blocks will be appended by adding the current local kernel Jacobian. More... | |
void | accumulateTaggedLocalMatrix (Assembly &assembly, unsigned int ivar, unsigned int jvar, const DenseMatrix< Number > &k) |
void | accumulateTaggedLocalMatrix (Assembly &assembly, unsigned int ivar, unsigned int jvar, Moose::DGJacobianType type, const DenseMatrix< Number > &k) |
void | accumulateTaggedNonlocalMatrix () |
Nonlocal Jacobian blocks will be appended by adding the current nonlocal kernel Jacobian. More... | |
void | assignTaggedLocalMatrix () |
Local Jacobian blocks will assigned as the current local kernel Jacobian. More... | |
template<typename Residuals , typename Indices > | |
void | addResiduals (Assembly &assembly, const Residuals &residuals, const Indices &dof_indices, Real scaling_factor) |
Add the provided incoming residuals corresponding to the provided dof indices. More... | |
template<typename T , typename Indices > | |
void | addResiduals (Assembly &assembly, const DenseVector< T > &residuals, const Indices &dof_indices, Real scaling_factor) |
Add the provided incoming residuals corresponding to the provided dof indices. More... | |
template<typename Residuals , typename Indices > | |
void | addResidualsAndJacobian (Assembly &assembly, const Residuals &residuals, const Indices &dof_indices, Real scaling_factor) |
Add the provided incoming residuals and derivatives for the Jacobian, corresponding to the provided dof indices. More... | |
template<typename Residuals , typename Indices > | |
void | addJacobian (Assembly &assembly, const Residuals &residuals, const Indices &dof_indices, Real scaling_factor) |
Add the provided residual derivatives into the Jacobian for the provided dof indices. More... | |
void | addResiduals (Assembly &assembly, const ADResidualsPacket &packet) |
Add the provided incoming residuals corresponding to the provided dof indices. More... | |
void | addResidualsAndJacobian (Assembly &assembly, const ADResidualsPacket &packet) |
Add the provided incoming residuals and derivatives for the Jacobian, corresponding to the provided dof indices. More... | |
void | addJacobian (Assembly &assembly, const ADResidualsPacket &packet) |
Add the provided residual derivatives into the Jacobian for the provided dof indices. More... | |
template<typename Residuals , typename Indices > | |
void | addResidualsWithoutConstraints (Assembly &assembly, const Residuals &residuals, const Indices &dof_indices, Real scaling_factor) |
Add the provided incoming residuals corresponding to the provided dof indices. More... | |
template<typename Residuals , typename Indices > | |
void | addResidualsAndJacobianWithoutConstraints (Assembly &assembly, const Residuals &residuals, const Indices &dof_indices, Real scaling_factor) |
Add the provided incoming residuals and derivatives for the Jacobian, corresponding to the provided dof indices. More... | |
template<typename Residuals , typename Indices > | |
void | addJacobianWithoutConstraints (Assembly &assembly, const Residuals &residuals, const Indices &dof_indices, Real scaling_factor) |
Add the provided residual derivatives into the Jacobian for the provided dof indices. More... | |
void | addJacobianElement (Assembly &assembly, Real value, dof_id_type row_index, dof_id_type column_index, Real scaling_factor) |
Add into a single Jacobian element. More... | |
void | addJacobian (Assembly &assembly, DenseMatrix< Real > &local_k, const std::vector< dof_id_type > &row_indices, const std::vector< dof_id_type > &column_indices, Real scaling_factor) |
Add a local Jacobian matrix. More... | |
template<typename T > | |
void | setResidual (SystemBase &sys, const T &residual, MooseVariableFE< T > &var) |
Set residual using the variables' insertion API. More... | |
void | setResidual (SystemBase &sys, Real residual, dof_id_type dof_index) |
Set residual at a specified degree of freedom index. More... | |
template<typename SetResidualFunctor > | |
void | setResidual (SystemBase &sys, SetResidualFunctor set_residual_functor) |
Set residuals using the provided functor. More... | |
Protected Attributes | |
SubProblem & | _subproblem |
SubProblem that contains tag info. More... | |
DenseVector< Number > | _local_re |
Holds local residual entries as they are accumulated by this Kernel. More... | |
DenseMatrix< Number > | _local_ke |
Holds local Jacobian entries as they are accumulated by this Kernel. More... | |
DenseMatrix< Number > | _nonlocal_ke |
Holds nonlocal Jacobian entries as they are accumulated by this Kernel. More... | |
Private Member Functions | |
void | prepareVectorTagInternal (Assembly &assembly, unsigned int ivar, const std::set< TagID > &vector_tags, const std::set< TagID > &absolute_value_vector_tags) |
Prepare data for computing element residual according to the specified tags Residual blocks for different tags will be extracted from Assembly. More... | |
Private Attributes | |
std::set< TagID > | _vector_tags |
The vector tag ids this Kernel will contribute to. More... | |
std::set< TagID > | _abs_vector_tags |
The absolute value residual tag ids. More... | |
std::set< TagID > | _matrix_tags |
The matrices this Kernel will contribute to. More... | |
std::set< TagID > | _non_ref_vector_tags |
A set to hold vector tags excluding the reference residual tag. More... | |
std::set< TagID > | _non_ref_abs_vector_tags |
A set to hold absolute value vector tags excluding the reference residual tag. More... | |
std::set< TagID > | _ref_vector_tags |
A set of either size 1 or 0. More... | |
std::set< TagID > | _ref_abs_vector_tags |
A set of either size 1 or 0. More... | |
const MooseObject & | _moose_object |
Moose objct this tag works on. More... | |
const InputParameters & | _tag_params |
Parameters from moose object. More... | |
std::vector< DenseVector< Number > * > | _re_blocks |
Residual blocks Vectors For each Tag. More... | |
std::vector< DenseVector< Number > * > | _absre_blocks |
Residual blocks for absolute value residual tags. More... | |
std::vector< DenseMatrix< Number > * > | _ke_blocks |
Kernel blocks Vectors For each Tag. More... | |
std::vector< Real > | _absolute_residuals |
A container to hold absolute values of residuals passed into addResiduals . More... | |
Friends | |
class | NonlinearSystemBase |
Definition at line 48 of file TaggingInterface.h.
|
strong |
Enumerate whether a (residual) vector tag is to be of a non-reference or reference tag type.
Enumerator | |
---|---|
NonReference | |
Reference |
Definition at line 91 of file TaggingInterface.h.
TaggingInterface::TaggingInterface | ( | const MooseObject * | moose_object | ) |
Definition at line 56 of file TaggingInterface.C.
|
virtual |
Definition at line 443 of file TaggingInterface.C.
|
protected |
Local Jacobian blocks will be appended by adding the current local kernel Jacobian.
It should be called after the local element matrix has been computed.
Definition at line 387 of file TaggingInterface.C.
Referenced by DGKernel::computeElemNeighJacobian(), ElemElemConstraint::computeElemNeighJacobian(), ArrayDGKernel::computeElemNeighJacobian(), MassLumpedTimeDerivative::computeJacobian(), TimeDerivative::computeJacobian(), VectorTimeDerivative::computeJacobian(), ScalarKernel::computeJacobian(), Kernel::computeJacobian(), ODEKernel::computeJacobian(), VectorKernel::computeJacobian(), ArrayKernel::computeJacobian(), IntegratedBC::computeJacobian(), VectorIntegratedBC::computeJacobian(), EigenKernel::computeJacobian(), ArrayIntegratedBC::computeJacobian(), NodeElemConstraint::computeJacobian(), NonlocalIntegratedBC::computeJacobian(), KernelGrad::computeJacobian(), KernelValue::computeJacobian(), NonlocalKernel::computeJacobian(), MortarConstraint::computeJacobian(), NodeFaceConstraint::computeJacobian(), LowerDIntegratedBC::computeLowerDJacobian(), ArrayLowerDIntegratedBC::computeLowerDJacobian(), DGLowerDKernel::computeLowerDJacobian(), ArrayDGLowerDKernel::computeLowerDJacobian(), LowerDIntegratedBC::computeLowerDOffDiagJacobian(), ArrayLowerDIntegratedBC::computeLowerDOffDiagJacobian(), DGKernel::computeOffDiagElemNeighJacobian(), ArrayDGKernel::computeOffDiagElemNeighJacobian(), Kernel::computeOffDiagJacobian(), VectorKernel::computeOffDiagJacobian(), EigenKernel::computeOffDiagJacobian(), ArrayKernel::computeOffDiagJacobian(), VectorIntegratedBC::computeOffDiagJacobian(), IntegratedBC::computeOffDiagJacobian(), ArrayIntegratedBC::computeOffDiagJacobian(), NodeElemConstraint::computeOffDiagJacobian(), NonlocalIntegratedBC::computeOffDiagJacobian(), NonlocalKernel::computeOffDiagJacobian(), KernelValue::computeOffDiagJacobian(), KernelGrad::computeOffDiagJacobian(), NodeFaceConstraint::computeOffDiagJacobian(), ODEKernel::computeOffDiagJacobianScalar(), VectorKernel::computeOffDiagJacobianScalar(), ArrayKernel::computeOffDiagJacobianScalar(), IntegratedBC::computeOffDiagJacobianScalar(), VectorIntegratedBC::computeOffDiagJacobianScalar(), Kernel::computeOffDiagJacobianScalar(), ArrayIntegratedBC::computeOffDiagJacobianScalar(), ScalarLagrangeMultiplier::computeOffDiagJacobianScalar(), DGLowerDKernel::computeOffDiagLowerDJacobian(), and ArrayDGLowerDKernel::computeOffDiagLowerDJacobian().
|
protected |
Definition at line 394 of file TaggingInterface.C.
|
protected |
Definition at line 411 of file TaggingInterface.C.
|
protected |
Local residual blocks will be appended by adding the current local kernel residual.
It should be called after the local element vector has been computed.
Definition at line 367 of file TaggingInterface.C.
Referenced by FVInterfaceKernel::addResidual(), ADDGKernel::computeElemNeighResidual(), DGKernel::computeElemNeighResidual(), ElemElemConstraint::computeElemNeighResidual(), ArrayDGKernel::computeElemNeighResidual(), DGLowerDKernel::computeLowerDResidual(), ArrayDGLowerDKernel::computeLowerDResidual(), ScalarKernel::computeResidual(), Kernel::computeResidual(), VectorKernel::computeResidual(), ArrayKernel::computeResidual(), LowerDIntegratedBC::computeResidual(), ADScalarKernel::computeResidual(), TimeKernel::computeResidual(), ODEKernel::computeResidual(), ODETimeKernel::computeResidual(), VectorTimeKernel::computeResidual(), VectorIntegratedBC::computeResidual(), IntegratedBC::computeResidual(), ArrayLowerDIntegratedBC::computeResidual(), ArrayIntegratedBC::computeResidual(), NodeElemConstraint::computeResidual(), EigenKernel::computeResidual(), ADMortarConstraint::computeResidual(), FVBoundaryScalarLagrangeMultiplierConstraint::computeResidual(), FVScalarLagrangeMultiplierConstraint::computeResidual(), FVFluxBC::computeResidual(), MortarConstraint::computeResidual(), KernelValue::computeResidual(), KernelGrad::computeResidual(), FVElementalKernel::computeResidual(), FVFluxKernel::computeResidual(), and NodeFaceConstraint::computeResidual().
|
protected |
Nonlocal Jacobian blocks will be appended by adding the current nonlocal kernel Jacobian.
It should be called after the nonlocal element matrix has been computed.
Definition at line 430 of file TaggingInterface.C.
Referenced by NonlocalIntegratedBC::computeNonlocalJacobian(), NonlocalKernel::computeNonlocalJacobian(), NonlocalKernel::computeNonlocalOffDiagJacobian(), and NonlocalIntegratedBC::computeNonlocalOffDiagJacobian().
|
protected |
Add the provided residual derivatives into the Jacobian for the provided dof indices.
Definition at line 515 of file TaggingInterface.h.
Referenced by addJacobian(), addResidualsAndJacobian(), ADScalarKernel::computeADJacobian(), ADDGKernel::computeElemNeighJacobian(), DiffusionLHDGDirichletBC::computeJacobian(), DiffusionLHDGPrescribedGradientBC::computeJacobian(), IPHDGBC::computeJacobian(), DiffusionLHDGKernel::computeJacobian(), IPHDGKernel::computeJacobian(), ADNodeElemConstraint::computeJacobian(), FVElementalKernel::computeJacobian(), ADNodalKernel::computeJacobian(), NodalConstraint::computeJacobian(), DiffusionLHDGKernel::computeJacobianOnSide(), IPHDGKernel::computeJacobianOnSide(), ADDGKernel::computeOffDiagElemNeighJacobian(), FVScalarLagrangeMultiplierConstraint::computeOffDiagJacobian(), MortarScalarBase::computeOffDiagJacobianScalar(), KernelScalarBase::computeOffDiagJacobianScalarLocal(), MortarScalarBase::computeScalarJacobian(), KernelScalarBase::computeScalarJacobian(), MortarScalarBase::computeScalarOffDiagJacobian(), KernelScalarBase::computeScalarOffDiagJacobian(), KernelScalarBase::computeScalarOffDiagJacobianScalar(), and MortarScalarBase::computeScalarOffDiagJacobianScalar().
|
inlineprotected |
Add the provided residual derivatives into the Jacobian for the provided dof indices.
Definition at line 608 of file TaggingInterface.h.
|
inlineprotected |
Add a local Jacobian matrix.
Definition at line 558 of file TaggingInterface.h.
|
inlineprotected |
Add into a single Jacobian element.
Definition at line 547 of file TaggingInterface.h.
Referenced by ArrayNodalBC::computeJacobian(), VectorNodalBC::computeJacobian(), NodalBC::computeJacobian(), NodalKernel::computeJacobian(), NodalConstraint::computeJacobian(), ArrayNodalBC::computeOffDiagJacobian(), VectorNodalBC::computeOffDiagJacobian(), NodalBC::computeOffDiagJacobian(), NodalKernel::computeOffDiagJacobian(), and MortarConstraintBase::zeroInactiveLMDofs().
|
protected |
Add the provided residual derivatives into the Jacobian for the provided dof indices.
This API should only be used if the caller knows that no libMesh-level constraints (hanging nodes or periodic boundary conditions) apply to the provided dof indices
Definition at line 537 of file TaggingInterface.h.
Referenced by addResidualsAndJacobianWithoutConstraints().
|
protected |
Add the provided incoming residuals corresponding to the provided dof indices.
Definition at line 448 of file TaggingInterface.h.
Referenced by addResiduals(), addResidualsAndJacobian(), FVScalarLagrangeMultiplierInterface::computeResidual(), DiffusionLHDGKernel::computeResidual(), IPHDGKernel::computeResidual(), DiffusionLHDGDirichletBC::computeResidual(), DiffusionLHDGPrescribedGradientBC::computeResidual(), IPHDGBC::computeResidual(), ADNodeElemConstraint::computeResidual(), TimeNodalKernel::computeResidual(), FVBoundaryScalarLagrangeMultiplierConstraint::computeResidual(), FVScalarLagrangeMultiplierConstraint::computeResidual(), NodalKernel::computeResidual(), ADNodalKernel::computeResidual(), ADKernelScalarBase::computeResidual(), NodalConstraint::computeResidual(), ADMortarScalarBase::computeResidual(), MortarScalarBase::computeResidual(), DiffusionLHDGKernel::computeResidualOnSide(), IPHDGKernel::computeResidualOnSide(), KernelScalarBase::computeScalarResidual(), and MortarConstraintBase::zeroInactiveLMDofs().
|
protected |
Add the provided incoming residuals corresponding to the provided dof indices.
Definition at line 471 of file TaggingInterface.h.
|
inlineprotected |
Add the provided incoming residuals corresponding to the provided dof indices.
Definition at line 596 of file TaggingInterface.h.
|
protected |
Add the provided incoming residuals and derivatives for the Jacobian, corresponding to the provided dof indices.
Definition at line 504 of file TaggingInterface.h.
Referenced by addResidualsAndJacobian(), FVScalarLagrangeMultiplierInterface::computeJacobian(), FVBoundaryScalarLagrangeMultiplierConstraint::computeJacobian(), FVFluxBC::computeJacobian(), ADKernelScalarBase::computeJacobian(), FVFluxKernel::computeJacobian(), FVInterfaceKernel::computeJacobian(), IPHDGBC::computeResidualAndJacobian(), IPHDGKernel::computeResidualAndJacobian(), FVScalarLagrangeMultiplierConstraint::computeResidualAndJacobian(), FVElementalKernel::computeResidualAndJacobian(), ADKernelScalarBase::computeResidualAndJacobian(), and IPHDGKernel::computeResidualAndJacobianOnSide().
|
inlineprotected |
Add the provided incoming residuals and derivatives for the Jacobian, corresponding to the provided dof indices.
Definition at line 602 of file TaggingInterface.h.
|
protected |
Add the provided incoming residuals and derivatives for the Jacobian, corresponding to the provided dof indices.
This API should only be used if the caller knows that no libMesh-level constraints (hanging nodes or periodic boundary conditions) apply to the provided dof indices
Definition at line 526 of file TaggingInterface.h.
Referenced by ADMortarConstraint::computeJacobian(), and ADMortarScalarBase::computeJacobian().
|
protected |
Add the provided incoming residuals corresponding to the provided dof indices.
This API should only be used if the caller knows that no libMesh-level constraints (hanging nodes or periodic boundary conditions) apply to the provided dof indices
Definition at line 481 of file TaggingInterface.h.
Referenced by addResidualsAndJacobianWithoutConstraints().
|
protected |
Local Jacobian blocks will assigned as the current local kernel Jacobian.
It should be called after the local element matrix has been computed.
Definition at line 437 of file TaggingInterface.C.
Referenced by NodalEqualValueConstraint::computeJacobian().
|
protected |
Local residual blocks will assigned as the current local kernel residual.
It should be called after the local element vector has been computed.
Definition at line 377 of file TaggingInterface.C.
Referenced by NodalEqualValueConstraint::computeResidual(), and NodeFaceConstraint::computeResidual().
|
inline |
Definition at line 113 of file TaggingInterface.h.
Referenced by LinearSystemContributionObject::linkTaggedVectorsAndMatrices().
|
inline |
Definition at line 111 of file TaggingInterface.h.
Referenced by LinearSystemContributionObject::linkTaggedVectorsAndMatrices().
|
inline |
Definition at line 109 of file TaggingInterface.h.
Referenced by Kernel::computeResidual().
|
inline |
Definition at line 107 of file TaggingInterface.h.
|
inline |
Definition at line 105 of file TaggingInterface.h.
|
protected |
Prepare data for computing element jacobian according to the active tags.
Jacobian blocks for different tags will be extracted from Assembly. A local Jacobian will be zeroed. It should be called right before the local element matrix is computed.
Definition at line 283 of file TaggingInterface.C.
Referenced by DGKernel::computeElemNeighJacobian(), ArrayDGKernel::computeElemNeighJacobian(), ScalarKernel::computeJacobian(), TimeDerivative::computeJacobian(), VectorTimeDerivative::computeJacobian(), MassLumpedTimeDerivative::computeJacobian(), ODEKernel::computeJacobian(), VectorKernel::computeJacobian(), Kernel::computeJacobian(), ArrayKernel::computeJacobian(), VectorIntegratedBC::computeJacobian(), IntegratedBC::computeJacobian(), ArrayIntegratedBC::computeJacobian(), EigenKernel::computeJacobian(), NodalEqualValueConstraint::computeJacobian(), NonlocalIntegratedBC::computeJacobian(), KernelGrad::computeJacobian(), KernelValue::computeJacobian(), NonlocalKernel::computeJacobian(), DGKernel::computeOffDiagElemNeighJacobian(), ArrayDGKernel::computeOffDiagElemNeighJacobian(), VectorKernel::computeOffDiagJacobian(), Kernel::computeOffDiagJacobian(), EigenKernel::computeOffDiagJacobian(), ArrayKernel::computeOffDiagJacobian(), VectorIntegratedBC::computeOffDiagJacobian(), IntegratedBC::computeOffDiagJacobian(), ArrayIntegratedBC::computeOffDiagJacobian(), NonlocalIntegratedBC::computeOffDiagJacobian(), NonlocalKernel::computeOffDiagJacobian(), KernelValue::computeOffDiagJacobian(), KernelGrad::computeOffDiagJacobian(), ODEKernel::computeOffDiagJacobianScalar(), VectorKernel::computeOffDiagJacobianScalar(), ArrayKernel::computeOffDiagJacobianScalar(), VectorIntegratedBC::computeOffDiagJacobianScalar(), IntegratedBC::computeOffDiagJacobianScalar(), ArrayIntegratedBC::computeOffDiagJacobianScalar(), Kernel::computeOffDiagJacobianScalar(), and ScalarLagrangeMultiplier::computeOffDiagJacobianScalar().
|
protected |
Definition at line 295 of file TaggingInterface.C.
|
protected |
Prepare data for computing the jacobian according to the active tags for mortar.
Jacobian blocks for different tags will be extracted from Assembly. A local Jacobian will be zeroed. It should be called right before the local element matrix is computed.
Definition at line 351 of file TaggingInterface.C.
Referenced by MortarConstraint::computeJacobian(), LowerDIntegratedBC::computeLowerDJacobian(), ArrayLowerDIntegratedBC::computeLowerDJacobian(), DGLowerDKernel::computeLowerDJacobian(), ArrayDGLowerDKernel::computeLowerDJacobian(), LowerDIntegratedBC::computeLowerDOffDiagJacobian(), ArrayLowerDIntegratedBC::computeLowerDOffDiagJacobian(), DGLowerDKernel::computeOffDiagLowerDJacobian(), and ArrayDGLowerDKernel::computeOffDiagLowerDJacobian().
|
protected |
Prepare data for computing element jacobian according to the active tags for DG and interface kernels.
Jacobian blocks for different tags will be extracted from Assembly. A local Jacobian will be zeroed. It should be called right before the local element matrix is computed.
Definition at line 322 of file TaggingInterface.C.
Referenced by DGKernel::computeElemNeighJacobian(), ElemElemConstraint::computeElemNeighJacobian(), ArrayDGKernel::computeElemNeighJacobian(), NodeElemConstraint::computeJacobian(), NodeFaceConstraint::computeJacobian(), DGKernel::computeOffDiagElemNeighJacobian(), ArrayDGKernel::computeOffDiagElemNeighJacobian(), NodeElemConstraint::computeOffDiagJacobian(), and NodeFaceConstraint::computeOffDiagJacobian().
|
protected |
Definition at line 338 of file TaggingInterface.C.
|
protected |
Prepare data for computing nonlocal element jacobian according to the active tags.
Jacobian blocks for different tags will be extracted from Assembly. A nonlocal Jacobian will be zeroed. It should be called right before the nonlocal element matrix is computed.
Definition at line 307 of file TaggingInterface.C.
Referenced by NonlocalIntegratedBC::computeNonlocalJacobian(), NonlocalKernel::computeNonlocalJacobian(), NonlocalKernel::computeNonlocalOffDiagJacobian(), and NonlocalIntegratedBC::computeNonlocalOffDiagJacobian().
Prepare data for computing element residual according to active tags.
Residual blocks for different tags will be extracted from Assembly. A local residual will be zeroed. It should be called right before the local element vector is computed.
Definition at line 196 of file TaggingInterface.C.
Referenced by FVInterfaceKernel::addResidual(), ADDGKernel::computeElemNeighResidual(), DGKernel::computeElemNeighResidual(), ElemElemConstraint::computeElemNeighResidual(), ArrayDGKernel::computeElemNeighResidual(), ScalarKernel::computeResidual(), Kernel::computeResidual(), VectorKernel::computeResidual(), ArrayKernel::computeResidual(), VectorTimeKernel::computeResidual(), ODEKernel::computeResidual(), TimeKernel::computeResidual(), ODETimeKernel::computeResidual(), ADScalarKernel::computeResidual(), IntegratedBC::computeResidual(), VectorIntegratedBC::computeResidual(), EigenKernel::computeResidual(), NodeElemConstraint::computeResidual(), ArrayIntegratedBC::computeResidual(), NodalEqualValueConstraint::computeResidual(), ADMortarConstraint::computeResidual(), FVScalarLagrangeMultiplierConstraint::computeResidual(), FVBoundaryScalarLagrangeMultiplierConstraint::computeResidual(), MortarConstraint::computeResidual(), FVFluxBC::computeResidual(), KernelValue::computeResidual(), KernelGrad::computeResidual(), FVElementalKernel::computeResidual(), FVFluxKernel::computeResidual(), and NodeFaceConstraint::computeResidual().
|
protected |
Prepare vector tags in a reference residual problem context.
Assembly | The assembly object that we obtain the local residual blocks from |
ivar | The variable which we are retrieving the local residual blocks for |
ref_problem | A pointer to a reference residual problem. This can be a nullptr |
tag_type | What type of tags to prepare |
Definition at line 202 of file TaggingInterface.C.
|
private |
Prepare data for computing element residual according to the specified tags Residual blocks for different tags will be extracted from Assembly.
A local residual will be zeroed. It should be called right before the local element vector is computed.
Definition at line 213 of file TaggingInterface.C.
Referenced by prepareVectorTag().
Prepare data for computing the residual according to active tags for mortar constraints.
Residual blocks for different tags will be extracted from Assembly. A local residual will be zeroed. It should be called right before the local element vector is computed.
Definition at line 261 of file TaggingInterface.C.
Referenced by DGLowerDKernel::computeLowerDResidual(), ArrayDGLowerDKernel::computeLowerDResidual(), LowerDIntegratedBC::computeResidual(), ArrayLowerDIntegratedBC::computeResidual(), ADMortarConstraint::computeResidual(), and MortarConstraint::computeResidual().
|
protected |
Prepare data for computing element residual the according to active tags for DG and interface kernels.
Residual blocks for different tags will be extracted from Assembly. A local residual will be zeroed. It should be called right before the local element vector is computed.
Definition at line 238 of file TaggingInterface.C.
Referenced by FVInterfaceKernel::addResidual(), ADDGKernel::computeElemNeighResidual(), DGKernel::computeElemNeighResidual(), ElemElemConstraint::computeElemNeighResidual(), ArrayDGKernel::computeElemNeighResidual(), NodeElemConstraint::computeResidual(), ADMortarConstraint::computeResidual(), FVFluxBC::computeResidual(), MortarConstraint::computeResidual(), FVFluxKernel::computeResidual(), and NodeFaceConstraint::computeResidual().
|
protected |
Set residual using the variables' insertion API.
Definition at line 571 of file TaggingInterface.h.
Referenced by ArrayNodalBC::computeResidual(), VectorNodalBC::computeResidual(), and NodalBC::computeResidual().
|
inlineprotected |
Set residual at a specified degree of freedom index.
Definition at line 579 of file TaggingInterface.h.
|
protected |
Set residuals using the provided functor.
Definition at line 588 of file TaggingInterface.h.
void TaggingInterface::useMatrixTag | ( | const TagName & | tag_name, |
MatrixTagsKey | |||
) |
Definition at line 169 of file TaggingInterface.C.
void TaggingInterface::useMatrixTag | ( | TagID | tag_id, |
MatrixTagsKey | |||
) |
Definition at line 187 of file TaggingInterface.C.
void TaggingInterface::useVectorTag | ( | const TagName & | tag_name, |
VectorTagsKey | |||
) |
Definition at line 160 of file TaggingInterface.C.
void TaggingInterface::useVectorTag | ( | TagID | tag_id, |
VectorTagsKey | |||
) |
Definition at line 178 of file TaggingInterface.C.
|
static |
Definition at line 20 of file TaggingInterface.C.
Referenced by ResidualObject::validParams(), LinearSystemContributionObject::validParams(), LinearFVBoundaryCondition::validParams(), FVInterfaceKernel::validParams(), and FVBoundaryCondition::validParams().
|
friend |
Definition at line 430 of file TaggingInterface.h.
|
private |
The absolute value residual tag ids.
Definition at line 388 of file TaggingInterface.h.
Referenced by addResiduals(), addResidualsWithoutConstraints(), prepareVectorTag(), prepareVectorTagLower(), prepareVectorTagNeighbor(), and TaggingInterface().
|
private |
A container to hold absolute values of residuals passed into addResiduals
.
We maintain this data member to avoid constant dynamic heap allocations
Definition at line 428 of file TaggingInterface.h.
Referenced by addResiduals(), and addResidualsWithoutConstraints().
|
private |
Residual blocks for absolute value residual tags.
Definition at line 421 of file TaggingInterface.h.
Referenced by accumulateTaggedLocalResidual(), assignTaggedLocalResidual(), prepareVectorTagInternal(), prepareVectorTagLower(), prepareVectorTagNeighbor(), and TaggingInterface().
|
private |
Kernel blocks Vectors For each Tag.
Definition at line 424 of file TaggingInterface.h.
Referenced by accumulateTaggedLocalMatrix(), accumulateTaggedNonlocalMatrix(), assignTaggedLocalMatrix(), prepareMatrixTag(), prepareMatrixTagLower(), prepareMatrixTagNeighbor(), prepareMatrixTagNonlocal(), and TaggingInterface().
|
protected |
Holds local Jacobian entries as they are accumulated by this Kernel.
Definition at line 367 of file TaggingInterface.h.
Referenced by accumulateTaggedLocalMatrix(), assignTaggedLocalMatrix(), ADDGKernel::computeElemNeighJacobian(), DGKernel::computeElemNeighJacobian(), ElemElemConstraint::computeElemNeighJacobian(), ArrayDGKernel::computeElemNeighJacobian(), VectorTimeDerivative::computeJacobian(), ScalarKernel::computeJacobian(), MassLumpedTimeDerivative::computeJacobian(), TimeDerivative::computeJacobian(), Kernel::computeJacobian(), ODEKernel::computeJacobian(), VectorKernel::computeJacobian(), ArrayKernel::computeJacobian(), IntegratedBC::computeJacobian(), VectorIntegratedBC::computeJacobian(), EigenKernel::computeJacobian(), ArrayIntegratedBC::computeJacobian(), NodalEqualValueConstraint::computeJacobian(), NodeElemConstraint::computeJacobian(), NonlocalIntegratedBC::computeJacobian(), KernelGrad::computeJacobian(), KernelValue::computeJacobian(), NonlocalKernel::computeJacobian(), MortarConstraint::computeJacobian(), NodeFaceConstraint::computeJacobian(), LowerDIntegratedBC::computeLowerDJacobian(), ArrayLowerDIntegratedBC::computeLowerDJacobian(), DGLowerDKernel::computeLowerDJacobian(), ArrayDGLowerDKernel::computeLowerDJacobian(), LowerDIntegratedBC::computeLowerDOffDiagJacobian(), ArrayLowerDIntegratedBC::computeLowerDOffDiagJacobian(), DGKernel::computeOffDiagElemNeighJacobian(), ArrayDGKernel::computeOffDiagElemNeighJacobian(), VectorKernel::computeOffDiagJacobian(), Kernel::computeOffDiagJacobian(), ArrayKernel::computeOffDiagJacobian(), EigenKernel::computeOffDiagJacobian(), VectorIntegratedBC::computeOffDiagJacobian(), IntegratedBC::computeOffDiagJacobian(), ArrayIntegratedBC::computeOffDiagJacobian(), NodeElemConstraint::computeOffDiagJacobian(), NonlocalIntegratedBC::computeOffDiagJacobian(), NonlocalKernel::computeOffDiagJacobian(), KernelGrad::computeOffDiagJacobian(), KernelValue::computeOffDiagJacobian(), NodeFaceConstraint::computeOffDiagJacobian(), ODEKernel::computeOffDiagJacobianScalar(), VectorKernel::computeOffDiagJacobianScalar(), ArrayKernel::computeOffDiagJacobianScalar(), IntegratedBC::computeOffDiagJacobianScalar(), VectorIntegratedBC::computeOffDiagJacobianScalar(), Kernel::computeOffDiagJacobianScalar(), ArrayIntegratedBC::computeOffDiagJacobianScalar(), ScalarLagrangeMultiplier::computeOffDiagJacobianScalar(), MortarScalarBase::computeOffDiagJacobianScalar(), KernelScalarBase::computeOffDiagJacobianScalarLocal(), DGLowerDKernel::computeOffDiagLowerDJacobian(), ArrayDGLowerDKernel::computeOffDiagLowerDJacobian(), MortarScalarBase::computeScalarJacobian(), KernelScalarBase::computeScalarJacobian(), MortarScalarBase::computeScalarOffDiagJacobian(), KernelScalarBase::computeScalarOffDiagJacobian(), KernelScalarBase::computeScalarOffDiagJacobianScalar(), MortarScalarBase::computeScalarOffDiagJacobianScalar(), prepareMatrixTag(), prepareMatrixTagLower(), and prepareMatrixTagNeighbor().
|
protected |
Holds local residual entries as they are accumulated by this Kernel.
Definition at line 364 of file TaggingInterface.h.
Referenced by accumulateTaggedLocalResidual(), FVInterfaceKernel::addResidual(), assignTaggedLocalResidual(), ADDGKernel::computeElemNeighResidual(), DGKernel::computeElemNeighResidual(), ElemElemConstraint::computeElemNeighResidual(), ArrayDGKernel::computeElemNeighResidual(), DGLowerDKernel::computeLowerDResidual(), ArrayDGLowerDKernel::computeLowerDResidual(), ScalarKernel::computeResidual(), VectorKernel::computeResidual(), Kernel::computeResidual(), LowerDIntegratedBC::computeResidual(), ArrayKernel::computeResidual(), ODEKernel::computeResidual(), ADScalarKernel::computeResidual(), VectorTimeKernel::computeResidual(), TimeKernel::computeResidual(), ODETimeKernel::computeResidual(), ArrayLowerDIntegratedBC::computeResidual(), VectorIntegratedBC::computeResidual(), IntegratedBC::computeResidual(), ArrayIntegratedBC::computeResidual(), EigenKernel::computeResidual(), NodeElemConstraint::computeResidual(), NodalEqualValueConstraint::computeResidual(), ADMortarConstraint::computeResidual(), FVScalarLagrangeMultiplierConstraint::computeResidual(), FVBoundaryScalarLagrangeMultiplierConstraint::computeResidual(), FVFluxBC::computeResidual(), MortarConstraint::computeResidual(), KernelValue::computeResidual(), KernelGrad::computeResidual(), FVElementalKernel::computeResidual(), FVFluxKernel::computeResidual(), NodeFaceConstraint::computeResidual(), prepareVectorTagInternal(), prepareVectorTagLower(), and prepareVectorTagNeighbor().
|
private |
The matrices this Kernel will contribute to.
Definition at line 391 of file TaggingInterface.h.
Referenced by accumulateTaggedLocalMatrix(), addJacobian(), addJacobianElement(), addJacobianWithoutConstraints(), getMatrixTags(), isMatrixTagged(), prepareMatrixTag(), prepareMatrixTagLower(), prepareMatrixTagNeighbor(), prepareMatrixTagNonlocal(), TaggingInterface(), and useMatrixTag().
|
private |
Moose objct this tag works on.
Definition at line 412 of file TaggingInterface.h.
Referenced by TaggingInterface().
|
private |
A set to hold absolute value vector tags excluding the reference residual tag.
If there is no reference residual problem, this container is the same as _abs_vector_tags
;
Definition at line 399 of file TaggingInterface.h.
Referenced by prepareVectorTag(), and TaggingInterface().
|
private |
A set to hold vector tags excluding the reference residual tag.
If there is no reference residual problem, this container is the same as _vector_tags
;
Definition at line 395 of file TaggingInterface.h.
Referenced by prepareVectorTag(), and TaggingInterface().
|
protected |
Holds nonlocal Jacobian entries as they are accumulated by this Kernel.
Definition at line 370 of file TaggingInterface.h.
Referenced by accumulateTaggedNonlocalMatrix(), NonlocalIntegratedBC::computeNonlocalJacobian(), NonlocalKernel::computeNonlocalJacobian(), NonlocalIntegratedBC::computeNonlocalOffDiagJacobian(), NonlocalKernel::computeNonlocalOffDiagJacobian(), and prepareMatrixTagNonlocal().
|
private |
Residual blocks Vectors For each Tag.
Definition at line 418 of file TaggingInterface.h.
Referenced by accumulateTaggedLocalResidual(), assignTaggedLocalResidual(), prepareVectorTagInternal(), prepareVectorTagLower(), prepareVectorTagNeighbor(), and TaggingInterface().
|
private |
A set of either size 1 or 0.
If we have a reference residual problem and _abs_vector_tags
holds the reference vector tag, then this set holds the reference vector tags, otherwise it holds nothing
Definition at line 409 of file TaggingInterface.h.
Referenced by prepareVectorTag(), and TaggingInterface().
|
private |
A set of either size 1 or 0.
If we have a reference residual problem and _vector_tags
holds the reference vector tag, then this set holds the reference vector tags, otherwise it holds nothing
Definition at line 404 of file TaggingInterface.h.
Referenced by prepareVectorTag(), and TaggingInterface().
|
protected |
SubProblem that contains tag info.
Definition at line 361 of file TaggingInterface.h.
Referenced by prepareVectorTagInternal(), prepareVectorTagLower(), prepareVectorTagNeighbor(), TaggingInterface(), useMatrixTag(), and useVectorTag().
|
private |
Parameters from moose object.
Definition at line 415 of file TaggingInterface.h.
Referenced by TaggingInterface().
|
private |
The vector tag ids this Kernel will contribute to.
Definition at line 385 of file TaggingInterface.h.
Referenced by addResiduals(), addResidualsWithoutConstraints(), getVectorTags(), hasVectorTags(), isVectorTagged(), prepareVectorTag(), prepareVectorTagLower(), prepareVectorTagNeighbor(), setResidual(), TaggingInterface(), and useVectorTag().