Keeps track of stuff related to assembling. More...
#include <Assembly.h>
Classes | |
class | FEShapeData |
class | GlobalDataKey |
Key structure for APIs manipulating global vectors/matrices. More... | |
class | LocalDataKey |
Key structure for APIs adding/caching local element residuals/Jacobians. More... | |
struct | QRules |
Data structure for tracking/grouping a set of quadrature rules for a particular dimensionality of mesh element. More... | |
class | VectorFEShapeData |
Public Member Functions | |
Assembly (SystemBase &sys, THREAD_ID tid) | |
virtual | ~Assembly () |
const FEBase *const & | getFE (FEType type, unsigned int dim) const |
Get a reference to a pointer that will contain the current volume FE. More... | |
const FEBase *const & | getFENeighbor (FEType type, unsigned int dim) const |
Get a reference to a pointer that will contain the current 'neighbor' FE. More... | |
const FEBase *const & | getFEFace (FEType type, unsigned int dim) const |
Get a reference to a pointer that will contain the current "face" FE. More... | |
const FEBase *const & | getFEFaceNeighbor (FEType type, unsigned int dim) const |
Get a reference to a pointer that will contain the current "neighbor" FE. More... | |
const FEVectorBase *const & | getVectorFE (FEType type, unsigned int dim) const |
Get a reference to a pointer that will contain the current volume FEVector. More... | |
const FEVectorBase *const & | getVectorFENeighbor (FEType type, unsigned int dim) const |
GetVector a reference to a pointer that will contain the current 'neighbor' FE. More... | |
const FEVectorBase *const & | getVectorFEFace (FEType type, unsigned int dim) const |
GetVector a reference to a pointer that will contain the current "face" FE. More... | |
const FEVectorBase *const & | getVectorFEFaceNeighbor (FEType type, unsigned int dim) const |
GetVector a reference to a pointer that will contain the current "neighbor" FE. More... | |
const QBase *const & | qRule () const |
Returns the reference to the current quadrature being used. More... | |
QBase *const & | writeableQRule () |
Returns the reference to the current quadrature being used. More... | |
const MooseArray< Point > & | qPoints () const |
Returns the reference to the quadrature points. More... | |
const std::vector< Point > & | qPointsMortar () const |
Returns the reference to the mortar segment element quadrature points. More... | |
const MooseArray< Point > & | physicalPoints () const |
The current points in physical space where we have reinited through reinitAtPhysical() More... | |
const MooseArray< Real > & | JxW () const |
Returns the reference to the transformed jacobian weights. More... | |
const MooseArray< ADReal > & | adJxW () const |
const MooseArray< ADReal > & | adJxWFace () const |
const MooseArray< ADReal > & | adCurvatures () const |
const MooseArray< Real > & | coordTransformation () const |
Returns the reference to the coordinate transformation coefficients. More... | |
const MooseArray< Real > & | mortarCoordTransformation () const |
Returns the reference to the coordinate transformation coefficients on the mortar segment mesh. More... | |
const MooseArray< ADReal > & | adCoordTransformation () const |
Returns the reference to the AD version of the coordinate transformation coefficients. More... | |
const Moose::CoordinateSystemType & | coordSystem () |
Get the coordinate system type. More... | |
const QBase *const & | qRuleFace () const |
Returns the reference to the current quadrature being used on a current face. More... | |
QBase *const & | writeableQRuleFace () |
Returns the reference to the current quadrature being used on a current face. More... | |
const MooseArray< Point > & | qPointsFace () const |
Returns the reference to the current quadrature being used. More... | |
const MooseArray< Real > & | JxWFace () const |
Returns the reference to the transformed jacobian weights on a current face. More... | |
const MooseArray< Point > & | normals () const |
Returns the array of normals for quadrature points on a current side. More... | |
const std::vector< Eigen::Map< RealDIMValue > > & | mappedNormals () const |
const MooseArray< std::vector< Point > > & | tangents () const |
Returns the array of tangents for quadrature points on a current side. More... | |
unsigned int | numExtraElemIntegers () const |
Number of extra element integers Assembly tracked. More... | |
const dof_id_type & | extraElemID (unsigned int id) const |
Returns an integer ID of the current element given the index associated with the integer. More... | |
const dof_id_type & | extraElemIDNeighbor (unsigned int id) const |
Returns an integer ID of the current element given the index associated with the integer. More... | |
const MooseArray< ADPoint > & | adNormals () const |
const MooseArray< ADPoint > & | adQPoints () const |
const MooseArray< ADPoint > & | adQPointsFace () const |
template<bool is_ad> | |
const MooseArray< MooseADWrapper< Point, is_ad > > & | genericQPoints () const |
const Elem *const & | elem () const |
Return the current element. More... | |
const SubdomainID & | currentSubdomainID () const |
Return the current subdomain ID. More... | |
void | setCurrentSubdomainID (SubdomainID i) |
set the current subdomain ID More... | |
const BoundaryID & | currentBoundaryID () const |
Return the current boundary ID. More... | |
void | setCurrentBoundaryID (BoundaryID i) |
set the current boundary ID More... | |
const Real & | elemVolume () |
Returns the reference to the current element volume. More... | |
const unsigned int & | side () const |
Returns the current side. More... | |
const unsigned int & | neighborSide () const |
Returns the current neighboring side. More... | |
const Elem *& | sideElem () |
Returns the side element. More... | |
const Real & | sideElemVolume () |
Returns the reference to the volume of current side element. More... | |
const Elem *const & | neighbor () const |
Return the neighbor element. More... | |
const Elem *const & | lowerDElem () const |
Return the lower dimensional element. More... | |
const Elem *const & | neighborLowerDElem () const |
Return the neighboring lower dimensional element. More... | |
const Real & | lowerDElemVolume () const |
const Real & | neighborLowerDElemVolume () const |
const SubdomainID & | currentNeighborSubdomainID () const |
Return the current subdomain ID. More... | |
void | setCurrentNeighborSubdomainID (SubdomainID i) |
set the current subdomain ID More... | |
const Real & | neighborVolume () |
Returns the reference to the current neighbor volume. More... | |
const QBase *const & | qRuleNeighbor () const |
Returns the reference to the current quadrature being used on a current neighbor. More... | |
QBase *const & | writeableQRuleNeighbor () |
Returns the reference to the current quadrature being used on a current neighbor. More... | |
const MooseArray< Real > & | JxWNeighbor () const |
Returns the reference to the transformed jacobian weights on a current face. More... | |
const MooseArray< Point > & | qPointsFaceNeighbor () const |
Returns the reference to the current quadrature points being used on the neighbor face. More... | |
const Node *const & | node () const |
Returns the reference to the node. More... | |
const Node *const & | nodeNeighbor () const |
Returns the reference to the neighboring node. More... | |
void | createQRules (QuadratureType type, Order order, Order volume_order, Order face_order, SubdomainID block, bool allow_negative_qweights=true) |
Creates block-specific volume, face and arbitrary qrules based on the orders and the flag of whether or not to allow negative qweights passed in. More... | |
void | bumpVolumeQRuleOrder (Order volume_order, SubdomainID block) |
Increases the element/volume quadrature order for the specified mesh block if and only if the current volume quadrature order is lower. More... | |
void | bumpAllQRuleOrder (Order order, SubdomainID block) |
Increases the element/volume and face/area quadrature orders for the specified mesh block if and only if the current volume or face quadrature order is lower. More... | |
void | setVolumeQRule (QBase *qrule, unsigned int dim) |
Set the qrule to be used for volume integration. More... | |
void | setFaceQRule (QBase *qrule, unsigned int dim) |
Set the qrule to be used for face integration. More... | |
void | setMortarQRule (Order order) |
Specifies a custom qrule for integration on mortar segment mesh. More... | |
void | activateDual () |
Indicates that dual shape functions are used for mortar constraint. More... | |
bool | needDual () const |
Indicates whether dual shape functions are used (computation is now repeated on each element so expense of computing dual shape functions is no longer trivial) More... | |
void | clearCachedQRules () |
Set the cached quadrature rules to nullptr. More... | |
void | setNeighborQRule (QBase *qrule, unsigned int dim) |
Set the qrule to be used for neighbor integration. More... | |
void | reinit (const Elem *elem) |
Reinitialize objects (JxW, q_points, ...) for an elements. More... | |
void | setVolumeQRule (const Elem *elem) |
Set the volumetric quadrature rule based on the provided element. More... | |
void | reinitElemFaceRef (const Elem *elem, unsigned int elem_side, Real tolerance, const std::vector< Point > *const pts=nullptr, const std::vector< Real > *const weights=nullptr) |
Reinitialize FE data for the given element on the given side, optionally with a given set of reference points. More... | |
void | reinitNeighborFaceRef (const Elem *neighbor_elem, unsigned int neighbor_side, Real tolerance, const std::vector< Point > *const pts, const std::vector< Real > *const weights=nullptr) |
Reinitialize FE data for the given neighbor_element on the given side with a given set of reference points. More... | |
void | reinitDual (const Elem *elem, const std::vector< Point > &pts, const std::vector< Real > &JxW) |
Reintialize dual basis coefficients based on a customized quadrature rule. More... | |
void | reinitLowerDElem (const Elem *elem, const std::vector< Point > *const pts=nullptr, const std::vector< Real > *const weights=nullptr) |
Reinitialize FE data for a lower dimenesional element with a given set of reference points. More... | |
void | reinitNeighborLowerDElem (const Elem *elem) |
reinitialize a neighboring lower dimensional element More... | |
void | reinitMortarElem (const Elem *elem) |
reinitialize a mortar segment mesh element in order to get a proper JxW More... | |
const std::vector< Real > & | jxWMortar () const |
Returns a reference to JxW for mortar segment elements. More... | |
const QBase *const & | qRuleMortar () const |
Returns a reference to the quadrature rule for the mortar segments. More... | |
void | reinitAtPhysical (const Elem *elem, const std::vector< Point > &physical_points) |
Reinitialize the assembly data at specific physical point in the given element. More... | |
void | reinit (const Elem *elem, const std::vector< Point > &reference_points) |
Reinitialize the assembly data at specific points in the reference element. More... | |
void | setFaceQRule (const Elem *const elem, const unsigned int side) |
Set the face quadrature rule based on the provided element and side. More... | |
void | reinit (const Elem *elem, unsigned int side) |
Reinitialize the assembly data on an side of an element. More... | |
void | reinit (const Elem *elem, unsigned int side, const std::vector< Point > &reference_points) |
Reinitialize the assembly data on the side of a element at the custom reference points. More... | |
void | reinitFVFace (const FaceInfo &fi) |
void | reinitElemAndNeighbor (const Elem *elem, unsigned int side, const Elem *neighbor, unsigned int neighbor_side, const std::vector< Point > *neighbor_reference_points=nullptr) |
Reinitialize an element and its neighbor along a particular side. More... | |
void | reinitNeighborAtPhysical (const Elem *neighbor, unsigned int neighbor_side, const std::vector< Point > &physical_points) |
Reinitializes the neighbor at the physical coordinates on neighbor side given. More... | |
void | reinitNeighborAtPhysical (const Elem *neighbor, const std::vector< Point > &physical_points) |
Reinitializes the neighbor at the physical coordinates within element given. More... | |
void | reinitNeighbor (const Elem *neighbor, const std::vector< Point > &reference_points) |
Reinitializes the neighbor side using reference coordinates. More... | |
void | reinit (const Node *node) |
Reinitialize assembly data for a node. More... | |
void | init (const CouplingMatrix *cm) |
Initialize the Assembly object and set the CouplingMatrix for use throughout. More... | |
void | initNonlocalCoupling () |
Create pair of variables requiring nonlocal jacobian contributions. More... | |
void | prepareJacobianBlock () |
Sizes and zeroes the Jacobian blocks used for the current element. More... | |
void | prepareResidual () |
Sizes and zeroes the residual for the current element. More... | |
void | prepare () |
void | prepareNonlocal () |
void | prepareVariable (MooseVariableFieldBase *var) |
Used for preparing the dense residual and jacobian blocks for one particular variable. More... | |
void | prepareVariableNonlocal (MooseVariableFieldBase *var) |
void | prepareNeighbor () |
void | prepareLowerD () |
Prepare the Jacobians and residuals for a lower dimensional element. More... | |
void | prepareBlock (unsigned int ivar, unsigned jvar, const std::vector< dof_id_type > &dof_indices) |
void | prepareBlockNonlocal (unsigned int ivar, unsigned jvar, const std::vector< dof_id_type > &idof_indices, const std::vector< dof_id_type > &jdof_indices) |
void | prepareScalar () |
void | prepareOffDiagScalar () |
template<typename T > | |
void | copyShapes (MooseVariableField< T > &v) |
void | copyShapes (unsigned int var) |
template<typename T > | |
void | copyFaceShapes (MooseVariableField< T > &v) |
void | copyFaceShapes (unsigned int var) |
template<typename T > | |
void | copyNeighborShapes (MooseVariableField< T > &v) |
void | copyNeighborShapes (unsigned int var) |
void | addResidual (GlobalDataKey, const std::vector< VectorTag > &vector_tags) |
Add local residuals of all field variables for a set of tags onto the global residual vectors associated with the tags. More... | |
void | addResidualNeighbor (GlobalDataKey, const std::vector< VectorTag > &vector_tags) |
Add local neighbor residuals of all field variables for a set of tags onto the global residual vectors associated with the tags. More... | |
void | addResidualLower (GlobalDataKey, const std::vector< VectorTag > &vector_tags) |
Add local neighbor residuals of all field variables for a set of tags onto the global residual vectors associated with the tags. More... | |
void | addResidualScalar (GlobalDataKey, const std::vector< VectorTag > &vector_tags) |
Add residuals of all scalar variables for a set of tags onto the global residual vectors associated with the tags. More... | |
void | cacheResidual (GlobalDataKey, const std::vector< VectorTag > &tags) |
Takes the values that are currently in _sub_Re of all field variables and appends them to the cached values. More... | |
void | cacheResidualNeighbor (GlobalDataKey, const std::vector< VectorTag > &tags) |
Takes the values that are currently in _sub_Rn of all field variables and appends them to the cached values. More... | |
void | cacheResidualLower (GlobalDataKey, const std::vector< VectorTag > &tags) |
Takes the values that are currently in _sub_Rl and appends them to the cached values. More... | |
void | addCachedResiduals (GlobalDataKey, const std::vector< VectorTag > &tags) |
Pushes all cached residuals to the global residual vectors associated with each tag. More... | |
void | clearCachedResiduals (GlobalDataKey) |
Clears all of the residuals in _cached_residual_rows and _cached_residual_values. More... | |
void | addCachedResidualDirectly (NumericVector< Number > &residual, GlobalDataKey, const VectorTag &vector_tag) |
Adds the values that have been cached by calling cacheResidual(), cacheResidualNeighbor(), and/or cacheResidualLower() to a user-defined residual (that is, not necessarily the vector that vector_tag points to) More... | |
void | setResidual (NumericVector< Number > &residual, GlobalDataKey, const VectorTag &vector_tag) |
Sets local residuals of all field variables to the global residual vector for a tag. More... | |
void | setResidualNeighbor (NumericVector< Number > &residual, GlobalDataKey, const VectorTag &vector_tag) |
Sets local neighbor residuals of all field variables to the global residual vector for a tag. More... | |
void | addJacobian (GlobalDataKey) |
Adds all local Jacobian to the global Jacobian matrices. More... | |
void | addJacobianNonlocal (GlobalDataKey) |
Adds non-local Jacobian to the global Jacobian matrices. More... | |
void | addJacobianNeighbor (GlobalDataKey) |
Add ElementNeighbor, NeighborElement, and NeighborNeighbor portions of the Jacobian for compute objects like DGKernels. More... | |
void | addJacobianScalar (GlobalDataKey) |
Add Jacobians for pairs of scalar variables into the global Jacobian matrices. More... | |
void | addJacobianOffDiagScalar (unsigned int ivar, GlobalDataKey) |
Add Jacobians for a scalar variables with all other field variables into the global Jacobian matrices. More... | |
void | addJacobianBlock (SparseMatrix< Number > &jacobian, unsigned int ivar, unsigned int jvar, const DofMap &dof_map, std::vector< dof_id_type > &dof_indices, GlobalDataKey, TagID tag) |
Adds element matrix for ivar rows and jvar columns to the global Jacobian matrix. More... | |
void | addJacobianBlockTags (SparseMatrix< Number > &jacobian, unsigned int ivar, unsigned int jvar, const DofMap &dof_map, std::vector< dof_id_type > &dof_indices, GlobalDataKey, const std::set< TagID > &tags) |
Add element matrix for ivar rows and jvar columns to the global Jacobian matrix for given tags. More... | |
void | addJacobianBlockNonlocal (SparseMatrix< Number > &jacobian, unsigned int ivar, unsigned int jvar, const DofMap &dof_map, const std::vector< dof_id_type > &idof_indices, const std::vector< dof_id_type > &jdof_indices, GlobalDataKey, TagID tag) |
Adds non-local element matrix for ivar rows and jvar columns to the global Jacobian matrix. More... | |
void | addJacobianBlockNonlocalTags (SparseMatrix< Number > &jacobian, unsigned int ivar, unsigned int jvar, const DofMap &dof_map, const std::vector< dof_id_type > &idof_indices, const std::vector< dof_id_type > &jdof_indices, GlobalDataKey, const std::set< TagID > &tags) |
Adds non-local element matrix for ivar rows and jvar columns to the global Jacobian matrix. More... | |
void | addJacobianNeighborLowerD (GlobalDataKey) |
Add all portions of the Jacobian except PrimaryPrimary, e.g. More... | |
void | addJacobianLowerD (GlobalDataKey) |
Add portions of the Jacobian of LowerLower, LowerSecondary, and SecondaryLower for boundary conditions. More... | |
void | cacheJacobianMortar (GlobalDataKey) |
Cache all portions of the Jacobian, e.g. More... | |
void | addJacobianNeighbor (SparseMatrix< Number > &jacobian, unsigned int ivar, unsigned int jvar, const DofMap &dof_map, std::vector< dof_id_type > &dof_indices, std::vector< dof_id_type > &neighbor_dof_indices, GlobalDataKey, TagID tag) |
Adds three neighboring element matrices for ivar rows and jvar columns to the global Jacobian matrix. More... | |
void | addJacobianNeighborTags (SparseMatrix< Number > &jacobian, unsigned int ivar, unsigned int jvar, const DofMap &dof_map, std::vector< dof_id_type > &dof_indices, std::vector< dof_id_type > &neighbor_dof_indices, GlobalDataKey, const std::set< TagID > &tags) |
Adds three neighboring element matrices for ivar rows and jvar columns to the global Jacobian matrix. More... | |
void | cacheJacobian (GlobalDataKey) |
Takes the values that are currently in _sub_Kee and appends them to the cached values. More... | |
void | cacheJacobianNonlocal (GlobalDataKey) |
Takes the values that are currently in _sub_Keg and appends them to the cached values. More... | |
void | cacheJacobianNeighbor (GlobalDataKey) |
Takes the values that are currently in the neighbor Dense Matrices and appends them to the cached values. More... | |
void | addCachedJacobian (GlobalDataKey) |
Adds the values that have been cached by calling cacheJacobian() and or cacheJacobianNeighbor() to the jacobian matrix. More... | |
void | setCachedJacobian (GlobalDataKey) |
Sets previously-cached Jacobian values via SparseMatrix::set() calls. More... | |
void | zeroCachedJacobian (GlobalDataKey) |
Zero out previously-cached Jacobian rows. More... | |
DenseVector< Number > & | residualBlock (unsigned int var_num, LocalDataKey, TagID tag_id) |
Get local residual block for a variable and a tag. More... | |
DenseVector< Number > & | residualBlockNeighbor (unsigned int var_num, LocalDataKey, TagID tag_id) |
Get local neighbor residual block for a variable and a tag. More... | |
DenseVector< Number > & | residualBlockLower (unsigned int var_num, LocalDataKey, TagID tag_id) |
Get residual block for lower. More... | |
DenseMatrix< Number > & | jacobianBlock (unsigned int ivar, unsigned int jvar, LocalDataKey, TagID tag) |
Get local Jacobian block for a pair of variables and a tag. More... | |
DenseMatrix< Number > & | jacobianBlockNonlocal (unsigned int ivar, unsigned int jvar, LocalDataKey, TagID tag) |
Get local Jacobian block from non-local contribution for a pair of variables and a tag. More... | |
DenseMatrix< Number > & | jacobianBlockNeighbor (Moose::DGJacobianType type, unsigned int ivar, unsigned int jvar, LocalDataKey, TagID tag) |
Get local Jacobian block of a DG Jacobian type for a pair of variables and a tag. More... | |
DenseMatrix< Number > & | jacobianBlockMortar (Moose::ConstraintJacobianType type, unsigned int ivar, unsigned int jvar, LocalDataKey, TagID tag) |
Returns the jacobian block for the given mortar Jacobian type. More... | |
void | cacheResidualNodes (const DenseVector< Number > &res, const std::vector< dof_id_type > &dof_index, LocalDataKey, TagID tag) |
Lets an external class cache residual at a set of nodes. More... | |
void | cacheJacobian (numeric_index_type i, numeric_index_type j, Real value, LocalDataKey, TagID tag) |
Caches the Jacobian entry 'value', to eventually be added/set in the (i,j) location of the matrix. More... | |
void | cacheJacobian (numeric_index_type i, numeric_index_type j, Real value, LocalDataKey, const std::set< TagID > &tags) |
Caches the Jacobian entry 'value', to eventually be added/set in the (i,j) location of the matrices in corresponding to tags . More... | |
void | cacheJacobianBlock (DenseMatrix< Number > &jac_block, const std::vector< dof_id_type > &idof_indices, const std::vector< dof_id_type > &jdof_indices, Real scaling_factor, LocalDataKey, TagID tag) |
Cache a local Jacobian block with the provided rows (idof_indices ) and columns (jdof_indices ) for eventual accumulation into the global matrix specified by tag . More... | |
template<typename Residuals , typename Indices > | |
void | cacheResiduals (const Residuals &residuals, const Indices &row_indices, Real scaling_factor, LocalDataKey, const std::set< TagID > &vector_tags) |
Process the supplied residual values. More... | |
template<typename Residuals , typename Indices > | |
void | cacheJacobian (const Residuals &residuals, const Indices &row_indices, Real scaling_factor, LocalDataKey, const std::set< TagID > &matrix_tags) |
Process the derivatives() data of a vector of ADReals . More... | |
template<typename Residuals , typename Indices > | |
void | cacheResidualsWithoutConstraints (const Residuals &residuals, const Indices &row_indices, Real scaling_factor, LocalDataKey, const std::set< TagID > &vector_tags) |
Process the supplied residual values. More... | |
template<typename Residuals , typename Indices > | |
void | cacheJacobianWithoutConstraints (const Residuals &residuals, const Indices &row_indices, Real scaling_factor, LocalDataKey, const std::set< TagID > &matrix_tags) |
Process the derivatives() data of a vector of ADReals . More... | |
std::vector< std::pair< MooseVariableFieldBase *, MooseVariableFieldBase * > > & | couplingEntries () |
const std::vector< std::pair< MooseVariableFieldBase *, MooseVariableFieldBase * > > & | couplingEntries () const |
std::vector< std::pair< MooseVariableFieldBase *, MooseVariableFieldBase * > > & | nonlocalCouplingEntries () |
const std::vector< std::pair< MooseVariableFieldBase *, MooseVariableScalar * > > & | fieldScalarCouplingEntries () const |
const std::vector< std::pair< MooseVariableScalar *, MooseVariableFieldBase * > > & | scalarFieldCouplingEntries () const |
const VariablePhiValue & | phi () const |
template<typename T > | |
const ADTemplateVariablePhiGradient< T > & | adGradPhi (const MooseVariableFE< T > &v) const |
const VariablePhiValue & | phi (const MooseVariableField< Real > &) const |
const VariablePhiGradient & | gradPhi () const |
const VariablePhiGradient & | gradPhi (const MooseVariableField< Real > &) const |
const VariablePhiSecond & | secondPhi () const |
const VariablePhiSecond & | secondPhi (const MooseVariableField< Real > &) const |
const VariablePhiValue & | phiFace () const |
const VariablePhiValue & | phiFace (const MooseVariableField< Real > &) const |
const VariablePhiGradient & | gradPhiFace () const |
const VariablePhiGradient & | gradPhiFace (const MooseVariableField< Real > &) const |
const VariablePhiSecond & | secondPhiFace (const MooseVariableField< Real > &) const |
const VariablePhiValue & | phiNeighbor (const MooseVariableField< Real > &) const |
const VariablePhiGradient & | gradPhiNeighbor (const MooseVariableField< Real > &) const |
const VariablePhiSecond & | secondPhiNeighbor (const MooseVariableField< Real > &) const |
const VariablePhiValue & | phiFaceNeighbor (const MooseVariableField< Real > &) const |
const VariablePhiGradient & | gradPhiFaceNeighbor (const MooseVariableField< Real > &) const |
const VariablePhiSecond & | secondPhiFaceNeighbor (const MooseVariableField< Real > &) const |
const VectorVariablePhiValue & | phi (const MooseVariableField< RealVectorValue > &) const |
const VectorVariablePhiGradient & | gradPhi (const MooseVariableField< RealVectorValue > &) const |
const VectorVariablePhiSecond & | secondPhi (const MooseVariableField< RealVectorValue > &) const |
const VectorVariablePhiCurl & | curlPhi (const MooseVariableField< RealVectorValue > &) const |
const VectorVariablePhiDivergence & | divPhi (const MooseVariableField< RealVectorValue > &) const |
const VectorVariablePhiValue & | phiFace (const MooseVariableField< RealVectorValue > &) const |
const VectorVariablePhiGradient & | gradPhiFace (const MooseVariableField< RealVectorValue > &) const |
const VectorVariablePhiSecond & | secondPhiFace (const MooseVariableField< RealVectorValue > &) const |
const VectorVariablePhiCurl & | curlPhiFace (const MooseVariableField< RealVectorValue > &) const |
const VectorVariablePhiDivergence & | divPhiFace (const MooseVariableField< RealVectorValue > &) const |
const VectorVariablePhiValue & | phiNeighbor (const MooseVariableField< RealVectorValue > &) const |
const VectorVariablePhiGradient & | gradPhiNeighbor (const MooseVariableField< RealVectorValue > &) const |
const VectorVariablePhiSecond & | secondPhiNeighbor (const MooseVariableField< RealVectorValue > &) const |
const VectorVariablePhiCurl & | curlPhiNeighbor (const MooseVariableField< RealVectorValue > &) const |
const VectorVariablePhiDivergence & | divPhiNeighbor (const MooseVariableField< RealVectorValue > &) const |
const VectorVariablePhiValue & | phiFaceNeighbor (const MooseVariableField< RealVectorValue > &) const |
const VectorVariablePhiGradient & | gradPhiFaceNeighbor (const MooseVariableField< RealVectorValue > &) const |
const VectorVariablePhiSecond & | secondPhiFaceNeighbor (const MooseVariableField< RealVectorValue > &) const |
const VectorVariablePhiCurl & | curlPhiFaceNeighbor (const MooseVariableField< RealVectorValue > &) const |
const VectorVariablePhiDivergence & | divPhiFaceNeighbor (const MooseVariableField< RealVectorValue > &) const |
VariablePhiValue & | phi (const MooseVariableField< Real > &) |
VariablePhiGradient & | gradPhi (const MooseVariableField< Real > &) |
VariablePhiSecond & | secondPhi (const MooseVariableField< Real > &) |
VariablePhiValue & | phiFace (const MooseVariableField< Real > &) |
VariablePhiGradient & | gradPhiFace (const MooseVariableField< Real > &) |
VariablePhiSecond & | secondPhiFace (const MooseVariableField< Real > &) |
VariablePhiValue & | phiNeighbor (const MooseVariableField< Real > &) |
VariablePhiGradient & | gradPhiNeighbor (const MooseVariableField< Real > &) |
VariablePhiSecond & | secondPhiNeighbor (const MooseVariableField< Real > &) |
VariablePhiValue & | phiFaceNeighbor (const MooseVariableField< Real > &) |
VariablePhiGradient & | gradPhiFaceNeighbor (const MooseVariableField< Real > &) |
VariablePhiSecond & | secondPhiFaceNeighbor (const MooseVariableField< Real > &) |
VectorVariablePhiValue & | phi (const MooseVariableField< RealVectorValue > &) |
VectorVariablePhiGradient & | gradPhi (const MooseVariableField< RealVectorValue > &) |
VectorVariablePhiSecond & | secondPhi (const MooseVariableField< RealVectorValue > &) |
VectorVariablePhiCurl & | curlPhi (const MooseVariableField< RealVectorValue > &) |
VectorVariablePhiDivergence & | divPhi (const MooseVariableField< RealVectorValue > &) |
VectorVariablePhiValue & | phiFace (const MooseVariableField< RealVectorValue > &) |
VectorVariablePhiGradient & | gradPhiFace (const MooseVariableField< RealVectorValue > &) |
VectorVariablePhiSecond & | secondPhiFace (const MooseVariableField< RealVectorValue > &) |
VectorVariablePhiCurl & | curlPhiFace (const MooseVariableField< RealVectorValue > &) |
VectorVariablePhiDivergence & | divPhiFace (const MooseVariableField< RealVectorValue > &) |
VectorVariablePhiValue & | phiNeighbor (const MooseVariableField< RealVectorValue > &) |
VectorVariablePhiGradient & | gradPhiNeighbor (const MooseVariableField< RealVectorValue > &) |
VectorVariablePhiSecond & | secondPhiNeighbor (const MooseVariableField< RealVectorValue > &) |
VectorVariablePhiCurl & | curlPhiNeighbor (const MooseVariableField< RealVectorValue > &) |
VectorVariablePhiDivergence & | divPhiNeighbor (const MooseVariableField< RealVectorValue > &) |
VectorVariablePhiValue & | phiFaceNeighbor (const MooseVariableField< RealVectorValue > &) |
VectorVariablePhiGradient & | gradPhiFaceNeighbor (const MooseVariableField< RealVectorValue > &) |
VectorVariablePhiSecond & | secondPhiFaceNeighbor (const MooseVariableField< RealVectorValue > &) |
VectorVariablePhiCurl & | curlPhiFaceNeighbor (const MooseVariableField< RealVectorValue > &) |
VectorVariablePhiDivergence & | divPhiFaceNeighbor (const MooseVariableField< RealVectorValue > &) |
VariablePhiValue & | phi (const MooseVariableField< RealEigenVector > &) |
VariablePhiGradient & | gradPhi (const MooseVariableField< RealEigenVector > &) |
VariablePhiSecond & | secondPhi (const MooseVariableField< RealEigenVector > &) |
VariablePhiValue & | phiFace (const MooseVariableField< RealEigenVector > &) |
VariablePhiGradient & | gradPhiFace (const MooseVariableField< RealEigenVector > &) |
VariablePhiSecond & | secondPhiFace (const MooseVariableField< RealEigenVector > &) |
VariablePhiValue & | phiNeighbor (const MooseVariableField< RealEigenVector > &) |
VariablePhiGradient & | gradPhiNeighbor (const MooseVariableField< RealEigenVector > &) |
VariablePhiSecond & | secondPhiNeighbor (const MooseVariableField< RealEigenVector > &) |
VariablePhiValue & | phiFaceNeighbor (const MooseVariableField< RealEigenVector > &) |
VariablePhiGradient & | gradPhiFaceNeighbor (const MooseVariableField< RealEigenVector > &) |
VariablePhiSecond & | secondPhiFaceNeighbor (const MooseVariableField< RealEigenVector > &) |
template<typename OutputType > | |
const OutputTools< OutputType >::VariablePhiValue & | fePhi (FEType type) const |
template<typename OutputType > | |
const OutputTools< OutputType >::VariablePhiGradient & | feGradPhi (FEType type) const |
template<typename OutputType > | |
const ADTemplateVariablePhiGradient< OutputType > & | feADGradPhi (FEType type) const |
template<typename OutputType > | |
const OutputTools< OutputType >::VariablePhiSecond & | feSecondPhi (FEType type) const |
template<typename OutputType > | |
const OutputTools< OutputType >::VariablePhiValue & | fePhiLower (FEType type) const |
template<typename OutputType > | |
const OutputTools< OutputType >::VariablePhiValue & | feDualPhiLower (FEType type) const |
template<typename OutputType > | |
const OutputTools< OutputType >::VariablePhiGradient & | feGradPhiLower (FEType type) const |
template<typename OutputType > | |
const OutputTools< OutputType >::VariablePhiGradient & | feGradDualPhiLower (FEType type) const |
template<typename OutputType > | |
const OutputTools< OutputType >::VariablePhiValue & | fePhiFace (FEType type) const |
template<typename OutputType > | |
const OutputTools< OutputType >::VariablePhiGradient & | feGradPhiFace (FEType type) const |
template<typename OutputType > | |
const ADTemplateVariablePhiGradient< OutputType > & | feADGradPhiFace (FEType type) const |
template<typename OutputType > | |
const OutputTools< OutputType >::VariablePhiSecond & | feSecondPhiFace (FEType type) const |
template<typename OutputType > | |
const OutputTools< OutputType >::VariablePhiValue & | fePhiNeighbor (FEType type) const |
template<typename OutputType > | |
const OutputTools< OutputType >::VariablePhiGradient & | feGradPhiNeighbor (FEType type) const |
template<typename OutputType > | |
const OutputTools< OutputType >::VariablePhiSecond & | feSecondPhiNeighbor (FEType type) const |
template<typename OutputType > | |
const OutputTools< OutputType >::VariablePhiValue & | fePhiFaceNeighbor (FEType type) const |
template<typename OutputType > | |
const OutputTools< OutputType >::VariablePhiGradient & | feGradPhiFaceNeighbor (FEType type) const |
template<typename OutputType > | |
const OutputTools< OutputType >::VariablePhiSecond & | feSecondPhiFaceNeighbor (FEType type) const |
template<typename OutputType > | |
const OutputTools< OutputType >::VariablePhiCurl & | feCurlPhi (FEType type) const |
template<typename OutputType > | |
const OutputTools< OutputType >::VariablePhiCurl & | feCurlPhiFace (FEType type) const |
template<typename OutputType > | |
const OutputTools< OutputType >::VariablePhiCurl & | feCurlPhiNeighbor (FEType type) const |
template<typename OutputType > | |
const OutputTools< OutputType >::VariablePhiCurl & | feCurlPhiFaceNeighbor (FEType type) const |
template<typename OutputType > | |
const OutputTools< OutputType >::VariablePhiDivergence & | feDivPhi (FEType type) const |
template<typename OutputType > | |
const OutputTools< OutputType >::VariablePhiDivergence & | feDivPhiFace (FEType type) const |
template<typename OutputType > | |
const OutputTools< OutputType >::VariablePhiDivergence & | feDivPhiNeighbor (FEType type) const |
template<typename OutputType > | |
const OutputTools< OutputType >::VariablePhiDivergence & | feDivPhiFaceNeighbor (FEType type) const |
Real | elementVolume (const Elem *elem) const |
On-demand computation of volume element accounting for RZ/RSpherical. More... | |
void | setXFEM (std::shared_ptr< XFEMInterface > xfem) |
Set the pointer to the XFEM controller object. More... | |
void | assignDisplacements (std::vector< std::pair< unsigned int, unsigned short >> &&disp_numbers_and_directions) |
Assign the displacement numbers and directions. More... | |
void | saveLocalArrayResidual (DenseVector< Number > &re, unsigned int i, unsigned int ntest, const RealEigenVector &v) const |
Helper function for assembling residual contriubutions on local quadrature points for an array kernel, bc, etc. More... | |
void | saveDiagLocalArrayJacobian (DenseMatrix< Number > &ke, unsigned int i, unsigned int ntest, unsigned int j, unsigned int nphi, unsigned int ivar, const RealEigenVector &v) const |
Helper function for assembling diagonal Jacobian contriubutions on local quadrature points for an array kernel, bc, etc. More... | |
void | saveFullLocalArrayJacobian (DenseMatrix< Number > &ke, unsigned int i, unsigned int ntest, unsigned int j, unsigned int nphi, unsigned int ivar, unsigned int jvar, const RealEigenMatrix &v) const |
Helper function for assembling full Jacobian contriubutions on local quadrature points for an array kernel, bc, etc. More... | |
DenseVector< Real > | getJacobianDiagonal (DenseMatrix< Number > &ke) |
const QBase * | attachQRuleElem (unsigned int dim, FEBase &fe) |
Attaches the current elem/volume quadrature rule to the given fe. More... | |
const QBase * | attachQRuleFace (unsigned int dim, FEBase &fe) |
Attaches the current face/area quadrature rule to the given fe. More... | |
void | hasScalingVector () |
signals this object that a vector containing variable scaling factors should be used when doing residual and matrix assembly More... | |
void | modifyArbitraryWeights (const std::vector< Real > &weights) |
Modify the weights when using the arbitrary quadrature rule. More... | |
bool | computingResidual () const |
bool | computingJacobian () const |
bool | computingResidualAndJacobian () const |
const Elem *const & | msmElem () const |
void | havePRefinement (const std::vector< FEFamily > &disable_p_refinement_for_families) |
Indicate that we have p-refinement. More... | |
void | setCurrentLowerDElem (const Elem *const lower_d_elem) |
Set the current lower dimensional element. More... | |
template<> | |
const ADTemplateVariablePhiGradient< RealVectorValue > & | feADGradPhi (FEType type) const |
template<> | |
const ADTemplateVariablePhiGradient< RealVectorValue > & | feADGradPhiFace (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiValue & | fePhi (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiGradient & | feGradPhi (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiSecond & | feSecondPhi (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiValue & | fePhiLower (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiValue & | feDualPhiLower (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiGradient & | feGradPhiLower (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiGradient & | feGradDualPhiLower (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiValue & | fePhiFace (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiGradient & | feGradPhiFace (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiSecond & | feSecondPhiFace (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiValue & | fePhiNeighbor (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiGradient & | feGradPhiNeighbor (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiSecond & | feSecondPhiNeighbor (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiValue & | fePhiFaceNeighbor (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiGradient & | feGradPhiFaceNeighbor (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiSecond & | feSecondPhiFaceNeighbor (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiCurl & | feCurlPhi (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiCurl & | feCurlPhiFace (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiCurl & | feCurlPhiNeighbor (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiCurl & | feCurlPhiFaceNeighbor (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiDivergence & | feDivPhi (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiDivergence & | feDivPhiFace (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiDivergence & | feDivPhiNeighbor (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiDivergence & | feDivPhiFaceNeighbor (FEType type) const |
template<> | |
const ADTemplateVariablePhiGradient< RealVectorValue > & | adGradPhi (const MooseVariableFE< RealVectorValue > &v) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiValue & | fePhi (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiGradient & | feGradPhi (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiSecond & | feSecondPhi (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiValue & | fePhiLower (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiValue & | feDualPhiLower (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiGradient & | feGradPhiLower (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiGradient & | feGradDualPhiLower (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiValue & | fePhiFace (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiGradient & | feGradPhiFace (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiSecond & | feSecondPhiFace (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiValue & | fePhiNeighbor (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiGradient & | feGradPhiNeighbor (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiSecond & | feSecondPhiNeighbor (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiValue & | fePhiFaceNeighbor (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiGradient & | feGradPhiFaceNeighbor (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiSecond & | feSecondPhiFaceNeighbor (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiCurl & | feCurlPhi (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiCurl & | feCurlPhiFace (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiCurl & | feCurlPhiNeighbor (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiCurl & | feCurlPhiFaceNeighbor (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiDivergence & | feDivPhi (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiDivergence & | feDivPhiFace (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiDivergence & | feDivPhiNeighbor (FEType type) const |
template<> | |
const OutputTools< VectorValue< Real > >::VariablePhiDivergence & | feDivPhiFaceNeighbor (FEType type) const |
template<> | |
const MooseArray< MooseADWrapper< Point, false > > & | genericQPoints () const |
template<> | |
const MooseArray< MooseADWrapper< Point, true > > & | genericQPoints () const |
Static Public Member Functions | |
template<typename T > | |
static const T *const & | constify_ref (T *const &inref) |
Workaround for C++ compilers thinking they can't just cast a const-reference-to-pointer to const-reference-to-const-pointer. More... | |
Protected Attributes | |
const Elem * | _current_elem |
The current "element" we are currently on. More... | |
SubdomainID | _current_subdomain_id |
The current subdomain ID. More... | |
BoundaryID | _current_boundary_id |
The current boundary ID. More... | |
Real | _current_elem_volume |
Volume of the current element. More... | |
unsigned int | _current_side |
The current side of the selected element (valid only when working with sides) More... | |
const Elem * | _current_side_elem |
The current "element" making up the side we are currently on. More... | |
Real | _current_side_volume |
Volume of the current side element. More... | |
const Elem * | _current_neighbor_elem |
The current neighbor "element". More... | |
SubdomainID | _current_neighbor_subdomain_id |
The current neighbor subdomain ID. More... | |
unsigned int | _current_neighbor_side |
The current side of the selected neighboring element (valid only when working with sides) More... | |
const Elem * | _current_neighbor_side_elem |
The current side element of the ncurrent neighbor element. More... | |
bool | _need_neighbor_elem_volume |
true is apps need to compute neighbor element volume More... | |
Real | _current_neighbor_volume |
Volume of the current neighbor. More... | |
const Node * | _current_node |
The current node we are working with. More... | |
const Node * | _current_neighbor_node |
The current neighboring node we are working with. More... | |
bool | _current_elem_volume_computed |
Boolean to indicate whether current element volumes has been computed. More... | |
bool | _current_side_volume_computed |
Boolean to indicate whether current element side volumes has been computed. More... | |
const Elem * | _current_lower_d_elem |
The current lower dimensional element. More... | |
const Elem * | _current_neighbor_lower_d_elem |
The current neighboring lower dimensional element. More... | |
bool | _need_lower_d_elem_volume |
Whether we need to compute the lower dimensional element volume. More... | |
Real | _current_lower_d_elem_volume |
The current lower dimensional element volume. More... | |
bool | _need_neighbor_lower_d_elem_volume |
Whether we need to compute the neighboring lower dimensional element volume. More... | |
Real | _current_neighbor_lower_d_elem_volume |
The current neighboring lower dimensional element volume. More... | |
bool | _need_dual |
Whether dual shape functions need to be computed for mortar constraints. More... | |
MooseArray< Point > | _current_physical_points |
This will be filled up with the physical points passed into reinitAtPhysical() if it is called. Invalid at all other times. More... | |
std::vector< std::vector< DenseVector< Number > > > | _sub_Re |
std::vector< std::vector< DenseVector< Number > > > | _sub_Rn |
std::vector< std::vector< DenseVector< Number > > > | _sub_Rl |
residual contributions for each variable from the lower dimensional element More... | |
DenseVector< Number > | _tmp_Re |
auxiliary vector for scaling residuals (optimization to avoid expensive construction/destruction) More... | |
std::vector< std::vector< std::vector< DenseMatrix< Number > > > > | _sub_Kee |
std::vector< std::vector< std::vector< DenseMatrix< Number > > > > | _sub_Keg |
std::vector< std::vector< std::vector< DenseMatrix< Number > > > > | _sub_Ken |
jacobian contributions from the element and neighbor <Tag, ivar, jvar> More... | |
std::vector< std::vector< std::vector< DenseMatrix< Number > > > > | _sub_Kne |
jacobian contributions from the neighbor and element <Tag, ivar, jvar> More... | |
std::vector< std::vector< std::vector< DenseMatrix< Number > > > > | _sub_Knn |
jacobian contributions from the neighbor <Tag, ivar, jvar> More... | |
std::vector< std::vector< std::vector< DenseMatrix< Number > > > > | _sub_Kll |
dlower/dlower More... | |
std::vector< std::vector< std::vector< DenseMatrix< Number > > > > | _sub_Kle |
dlower/dsecondary (or dlower/delement) More... | |
std::vector< std::vector< std::vector< DenseMatrix< Number > > > > | _sub_Kln |
dlower/dprimary (or dlower/dneighbor) More... | |
std::vector< std::vector< std::vector< DenseMatrix< Number > > > > | _sub_Kel |
dsecondary/dlower (or delement/dlower) More... | |
std::vector< std::vector< std::vector< DenseMatrix< Number > > > > | _sub_Knl |
dprimary/dlower (or dneighbor/dlower) More... | |
DenseMatrix< Number > | _tmp_Ke |
auxiliary matrix for scaling jacobians (optimization to avoid expensive construction/destruction) More... | |
VariablePhiValue | _phi |
VariablePhiGradient | _grad_phi |
VariablePhiSecond | _second_phi |
VariablePhiValue | _phi_face |
VariablePhiGradient | _grad_phi_face |
VariablePhiSecond | _second_phi_face |
VariablePhiValue | _phi_neighbor |
VariablePhiGradient | _grad_phi_neighbor |
VariablePhiSecond | _second_phi_neighbor |
VariablePhiValue | _phi_face_neighbor |
VariablePhiGradient | _grad_phi_face_neighbor |
VariablePhiSecond | _second_phi_face_neighbor |
VectorVariablePhiValue | _vector_phi |
VectorVariablePhiGradient | _vector_grad_phi |
VectorVariablePhiSecond | _vector_second_phi |
VectorVariablePhiCurl | _vector_curl_phi |
VectorVariablePhiDivergence | _vector_div_phi |
VectorVariablePhiValue | _vector_phi_face |
VectorVariablePhiGradient | _vector_grad_phi_face |
VectorVariablePhiSecond | _vector_second_phi_face |
VectorVariablePhiCurl | _vector_curl_phi_face |
VectorVariablePhiDivergence | _vector_div_phi_face |
VectorVariablePhiValue | _vector_phi_neighbor |
VectorVariablePhiGradient | _vector_grad_phi_neighbor |
VectorVariablePhiSecond | _vector_second_phi_neighbor |
VectorVariablePhiCurl | _vector_curl_phi_neighbor |
VectorVariablePhiDivergence | _vector_div_phi_neighbor |
VectorVariablePhiValue | _vector_phi_face_neighbor |
VectorVariablePhiGradient | _vector_grad_phi_face_neighbor |
VectorVariablePhiSecond | _vector_second_phi_face_neighbor |
VectorVariablePhiCurl | _vector_curl_phi_face_neighbor |
VectorVariablePhiDivergence | _vector_div_phi_face_neighbor |
std::map< FEType, std::unique_ptr< FEShapeData > > | _fe_shape_data |
Shape function values, gradients, second derivatives for each FE type. More... | |
std::map< FEType, std::unique_ptr< FEShapeData > > | _fe_shape_data_face |
std::map< FEType, std::unique_ptr< FEShapeData > > | _fe_shape_data_neighbor |
std::map< FEType, std::unique_ptr< FEShapeData > > | _fe_shape_data_face_neighbor |
std::map< FEType, std::unique_ptr< FEShapeData > > | _fe_shape_data_lower |
std::map< FEType, std::unique_ptr< FEShapeData > > | _fe_shape_data_dual_lower |
std::map< FEType, std::unique_ptr< VectorFEShapeData > > | _vector_fe_shape_data |
Shape function values, gradients, second derivatives for each vector FE type. More... | |
std::map< FEType, std::unique_ptr< VectorFEShapeData > > | _vector_fe_shape_data_face |
std::map< FEType, std::unique_ptr< VectorFEShapeData > > | _vector_fe_shape_data_neighbor |
std::map< FEType, std::unique_ptr< VectorFEShapeData > > | _vector_fe_shape_data_face_neighbor |
std::map< FEType, std::unique_ptr< VectorFEShapeData > > | _vector_fe_shape_data_lower |
std::map< FEType, std::unique_ptr< VectorFEShapeData > > | _vector_fe_shape_data_dual_lower |
std::map< FEType, ADTemplateVariablePhiGradient< Real > > | _ad_grad_phi_data |
std::map< FEType, ADTemplateVariablePhiGradient< RealVectorValue > > | _ad_vector_grad_phi_data |
std::map< FEType, ADTemplateVariablePhiGradient< Real > > | _ad_grad_phi_data_face |
std::map< FEType, ADTemplateVariablePhiGradient< RealVectorValue > > | _ad_vector_grad_phi_data_face |
const std::vector< VectorTag > & | _residual_vector_tags |
The residual vector tags that Assembly could possibly contribute to. More... | |
std::vector< std::vector< Real > > | _cached_residual_values |
Values cached by calling cacheResidual() (the first vector is for TIME vs NONTIME) More... | |
std::vector< std::vector< dof_id_type > > | _cached_residual_rows |
Where the cached values should go (the first vector is for TIME vs NONTIME) More... | |
unsigned int | _max_cached_residuals |
std::vector< std::vector< Real > > | _cached_jacobian_values |
Values cached by calling cacheJacobian() More... | |
std::vector< std::vector< dof_id_type > > | _cached_jacobian_rows |
Row where the corresponding cached value should go. More... | |
std::vector< std::vector< dof_id_type > > | _cached_jacobian_cols |
Column where the corresponding cached value should go. More... | |
unsigned int | _max_cached_jacobians |
bool | _block_diagonal_matrix |
Will be true if our preconditioning matrix is a block-diagonal matrix. Which means that we can take some shortcuts. More... | |
std::vector< bool > | _component_block_diagonal |
An flag array Indiced by variable index to show if there is no component-wise coupling for the variable. More... | |
std::vector< dof_id_type > | _temp_dof_indices |
Temporary work vector to keep from reallocating it. More... | |
std::vector< Point > | _temp_reference_points |
Temporary work data for reinitAtPhysical() More... | |
std::vector< VectorValue< DualReal > > | _ad_dxyzdxi_map |
AD quantities. More... | |
std::vector< VectorValue< DualReal > > | _ad_dxyzdeta_map |
std::vector< VectorValue< DualReal > > | _ad_dxyzdzeta_map |
std::vector< VectorValue< DualReal > > | _ad_d2xyzdxi2_map |
std::vector< VectorValue< DualReal > > | _ad_d2xyzdxideta_map |
std::vector< VectorValue< DualReal > > | _ad_d2xyzdeta2_map |
std::vector< DualReal > | _ad_jac |
MooseArray< DualReal > | _ad_JxW |
MooseArray< VectorValue< DualReal > > | _ad_q_points |
std::vector< DualReal > | _ad_dxidx_map |
std::vector< DualReal > | _ad_dxidy_map |
std::vector< DualReal > | _ad_dxidz_map |
std::vector< DualReal > | _ad_detadx_map |
std::vector< DualReal > | _ad_detady_map |
std::vector< DualReal > | _ad_detadz_map |
std::vector< DualReal > | _ad_dzetadx_map |
std::vector< DualReal > | _ad_dzetady_map |
std::vector< DualReal > | _ad_dzetadz_map |
MooseArray< DualReal > | _ad_JxW_face |
MooseArray< VectorValue< DualReal > > | _ad_normals |
MooseArray< VectorValue< DualReal > > | _ad_q_points_face |
MooseArray< Real > | _curvatures |
MooseArray< DualReal > | _ad_curvatures |
std::vector< std::pair< unsigned int, unsigned short > > | _disp_numbers_and_directions |
Container of displacement numbers and directions. More... | |
bool | _calculate_xyz |
bool | _calculate_face_xyz |
bool | _calculate_curvatures |
bool | _calculate_ad_coord |
Whether to calculate coord with AD. More... | |
std::map< FEType, bool > | _need_second_derivative |
std::map< FEType, bool > | _need_second_derivative_neighbor |
std::map< FEType, bool > | _need_curl |
std::map< FEType, bool > | _need_div |
const NumericVector< Real > * | _scaling_vector = nullptr |
The map from global index to variable scaling factor. More... | |
ElemSideBuilder | _current_side_elem_builder |
In place side element builder for _current_side_elem. More... | |
ElemSideBuilder | _current_neighbor_side_elem_builder |
In place side element builder for _current_neighbor_side_elem. More... | |
ElemSideBuilder | _compute_face_map_side_elem_builder |
In place side element builder for computeFaceMap() More... | |
const Elem * | _msm_elem = nullptr |
DenseVector< Number > | _element_vector |
A working vector to avoid repeated heap allocations when caching residuals that must have libMesh-level constraints (hanging nodes, periodic bcs) applied to them. More... | |
DenseMatrix< Number > | _element_matrix |
A working matrix to avoid repeated heap allocations when caching Jacobians that must have libMesh-level constraints (hanging nodes, periodic bcs) applied to them. More... | |
std::vector< dof_id_type > | _row_indices |
Working vectors to avoid repeated heap allocations when caching residuals/Jacobians that must have libMesh-level constraints (hanging nodes, periodic bcs) applied to them. More... | |
std::vector< dof_id_type > | _column_indices |
bool | _have_p_refinement |
Whether we have ever conducted p-refinement. More... | |
std::vector< Point > | _current_neighbor_ref_points |
The current reference points on the neighbor element. More... | |
Private Member Functions | |
void | setLowerQRule (QBase *qrule, unsigned int dim) |
Set the qrule to be used for lower dimensional integration. More... | |
void | computeADFace (const Elem &elem, const unsigned int side) |
compute AD things on an element face More... | |
void | reinitFE (const Elem *elem) |
Just an internal helper function to reinit the volume FE objects. More... | |
void | reinitFEFace (const Elem *elem, unsigned int side) |
Just an internal helper function to reinit the face FE objects. More... | |
void | computeFaceMap (const Elem &elem, const unsigned int side, const std::vector< Real > &qw) |
void | reinitFEFaceNeighbor (const Elem *neighbor, const std::vector< Point > &reference_points) |
void | reinitFENeighbor (const Elem *neighbor, const std::vector< Point > &reference_points) |
template<typename Points , typename Coords > | |
void | setCoordinateTransformation (const QBase *qrule, const Points &q_points, Coords &coord, SubdomainID sub_id) |
void | computeCurrentElemVolume () |
void | computeCurrentFaceVolume () |
void | computeCurrentNeighborVolume () |
void | modifyWeightsDueToXFEM (const Elem *elem) |
Update the integration weights for XFEM partial elements. More... | |
void | modifyFaceWeightsDueToXFEM (const Elem *elem, unsigned int side=0) |
Update the face integration weights for XFEM partial elements. More... | |
template<typename OutputType > | |
void | computeGradPhiAD (const Elem *elem, unsigned int n_qp, ADTemplateVariablePhiGradient< OutputType > &grad_phi, FEGenericBase< OutputType > *fe) |
compute gradient of phi possibly with derivative information with respect to nonlinear displacement variables More... | |
void | resizeADMappingObjects (unsigned int n_qp, unsigned int dim) |
resize any objects that contribute to automatic differentiation-related mapping calculations More... | |
void | computeSinglePointMapAD (const Elem *elem, const std::vector< Real > &qw, unsigned p, FEBase *fe) |
compute the finite element reference-physical mapping quantities (such as JxW) with possible dependence on nonlinear displacement variables at a single quadrature point More... | |
void | addResidual (const VectorTag &vector_tag) |
Add local residuals of all field variables for a tag onto the tag's residual vector. More... | |
void | addResidualNeighbor (const VectorTag &vector_tag) |
Add local neighbor residuals of all field variables for a tag onto the tag's residual vector. More... | |
void | addResidualLower (const VectorTag &vector_tag) |
Add local lower-dimensional block residuals of all field variables for a tag onto the tag's residual vector. More... | |
void | addResidualScalar (const VectorTag &vector_tag) |
Add residuals of all scalar variables for a tag onto the tag's residual vector. More... | |
void | clearCachedResiduals (const VectorTag &vector_tag) |
Clears all of the cached residuals for a specific vector tag. More... | |
void | cacheResidual (dof_id_type dof, Real value, TagID tag_id) |
Cache individual residual contributions. More... | |
void | cacheResidual (dof_id_type dof, Real value, const std::set< TagID > &tags) |
Cache individual residual contributions. More... | |
void | processLocalResidual (DenseVector< Number > &res_block, std::vector< dof_id_type > &dof_indices, const std::vector< Real > &scaling_factor, bool is_nodal) |
Appling scaling, constraints to the local residual block and populate the full DoF indices for array variable. More... | |
void | addResidualBlock (NumericVector< Number > &residual, DenseVector< Number > &res_block, const std::vector< dof_id_type > &dof_indices, const std::vector< Real > &scaling_factor, bool is_nodal) |
Add a local residual block to a global residual vector with proper scaling. More... | |
void | cacheResidualBlock (std::vector< Real > &cached_residual_values, std::vector< dof_id_type > &cached_residual_rows, DenseVector< Number > &res_block, const std::vector< dof_id_type > &dof_indices, const std::vector< Real > &scaling_factor, bool is_nodal) |
Push a local residual block with proper scaling into cache. More... | |
void | setResidualBlock (NumericVector< Number > &residual, DenseVector< Number > &res_block, const std::vector< dof_id_type > &dof_indices, const std::vector< Real > &scaling_factor, bool is_nodal) |
Set a local residual block to a global residual vector with proper scaling. More... | |
void | addJacobianBlock (SparseMatrix< Number > &jacobian, DenseMatrix< Number > &jac_block, const MooseVariableBase &ivar, const MooseVariableBase &jvar, const std::vector< dof_id_type > &idof_indices, const std::vector< dof_id_type > &jdof_indices) |
Add a local Jacobian block to a global Jacobian with proper scaling. More... | |
void | cacheJacobianBlock (DenseMatrix< Number > &jac_block, const MooseVariableBase &ivar, const MooseVariableBase &jvar, const std::vector< dof_id_type > &idof_indices, const std::vector< dof_id_type > &jdof_indices, TagID tag) |
Push a local Jacobian block with proper scaling into cache for a certain tag. More... | |
void | cacheJacobianBlockNonzero (DenseMatrix< Number > &jac_block, const MooseVariableBase &ivar, const MooseVariableBase &jvar, const std::vector< dof_id_type > &idof_indices, const std::vector< dof_id_type > &jdof_indices, TagID tag) |
Push non-zeros of a local Jacobian block with proper scaling into cache for a certain tag. More... | |
void | addJacobianCoupledVarPair (const MooseVariableBase &ivar, const MooseVariableBase &jvar) |
Adds element matrices for ivar rows and jvar columns to the global Jacobian matrices. More... | |
void | cacheJacobianCoupledVarPair (const MooseVariableBase &ivar, const MooseVariableBase &jvar) |
Caches element matrix for ivar rows and jvar columns. More... | |
void | clearCachedJacobian () |
Clear any currently cached jacobians. More... | |
void | buildFE (FEType type) const |
Build FEs with a type. More... | |
void | buildFaceFE (FEType type) const |
Build FEs for a face with a type. More... | |
void | buildNeighborFE (FEType type) const |
Build FEs for a neighbor with a type. More... | |
void | buildFaceNeighborFE (FEType type) const |
Build FEs for a neighbor face with a type. More... | |
void | buildLowerDFE (FEType type) const |
Build FEs for a lower dimensional element with a type. More... | |
void | buildLowerDDualFE (FEType type) const |
void | buildVectorFE (FEType type) const |
Build Vector FEs with a type. More... | |
void | buildVectorFaceFE (FEType type) const |
Build Vector FEs for a face with a type. More... | |
void | buildVectorNeighborFE (FEType type) const |
Build Vector FEs for a neighbor with a type. More... | |
void | buildVectorFaceNeighborFE (FEType type) const |
Build Vector FEs for a neighbor face with a type. More... | |
void | buildVectorLowerDFE (FEType type) const |
Build Vector FEs for a lower dimensional element with a type. More... | |
void | buildVectorDualLowerDFE (FEType type) const |
void | jacobianBlockUsed (TagID tag, unsigned int ivar, unsigned int jvar, bool used) |
Sets whether or not Jacobian coupling between ivar and jvar is used to the value used . More... | |
char | jacobianBlockUsed (TagID tag, unsigned int ivar, unsigned int jvar) const |
Return a flag to indicate if a particular coupling Jacobian block between ivar and jvar is used. More... | |
void | jacobianBlockNeighborUsed (TagID tag, unsigned int ivar, unsigned int jvar, bool used) |
Sets whether or not neighbor Jacobian coupling between ivar and jvar is used to the value used . More... | |
char | jacobianBlockNeighborUsed (TagID tag, unsigned int ivar, unsigned int jvar) const |
Return a flag to indicate if a particular coupling neighbor Jacobian block between ivar and jvar is used. More... | |
void | jacobianBlockLowerUsed (TagID tag, unsigned int ivar, unsigned int jvar, bool used) |
Sets whether or not lower Jacobian coupling between ivar and jvar is used to the value used . More... | |
char | jacobianBlockLowerUsed (TagID tag, unsigned int ivar, unsigned int jvar) const |
Return a flag to indicate if a particular coupling lower Jacobian block between ivar and jvar is used. More... | |
void | jacobianBlockNonlocalUsed (TagID tag, unsigned int ivar, unsigned int jvar, bool used) |
Sets whether or not nonlocal Jacobian coupling between ivar and jvar is used to the value used . More... | |
char | jacobianBlockNonlocalUsed (TagID tag, unsigned int ivar, unsigned int jvar) const |
Return a flag to indicate if a particular coupling nonlocal Jacobian block between ivar and jvar is used. More... | |
void | helpersRequestData () |
request phi, dphi, xyz, JxW, etc. More... | |
QBase * | qruleFace (const Elem *elem, unsigned int side) |
This is an abstraction over the internal qrules function. More... | |
ArbitraryQuadrature * | qruleArbitraryFace (const Elem *elem, unsigned int side) |
template<typename T > | |
T * | qruleFaceHelper (const Elem *elem, unsigned int side, std::function< T *(QRules &)> rule_fn) |
QRules & | qrules (unsigned int dim) |
QRules & | qrules (unsigned int dim, SubdomainID block) |
This is a helper function for accessing quadrature rules for a particular dimensionality of element. More... | |
Private Attributes | |
SystemBase & | _sys |
SubProblem & | _subproblem |
const bool | _displaced |
const CouplingMatrix * | _cm |
Coupling matrices. More... | |
const CouplingMatrix & | _nonlocal_cm |
const bool & | _computing_residual |
Whether we are currently computing the residual. More... | |
const bool & | _computing_jacobian |
Whether we are currently computing the Jacobian. More... | |
const bool & | _computing_residual_and_jacobian |
Whether we are currently computing the residual and Jacobian. More... | |
std::vector< std::pair< MooseVariableFieldBase *, MooseVariableFieldBase * > > | _cm_ff_entry |
Entries in the coupling matrix for field variables. More... | |
std::vector< std::pair< MooseVariableFieldBase *, MooseVariableScalar * > > | _cm_fs_entry |
Entries in the coupling matrix for field variables vs scalar variables. More... | |
std::vector< std::pair< MooseVariableScalar *, MooseVariableFieldBase * > > | _cm_sf_entry |
Entries in the coupling matrix for scalar variables vs field variables. More... | |
std::vector< std::pair< MooseVariableScalar *, MooseVariableScalar * > > | _cm_ss_entry |
Entries in the coupling matrix for scalar variables. More... | |
std::vector< std::pair< MooseVariableFieldBase *, MooseVariableFieldBase * > > | _cm_nonlocal_entry |
Entries in the coupling matrix for field variables for nonlocal calculations. More... | |
std::vector< std::vector< std::vector< unsigned char > > > | _jacobian_block_used |
Flag that indicates if the jacobian block was used. More... | |
std::vector< std::vector< std::vector< unsigned char > > > | _jacobian_block_nonlocal_used |
std::vector< std::vector< std::vector< unsigned char > > > | _jacobian_block_neighbor_used |
Flag that indicates if the jacobian block for neighbor was used. More... | |
std::vector< std::vector< std::vector< unsigned char > > > | _jacobian_block_lower_used |
Flag that indicates if the jacobian block for the lower dimensional element was used. More... | |
const DofMap & | _dof_map |
DOF map. More... | |
THREAD_ID | _tid |
Thread number (id) More... | |
MooseMesh & | _mesh |
unsigned int | _mesh_dimension |
const FEType | _helper_type |
The finite element type of the FE helper classes. More... | |
bool | _user_added_fe_of_helper_type |
Whether user code requested a FEType the same as our _helper_type . More... | |
bool | _user_added_fe_face_of_helper_type |
bool | _user_added_fe_face_neighbor_of_helper_type |
bool | _user_added_fe_neighbor_of_helper_type |
bool | _user_added_fe_lower_of_helper_type |
std::vector< std::unique_ptr< FEBase > > | _unique_fe_helper |
Containers for holding unique FE helper types if we are doing p-refinement. More... | |
std::vector< std::unique_ptr< FEBase > > | _unique_fe_face_helper |
std::vector< std::unique_ptr< FEBase > > | _unique_fe_face_neighbor_helper |
std::vector< std::unique_ptr< FEBase > > | _unique_fe_neighbor_helper |
std::vector< std::unique_ptr< FEBase > > | _unique_fe_lower_helper |
bool | _building_helpers |
Whether we are currently building the FE classes for the helpers. More... | |
std::shared_ptr< XFEMInterface > | _xfem |
The XFEM controller. More... | |
std::map< FEType, FEBase * > | _current_fe |
The "volume" fe object that matches the current elem. More... | |
std::map< FEType, FEBase * > | _current_fe_face |
The "face" fe object that matches the current elem. More... | |
std::map< FEType, FEBase * > | _current_fe_neighbor |
The "neighbor" fe object that matches the current elem. More... | |
std::map< FEType, FEBase * > | _current_fe_face_neighbor |
The "neighbor face" fe object that matches the current elem. More... | |
std::map< FEType, FEVectorBase * > | _current_vector_fe |
The "volume" vector fe object that matches the current elem. More... | |
std::map< FEType, FEVectorBase * > | _current_vector_fe_face |
The "face" vector fe object that matches the current elem. More... | |
std::map< FEType, FEVectorBase * > | _current_vector_fe_neighbor |
The "neighbor" vector fe object that matches the current elem. More... | |
std::map< FEType, FEVectorBase * > | _current_vector_fe_face_neighbor |
The "neighbor face" vector fe object that matches the current elem. More... | |
std::map< unsigned int, std::map< FEType, FEBase * > > | _fe |
Each dimension's actual fe objects indexed on type. More... | |
std::map< unsigned int, std::map< FEType, FEVectorBase * > > | _vector_fe |
Each dimension's actual vector fe objects indexed on type. More... | |
std::map< unsigned int, FEBase * > | _holder_fe_helper |
Each dimension's helper objects. More... | |
FEBase * | _current_fe_helper |
The current helper object for transforming coordinates. More... | |
QBase * | _current_qrule |
The current current quadrature rule being used (could be either volumetric or arbitrary - for dirac kernels) More... | |
QBase * | _current_qrule_volume |
The current volumetric quadrature for the element. More... | |
ArbitraryQuadrature * | _current_qrule_arbitrary |
The current arbitrary quadrature rule used within the element interior. More... | |
ArbitraryQuadrature * | _current_qrule_arbitrary_face |
The current arbitrary quadrature rule used on the element face. More... | |
MooseArray< Point > | _current_q_points |
The current list of quadrature points. More... | |
MooseArray< Real > | _current_JxW |
The current list of transformed jacobian weights. More... | |
Moose::CoordinateSystemType | _coord_type |
The coordinate system. More... | |
MooseArray< Real > | _coord |
The current coordinate transformation coefficients. More... | |
MooseArray< DualReal > | _ad_coord |
The AD version of the current coordinate transformation coefficients. More... | |
std::unordered_map< SubdomainID, std::vector< QRules > > | _qrules |
Holds quadrature rules for each dimension. More... | |
std::map< unsigned int, std::map< FEType, FEBase * > > | _fe_face |
types of finite elements More... | |
std::map< unsigned int, std::map< FEType, FEVectorBase * > > | _vector_fe_face |
types of vector finite elements More... | |
std::map< unsigned int, FEBase * > | _holder_fe_face_helper |
Each dimension's helper objects. More... | |
FEBase * | _current_fe_face_helper |
helper object for transforming coordinates More... | |
QBase * | _current_qrule_face |
quadrature rule used on faces More... | |
ArbitraryQuadrature * | _current_qface_arbitrary |
The current arbitrary quadrature rule used on element faces. More... | |
MooseArray< Point > | _current_q_points_face |
The current quadrature points on a face. More... | |
MooseArray< Real > | _current_JxW_face |
The current transformed jacobian weights on a face. More... | |
MooseArray< Point > | _current_normals |
The current Normal vectors at the quadrature points. More... | |
std::vector< Eigen::Map< RealDIMValue > > | _mapped_normals |
Mapped normals. More... | |
MooseArray< std::vector< Point > > | _current_tangents |
The current tangent vectors at the quadrature points. More... | |
std::vector< dof_id_type > | _extra_elem_ids |
Extra element IDs. More... | |
std::vector< dof_id_type > | _neighbor_extra_elem_ids |
Extra element IDs of neighbor. More... | |
std::map< unsigned int, const std::vector< Point > * > | _holder_normals |
Holds pointers to the dimension's normal vectors. More... | |
std::map< unsigned int, std::map< FEType, FEBase * > > | _fe_neighbor |
types of finite elements More... | |
std::map< unsigned int, std::map< FEType, FEBase * > > | _fe_face_neighbor |
std::map< unsigned int, std::map< FEType, FEVectorBase * > > | _vector_fe_neighbor |
std::map< unsigned int, std::map< FEType, FEVectorBase * > > | _vector_fe_face_neighbor |
std::map< unsigned int, FEBase * > | _holder_fe_neighbor_helper |
Each dimension's helper objects. More... | |
std::map< unsigned int, FEBase * > | _holder_fe_face_neighbor_helper |
std::map< unsigned int, std::map< FEType, FEBase * > > | _fe_lower |
FE objects for lower dimensional elements. More... | |
std::map< unsigned int, std::map< FEType, FEVectorBase * > > | _vector_fe_lower |
Vector FE objects for lower dimensional elements. More... | |
std::map< unsigned int, FEBase * > | _holder_fe_lower_helper |
helper object for transforming coordinates for lower dimensional element quadrature points More... | |
QBase * | _current_qrule_neighbor |
quadrature rule used on neighbors More... | |
MooseArray< Point > | _current_q_points_face_neighbor |
The current quadrature points on the neighbor face. More... | |
bool | _need_JxW_neighbor |
Flag to indicate that JxW_neighbor is needed. More... | |
MooseArray< Real > | _current_JxW_neighbor |
The current transformed jacobian weights on a neighbor's face. More... | |
MooseArray< Real > | _coord_neighbor |
The current coordinate transformation coefficients. More... | |
MooseArray< Real > | _coord_msm |
The coordinate transformation coefficients evaluated on the quadrature points of the mortar segment mesh. More... | |
const std::vector< Real > * | _JxW_msm |
A JxW for working on mortar segement elements. More... | |
std::unique_ptr< FEBase > | _fe_msm |
A FE object for working on mortar segement elements. More... | |
QBase * | _qrule_msm |
A qrule object for working on mortar segement elements. More... | |
bool | _custom_mortar_qrule |
Flag specifying whether a custom quadrature rule has been specified for mortar segment mesh. More... | |
QBase * | _current_qrule_lower |
quadrature rule used on lower dimensional elements. More... | |
Keeps track of stuff related to assembling.
Definition at line 93 of file Assembly.h.
Assembly::Assembly | ( | SystemBase & | sys, |
THREAD_ID | tid | ||
) |
Definition at line 77 of file Assembly.C.
|
virtual |
Definition at line 184 of file Assembly.C.
|
inline |
Indicates that dual shape functions are used for mortar constraint.
Definition at line 567 of file Assembly.h.
Referenced by MortarConstraintBase::MortarConstraintBase().
|
inline |
Returns the reference to the AD version of the coordinate transformation coefficients.
Definition at line 264 of file Assembly.h.
const MooseArray< ADReal > & Assembly::adCurvatures | ( | ) | const |
Definition at line 4788 of file Assembly.C.
void Assembly::addCachedJacobian | ( | GlobalDataKey | ) |
Adds the values that have been cached by calling cacheJacobian() and or cacheJacobianNeighbor() to the jacobian matrix.
Note that this will also clear the cache.
Definition at line 3811 of file Assembly.C.
Referenced by SubProblem::addCachedJacobian(), NonlinearSystemBase::computeJacobianInternal(), and ComputeMortarFunctor::operator()().
void Assembly::addCachedResidualDirectly | ( | NumericVector< Number > & | residual, |
GlobalDataKey | , | ||
const VectorTag & | vector_tag | ||
) |
Adds the values that have been cached by calling cacheResidual(), cacheResidualNeighbor(), and/or cacheResidualLower() to a user-defined residual (that is, not necessarily the vector that vector_tag points to)
Note that this will also clear the cache.
Definition at line 3526 of file Assembly.C.
Referenced by addCachedResiduals().
void Assembly::addCachedResiduals | ( | GlobalDataKey | , |
const std::vector< VectorTag > & | tags | ||
) |
Pushes all cached residuals to the global residual vectors associated with each tag.
Note that this will also clear the cache.
Definition at line 3481 of file Assembly.C.
Referenced by SubProblem::addCachedResidual(), and ComputeMortarFunctor::operator()().
void Assembly::addJacobian | ( | GlobalDataKey | ) |
Adds all local Jacobian to the global Jacobian matrices.
Definition at line 3866 of file Assembly.C.
void Assembly::addJacobianBlock | ( | SparseMatrix< Number > & | jacobian, |
unsigned int | ivar, | ||
unsigned int | jvar, | ||
const DofMap & | dof_map, | ||
std::vector< dof_id_type > & | dof_indices, | ||
GlobalDataKey | , | ||
TagID | tag | ||
) |
Adds element matrix for ivar rows and jvar columns to the global Jacobian matrix.
Definition at line 4237 of file Assembly.C.
Referenced by addJacobianBlockTags(), addJacobianCoupledVarPair(), addJacobianLowerD(), addJacobianNeighbor(), addJacobianNeighborLowerD(), and addJacobianNonlocal().
|
private |
Add a local Jacobian block to a global Jacobian with proper scaling.
Definition at line 3573 of file Assembly.C.
void Assembly::addJacobianBlockNonlocal | ( | SparseMatrix< Number > & | jacobian, |
unsigned int | ivar, | ||
unsigned int | jvar, | ||
const DofMap & | dof_map, | ||
const std::vector< dof_id_type > & | idof_indices, | ||
const std::vector< dof_id_type > & | jdof_indices, | ||
GlobalDataKey | , | ||
TagID | tag | ||
) |
Adds non-local element matrix for ivar rows and jvar columns to the global Jacobian matrix.
Definition at line 4292 of file Assembly.C.
Referenced by addJacobianBlockNonlocalTags().
void Assembly::addJacobianBlockNonlocalTags | ( | SparseMatrix< Number > & | jacobian, |
unsigned int | ivar, | ||
unsigned int | jvar, | ||
const DofMap & | dof_map, | ||
const std::vector< dof_id_type > & | idof_indices, | ||
const std::vector< dof_id_type > & | jdof_indices, | ||
GlobalDataKey | , | ||
const std::set< TagID > & | tags | ||
) |
Adds non-local element matrix for ivar rows and jvar columns to the global Jacobian matrix.
Definition at line 4350 of file Assembly.C.
void Assembly::addJacobianBlockTags | ( | SparseMatrix< Number > & | jacobian, |
unsigned int | ivar, | ||
unsigned int | jvar, | ||
const DofMap & | dof_map, | ||
std::vector< dof_id_type > & | dof_indices, | ||
GlobalDataKey | , | ||
const std::set< TagID > & | tags | ||
) |
Add element matrix for ivar rows and jvar columns to the global Jacobian matrix for given tags.
Definition at line 4224 of file Assembly.C.
|
inlineprivate |
Adds element matrices for ivar rows and jvar columns to the global Jacobian matrices.
Definition at line 3851 of file Assembly.C.
Referenced by addJacobian(), addJacobianOffDiagScalar(), and addJacobianScalar().
void Assembly::addJacobianLowerD | ( | GlobalDataKey | ) |
Add portions of the Jacobian of LowerLower, LowerSecondary, and SecondaryLower for boundary conditions.
Secondary indicates the boundary element. Lower denotes the lower-dimensional element living on the boundary side.
Definition at line 4017 of file Assembly.C.
void Assembly::addJacobianNeighbor | ( | GlobalDataKey | ) |
Add ElementNeighbor, NeighborElement, and NeighborNeighbor portions of the Jacobian for compute objects like DGKernels.
Definition at line 3901 of file Assembly.C.
Referenced by addJacobianNeighborTags().
void Assembly::addJacobianNeighbor | ( | SparseMatrix< Number > & | jacobian, |
unsigned int | ivar, | ||
unsigned int | jvar, | ||
const DofMap & | dof_map, | ||
std::vector< dof_id_type > & | dof_indices, | ||
std::vector< dof_id_type > & | neighbor_dof_indices, | ||
GlobalDataKey | , | ||
TagID | tag | ||
) |
Adds three neighboring element matrices for ivar rows and jvar columns to the global Jacobian matrix.
Definition at line 4365 of file Assembly.C.
void Assembly::addJacobianNeighborLowerD | ( | GlobalDataKey | ) |
Add all portions of the Jacobian except PrimaryPrimary, e.g.
LowerLower, LowerSecondary, LowerPrimary, SecondaryLower, SecondarySecondary, SecondaryPrimary, PrimaryLower, PrimarySecondary, for mortar-like objects. Primary indicates the interior parent element on the primary side of the mortar interface. Secondary indicates the neighbor of the interior parent element. Lower denotes the lower-dimensional element living on the primary side of the mortar interface.
Definition at line 3939 of file Assembly.C.
void Assembly::addJacobianNeighborTags | ( | SparseMatrix< Number > & | jacobian, |
unsigned int | ivar, | ||
unsigned int | jvar, | ||
const DofMap & | dof_map, | ||
std::vector< dof_id_type > & | dof_indices, | ||
std::vector< dof_id_type > & | neighbor_dof_indices, | ||
GlobalDataKey | , | ||
const std::set< TagID > & | tags | ||
) |
Adds three neighboring element matrices for ivar rows and jvar columns to the global Jacobian matrix.
Definition at line 4434 of file Assembly.C.
void Assembly::addJacobianNonlocal | ( | GlobalDataKey | ) |
Adds non-local Jacobian to the global Jacobian matrices.
Definition at line 3879 of file Assembly.C.
void Assembly::addJacobianOffDiagScalar | ( | unsigned int | ivar, |
GlobalDataKey | |||
) |
Add Jacobians for a scalar variables with all other field variables into the global Jacobian matrices.
Definition at line 4456 of file Assembly.C.
void Assembly::addJacobianScalar | ( | GlobalDataKey | ) |
Add Jacobians for pairs of scalar variables into the global Jacobian matrices.
Definition at line 4449 of file Assembly.C.
void Assembly::addResidual | ( | GlobalDataKey | , |
const std::vector< VectorTag > & | vector_tags | ||
) |
Add local residuals of all field variables for a set of tags onto the global residual vectors associated with the tags.
Definition at line 3318 of file Assembly.C.
Add local residuals of all field variables for a tag onto the tag's residual vector.
Definition at line 3301 of file Assembly.C.
|
private |
Add a local residual block to a global residual vector with proper scaling.
Definition at line 3245 of file Assembly.C.
Referenced by addResidual(), addResidualLower(), addResidualNeighbor(), and addResidualScalar().
void Assembly::addResidualLower | ( | GlobalDataKey | , |
const std::vector< VectorTag > & | vector_tags | ||
) |
Add local neighbor residuals of all field variables for a set of tags onto the global residual vectors associated with the tags.
Definition at line 3368 of file Assembly.C.
Add local lower-dimensional block residuals of all field variables for a tag onto the tag's residual vector.
Definition at line 3351 of file Assembly.C.
void Assembly::addResidualNeighbor | ( | GlobalDataKey | , |
const std::vector< VectorTag > & | vector_tags | ||
) |
Add local neighbor residuals of all field variables for a set of tags onto the global residual vectors associated with the tags.
Definition at line 3343 of file Assembly.C.
Add local neighbor residuals of all field variables for a tag onto the tag's residual vector.
Definition at line 3326 of file Assembly.C.
void Assembly::addResidualScalar | ( | GlobalDataKey | , |
const std::vector< VectorTag > & | vector_tags | ||
) |
Add residuals of all scalar variables for a set of tags onto the global residual vectors associated with the tags.
Definition at line 3392 of file Assembly.C.
Add residuals of all scalar variables for a tag onto the tag's residual vector.
Definition at line 3377 of file Assembly.C.
|
inline |
Definition at line 1271 of file Assembly.h.
|
inline |
Definition at line 3001 of file Assembly.h.
|
inline |
Definition at line 242 of file Assembly.h.
|
inline |
Definition at line 244 of file Assembly.h.
|
inline |
Definition at line 346 of file Assembly.h.
|
inline |
Definition at line 348 of file Assembly.h.
|
inline |
Definition at line 354 of file Assembly.h.
|
inline |
Assign the displacement numbers and directions.
Definition at line 3169 of file Assembly.h.
Attaches the current elem/volume quadrature rule to the given fe.
The current subdomain (as set via setCurrentSubdomainID is used to determine the correct rule. The attached quadrature rule is also returned.
Definition at line 1856 of file Assembly.h.
Attaches the current face/area quadrature rule to the given fe.
The current subdomain (as set via setCurrentSubdomainID is used to determine the correct rule. The attached quadrature rule is also returned.
Definition at line 1868 of file Assembly.h.
|
private |
Build FEs for a face with a type.
type | The type of FE |
Definition at line 290 of file Assembly.C.
Referenced by Assembly(), feCurlPhiFace(), feDivPhiFace(), feGradPhiFace(), fePhiFace(), feSecondPhiFace(), and getFEFace().
|
private |
Build FEs for a neighbor face with a type.
type | The type of FE |
Definition at line 334 of file Assembly.C.
Referenced by Assembly(), feCurlPhiFaceNeighbor(), feDivPhiFaceNeighbor(), feGradPhiFaceNeighbor(), fePhiFaceNeighbor(), feSecondPhiFaceNeighbor(), and getFEFaceNeighbor().
|
private |
Build FEs with a type.
type | The type of FE |
Definition at line 264 of file Assembly.C.
Referenced by Assembly(), feCurlPhi(), feDivPhi(), feGradPhi(), fePhi(), feSecondPhi(), and getFE().
|
private |
Definition at line 380 of file Assembly.C.
Referenced by feDualPhiLower(), and feGradDualPhiLower().
|
private |
Build FEs for a lower dimensional element with a type.
type | The type of FE |
Definition at line 356 of file Assembly.C.
Referenced by Assembly(), feGradPhiLower(), and fePhiLower().
|
private |
Build FEs for a neighbor with a type.
type | The type of FE |
Definition at line 312 of file Assembly.C.
Referenced by Assembly(), feCurlPhiNeighbor(), feDivPhiNeighbor(), feGradPhiNeighbor(), fePhiNeighbor(), feSecondPhiNeighbor(), and getFENeighbor().
|
private |
Definition at line 426 of file Assembly.C.
|
private |
Build Vector FEs for a face with a type.
type | The type of FE |
Definition at line 484 of file Assembly.C.
Referenced by getVectorFEFace().
|
private |
Build Vector FEs for a neighbor face with a type.
type | The type of FE |
Definition at line 542 of file Assembly.C.
Referenced by getVectorFEFaceNeighbor().
|
private |
Build Vector FEs with a type.
type | The type of FE |
Definition at line 451 of file Assembly.C.
Referenced by getVectorFE().
|
private |
Build Vector FEs for a lower dimensional element with a type.
type | The type of FE |
Definition at line 401 of file Assembly.C.
|
private |
Build Vector FEs for a neighbor with a type.
type | The type of FE |
Definition at line 513 of file Assembly.C.
Referenced by getVectorFENeighbor().
void Assembly::bumpAllQRuleOrder | ( | Order | order, |
SubdomainID | block | ||
) |
Increases the element/volume and face/area quadrature orders for the specified mesh block if and only if the current volume or face quadrature order is lower.
This can only cause the quadrature level to increase. If order is lower than or equal to the current volume+face quadrature rule order, then nothing is done (i.e. this function is idempotent).
Definition at line 595 of file Assembly.C.
void Assembly::bumpVolumeQRuleOrder | ( | Order | volume_order, |
SubdomainID | block | ||
) |
Increases the element/volume quadrature order for the specified mesh block if and only if the current volume quadrature order is lower.
This works exactly like the bumpAllQRuleOrder function, except it only affects the volume quadrature rule (not face quadrature).
Definition at line 572 of file Assembly.C.
void Assembly::cacheJacobian | ( | GlobalDataKey | ) |
Takes the values that are currently in _sub_Kee and appends them to the cached values.
Definition at line 4054 of file Assembly.C.
Referenced by TaggingInterface::addJacobian(), TaggingInterface::addJacobianElement(), SubProblem::cacheJacobian(), cacheJacobian(), and cacheJacobianWithoutConstraints().
void Assembly::cacheJacobian | ( | numeric_index_type | i, |
numeric_index_type | j, | ||
Real | value, | ||
LocalDataKey | , | ||
TagID | tag | ||
) |
Caches the Jacobian entry 'value', to eventually be added/set in the (i,j) location of the matrix.
We use numeric_index_type for the index arrays (rather than dof_id_type) since that is what the SparseMatrix interface uses, but at the time of this writing, those two types are equivalent.
Only blessed framework classes may call this API by creating the requisiste LocalDataKey
class
Definition at line 4465 of file Assembly.C.
void Assembly::cacheJacobian | ( | numeric_index_type | i, |
numeric_index_type | j, | ||
Real | value, | ||
LocalDataKey | , | ||
const std::set< TagID > & | tags | ||
) |
Caches the Jacobian entry 'value', to eventually be added/set in the (i,j) location of the matrices in corresponding to tags
.
We use numeric_index_type for the index arrays (rather than dof_id_type) since that is what the SparseMatrix interface uses, but at the time of this writing, those two types are equivalent.
Only blessed framework classes may call this API by creating the requisiste LocalDataKey
class
Definition at line 4474 of file Assembly.C.
void Assembly::cacheJacobian | ( | const Residuals & | residuals, |
const Indices & | row_indices, | ||
Real | scaling_factor, | ||
LocalDataKey | , | ||
const std::set< TagID > & | matrix_tags | ||
) |
Process the derivatives()
data of a vector of ADReals
.
This method simply caches the derivative values for the corresponding column indices for the provided matrix_tags
. Note that this overload will call DofMap::constrain_element_matrix
. Only blessed framework classes may call this API by creating the requisiste LocalDataKey
class
Definition at line 3066 of file Assembly.h.
void Assembly::cacheJacobianBlock | ( | DenseMatrix< Number > & | jac_block, |
const std::vector< dof_id_type > & | idof_indices, | ||
const std::vector< dof_id_type > & | jdof_indices, | ||
Real | scaling_factor, | ||
LocalDataKey | , | ||
TagID | tag | ||
) |
Cache a local Jacobian block with the provided rows (idof_indices
) and columns (jdof_indices
) for eventual accumulation into the global matrix specified by tag
.
The scaling_factor
will be applied before caching. Only blessed framework classes may call this API by creating the requisiste LocalDataKey
class
Definition at line 3743 of file Assembly.C.
Referenced by TaggingInterface::addJacobian(), cacheJacobianCoupledVarPair(), cacheJacobianMortar(), and cacheJacobianNeighbor().
|
private |
Push a local Jacobian block with proper scaling into cache for a certain tag.
Definition at line 3624 of file Assembly.C.
|
private |
Push non-zeros of a local Jacobian block with proper scaling into cache for a certain tag.
Definition at line 3685 of file Assembly.C.
Referenced by cacheJacobianNonlocal().
|
private |
Caches element matrix for ivar rows and jvar columns.
Definition at line 4068 of file Assembly.C.
Referenced by cacheJacobian().
void Assembly::cacheJacobianMortar | ( | GlobalDataKey | ) |
Cache all portions of the Jacobian, e.g.
LowerLower, LowerSecondary, LowerPrimary, SecondaryLower, SecondarySecondary, SecondaryPrimary, PrimaryLower, PrimarySecondary, PrimaryPrimary for mortar-like objects. Primary indicates the interior parent element on the primary side of the mortar interface. Secondary indicates the interior parent element on the secondary side of the interface. Lower denotes the lower-dimensional element living on the secondary side of the mortar interface; it's the boundary face of the Secondary
element.
Definition at line 4144 of file Assembly.C.
Referenced by ComputeMortarFunctor::operator()().
void Assembly::cacheJacobianNeighbor | ( | GlobalDataKey | ) |
Takes the values that are currently in the neighbor Dense Matrices and appends them to the cached values.
Definition at line 4106 of file Assembly.C.
Referenced by SubProblem::cacheJacobianNeighbor().
void Assembly::cacheJacobianNonlocal | ( | GlobalDataKey | ) |
Takes the values that are currently in _sub_Keg and appends them to the cached values.
Definition at line 4084 of file Assembly.C.
Referenced by SubProblem::cacheJacobian().
void Assembly::cacheJacobianWithoutConstraints | ( | const Residuals & | residuals, |
const Indices & | row_indices, | ||
Real | scaling_factor, | ||
LocalDataKey | , | ||
const std::set< TagID > & | matrix_tags | ||
) |
Process the derivatives()
data of a vector of ADReals
.
This method simply caches the derivative values for the corresponding column indices for the provided matrix_tags
. Note that this overload will not call DofMap::constrain_element_matrix
. Only blessed framework classes may call this API by creating the requisiste LocalDataKey
class
Definition at line 3127 of file Assembly.h.
Referenced by TaggingInterface::addJacobianWithoutConstraints(), and cacheJacobian().
void Assembly::cacheResidual | ( | GlobalDataKey | , |
const std::vector< VectorTag > & | tags | ||
) |
Takes the values that are currently in _sub_Re of all field variables and appends them to the cached values.
Definition at line 3400 of file Assembly.C.
Referenced by SubProblem::cacheResidual(), cacheResidual(), cacheResiduals(), cacheResidualsWithoutConstraints(), and ComputeMortarFunctor::operator()().
|
private |
Cache individual residual contributions.
These will ultimately get added to the residual when addCachedResidual() is called.
dof | The degree of freedom to add the residual contribution to |
value | The value of the residual contribution. |
TagID | the contribution should go to this tagged residual |
Definition at line 3416 of file Assembly.C.
|
private |
Cache individual residual contributions.
These will ultimately get added to the residual when addCachedResidual() is called.
dof | The degree of freedom to add the residual contribution to |
value | The value of the residual contribution. |
tags | the contribution should go to all these tags |
Definition at line 3426 of file Assembly.C.
|
private |
Push a local residual block with proper scaling into cache.
Definition at line 3261 of file Assembly.C.
Referenced by cacheResidual(), cacheResidualLower(), and cacheResidualNeighbor().
void Assembly::cacheResidualLower | ( | GlobalDataKey | , |
const std::vector< VectorTag > & | tags | ||
) |
Takes the values that are currently in _sub_Rl and appends them to the cached values.
Definition at line 3466 of file Assembly.C.
Referenced by ComputeMortarFunctor::operator()().
void Assembly::cacheResidualNeighbor | ( | GlobalDataKey | , |
const std::vector< VectorTag > & | tags | ||
) |
Takes the values that are currently in _sub_Rn of all field variables and appends them to the cached values.
Definition at line 3451 of file Assembly.C.
Referenced by SubProblem::cacheResidualNeighbor(), and ComputeMortarFunctor::operator()().
void Assembly::cacheResidualNodes | ( | const DenseVector< Number > & | res, |
const std::vector< dof_id_type > & | dof_index, | ||
LocalDataKey | , | ||
TagID | tag | ||
) |
Lets an external class cache residual at a set of nodes.
Only blessed framework classes may call this API by creating the requisiste LocalDataKey
class
Definition at line 3433 of file Assembly.C.
void Assembly::cacheResiduals | ( | const Residuals & | residuals, |
const Indices & | row_indices, | ||
Real | scaling_factor, | ||
LocalDataKey | , | ||
const std::set< TagID > & | vector_tags | ||
) |
Process the supplied residual values.
This is a mirror of of the non-templated version of addResiduals
except that it's meant for only processing residuals (and not their derivatives/Jacobian). We supply this API such that residual objects that leverage the AD version of this method when computing the Jacobian (or residual + Jacobian) can mirror the same behavior when doing pure residual evaluations, such as when evaluating linear residuals during (P)JFNK. This method will call constrain_element_vector
on the supplied residuals. Only blessed framework classes may call this API by creating the requisiste LocalDataKey
class
Definition at line 3008 of file Assembly.h.
Referenced by TaggingInterface::addResiduals().
void Assembly::cacheResidualsWithoutConstraints | ( | const Residuals & | residuals, |
const Indices & | row_indices, | ||
Real | scaling_factor, | ||
LocalDataKey | , | ||
const std::set< TagID > & | vector_tags | ||
) |
Process the supplied residual values.
This is a mirror of of the non-templated version of addResiduals
except that it's meant for only processing residuals (and not their derivatives/Jacobian). We supply this API such that residual objects that leverage the AD version of this method when computing the Jacobian (or residual + Jacobian) can mirror the same behavior when doing pure residual evaluations, such as when evaluating linear residuals during (P)JFNK. This method will not call constrain_element_vector
on the supplied residuals. Only blessed framework classes may call this API by creating the requisiste LocalDataKey
class
Definition at line 3048 of file Assembly.h.
Referenced by TaggingInterface::addResidualsWithoutConstraints(), and cacheResiduals().
|
private |
Clear any currently cached jacobians.
This is automatically called by setCachedJacobian
Definition at line 4516 of file Assembly.C.
Referenced by setCachedJacobian(), and zeroCachedJacobian().
void Assembly::clearCachedQRules | ( | ) |
Set the cached quadrature rules to nullptr.
Definition at line 723 of file Assembly.C.
void Assembly::clearCachedResiduals | ( | GlobalDataKey | ) |
Clears all of the residuals in _cached_residual_rows and _cached_residual_values.
This method is designed specifically for use after calling FEProblemBase::addCachedResidualDirectly() and DisplacedProblem::addCachedResidualDirectly() to ensure that we don't have any extra residuals hanging around that we didn't have the vectors for
Definition at line 3496 of file Assembly.C.
Referenced by addCachedResidualDirectly().
Clears all of the cached residuals for a specific vector tag.
Definition at line 3504 of file Assembly.C.
compute AD things on an element face
Definition at line 2107 of file Assembly.C.
Referenced by reinitElemFaceRef(), and reinitFEFace().
|
private |
Definition at line 1742 of file Assembly.C.
Referenced by reinit().
|
private |
Definition at line 1761 of file Assembly.C.
Referenced by reinit().
|
private |
|
private |
Definition at line 1341 of file Assembly.C.
Referenced by computeADFace().
|
private |
compute gradient of phi possibly with derivative information with respect to nonlinear displacement variables
Definition at line 887 of file Assembly.C.
Referenced by computeADFace(), and reinitFE().
|
private |
compute the finite element reference-physical mapping quantities (such as JxW) with possible dependence on nonlinear displacement variables at a single quadrature point
Definition at line 997 of file Assembly.C.
Referenced by computeADFace(), and reinitFE().
|
inline |
Definition at line 1899 of file Assembly.h.
Referenced by cacheJacobian(), cacheJacobianWithoutConstraints(), ComputeMortarFunctor::operator()(), and MortarConstraintBase::zeroInactiveLMDofs().
|
inline |
Definition at line 1894 of file Assembly.h.
Referenced by cacheResiduals(), cacheResidualsWithoutConstraints(), ComputeMortarFunctor::operator()(), and MortarConstraintBase::zeroInactiveLMDofs().
|
inline |
Definition at line 1904 of file Assembly.h.
|
inlinestatic |
Workaround for C++ compilers thinking they can't just cast a const-reference-to-pointer to const-reference-to-const-pointer.
Definition at line 104 of file Assembly.h.
Referenced by getFE(), getFEFace(), getFEFaceNeighbor(), getFENeighbor(), getVectorFE(), getVectorFEFace(), getVectorFEFaceNeighbor(), getVectorFENeighbor(), qRule(), qRuleFace(), qRuleMortar(), and qRuleNeighbor().
|
inline |
Get the coordinate system type.
Definition at line 280 of file Assembly.h.
|
inline |
Returns the reference to the coordinate transformation coefficients.
Definition at line 252 of file Assembly.h.
void Assembly::copyFaceShapes | ( | MooseVariableField< T > & | v | ) |
Definition at line 3028 of file Assembly.C.
Referenced by copyFaceShapes().
Definition at line 3037 of file Assembly.C.
void Assembly::copyNeighborShapes | ( | MooseVariableField< T > & | v | ) |
Definition at line 3065 of file Assembly.C.
Referenced by copyNeighborShapes().
Definition at line 3085 of file Assembly.C.
void Assembly::copyShapes | ( | MooseVariableField< T > & | v | ) |
Definition at line 2991 of file Assembly.C.
Referenced by copyShapes().
Definition at line 3000 of file Assembly.C.
|
inline |
Definition at line 1243 of file Assembly.h.
Referenced by MortarConstraint::computeJacobian().
|
inline |
Definition at line 1248 of file Assembly.h.
void Assembly::createQRules | ( | QuadratureType | type, |
Order | order, | ||
Order | volume_order, | ||
Order | face_order, | ||
SubdomainID | block, | ||
bool | allow_negative_qweights = true |
||
) |
Creates block-specific volume, face and arbitrary qrules based on the orders and the flag of whether or not to allow negative qweights passed in.
Any quadrature rules specified using this function override those created via in the non-block-specific/global createQRules function. order is used for arbitrary volume quadrature rules, while volume_order and face_order are for elem and face quadrature respectively.
Definition at line 614 of file Assembly.C.
Referenced by bumpAllQRuleOrder(), and bumpVolumeQRuleOrder().
|
inline |
|
inline |
Definition at line 1455 of file Assembly.h.
|
inline |
Definition at line 1355 of file Assembly.h.
|
inline |
Definition at line 1476 of file Assembly.h.
|
inline |
Definition at line 1403 of file Assembly.h.
|
inline |
Definition at line 1517 of file Assembly.h.
|
inline |
Definition at line 1378 of file Assembly.h.
|
inline |
Definition at line 1497 of file Assembly.h.
|
inline |
Return the current boundary ID.
Definition at line 382 of file Assembly.h.
|
inline |
Return the current subdomain ID.
Definition at line 450 of file Assembly.h.
|
inline |
Return the current subdomain ID.
Definition at line 372 of file Assembly.h.
|
inline |
|
inline |
Definition at line 1459 of file Assembly.h.
|
inline |
Definition at line 1359 of file Assembly.h.
|
inline |
Definition at line 1480 of file Assembly.h.
|
inline |
Definition at line 1408 of file Assembly.h.
|
inline |
Definition at line 1521 of file Assembly.h.
|
inline |
Definition at line 1383 of file Assembly.h.
|
inline |
Definition at line 1501 of file Assembly.h.
|
inline |
Return the current element.
Definition at line 367 of file Assembly.h.
Referenced by computeADFace(), computeFaceMap(), computeGradPhiAD(), computeSinglePointMapAD(), elementVolume(), Moose::globalDofIndexToDerivative(), modifyFaceWeightsDueToXFEM(), modifyWeightsDueToXFEM(), MooseVariableFE< Real >::MooseVariableFE(), MooseVariableFV< Real >::MooseVariableFV(), qruleArbitraryFace(), qruleFace(), qruleFaceHelper(), reinit(), reinitAtPhysical(), reinitDual(), reinitElemAndNeighbor(), reinitElemFaceRef(), reinitFE(), reinitFEFace(), reinitLowerDElem(), reinitMortarElem(), reinitNeighborLowerDElem(), setFaceQRule(), and setVolumeQRule().
Real Assembly::elementVolume | ( | const Elem * | elem | ) | const |
On-demand computation of volume element accounting for RZ/RSpherical.
Definition at line 3778 of file Assembly.C.
Referenced by reinitLowerDElem(), and reinitNeighborLowerDElem().
|
inline |
Returns the reference to the current element volume.
Definition at line 393 of file Assembly.h.
Referenced by FVElementalKernel::computeJacobian(), FVScalarLagrangeMultiplierConstraint::computeOffDiagJacobian(), FVScalarLagrangeMultiplierConstraint::computeResidual(), FVElementalKernel::computeResidual(), FVScalarLagrangeMultiplierConstraint::computeResidualAndJacobian(), and FVElementalKernel::computeResidualAndJacobian().
|
inline |
Returns an integer ID of the current element given the index associated with the integer.
Definition at line 331 of file Assembly.h.
|
inline |
Returns an integer ID of the current element given the index associated with the integer.
Definition at line 340 of file Assembly.h.
|
inline |
Definition at line 1582 of file Assembly.h.
|
inline |
Definition at line 2891 of file Assembly.h.
|
inline |
Definition at line 1623 of file Assembly.h.
|
inline |
Definition at line 2898 of file Assembly.h.
|
inline |
Definition at line 1683 of file Assembly.h.
const OutputTools<VectorValue<Real> >::VariablePhiCurl& Assembly::feCurlPhi | ( | FEType | type | ) | const |
const OutputTools<VectorValue<Real> >::VariablePhiCurl& Assembly::feCurlPhi | ( | FEType | type | ) | const |
Definition at line 4717 of file Assembly.C.
|
inline |
Definition at line 1691 of file Assembly.h.
const OutputTools<VectorValue<Real> >::VariablePhiCurl& Assembly::feCurlPhiFace | ( | FEType | type | ) | const |
const OutputTools<VectorValue<Real> >::VariablePhiCurl& Assembly::feCurlPhiFace | ( | FEType | type | ) | const |
Definition at line 4726 of file Assembly.C.
|
inline |
Definition at line 1707 of file Assembly.h.
const OutputTools<VectorValue<Real> >::VariablePhiCurl& Assembly::feCurlPhiFaceNeighbor | ( | FEType | type | ) | const |
const OutputTools<VectorValue<Real> >::VariablePhiCurl& Assembly::feCurlPhiFaceNeighbor | ( | FEType | type | ) | const |
Definition at line 4744 of file Assembly.C.
|
inline |
Definition at line 1699 of file Assembly.h.
const OutputTools<VectorValue<Real> >::VariablePhiCurl& Assembly::feCurlPhiNeighbor | ( | FEType | type | ) | const |
const OutputTools<VectorValue<Real> >::VariablePhiCurl& Assembly::feCurlPhiNeighbor | ( | FEType | type | ) | const |
Definition at line 4735 of file Assembly.C.
|
inline |
Definition at line 1715 of file Assembly.h.
const OutputTools<VectorValue<Real> >::VariablePhiDivergence& Assembly::feDivPhi | ( | FEType | type | ) | const |
const OutputTools<VectorValue<Real> >::VariablePhiDivergence& Assembly::feDivPhi | ( | FEType | type | ) | const |
Definition at line 4753 of file Assembly.C.
|
inline |
Definition at line 1723 of file Assembly.h.
const OutputTools<VectorValue<Real> >::VariablePhiDivergence& Assembly::feDivPhiFace | ( | FEType | type | ) | const |
const OutputTools<VectorValue<Real> >::VariablePhiDivergence& Assembly::feDivPhiFace | ( | FEType | type | ) | const |
Definition at line 4762 of file Assembly.C.
|
inline |
Definition at line 1741 of file Assembly.h.
const OutputTools<VectorValue<Real> >::VariablePhiDivergence& Assembly::feDivPhiFaceNeighbor | ( | FEType | type | ) | const |
const OutputTools<VectorValue<Real> >::VariablePhiDivergence& Assembly::feDivPhiFaceNeighbor | ( | FEType | type | ) | const |
Definition at line 4780 of file Assembly.C.
|
inline |
Definition at line 1732 of file Assembly.h.
const OutputTools<VectorValue<Real> >::VariablePhiDivergence& Assembly::feDivPhiNeighbor | ( | FEType | type | ) | const |
const OutputTools<VectorValue<Real> >::VariablePhiDivergence& Assembly::feDivPhiNeighbor | ( | FEType | type | ) | const |
Definition at line 4771 of file Assembly.C.
const OutputTools< OutputType >::VariablePhiValue & Assembly::feDualPhiLower | ( | FEType | type | ) | const |
Definition at line 2867 of file Assembly.h.
const OutputTools<VectorValue<Real> >::VariablePhiValue& Assembly::feDualPhiLower | ( | FEType | type | ) | const |
const OutputTools<VectorValue<Real> >::VariablePhiValue& Assembly::feDualPhiLower | ( | FEType | type | ) | const |
Definition at line 4618 of file Assembly.C.
const OutputTools< OutputType >::VariablePhiGradient & Assembly::feGradDualPhiLower | ( | FEType | type | ) | const |
Definition at line 2883 of file Assembly.h.
const OutputTools<VectorValue<Real> >::VariablePhiGradient& Assembly::feGradDualPhiLower | ( | FEType | type | ) | const |
const OutputTools<VectorValue<Real> >::VariablePhiGradient& Assembly::feGradDualPhiLower | ( | FEType | type | ) | const |
Definition at line 4634 of file Assembly.C.
|
inline |
Definition at line 1575 of file Assembly.h.
const OutputTools<VectorValue<Real> >::VariablePhiGradient& Assembly::feGradPhi | ( | FEType | type | ) | const |
const OutputTools<VectorValue<Real> >::VariablePhiGradient& Assembly::feGradPhi | ( | FEType | type | ) | const |
Definition at line 4593 of file Assembly.C.
|
inline |
Definition at line 1616 of file Assembly.h.
const OutputTools<VectorValue<Real> >::VariablePhiGradient& Assembly::feGradPhiFace | ( | FEType | type | ) | const |
const OutputTools<VectorValue<Real> >::VariablePhiGradient& Assembly::feGradPhiFace | ( | FEType | type | ) | const |
Definition at line 4650 of file Assembly.C.
|
inline |
Definition at line 1667 of file Assembly.h.
const OutputTools<VectorValue<Real> >::VariablePhiGradient& Assembly::feGradPhiFaceNeighbor | ( | FEType | type | ) | const |
const OutputTools<VectorValue<Real> >::VariablePhiGradient& Assembly::feGradPhiFaceNeighbor | ( | FEType | type | ) | const |
Definition at line 4700 of file Assembly.C.
const OutputTools< OutputType >::VariablePhiGradient & Assembly::feGradPhiLower | ( | FEType | type | ) | const |
Definition at line 2875 of file Assembly.h.
const OutputTools<VectorValue<Real> >::VariablePhiGradient& Assembly::feGradPhiLower | ( | FEType | type | ) | const |
const OutputTools<VectorValue<Real> >::VariablePhiGradient& Assembly::feGradPhiLower | ( | FEType | type | ) | const |
Definition at line 4626 of file Assembly.C.
|
inline |
Definition at line 1644 of file Assembly.h.
const OutputTools<VectorValue<Real> >::VariablePhiGradient& Assembly::feGradPhiNeighbor | ( | FEType | type | ) | const |
const OutputTools<VectorValue<Real> >::VariablePhiGradient& Assembly::feGradPhiNeighbor | ( | FEType | type | ) | const |
Definition at line 4675 of file Assembly.C.
|
inline |
Definition at line 1568 of file Assembly.h.
const OutputTools<VectorValue<Real> >::VariablePhiValue& Assembly::fePhi | ( | FEType | type | ) | const |
const OutputTools<VectorValue<Real> >::VariablePhiValue& Assembly::fePhi | ( | FEType | type | ) | const |
Definition at line 4585 of file Assembly.C.
|
inline |
Definition at line 1609 of file Assembly.h.
const OutputTools<VectorValue<Real> >::VariablePhiValue& Assembly::fePhiFace | ( | FEType | type | ) | const |
const OutputTools<VectorValue<Real> >::VariablePhiValue& Assembly::fePhiFace | ( | FEType | type | ) | const |
Definition at line 4642 of file Assembly.C.
|
inline |
Definition at line 1659 of file Assembly.h.
const OutputTools<VectorValue<Real> >::VariablePhiValue& Assembly::fePhiFaceNeighbor | ( | FEType | type | ) | const |
const OutputTools<VectorValue<Real> >::VariablePhiValue& Assembly::fePhiFaceNeighbor | ( | FEType | type | ) | const |
Definition at line 4692 of file Assembly.C.
const OutputTools< OutputType >::VariablePhiValue & Assembly::fePhiLower | ( | FEType | type | ) | const |
Definition at line 2859 of file Assembly.h.
const OutputTools<VectorValue<Real> >::VariablePhiValue& Assembly::fePhiLower | ( | FEType | type | ) | const |
const OutputTools<VectorValue<Real> >::VariablePhiValue& Assembly::fePhiLower | ( | FEType | type | ) | const |
Definition at line 4610 of file Assembly.C.
|
inline |
Definition at line 1637 of file Assembly.h.
const OutputTools<VectorValue<Real> >::VariablePhiValue& Assembly::fePhiNeighbor | ( | FEType | type | ) | const |
const OutputTools<VectorValue<Real> >::VariablePhiValue& Assembly::fePhiNeighbor | ( | FEType | type | ) | const |
Definition at line 4667 of file Assembly.C.
|
inline |
Definition at line 1588 of file Assembly.h.
const OutputTools<VectorValue<Real> >::VariablePhiSecond& Assembly::feSecondPhi | ( | FEType | type | ) | const |
const OutputTools<VectorValue<Real> >::VariablePhiSecond& Assembly::feSecondPhi | ( | FEType | type | ) | const |
Definition at line 4601 of file Assembly.C.
|
inline |
Definition at line 1629 of file Assembly.h.
const OutputTools<VectorValue<Real> >::VariablePhiSecond& Assembly::feSecondPhiFace | ( | FEType | type | ) | const |
const OutputTools<VectorValue<Real> >::VariablePhiSecond& Assembly::feSecondPhiFace | ( | FEType | type | ) | const |
Definition at line 4658 of file Assembly.C.
|
inline |
Definition at line 1675 of file Assembly.h.
const OutputTools<VectorValue<Real> >::VariablePhiSecond& Assembly::feSecondPhiFaceNeighbor | ( | FEType | type | ) | const |
const OutputTools<VectorValue<Real> >::VariablePhiSecond& Assembly::feSecondPhiFaceNeighbor | ( | FEType | type | ) | const |
Definition at line 4708 of file Assembly.C.
|
inline |
Definition at line 1651 of file Assembly.h.
const OutputTools<VectorValue<Real> >::VariablePhiSecond& Assembly::feSecondPhiNeighbor | ( | FEType | type | ) | const |
const OutputTools<VectorValue<Real> >::VariablePhiSecond& Assembly::feSecondPhiNeighbor | ( | FEType | type | ) | const |
Definition at line 4683 of file Assembly.C.
|
inline |
Definition at line 1258 of file Assembly.h.
const MooseArray<MooseADWrapper<Point, is_ad> >& Assembly::genericQPoints | ( | ) | const |
const MooseArray<MooseADWrapper<Point, false> >& Assembly::genericQPoints | ( | ) | const |
Definition at line 4950 of file Assembly.C.
const MooseArray<MooseADWrapper<Point, true> >& Assembly::genericQPoints | ( | ) | const |
Definition at line 4957 of file Assembly.C.
Get a reference to a pointer that will contain the current volume FE.
type | The type of FE |
dim | The dimension of the current volume |
Definition at line 116 of file Assembly.h.
Referenced by PointVariableSamplerBase::initialize(), and MooseVariableData< OutputType >::MooseVariableData().
Get a reference to a pointer that will contain the current "face" FE.
type | The type of FE |
dim | The dimension of the current face |
Definition at line 140 of file Assembly.h.
Get a reference to a pointer that will contain the current "neighbor" FE.
type | The type of FE |
dim | The dimension of the neighbor face |
Definition at line 152 of file Assembly.h.
Get a reference to a pointer that will contain the current 'neighbor' FE.
type | The type of FE |
dim | The dimension of the current volume |
Definition at line 128 of file Assembly.h.
Definition at line 1840 of file Assembly.h.
Referenced by ArrayDGKernel::computeElemNeighJacobian(), Kernel::computeJacobian(), ArrayKernel::computeJacobian(), EigenKernel::computeJacobian(), ArrayIntegratedBC::computeJacobian(), ArrayDGKernel::computeOffDiagElemNeighJacobian(), ArrayKernel::computeOffDiagJacobian(), and ArrayIntegratedBC::computeOffDiagJacobian().
|
inline |
Get a reference to a pointer that will contain the current volume FEVector.
type | The type of FEVector |
dim | The dimension of the current volume |
Definition at line 164 of file Assembly.h.
Referenced by MooseVariableData< OutputType >::MooseVariableData().
|
inline |
GetVector a reference to a pointer that will contain the current "face" FE.
type | The type of FE |
dim | The dimension of the current face |
Definition at line 188 of file Assembly.h.
|
inline |
GetVector a reference to a pointer that will contain the current "neighbor" FE.
type | The type of FE |
dim | The dimension of the neighbor face |
Definition at line 200 of file Assembly.h.
|
inline |
GetVector a reference to a pointer that will contain the current 'neighbor' FE.
type | The type of FE |
dim | The dimension of the current volume |
Definition at line 176 of file Assembly.h.
|
inline |
|
inline |
Definition at line 1277 of file Assembly.h.
|
inline |
Definition at line 1326 of file Assembly.h.
|
inline |
Definition at line 1415 of file Assembly.h.
|
inline |
Definition at line 1447 of file Assembly.h.
|
inline |
Definition at line 1528 of file Assembly.h.
|
inline |
|
inline |
Definition at line 1287 of file Assembly.h.
|
inline |
Definition at line 1347 of file Assembly.h.
|
inline |
Definition at line 1419 of file Assembly.h.
|
inline |
Definition at line 1468 of file Assembly.h.
|
inline |
Definition at line 1532 of file Assembly.h.
|
inline |
Definition at line 1313 of file Assembly.h.
Referenced by copyNeighborShapes().
|
inline |
Definition at line 1393 of file Assembly.h.
|
inline |
Definition at line 1436 of file Assembly.h.
|
inline |
Definition at line 1509 of file Assembly.h.
|
inline |
Definition at line 1558 of file Assembly.h.
|
inline |
|
inline |
Definition at line 1369 of file Assembly.h.
|
inline |
Definition at line 1423 of file Assembly.h.
|
inline |
Definition at line 1489 of file Assembly.h.
|
inline |
Definition at line 1545 of file Assembly.h.
void Assembly::hasScalingVector | ( | ) |
signals this object that a vector containing variable scaling factors should be used when doing residual and matrix assembly
Definition at line 4568 of file Assembly.C.
Referenced by SubProblem::hasScalingVector().
Indicate that we have p-refinement.
This method will perform the following tasks:
disable_p_refinement_for_families
-.Disable p-refinement of Lagrange helper types that we use for getting things like the physical locations of quadrature points and JxW. (Don't worry, we still use the element p-level when initializing the quadrature rule attached to the Lagrange helper so the number of quadrature points reflects the element p-level) disable_p_refinement_for_families | Families that we should disable p-refinement for |
Definition at line 4834 of file Assembly.C.
Referenced by SubProblem::doingPRefinement().
|
private |
request phi, dphi, xyz, JxW, etc.
data through the FE helper functions
Definition at line 4801 of file Assembly.C.
Referenced by Assembly(), and havePRefinement().
void Assembly::init | ( | const CouplingMatrix * | cm | ) |
Initialize the Assembly object and set the CouplingMatrix for use throughout.
Definition at line 2461 of file Assembly.C.
void Assembly::initNonlocalCoupling | ( | ) |
Create pair of variables requiring nonlocal jacobian contributions.
Definition at line 2643 of file Assembly.C.
Referenced by FEProblemBase::initialSetup().
|
inline |
Get local Jacobian block for a pair of variables and a tag.
Only blessed framework classes may call this API by creating the requisiste LocalDataKey
class
Definition at line 1092 of file Assembly.h.
Referenced by TaggingInterface::accumulateTaggedLocalMatrix(), addJacobianBlock(), addJacobianCoupledVarPair(), cacheJacobianCoupledVarPair(), prepareBlock(), prepareJacobianBlock(), TaggingInterface::prepareMatrixTag(), prepareOffDiagScalar(), prepareScalar(), and prepareVariable().
|
inlineprivate |
Sets whether or not lower Jacobian coupling between ivar
and jvar
is used to the value used
.
Definition at line 2228 of file Assembly.h.
Referenced by addJacobianLowerD(), addJacobianNeighborLowerD(), cacheJacobianMortar(), jacobianBlockMortar(), and prepareLowerD().
|
inlineprivate |
Return a flag to indicate if a particular coupling lower Jacobian block between ivar
and jvar
is used.
Definition at line 2237 of file Assembly.h.
DenseMatrix< Number > & Assembly::jacobianBlockMortar | ( | Moose::ConstraintJacobianType | type, |
unsigned int | ivar, | ||
unsigned int | jvar, | ||
LocalDataKey | , | ||
TagID | tag | ||
) |
Returns the jacobian block for the given mortar Jacobian type.
This jacobian block can involve degrees of freedom from the secondary side interior parent, the primary side interior parent, or the lower-dimensional element (located on the secondary side). Only blessed framework classes may call this API by creating the requisiste LocalDataKey
class
Definition at line 3149 of file Assembly.C.
Referenced by addJacobianLowerD(), addJacobianNeighborLowerD(), cacheJacobianMortar(), prepareLowerD(), and TaggingInterface::prepareMatrixTagLower().
DenseMatrix< Number > & Assembly::jacobianBlockNeighbor | ( | Moose::DGJacobianType | type, |
unsigned int | ivar, | ||
unsigned int | jvar, | ||
LocalDataKey | , | ||
TagID | tag | ||
) |
Get local Jacobian block of a DG Jacobian type for a pair of variables and a tag.
Only blessed framework classes may call this API by creating the requisiste LocalDataKey
class
Definition at line 3108 of file Assembly.C.
Referenced by TaggingInterface::accumulateTaggedLocalMatrix(), addJacobianNeighbor(), addJacobianNeighborLowerD(), cacheJacobianNeighbor(), TaggingInterface::prepareMatrixTagNeighbor(), and prepareNeighbor().
|
inlineprivate |
Sets whether or not neighbor Jacobian coupling between ivar
and jvar
is used to the value used
.
Definition at line 2210 of file Assembly.h.
Referenced by addJacobianNeighbor(), addJacobianNeighborLowerD(), cacheJacobianNeighbor(), jacobianBlockNeighbor(), and prepareNeighbor().
|
inlineprivate |
Return a flag to indicate if a particular coupling neighbor Jacobian block between ivar
and jvar
is used.
Definition at line 2219 of file Assembly.h.
|
inline |
Get local Jacobian block from non-local contribution for a pair of variables and a tag.
Only blessed framework classes may call this API by creating the requisiste LocalDataKey
class
Definition at line 1103 of file Assembly.h.
Referenced by addJacobianBlockNonlocal(), addJacobianNonlocal(), cacheJacobianNonlocal(), prepareBlockNonlocal(), TaggingInterface::prepareMatrixTagNonlocal(), prepareNonlocal(), and prepareVariableNonlocal().
|
inlineprivate |
Sets whether or not nonlocal Jacobian coupling between ivar
and jvar
is used to the value used
.
Definition at line 2246 of file Assembly.h.
Referenced by addJacobianNonlocal(), cacheJacobianNonlocal(), jacobianBlockNonlocal(), prepareBlockNonlocal(), prepareNonlocal(), and prepareVariableNonlocal().
|
inlineprivate |
Return a flag to indicate if a particular coupling nonlocal Jacobian block between ivar
and jvar
is used.
Definition at line 2255 of file Assembly.h.
|
inlineprivate |
Sets whether or not Jacobian coupling between ivar
and jvar
is used to the value used
.
Definition at line 2192 of file Assembly.h.
Referenced by addJacobianCoupledVarPair(), cacheJacobianCoupledVarPair(), jacobianBlock(), jacobianBlockNeighbor(), prepareBlock(), prepareJacobianBlock(), prepareOffDiagScalar(), prepareScalar(), and prepareVariable().
|
inlineprivate |
Return a flag to indicate if a particular coupling Jacobian block between ivar
and jvar
is used.
Definition at line 2201 of file Assembly.h.
|
inline |
Returns the reference to the transformed jacobian weights.
Definition at line 240 of file Assembly.h.
Referenced by elementVolume(), reinitDual(), reinitLowerDElem(), and reinitNeighbor().
|
inline |
Returns the reference to the transformed jacobian weights on a current face.
Definition at line 304 of file Assembly.h.
|
inline |
Returns a reference to JxW for mortar segment elements.
Definition at line 657 of file Assembly.h.
Referenced by Moose::Mortar::loopOverMortarSegments().
const MooseArray< Real > & Assembly::JxWNeighbor | ( | ) | const |
Returns the reference to the transformed jacobian weights on a current face.
Definition at line 257 of file Assembly.C.
|
inline |
Return the lower dimensional element.
Definition at line 429 of file Assembly.h.
Referenced by Moose::globalDofIndexToDerivative(), and MooseVariableFE< Real >::MooseVariableFE().
|
inline |
Definition at line 3155 of file Assembly.h.
|
inline |
Definition at line 315 of file Assembly.h.
Modify the weights when using the arbitrary quadrature rule.
The intention is to use this when you wish to supply your own quadrature after calling reinit at physical points.
You should only use this if the arbitrary quadrature is the current quadrature rule!
weights | The weights to fill into _current_JxW |
Definition at line 4574 of file Assembly.C.
Update the face integration weights for XFEM partial elements.
This only affects the weights if XFEM is used and if the element is cut.
elem | The element for which the weights are adjusted |
side | The side of element for which the weights are adjusted |
Definition at line 4547 of file Assembly.C.
Referenced by reinitFEFace().
|
private |
Update the integration weights for XFEM partial elements.
This only affects the weights if XFEM is used and if the element is cut.
elem | The element for which the weights are adjusted |
Definition at line 4527 of file Assembly.C.
Referenced by reinitFE().
|
inline |
Returns the reference to the coordinate transformation coefficients on the mortar segment mesh.
Definition at line 258 of file Assembly.h.
|
inline |
|
inline |
Indicates whether dual shape functions are used (computation is now repeated on each element so expense of computing dual shape functions is no longer trivial)
Definition at line 573 of file Assembly.h.
Referenced by Moose::Mortar::loopOverMortarSegments().
|
inline |
Return the neighbor element.
Definition at line 423 of file Assembly.h.
Referenced by Moose::globalDofIndexToDerivative(), MooseVariableFE< Real >::MooseVariableFE(), MooseVariableFV< Real >::MooseVariableFV(), qruleFaceHelper(), reinitElemAndNeighbor(), reinitFEFaceNeighbor(), reinitFENeighbor(), reinitFVFace(), reinitNeighbor(), reinitNeighborAtPhysical(), and reinitNeighborFaceRef().
|
inline |
Return the neighboring lower dimensional element.
Definition at line 435 of file Assembly.h.
|
inline |
Definition at line 3162 of file Assembly.h.
|
inline |
Returns the current neighboring side.
Definition at line 405 of file Assembly.h.
|
inline |
Returns the reference to the current neighbor volume.
Definition at line 461 of file Assembly.h.
Referenced by InterfaceKernelBase::getNeighborElemVolume(), InternalSideUserObject::getNeighborElemVolume(), and DGKernelBase::getNeighborElemVolume().
|
inline |
Returns the reference to the node.
Definition at line 495 of file Assembly.h.
Referenced by computeFaceMap(), computeSinglePointMapAD(), MooseVariableFE< Real >::MooseVariableFE(), and reinit().
|
inline |
Returns the reference to the neighboring node.
Definition at line 501 of file Assembly.h.
Referenced by MooseVariableFE< Real >::MooseVariableFE().
|
inline |
Definition at line 1253 of file Assembly.h.
|
inline |
Returns the array of normals for quadrature points on a current side.
Definition at line 310 of file Assembly.h.
|
inline |
Number of extra element integers Assembly tracked.
Definition at line 326 of file Assembly.h.
Referenced by reinitFE(), reinitFEFace(), and reinitNeighbor().
|
inline |
|
inline |
Definition at line 1275 of file Assembly.h.
|
inline |
Definition at line 1322 of file Assembly.h.
|
inline |
Definition at line 1414 of file Assembly.h.
|
inline |
Definition at line 1446 of file Assembly.h.
|
inline |
Definition at line 1527 of file Assembly.h.
|
inline |
|
inline |
Definition at line 1285 of file Assembly.h.
|
inline |
Definition at line 1343 of file Assembly.h.
|
inline |
Definition at line 1418 of file Assembly.h.
|
inline |
Definition at line 1464 of file Assembly.h.
|
inline |
Definition at line 1531 of file Assembly.h.
|
inline |
|
inline |
Definition at line 1388 of file Assembly.h.
|
inline |
Definition at line 1432 of file Assembly.h.
|
inline |
Definition at line 1505 of file Assembly.h.
|
inline |
Definition at line 1554 of file Assembly.h.
|
inline |
|
inline |
Definition at line 1364 of file Assembly.h.
|
inline |
Definition at line 1422 of file Assembly.h.
|
inline |
Definition at line 1485 of file Assembly.h.
|
inline |
Definition at line 1541 of file Assembly.h.
|
inline |
The current points in physical space where we have reinited through reinitAtPhysical()
Definition at line 234 of file Assembly.h.
void Assembly::prepare | ( | ) |
Definition at line 2709 of file Assembly.C.
void Assembly::prepareBlock | ( | unsigned int | ivar, |
unsigned | jvar, | ||
const std::vector< dof_id_type > & | dof_indices | ||
) |
Definition at line 2890 of file Assembly.C.
void Assembly::prepareBlockNonlocal | ( | unsigned int | ivar, |
unsigned | jvar, | ||
const std::vector< dof_id_type > & | idof_indices, | ||
const std::vector< dof_id_type > & | jdof_indices | ||
) |
Definition at line 2915 of file Assembly.C.
void Assembly::prepareJacobianBlock | ( | ) |
Sizes and zeroes the Jacobian blocks used for the current element.
Definition at line 2678 of file Assembly.C.
Referenced by prepare(), and reinitFVFace().
void Assembly::prepareLowerD | ( | ) |
Prepare the Jacobians and residuals for a lower dimensional element.
This method may be called when performing mortar finite element simulations
Definition at line 2834 of file Assembly.C.
Referenced by SubProblem::reinitLowerDElem().
void Assembly::prepareNeighbor | ( | ) |
Definition at line 2795 of file Assembly.C.
Referenced by reinitFVFace(), and SubProblem::reinitNeighborFaceRef().
void Assembly::prepareNonlocal | ( | ) |
Definition at line 2716 of file Assembly.C.
void Assembly::prepareOffDiagScalar | ( | ) |
Definition at line 2965 of file Assembly.C.
Referenced by NodalScalarKernel::reinit().
void Assembly::prepareResidual | ( | ) |
Sizes and zeroes the residual for the current element.
Definition at line 2700 of file Assembly.C.
Referenced by prepare(), and reinitFVFace().
void Assembly::prepareScalar | ( | ) |
Definition at line 2941 of file Assembly.C.
Referenced by FEProblemBase::reinitScalars().
void Assembly::prepareVariable | ( | MooseVariableFieldBase * | var | ) |
Used for preparing the dense residual and jacobian blocks for one particular variable.
var | The variable that needs to have its datastructures prepared |
Definition at line 2740 of file Assembly.C.
Referenced by SystemBase::prepareFace().
void Assembly::prepareVariableNonlocal | ( | MooseVariableFieldBase * | var | ) |
Definition at line 2768 of file Assembly.C.
Referenced by SystemBase::prepareFace().
|
private |
Appling scaling, constraints to the local residual block and populate the full DoF indices for array variable.
Definition at line 3209 of file Assembly.C.
Referenced by addResidualBlock(), cacheResidualBlock(), and setResidualBlock().
|
inline |
Returns the reference to the quadrature points.
Definition at line 222 of file Assembly.h.
|
inline |
Returns the reference to the current quadrature being used.
Definition at line 298 of file Assembly.h.
Referenced by GeometricSearchData::generateQuadratureNodes(), and GeometricSearchData::updateQuadratureNodes().
|
inline |
Returns the reference to the current quadrature points being used on the neighbor face.
Definition at line 489 of file Assembly.h.
|
inline |
Returns the reference to the mortar segment element quadrature points.
Definition at line 228 of file Assembly.h.
|
inline |
Returns the reference to the current quadrature being used.
Definition at line 210 of file Assembly.h.
Referenced by MooseVariableFE< Real >::MooseVariableFE().
|
private |
Definition at line 1916 of file Assembly.C.
Referenced by reinit(), and reinitElemFaceRef().
|
inline |
Returns the reference to the current quadrature being used on a current face.
Definition at line 286 of file Assembly.h.
Referenced by MooseVariableFE< Real >::MooseVariableFE().
|
private |
This is an abstraction over the internal qrules function.
This is necessary for faces because (nodes of) faces can exists in more than one subdomain. When this is the case, we need to use the quadrature rule from the subdomain that has the highest specified quadrature order. So when you need to access a face quadrature rule, you should retrieve it via this function.
Definition at line 1910 of file Assembly.C.
Referenced by reinitElemFaceRef(), and setFaceQRule().
|
inlineprivate |
Definition at line 2424 of file Assembly.h.
|
inline |
Returns a reference to the quadrature rule for the mortar segments.
Definition at line 662 of file Assembly.h.
Referenced by Moose::Mortar::loopOverMortarSegments().
|
inline |
Returns the reference to the current quadrature being used on a current neighbor.
Definition at line 471 of file Assembly.h.
Referenced by MooseVariableFE< Real >::MooseVariableFE().
Definition at line 2443 of file Assembly.h.
Referenced by attachQRuleElem(), attachQRuleFace(), qruleFaceHelper(), qrules(), reinit(), reinitFVFace(), reinitLowerDElem(), reinitNeighbor(), reinitNeighborFaceRef(), and setVolumeQRule().
|
inlineprivate |
This is a helper function for accessing quadrature rules for a particular dimensionality of element.
All access to quadrature rules in Assembly should be done via this accessor function.
Definition at line 2448 of file Assembly.h.
void Assembly::reinit | ( | const Elem * | elem | ) |
Reinitialize objects (JxW, q_points, ...) for an elements.
elem | The element we want to reinitialize on |
Definition at line 1811 of file Assembly.C.
Referenced by MooseMesh::buildHRefinementAndCoarseningMaps(), MooseMesh::buildPRefinementAndCoarseningMaps(), GeometricSearchData::generateQuadratureNodes(), ComputeBoundaryInitialConditionThread::onNode(), reinitAtPhysical(), reinitElemAndNeighbor(), and GeometricSearchData::updateQuadratureNodes().
void Assembly::reinit | ( | const Elem * | elem, |
const std::vector< Point > & | reference_points | ||
) |
Reinitialize the assembly data at specific points in the reference element.
Definition at line 1826 of file Assembly.C.
Reinitialize the assembly data on an side of an element.
Definition at line 1933 of file Assembly.C.
void Assembly::reinit | ( | const Elem * | elem, |
unsigned int | side, | ||
const std::vector< Point > & | reference_points | ||
) |
Reinitialize the assembly data on the side of a element at the custom reference points.
Definition at line 1952 of file Assembly.C.
void Assembly::reinit | ( | const Node * | node | ) |
Reinitialize assembly data for a node.
Definition at line 1980 of file Assembly.C.
void Assembly::reinitAtPhysical | ( | const Elem * | elem, |
const std::vector< Point > & | physical_points | ||
) |
Reinitialize the assembly data at specific physical point in the given element.
Definition at line 1780 of file Assembly.C.
void Assembly::reinitDual | ( | const Elem * | elem, |
const std::vector< Point > & | pts, | ||
const std::vector< Real > & | JxW | ||
) |
Reintialize dual basis coefficients based on a customized quadrature rule.
Definition at line 2264 of file Assembly.C.
Referenced by Moose::Mortar::loopOverMortarSegments().
void Assembly::reinitElemAndNeighbor | ( | const Elem * | elem, |
unsigned int | side, | ||
const Elem * | neighbor, | ||
unsigned int | neighbor_side, | ||
const std::vector< Point > * | neighbor_reference_points = nullptr |
||
) |
Reinitialize an element and its neighbor along a particular side.
elem | Element being reinitialized |
side | Side of the element |
neighbor | Neighbor facing the element on the side 'side' |
neighbor_side | The side id on the neighboring element. |
neighbor_reference_points | Optional argument specifying the neighbor reference points. If not passed, then neighbor reference points will be determined by doing an inverse map based on the physical location of the elem quadrature points |
Definition at line 1987 of file Assembly.C.
void Assembly::reinitElemFaceRef | ( | const Elem * | elem, |
unsigned int | elem_side, | ||
Real | tolerance, | ||
const std::vector< Point > *const | pts = nullptr , |
||
const std::vector< Real > *const | weights = nullptr |
||
) |
Reinitialize FE data for the given element on the given side, optionally with a given set of reference points.
Definition at line 2015 of file Assembly.C.
Referenced by SubProblem::reinitElemFaceRef().
|
private |
Just an internal helper function to reinit the volume FE objects.
elem | The element we are using to reinit |
Definition at line 757 of file Assembly.C.
Referenced by reinit().
Just an internal helper function to reinit the face FE objects.
elem | The element we are using to reinit |
side | The side of the element we are reiniting on |
Definition at line 1261 of file Assembly.C.
Referenced by reinit().
|
private |
Definition at line 1561 of file Assembly.C.
Referenced by reinitElemAndNeighbor(), and reinitNeighborAtPhysical().
|
private |
Definition at line 1620 of file Assembly.C.
Referenced by reinitNeighborAtPhysical().
Definition at line 1850 of file Assembly.C.
Referenced by SubProblem::reinitFVFace().
void Assembly::reinitLowerDElem | ( | const Elem * | elem, |
const std::vector< Point > *const | pts = nullptr , |
||
const std::vector< Real > *const | weights = nullptr |
||
) |
Reinitialize FE data for a lower dimenesional element with a given set of reference points.
Definition at line 2282 of file Assembly.C.
Referenced by SubProblem::reinitLowerDElem().
void Assembly::reinitMortarElem | ( | const Elem * | elem | ) |
reinitialize a mortar segment mesh element in order to get a proper JxW
Definition at line 2396 of file Assembly.C.
Referenced by SubProblem::reinitMortarElem().
void Assembly::reinitNeighbor | ( | const Elem * | neighbor, |
const std::vector< Point > & | reference_points | ||
) |
Reinitializes the neighbor side using reference coordinates.
Definition at line 1675 of file Assembly.C.
Referenced by reinitElemAndNeighbor(), and reinitNeighborAtPhysical().
void Assembly::reinitNeighborAtPhysical | ( | const Elem * | neighbor, |
unsigned int | neighbor_side, | ||
const std::vector< Point > & | physical_points | ||
) |
Reinitializes the neighbor at the physical coordinates on neighbor side given.
Definition at line 2410 of file Assembly.C.
void Assembly::reinitNeighborAtPhysical | ( | const Elem * | neighbor, |
const std::vector< Point > & | physical_points | ||
) |
Reinitializes the neighbor at the physical coordinates within element given.
Definition at line 2447 of file Assembly.C.
void Assembly::reinitNeighborFaceRef | ( | const Elem * | neighbor_elem, |
unsigned int | neighbor_side, | ||
Real | tolerance, | ||
const std::vector< Point > *const | pts, | ||
const std::vector< Real > *const | weights = nullptr |
||
) |
Reinitialize FE data for the given neighbor_element on the given side with a given set of reference points.
Definition at line 2186 of file Assembly.C.
Referenced by SubProblem::reinitNeighborFaceRef().
void Assembly::reinitNeighborLowerDElem | ( | const Elem * | elem | ) |
reinitialize a neighboring lower dimensional element
Definition at line 2375 of file Assembly.C.
Referenced by SubProblem::reinitNeighborLowerDElem().
|
inline |
Get local residual block for a variable and a tag.
Only blessed framework classes may call this API by creating the requisiste LocalDataKey
class
Definition at line 1065 of file Assembly.h.
Referenced by TaggingInterface::prepareVectorTagInternal().
|
inline |
Get residual block for lower.
Only blessed framework classes may call this API by creating the requisiste LocalDataKey
class
Definition at line 1083 of file Assembly.h.
Referenced by TaggingInterface::prepareVectorTagLower().
|
inline |
Get local neighbor residual block for a variable and a tag.
Only blessed framework classes may call this API by creating the requisiste LocalDataKey
class
Definition at line 1074 of file Assembly.h.
Referenced by TaggingInterface::prepareVectorTagNeighbor().
resize any objects that contribute to automatic differentiation-related mapping calculations
Definition at line 967 of file Assembly.C.
Referenced by computeADFace(), and reinitFE().
|
inline |
Helper function for assembling diagonal Jacobian contriubutions on local quadrature points for an array kernel, bc, etc.
ke | The local Jacobian |
i | The local test function index |
ntest | The number of test functions |
j | The local shape function index |
nphi | The number of shape functions |
v | The diagonal Jacobian contribution on the current qp |
Definition at line 1789 of file Assembly.h.
Referenced by ArrayDGKernel::computeElemNeighJacobian(), ArrayKernel::computeJacobian(), ArrayIntegratedBC::computeJacobian(), ArrayLowerDIntegratedBC::computeLowerDJacobian(), and ArrayDGLowerDKernel::computeLowerDJacobian().
|
inline |
Helper function for assembling full Jacobian contriubutions on local quadrature points for an array kernel, bc, etc.
ke | The local Jacobian |
i | The local test function index |
ntest | The number of test functions |
j | The local shape function index |
nphi | The number of shape functions |
ivar | The array variable index |
jvar | The contributing variable index |
v | The full Jacobian contribution from a variable on the current qp |
Definition at line 1814 of file Assembly.h.
Referenced by ArrayLowerDIntegratedBC::computeLowerDOffDiagJacobian(), ArrayDGKernel::computeOffDiagElemNeighJacobian(), ArrayKernel::computeOffDiagJacobian(), ArrayIntegratedBC::computeOffDiagJacobian(), ArrayKernel::computeOffDiagJacobianScalar(), ArrayIntegratedBC::computeOffDiagJacobianScalar(), and ArrayDGLowerDKernel::computeOffDiagLowerDJacobian().
|
inline |
Helper function for assembling residual contriubutions on local quadrature points for an array kernel, bc, etc.
re | The local residual |
i | The local test function index |
ntest | The number of test functions |
v | The residual contribution on the current qp |
Definition at line 1770 of file Assembly.h.
Referenced by ArrayDGKernel::computeElemNeighResidual(), ArrayDGLowerDKernel::computeLowerDResidual(), ArrayKernel::computeResidual(), ArrayLowerDIntegratedBC::computeResidual(), and ArrayIntegratedBC::computeResidual().
|
inline |
Definition at line 1263 of file Assembly.h.
Referenced by MortarScalarBase::computeScalarOffDiagJacobian().
|
inline |
|
inline |
Definition at line 1279 of file Assembly.h.
|
inline |
Definition at line 1330 of file Assembly.h.
|
inline |
Definition at line 1416 of file Assembly.h.
|
inline |
Definition at line 1451 of file Assembly.h.
|
inline |
Definition at line 1529 of file Assembly.h.
|
inline |
|
inline |
Definition at line 1351 of file Assembly.h.
|
inline |
Definition at line 1420 of file Assembly.h.
|
inline |
Definition at line 1472 of file Assembly.h.
|
inline |
Definition at line 1536 of file Assembly.h.
|
inline |
Definition at line 1317 of file Assembly.h.
Referenced by copyNeighborShapes().
|
inline |
Definition at line 1398 of file Assembly.h.
|
inline |
Definition at line 1440 of file Assembly.h.
|
inline |
Definition at line 1513 of file Assembly.h.
|
inline |
Definition at line 1562 of file Assembly.h.
|
inline |
|
inline |
Definition at line 1374 of file Assembly.h.
|
inline |
Definition at line 1427 of file Assembly.h.
|
inline |
Definition at line 1493 of file Assembly.h.
|
inline |
Definition at line 1549 of file Assembly.h.
void Assembly::setCachedJacobian | ( | GlobalDataKey | ) |
Sets previously-cached Jacobian values via SparseMatrix::set() calls.
Definition at line 4486 of file Assembly.C.
Referenced by NonlinearSystemBase::computeJacobianInternal(), and NonlinearSystemBase::computeNodalBCsResidualAndJacobian().
|
private |
Definition at line 1719 of file Assembly.C.
Referenced by computeCurrentElemVolume(), computeCurrentFaceVolume(), reinitLowerDElem(), reinitMortarElem(), and reinitNeighbor().
|
inline |
set the current boundary ID
Definition at line 387 of file Assembly.h.
Referenced by SubProblem::setCurrentBoundaryID().
|
inline |
Set the current lower dimensional element.
This may be null
Definition at line 3176 of file Assembly.h.
Referenced by SubProblem::setCurrentLowerDElem().
|
inline |
set the current subdomain ID
Definition at line 455 of file Assembly.h.
Referenced by DisplacedProblem::setNeighborSubdomainID().
|
inline |
set the current subdomain ID
Definition at line 377 of file Assembly.h.
Referenced by MooseMesh::buildHRefinementAndCoarseningMaps(), MooseMesh::buildPRefinementAndCoarseningMaps(), MaxQpsThread::operator()(), and DisplacedProblem::setCurrentSubdomainID().
Set the qrule to be used for face integration.
Note: This is normally set internally, only use if you know what you are doing!
qrule | The qrule you want to set |
dim | The spatial dimension of the qrule |
Definition at line 671 of file Assembly.C.
Referenced by reinit(), reinitElemFaceRef(), reinitFVFace(), setFaceQRule(), and setLowerQRule().
Set the face quadrature rule based on the provided element and side.
Definition at line 1923 of file Assembly.C.
Set the qrule to be used for lower dimensional integration.
qrule | The qrule you want to set |
dim | The spatial dimension of the qrule |
Definition at line 687 of file Assembly.C.
Referenced by reinitLowerDElem().
Specifies a custom qrule for integration on mortar segment mesh.
Used to properly integrate QUAD face elements using quadrature on TRI mortar segment elements. For example, to exactly integrate a FIRST order QUAD element, SECOND order quadrature on TRI mortar segments is needed.
Definition at line 732 of file Assembly.C.
Referenced by MortarConstraintBase::MortarConstraintBase().
Set the qrule to be used for neighbor integration.
Note: This is normally set internally, only use if you know what you are doing!
qrule | The qrule you want to set |
dim | The spatial dimension of the qrule |
Definition at line 706 of file Assembly.C.
Referenced by reinitFVFace(), reinitNeighbor(), and reinitNeighborFaceRef().
void Assembly::setResidual | ( | NumericVector< Number > & | residual, |
GlobalDataKey | , | ||
const VectorTag & | vector_tag | ||
) |
Sets local residuals of all field variables to the global residual vector for a tag.
Definition at line 3544 of file Assembly.C.
|
private |
Set a local residual block to a global residual vector with proper scaling.
Definition at line 3285 of file Assembly.C.
Referenced by setResidual(), and setResidualNeighbor().
void Assembly::setResidualNeighbor | ( | NumericVector< Number > & | residual, |
GlobalDataKey | , | ||
const VectorTag & | vector_tag | ||
) |
Sets local neighbor residuals of all field variables to the global residual vector for a tag.
Definition at line 3557 of file Assembly.C.
Set the qrule to be used for volume integration.
Note: This is normally set internally, only use if you know what you are doing!
qrule | The qrule you want to set |
dim | The spatial dimension of the qrule |
Definition at line 652 of file Assembly.C.
Referenced by reinit(), and setVolumeQRule().
void Assembly::setVolumeQRule | ( | const Elem * | elem | ) |
Set the volumetric quadrature rule based on the provided element.
Definition at line 1801 of file Assembly.C.
|
inline |
Set the pointer to the XFEM controller object.
Definition at line 1754 of file Assembly.h.
|
inline |
Returns the current side.
Definition at line 399 of file Assembly.h.
Referenced by computeADFace(), computeFaceMap(), modifyFaceWeightsDueToXFEM(), qruleArbitraryFace(), qruleFace(), qruleFaceHelper(), reinit(), reinitElemAndNeighbor(), reinitFEFace(), and setFaceQRule().
|
inline |
Returns the side element.
Definition at line 411 of file Assembly.h.
|
inline |
Returns the reference to the volume of current side element.
Definition at line 417 of file Assembly.h.
|
inline |
Returns the array of tangents for quadrature points on a current side.
Definition at line 321 of file Assembly.h.
|
inline |
Returns the reference to the current quadrature being used.
Definition at line 216 of file Assembly.h.
Referenced by MooseMesh::buildHRefinementAndCoarseningMaps(), and MooseMesh::buildPRefinementAndCoarseningMaps().
|
inline |
Returns the reference to the current quadrature being used on a current face.
Definition at line 292 of file Assembly.h.
Referenced by MooseMesh::buildHRefinementAndCoarseningMaps(), and MooseMesh::buildPRefinementAndCoarseningMaps().
|
inline |
Returns the reference to the current quadrature being used on a current neighbor.
Definition at line 477 of file Assembly.h.
void Assembly::zeroCachedJacobian | ( | GlobalDataKey | ) |
Zero out previously-cached Jacobian rows.
Definition at line 4506 of file Assembly.C.
|
private |
The AD version of the current coordinate transformation coefficients.
Definition at line 2379 of file Assembly.h.
Referenced by adCoordTransformation(), computeCurrentElemVolume(), computeCurrentFaceVolume(), and ~Assembly().
|
protected |
Definition at line 2803 of file Assembly.h.
Referenced by adCurvatures(), computeADFace(), computeFaceMap(), and ~Assembly().
|
protected |
Definition at line 2785 of file Assembly.h.
Referenced by computeFaceMap().
|
protected |
Definition at line 2783 of file Assembly.h.
Referenced by computeFaceMap().
|
protected |
Definition at line 2784 of file Assembly.h.
Referenced by computeFaceMap().
|
protected |
Definition at line 2792 of file Assembly.h.
Referenced by computeGradPhiAD(), computeSinglePointMapAD(), and resizeADMappingObjects().
|
protected |
Definition at line 2793 of file Assembly.h.
Referenced by computeGradPhiAD(), computeSinglePointMapAD(), and resizeADMappingObjects().
|
protected |
Definition at line 2794 of file Assembly.h.
Referenced by computeGradPhiAD(), computeSinglePointMapAD(), and resizeADMappingObjects().
|
protected |
Definition at line 2789 of file Assembly.h.
Referenced by computeGradPhiAD(), computeSinglePointMapAD(), and resizeADMappingObjects().
|
protected |
Definition at line 2790 of file Assembly.h.
Referenced by computeGradPhiAD(), computeSinglePointMapAD(), and resizeADMappingObjects().
|
protected |
Definition at line 2791 of file Assembly.h.
Referenced by computeGradPhiAD(), computeSinglePointMapAD(), and resizeADMappingObjects().
|
protected |
Definition at line 2781 of file Assembly.h.
Referenced by computeFaceMap(), computeSinglePointMapAD(), and resizeADMappingObjects().
|
protected |
AD quantities.
Definition at line 2780 of file Assembly.h.
Referenced by computeFaceMap(), computeSinglePointMapAD(), and resizeADMappingObjects().
|
protected |
Definition at line 2782 of file Assembly.h.
Referenced by computeSinglePointMapAD(), and resizeADMappingObjects().
|
protected |
Definition at line 2795 of file Assembly.h.
Referenced by computeGradPhiAD(), computeSinglePointMapAD(), and resizeADMappingObjects().
|
protected |
Definition at line 2796 of file Assembly.h.
Referenced by computeGradPhiAD(), computeSinglePointMapAD(), and resizeADMappingObjects().
|
protected |
Definition at line 2797 of file Assembly.h.
Referenced by computeGradPhiAD(), computeSinglePointMapAD(), and resizeADMappingObjects().
|
mutableprotected |
Definition at line 2733 of file Assembly.h.
Referenced by adGradPhi(), feADGradPhi(), reinitFE(), and ~Assembly().
|
mutableprotected |
Definition at line 2735 of file Assembly.h.
Referenced by computeADFace(), feADGradPhiFace(), and ~Assembly().
|
protected |
Definition at line 2786 of file Assembly.h.
Referenced by computeSinglePointMapAD(), and resizeADMappingObjects().
|
protected |
Definition at line 2787 of file Assembly.h.
Referenced by adJxW(), computeSinglePointMapAD(), reinitFE(), resizeADMappingObjects(), and ~Assembly().
|
protected |
Definition at line 2799 of file Assembly.h.
Referenced by adJxWFace(), computeADFace(), computeFaceMap(), and ~Assembly().
|
protected |
Definition at line 2800 of file Assembly.h.
Referenced by adNormals(), computeADFace(), computeFaceMap(), and ~Assembly().
|
protected |
Definition at line 2788 of file Assembly.h.
Referenced by adQPoints(), computeCurrentElemVolume(), computeSinglePointMapAD(), reinitFE(), resizeADMappingObjects(), and ~Assembly().
|
protected |
Definition at line 2801 of file Assembly.h.
Referenced by adQPointsFace(), computeADFace(), computeCurrentFaceVolume(), computeFaceMap(), and ~Assembly().
|
mutableprotected |
Definition at line 2734 of file Assembly.h.
Referenced by reinitFE(), and ~Assembly().
|
mutableprotected |
Definition at line 2737 of file Assembly.h.
Referenced by computeADFace(), and ~Assembly().
|
protected |
Will be true if our preconditioning matrix is a block-diagonal matrix. Which means that we can take some shortcuts.
Definition at line 2768 of file Assembly.h.
Referenced by init(), jacobianBlock(), jacobianBlockLowerUsed(), jacobianBlockMortar(), jacobianBlockNeighbor(), jacobianBlockNeighborUsed(), jacobianBlockNonlocal(), jacobianBlockNonlocalUsed(), and jacobianBlockUsed().
|
private |
Whether we are currently building the FE classes for the helpers.
Definition at line 2329 of file Assembly.h.
Referenced by Assembly(), buildFaceFE(), buildFaceNeighborFE(), buildFE(), buildLowerDFE(), and buildNeighborFE().
|
protected |
Column where the corresponding cached value should go.
Definition at line 2763 of file Assembly.h.
Referenced by addCachedJacobian(), cacheJacobian(), cacheJacobianBlock(), cacheJacobianBlockNonzero(), clearCachedJacobian(), init(), and setCachedJacobian().
|
protected |
Row where the corresponding cached value should go.
Definition at line 2761 of file Assembly.h.
Referenced by addCachedJacobian(), cacheJacobian(), cacheJacobianBlock(), cacheJacobianBlockNonzero(), clearCachedJacobian(), init(), setCachedJacobian(), and zeroCachedJacobian().
|
protected |
Values cached by calling cacheJacobian()
Definition at line 2759 of file Assembly.h.
Referenced by addCachedJacobian(), cacheJacobian(), cacheJacobianBlock(), cacheJacobianBlockNonzero(), clearCachedJacobian(), init(), and setCachedJacobian().
|
protected |
Where the cached values should go (the first vector is for TIME vs NONTIME)
Definition at line 2754 of file Assembly.h.
Referenced by addCachedResidualDirectly(), addCachedResiduals(), cacheResidual(), cacheResidualLower(), cacheResidualNeighbor(), cacheResidualNodes(), clearCachedResiduals(), and init().
|
protected |
Values cached by calling cacheResidual() (the first vector is for TIME vs NONTIME)
Definition at line 2751 of file Assembly.h.
Referenced by addCachedResidualDirectly(), addCachedResiduals(), cacheResidual(), cacheResidualLower(), cacheResidualNeighbor(), cacheResidualNodes(), clearCachedResiduals(), and init().
|
mutableprotected |
Whether to calculate coord with AD.
This will only be set to true
if a consumer calls adCoordTransformation()
Definition at line 2816 of file Assembly.h.
Referenced by adCoordTransformation(), computeCurrentElemVolume(), and computeCurrentFaceVolume().
|
mutableprotected |
Definition at line 2812 of file Assembly.h.
Referenced by adCurvatures(), computeADFace(), computeFaceMap(), reinitElemFaceRef(), and reinitFEFace().
|
mutableprotected |
Definition at line 2811 of file Assembly.h.
Referenced by adCoordTransformation(), adQPointsFace(), computeADFace(), and computeFaceMap().
|
mutableprotected |
Definition at line 2810 of file Assembly.h.
Referenced by adCoordTransformation(), adQPoints(), computeSinglePointMapAD(), reinitFE(), and resizeADMappingObjects().
|
private |
Coupling matrices.
Definition at line 2271 of file Assembly.h.
Referenced by addJacobianBlock(), addJacobianBlockNonlocal(), addJacobianNeighbor(), cacheJacobianBlock(), cacheJacobianBlockNonzero(), and init().
|
private |
Entries in the coupling matrix for field variables.
Definition at line 2284 of file Assembly.h.
Referenced by addJacobian(), addJacobianLowerD(), addJacobianNeighbor(), addJacobianNeighborLowerD(), cacheJacobian(), cacheJacobianMortar(), cacheJacobianNeighbor(), couplingEntries(), init(), prepareJacobianBlock(), prepareLowerD(), prepareNeighbor(), and prepareVariable().
|
private |
Entries in the coupling matrix for field variables vs scalar variables.
Definition at line 2286 of file Assembly.h.
Referenced by addJacobian(), cacheJacobian(), fieldScalarCouplingEntries(), and init().
|
private |
Entries in the coupling matrix for field variables for nonlocal calculations.
Definition at line 2292 of file Assembly.h.
Referenced by addJacobianNonlocal(), cacheJacobianNonlocal(), initNonlocalCoupling(), nonlocalCouplingEntries(), prepareNonlocal(), and prepareVariableNonlocal().
|
private |
Entries in the coupling matrix for scalar variables vs field variables.
Definition at line 2288 of file Assembly.h.
Referenced by addJacobian(), cacheJacobian(), init(), and scalarFieldCouplingEntries().
|
private |
Entries in the coupling matrix for scalar variables.
Definition at line 2290 of file Assembly.h.
Referenced by addJacobianScalar(), and init().
|
protected |
Definition at line 2848 of file Assembly.h.
Referenced by cacheJacobian().
|
protected |
An flag array Indiced by variable index to show if there is no component-wise coupling for the variable.
Definition at line 2771 of file Assembly.h.
Referenced by addJacobianBlock(), addJacobianBlockNonlocal(), addJacobianNeighbor(), cacheJacobianBlock(), cacheJacobianBlockNonzero(), init(), prepareBlock(), prepareBlockNonlocal(), prepareJacobianBlock(), prepareLowerD(), prepareNeighbor(), prepareNonlocal(), prepareVariable(), prepareVariableNonlocal(), saveDiagLocalArrayJacobian(), and saveFullLocalArrayJacobian().
|
protected |
In place side element builder for computeFaceMap()
Definition at line 2831 of file Assembly.h.
Referenced by computeFaceMap().
|
private |
Whether we are currently computing the Jacobian.
Definition at line 2278 of file Assembly.h.
Referenced by computingJacobian().
|
private |
Whether we are currently computing the residual.
Definition at line 2275 of file Assembly.h.
Referenced by computingResidual().
|
private |
Whether we are currently computing the residual and Jacobian.
Definition at line 2281 of file Assembly.h.
Referenced by computingResidualAndJacobian().
|
private |
The current coordinate transformation coefficients.
Definition at line 2377 of file Assembly.h.
Referenced by computeCurrentElemVolume(), computeCurrentFaceVolume(), coordTransformation(), and ~Assembly().
|
private |
The coordinate transformation coefficients evaluated on the quadrature points of the mortar segment mesh.
Definition at line 2527 of file Assembly.h.
Referenced by mortarCoordTransformation(), reinitMortarElem(), and ~Assembly().
|
private |
The current coordinate transformation coefficients.
Definition at line 2524 of file Assembly.h.
Referenced by reinitNeighbor(), and ~Assembly().
|
private |
The coordinate system.
Definition at line 2375 of file Assembly.h.
Referenced by coordSystem(), and setCoordinateTransformation().
|
protected |
The current boundary ID.
Definition at line 2553 of file Assembly.h.
Referenced by currentBoundaryID(), and setCurrentBoundaryID().
|
protected |
The current "element" we are currently on.
Definition at line 2549 of file Assembly.h.
Referenced by computeCurrentElemVolume(), computeCurrentFaceVolume(), elem(), reinit(), reinitAtPhysical(), reinitElemFaceRef(), reinitFE(), reinitFEFace(), and reinitFVFace().
|
protected |
Volume of the current element.
Definition at line 2555 of file Assembly.h.
Referenced by computeCurrentElemVolume(), and elemVolume().
|
protected |
Boolean to indicate whether current element volumes has been computed.
Definition at line 2579 of file Assembly.h.
Referenced by computeCurrentElemVolume(), reinit(), reinitAtPhysical(), and reinitFVFace().
|
private |
The "volume" fe object that matches the current elem.
Definition at line 2335 of file Assembly.h.
Referenced by reinitFE().
|
private |
The "face" fe object that matches the current elem.
Definition at line 2337 of file Assembly.h.
Referenced by reinitElemFaceRef(), and reinitFEFace().
|
private |
helper object for transforming coordinates
Definition at line 2473 of file Assembly.h.
|
private |
The "neighbor face" fe object that matches the current elem.
Definition at line 2341 of file Assembly.h.
Referenced by reinitFEFaceNeighbor(), and reinitNeighborFaceRef().
|
private |
The current helper object for transforming coordinates.
Definition at line 2361 of file Assembly.h.
|
private |
The "neighbor" fe object that matches the current elem.
Definition at line 2339 of file Assembly.h.
Referenced by reinitFENeighbor().
|
private |
The current list of transformed jacobian weights.
Definition at line 2373 of file Assembly.h.
Referenced by computeCurrentElemVolume(), JxW(), modifyArbitraryWeights(), modifyWeightsDueToXFEM(), and reinitFE().
|
private |
The current transformed jacobian weights on a face.
Definition at line 2481 of file Assembly.h.
Referenced by computeADFace(), computeCurrentFaceVolume(), JxWFace(), modifyFaceWeightsDueToXFEM(), reinitElemFaceRef(), and reinitFEFace().
|
private |
The current transformed jacobian weights on a neighbor's face.
Definition at line 2522 of file Assembly.h.
Referenced by JxWNeighbor(), and reinitNeighborAtPhysical().
|
protected |
The current lower dimensional element.
Definition at line 2584 of file Assembly.h.
Referenced by lowerDElem(), reinitLowerDElem(), and setCurrentLowerDElem().
|
protected |
The current lower dimensional element volume.
Definition at line 2590 of file Assembly.h.
Referenced by lowerDElemVolume(), and reinitLowerDElem().
|
protected |
The current neighbor "element".
Definition at line 2563 of file Assembly.h.
Referenced by neighbor(), reinit(), reinitAtPhysical(), reinitFVFace(), reinitNeighbor(), and reinitNeighborFaceRef().
|
protected |
The current neighboring lower dimensional element.
Definition at line 2586 of file Assembly.h.
Referenced by neighborLowerDElem(), and reinitNeighborLowerDElem().
|
protected |
The current neighboring lower dimensional element volume.
Definition at line 2594 of file Assembly.h.
Referenced by neighborLowerDElemVolume(), and reinitNeighborLowerDElem().
|
protected |
The current neighboring node we are working with.
Definition at line 2577 of file Assembly.h.
Referenced by nodeNeighbor(), and reinit().
|
protected |
The current reference points on the neighbor element.
Definition at line 2854 of file Assembly.h.
Referenced by reinitElemAndNeighbor(), and reinitNeighborAtPhysical().
|
protected |
The current side of the selected neighboring element (valid only when working with sides)
Definition at line 2567 of file Assembly.h.
Referenced by neighborSide(), reinitElemAndNeighbor(), and reinitFVFace().
|
protected |
The current side element of the ncurrent neighbor element.
Definition at line 2569 of file Assembly.h.
Referenced by reinitElemAndNeighbor(), and reinitNeighborAtPhysical().
|
protected |
In place side element builder for _current_neighbor_side_elem.
Definition at line 2829 of file Assembly.h.
Referenced by reinitElemAndNeighbor(), and reinitNeighborAtPhysical().
|
protected |
The current neighbor subdomain ID.
Definition at line 2565 of file Assembly.h.
Referenced by currentNeighborSubdomainID(), reinitFVFace(), reinitNeighbor(), and setCurrentNeighborSubdomainID().
|
protected |
Volume of the current neighbor.
Definition at line 2573 of file Assembly.h.
Referenced by neighborVolume(), and reinitNeighbor().
|
protected |
The current node we are working with.
Definition at line 2575 of file Assembly.h.
|
private |
The current Normal vectors at the quadrature points.
Definition at line 2483 of file Assembly.h.
Referenced by computeADFace(), normals(), reinitElemFaceRef(), and reinitFEFace().
|
protected |
This will be filled up with the physical points passed into reinitAtPhysical() if it is called. Invalid at all other times.
Definition at line 2599 of file Assembly.h.
Referenced by modifyArbitraryWeights(), physicalPoints(), reinitAtPhysical(), reinitNeighborAtPhysical(), and ~Assembly().
|
private |
The current list of quadrature points.
Definition at line 2371 of file Assembly.h.
Referenced by computeCurrentElemVolume(), modifyWeightsDueToXFEM(), qPoints(), and reinitFE().
|
private |
The current quadrature points on a face.
Definition at line 2479 of file Assembly.h.
Referenced by computeADFace(), computeCurrentFaceVolume(), modifyFaceWeightsDueToXFEM(), qPointsFace(), reinitElemAndNeighbor(), reinitElemFaceRef(), reinitFEFace(), and reinitFVFace().
|
private |
The current quadrature points on the neighbor face.
Definition at line 2518 of file Assembly.h.
Referenced by qPointsFaceNeighbor(), reinitFEFaceNeighbor(), reinitFVFace(), and reinitNeighborFaceRef().
|
private |
The current arbitrary quadrature rule used on element faces.
Definition at line 2477 of file Assembly.h.
|
private |
The current current quadrature rule being used (could be either volumetric or arbitrary - for dirac kernels)
Definition at line 2363 of file Assembly.h.
Referenced by clearCachedQRules(), computeCurrentElemVolume(), modifyArbitraryWeights(), modifyWeightsDueToXFEM(), qRule(), reinit(), reinitFE(), setVolumeQRule(), and writeableQRule().
|
private |
The current arbitrary quadrature rule used within the element interior.
Definition at line 2367 of file Assembly.h.
Referenced by modifyArbitraryWeights(), modifyFaceWeightsDueToXFEM(), modifyWeightsDueToXFEM(), and reinit().
|
private |
The current arbitrary quadrature rule used on the element face.
Definition at line 2369 of file Assembly.h.
Referenced by reinit().
|
private |
quadrature rule used on faces
Definition at line 2475 of file Assembly.h.
Referenced by clearCachedQRules(), computeADFace(), computeCurrentFaceVolume(), modifyFaceWeightsDueToXFEM(), qRuleFace(), reinit(), reinitElemFaceRef(), reinitFVFace(), setFaceQRule(), and writeableQRuleFace().
|
private |
quadrature rule used on lower dimensional elements.
This should always be the same as the face qrule
Definition at line 2545 of file Assembly.h.
Referenced by clearCachedQRules(), reinitLowerDElem(), and setLowerQRule().
|
private |
quadrature rule used on neighbors
Definition at line 2516 of file Assembly.h.
Referenced by clearCachedQRules(), qRuleNeighbor(), setNeighborQRule(), and writeableQRuleNeighbor().
|
private |
The current volumetric quadrature for the element.
Definition at line 2365 of file Assembly.h.
Referenced by setVolumeQRule().
|
protected |
The current side of the selected element (valid only when working with sides)
Definition at line 2557 of file Assembly.h.
Referenced by reinit(), reinitFVFace(), and side().
|
protected |
The current "element" making up the side we are currently on.
Definition at line 2559 of file Assembly.h.
Referenced by reinit(), reinitFVFace(), and sideElem().
|
protected |
In place side element builder for _current_side_elem.
Definition at line 2827 of file Assembly.h.
Referenced by reinit(), and reinitFVFace().
|
protected |
Volume of the current side element.
Definition at line 2561 of file Assembly.h.
Referenced by computeCurrentFaceVolume(), and sideElemVolume().
|
protected |
Boolean to indicate whether current element side volumes has been computed.
Definition at line 2581 of file Assembly.h.
Referenced by computeCurrentFaceVolume(), reinit(), and reinitFVFace().
|
protected |
The current subdomain ID.
Definition at line 2551 of file Assembly.h.
Referenced by currentSubdomainID(), qrules(), reinit(), reinitAtPhysical(), reinitFVFace(), and setCurrentSubdomainID().
|
private |
The current tangent vectors at the quadrature points.
Definition at line 2487 of file Assembly.h.
Referenced by reinitElemFaceRef(), and tangents().
|
private |
The "volume" vector fe object that matches the current elem.
Definition at line 2344 of file Assembly.h.
Referenced by reinitFE().
|
private |
The "face" vector fe object that matches the current elem.
Definition at line 2346 of file Assembly.h.
Referenced by reinitElemFaceRef(), and reinitFEFace().
|
private |
The "neighbor face" vector fe object that matches the current elem.
Definition at line 2350 of file Assembly.h.
Referenced by reinitFEFaceNeighbor(), and reinitNeighborFaceRef().
|
private |
The "neighbor" vector fe object that matches the current elem.
Definition at line 2348 of file Assembly.h.
Referenced by reinitFENeighbor().
|
protected |
Definition at line 2802 of file Assembly.h.
Referenced by computeADFace(), reinitElemFaceRef(), reinitFEFace(), and ~Assembly().
|
private |
Flag specifying whether a custom quadrature rule has been specified for mortar segment mesh.
Definition at line 2541 of file Assembly.h.
Referenced by createQRules(), and setMortarQRule().
|
protected |
Container of displacement numbers and directions.
Definition at line 2808 of file Assembly.h.
Referenced by assignDisplacements(), computeFaceMap(), and computeSinglePointMapAD().
|
private |
Definition at line 2268 of file Assembly.h.
Referenced by computeADFace(), and reinitFE().
|
private |
DOF map.
Definition at line 2301 of file Assembly.h.
Referenced by addJacobianBlock(), cacheJacobian(), cacheJacobianBlock(), cacheJacobianBlockNonzero(), cacheResiduals(), and processLocalResidual().
|
protected |
A working matrix to avoid repeated heap allocations when caching Jacobians that must have libMesh-level constraints (hanging nodes, periodic bcs) applied to them.
This stores local Jacobian values
Definition at line 2843 of file Assembly.h.
Referenced by cacheJacobian().
|
protected |
A working vector to avoid repeated heap allocations when caching residuals that must have libMesh-level constraints (hanging nodes, periodic bcs) applied to them.
This stores local residual values
Definition at line 2838 of file Assembly.h.
Referenced by cacheResiduals().
|
private |
Extra element IDs.
Definition at line 2490 of file Assembly.h.
Referenced by Assembly(), extraElemID(), numExtraElemIntegers(), reinitFE(), and reinitFEFace().
Each dimension's actual fe objects indexed on type.
Definition at line 2355 of file Assembly.h.
Referenced by Assembly(), buildFE(), getFE(), havePRefinement(), reinitFE(), setVolumeQRule(), and ~Assembly().
types of finite elements
Definition at line 2467 of file Assembly.h.
Referenced by Assembly(), buildFaceFE(), computeADFace(), getFEFace(), havePRefinement(), reinitElemFaceRef(), reinitFEFace(), setFaceQRule(), and ~Assembly().
Definition at line 2500 of file Assembly.h.
Referenced by Assembly(), buildFaceNeighborFE(), getFEFaceNeighbor(), havePRefinement(), reinitFEFaceNeighbor(), reinitNeighborFaceRef(), setNeighborQRule(), and ~Assembly().
FE objects for lower dimensional elements.
Definition at line 2509 of file Assembly.h.
Referenced by Assembly(), buildLowerDDualFE(), buildLowerDFE(), havePRefinement(), reinitDual(), reinitLowerDElem(), setLowerQRule(), and ~Assembly().
|
private |
A FE object for working on mortar segement elements.
Definition at line 2534 of file Assembly.h.
Referenced by Assembly(), createQRules(), qPointsMortar(), reinitMortarElem(), and setMortarQRule().
types of finite elements
Definition at line 2499 of file Assembly.h.
Referenced by Assembly(), buildNeighborFE(), getFENeighbor(), havePRefinement(), reinitFENeighbor(), and ~Assembly().
|
mutableprotected |
Shape function values, gradients, second derivatives for each FE type.
Definition at line 2718 of file Assembly.h.
Referenced by buildFE(), feCurlPhi(), feDivPhi(), feGradPhi(), fePhi(), feSecondPhi(), and reinitFE().
|
mutableprotected |
Definition at line 2723 of file Assembly.h.
Referenced by buildLowerDDualFE(), feDualPhiLower(), feGradDualPhiLower(), and reinitLowerDElem().
|
mutableprotected |
Definition at line 2719 of file Assembly.h.
Referenced by buildFaceFE(), computeADFace(), feCurlPhiFace(), feDivPhiFace(), feGradPhiFace(), fePhiFace(), feSecondPhiFace(), reinitElemFaceRef(), and reinitFEFace().
|
mutableprotected |
Definition at line 2721 of file Assembly.h.
Referenced by buildFaceNeighborFE(), feCurlPhiFaceNeighbor(), feDivPhiFaceNeighbor(), feGradPhiFaceNeighbor(), fePhiFaceNeighbor(), feSecondPhiFaceNeighbor(), reinitFEFaceNeighbor(), and reinitNeighborFaceRef().
|
mutableprotected |
Definition at line 2722 of file Assembly.h.
Referenced by buildLowerDFE(), feGradPhiLower(), fePhiLower(), and reinitLowerDElem().
|
mutableprotected |
Definition at line 2720 of file Assembly.h.
Referenced by buildNeighborFE(), feCurlPhiNeighbor(), feDivPhiNeighbor(), feGradPhiNeighbor(), fePhiNeighbor(), feSecondPhiNeighbor(), and reinitFENeighbor().
|
protected |
Definition at line 2657 of file Assembly.h.
Referenced by gradPhi().
|
protected |
Definition at line 2661 of file Assembly.h.
Referenced by gradPhiFace().
|
protected |
Definition at line 2669 of file Assembly.h.
Referenced by gradPhiFaceNeighbor().
|
protected |
Definition at line 2665 of file Assembly.h.
Referenced by gradPhiNeighbor().
|
protected |
Whether we have ever conducted p-refinement.
Definition at line 2851 of file Assembly.h.
Referenced by havePRefinement().
|
private |
The finite element type of the FE helper classes.
The helper class gives us data like JxW, the physical quadrature point locations, etc.
Definition at line 2311 of file Assembly.h.
Referenced by buildFaceFE(), buildFaceNeighborFE(), buildFE(), buildLowerDFE(), and buildNeighborFE().
Each dimension's helper objects.
Definition at line 2471 of file Assembly.h.
Referenced by Assembly(), computeADFace(), computeFaceMap(), havePRefinement(), helpersRequestData(), reinitElemFaceRef(), and reinitFEFace().
Definition at line 2506 of file Assembly.h.
Referenced by Assembly(), havePRefinement(), helpersRequestData(), reinitFEFaceNeighbor(), and reinitNeighborFaceRef().
Each dimension's helper objects.
Definition at line 2359 of file Assembly.h.
Referenced by Assembly(), havePRefinement(), helpersRequestData(), reinitAtPhysical(), and reinitFE().
helper object for transforming coordinates for lower dimensional element quadrature points
Definition at line 2513 of file Assembly.h.
Referenced by Assembly(), havePRefinement(), helpersRequestData(), and reinitLowerDElem().
Each dimension's helper objects.
Definition at line 2505 of file Assembly.h.
Referenced by Assembly(), havePRefinement(), helpersRequestData(), and reinitNeighbor().
|
private |
Holds pointers to the dimension's normal vectors.
Definition at line 2494 of file Assembly.h.
|
private |
Flag that indicates if the jacobian block for the lower dimensional element was used.
Definition at line 2299 of file Assembly.h.
Referenced by addJacobianLowerD(), addJacobianNeighborLowerD(), cacheJacobianMortar(), init(), jacobianBlockLowerUsed(), and prepareLowerD().
|
private |
Flag that indicates if the jacobian block for neighbor was used.
Definition at line 2297 of file Assembly.h.
Referenced by addJacobianNeighbor(), addJacobianNeighborLowerD(), cacheJacobianNeighbor(), init(), jacobianBlockNeighborUsed(), and prepareNeighbor().
|
private |
Definition at line 2295 of file Assembly.h.
Referenced by addJacobianNonlocal(), cacheJacobianNonlocal(), init(), jacobianBlockNonlocalUsed(), prepareBlockNonlocal(), prepareNonlocal(), and prepareVariableNonlocal().
|
private |
Flag that indicates if the jacobian block was used.
Definition at line 2294 of file Assembly.h.
Referenced by addJacobianCoupledVarPair(), cacheJacobianCoupledVarPair(), init(), jacobianBlockUsed(), prepareBlock(), prepareJacobianBlock(), prepareOffDiagScalar(), prepareScalar(), and prepareVariable().
|
private |
A JxW for working on mortar segement elements.
Definition at line 2532 of file Assembly.h.
Referenced by Assembly(), and jxWMortar().
|
private |
Mapped normals.
Definition at line 2485 of file Assembly.h.
Referenced by mappedNormals(), and reinitFEFace().
|
protected |
Definition at line 2765 of file Assembly.h.
Referenced by addCachedJacobian().
|
protected |
Definition at line 2756 of file Assembly.h.
Referenced by clearCachedResiduals().
|
private |
Definition at line 2305 of file Assembly.h.
Referenced by adCurvatures(), Assembly(), and havePRefinement().
|
private |
Definition at line 2307 of file Assembly.h.
Referenced by Assembly(), buildFaceFE(), buildFaceNeighborFE(), buildFE(), buildLowerDDualFE(), buildLowerDFE(), buildNeighborFE(), buildVectorDualLowerDFE(), buildVectorFaceFE(), buildVectorFaceNeighborFE(), buildVectorFE(), buildVectorLowerDFE(), buildVectorNeighborFE(), bumpAllQRuleOrder(), bumpVolumeQRuleOrder(), createQRules(), havePRefinement(), helpersRequestData(), reinitDual(), reinitLowerDElem(), reinitMortarElem(), reinitNeighborLowerDElem(), and ~Assembly().
|
protected |
Definition at line 2833 of file Assembly.h.
Referenced by msmElem(), and reinitMortarElem().
|
mutableprotected |
Definition at line 2820 of file Assembly.h.
Referenced by feCurlPhi(), feCurlPhiFace(), feCurlPhiFaceNeighbor(), feCurlPhiNeighbor(), reinitElemFaceRef(), reinitFE(), reinitFEFace(), reinitFEFaceNeighbor(), reinitFENeighbor(), and reinitNeighborFaceRef().
|
mutableprotected |
Definition at line 2821 of file Assembly.h.
Referenced by feDivPhi(), feDivPhiFace(), feDivPhiFaceNeighbor(), feDivPhiNeighbor(), reinitElemFaceRef(), reinitFE(), reinitFEFace(), reinitFEFaceNeighbor(), reinitFENeighbor(), and reinitNeighborFaceRef().
|
protected |
Whether dual shape functions need to be computed for mortar constraints.
Definition at line 2596 of file Assembly.h.
Referenced by activateDual(), and needDual().
|
mutableprivate |
Flag to indicate that JxW_neighbor is needed.
Definition at line 2520 of file Assembly.h.
Referenced by JxWNeighbor(), and reinitNeighborAtPhysical().
|
mutableprotected |
Whether we need to compute the lower dimensional element volume.
Definition at line 2588 of file Assembly.h.
Referenced by lowerDElemVolume(), and reinitLowerDElem().
|
mutableprotected |
true is apps need to compute neighbor element volume
Definition at line 2571 of file Assembly.h.
Referenced by neighborVolume(), and reinitNeighbor().
|
mutableprotected |
Whether we need to compute the neighboring lower dimensional element volume.
Definition at line 2592 of file Assembly.h.
Referenced by neighborLowerDElemVolume(), and reinitNeighborLowerDElem().
|
mutableprotected |
Definition at line 2818 of file Assembly.h.
Referenced by buildFaceFE(), buildFE(), buildLowerDDualFE(), buildLowerDFE(), buildVectorDualLowerDFE(), buildVectorLowerDFE(), feSecondPhi(), feSecondPhiFace(), reinitElemFaceRef(), reinitFE(), reinitFEFace(), reinitFEFaceNeighbor(), reinitFENeighbor(), and reinitNeighborFaceRef().
|
mutableprotected |
Definition at line 2819 of file Assembly.h.
Referenced by buildFaceNeighborFE(), buildNeighborFE(), feSecondPhiFaceNeighbor(), feSecondPhiNeighbor(), reinitElemFaceRef(), reinitFEFaceNeighbor(), reinitFENeighbor(), reinitLowerDElem(), and reinitNeighborFaceRef().
|
private |
Extra element IDs of neighbor.
Definition at line 2492 of file Assembly.h.
Referenced by Assembly(), extraElemIDNeighbor(), and reinitNeighbor().
|
private |
Definition at line 2272 of file Assembly.h.
Referenced by initNonlocalCoupling().
|
protected |
Definition at line 2656 of file Assembly.h.
Referenced by phi().
|
protected |
Definition at line 2660 of file Assembly.h.
Referenced by phiFace().
|
protected |
Definition at line 2668 of file Assembly.h.
Referenced by phiFaceNeighbor().
|
protected |
Definition at line 2664 of file Assembly.h.
Referenced by phiNeighbor().
|
private |
A qrule object for working on mortar segement elements.
This needs to be a raw pointer because we need to be able to return a reference to it because we will be constructing other objects that need the qrule before the qrule is actually created
Definition at line 2539 of file Assembly.h.
Referenced by createQRules(), qRuleMortar(), reinitMortarElem(), setMortarQRule(), and ~Assembly().
|
private |
Holds quadrature rules for each dimension.
These are created up front at the start of the simulation and reused/referenced for the remainder of the sim. This data structure should generally be read/accessed via the qrules() function.
Definition at line 2412 of file Assembly.h.
Referenced by bumpAllQRuleOrder(), bumpVolumeQRuleOrder(), createQRules(), and qrules().
|
protected |
The residual vector tags that Assembly could possibly contribute to.
The following variables are all indexed with this vector (i.e., index 0 in the following vectors corresponds to the tag with TagID _residual_vector_tags[0]._id): _sub_Re, _sub_Rn, _sub_Rl, _cached_residual_rows, _cached_residual_values,
This index is also available in VectorTag::_type_id
Definition at line 2748 of file Assembly.h.
Referenced by clearCachedResiduals(), and init().
|
protected |
Working vectors to avoid repeated heap allocations when caching residuals/Jacobians that must have libMesh-level constraints (hanging nodes, periodic bcs) applied to them.
These are for storing the dof indices
Definition at line 2848 of file Assembly.h.
Referenced by cacheJacobian(), and cacheResiduals().
|
protected |
The map from global index to variable scaling factor.
Definition at line 2824 of file Assembly.h.
Referenced by hasScalingVector().
|
protected |
Definition at line 2658 of file Assembly.h.
Referenced by secondPhi().
|
protected |
Definition at line 2662 of file Assembly.h.
Referenced by secondPhiFace().
|
protected |
Definition at line 2670 of file Assembly.h.
Referenced by secondPhiFaceNeighbor().
|
protected |
Definition at line 2666 of file Assembly.h.
Referenced by secondPhiNeighbor().
|
protected |
Definition at line 2632 of file Assembly.h.
Referenced by init(), jacobianBlock(), jacobianBlockMortar(), and jacobianBlockNeighbor().
|
protected |
Definition at line 2633 of file Assembly.h.
Referenced by init(), and jacobianBlockNonlocal().
|
protected |
dsecondary/dlower (or delement/dlower)
Definition at line 2648 of file Assembly.h.
Referenced by init(), and jacobianBlockMortar().
|
protected |
jacobian contributions from the element and neighbor <Tag, ivar, jvar>
Definition at line 2636 of file Assembly.h.
Referenced by init(), jacobianBlockMortar(), and jacobianBlockNeighbor().
|
protected |
dlower/dsecondary (or dlower/delement)
Definition at line 2644 of file Assembly.h.
Referenced by init(), and jacobianBlockMortar().
|
protected |
dlower/dlower
Definition at line 2642 of file Assembly.h.
Referenced by init(), and jacobianBlockMortar().
|
protected |
dlower/dprimary (or dlower/dneighbor)
Definition at line 2646 of file Assembly.h.
Referenced by init(), and jacobianBlockMortar().
|
protected |
jacobian contributions from the neighbor and element <Tag, ivar, jvar>
Definition at line 2638 of file Assembly.h.
Referenced by init(), jacobianBlockMortar(), and jacobianBlockNeighbor().
|
protected |
dprimary/dlower (or dneighbor/dlower)
Definition at line 2650 of file Assembly.h.
Referenced by init(), and jacobianBlockMortar().
|
protected |
jacobian contributions from the neighbor <Tag, ivar, jvar>
Definition at line 2640 of file Assembly.h.
Referenced by init(), jacobianBlockMortar(), and jacobianBlockNeighbor().
|
protected |
Definition at line 2613 of file Assembly.h.
Referenced by addResidual(), addResidualScalar(), cacheResidual(), init(), prepareBlock(), prepareResidual(), prepareScalar(), prepareVariable(), residualBlock(), and setResidual().
|
protected |
residual contributions for each variable from the lower dimensional element
Definition at line 2616 of file Assembly.h.
Referenced by addResidualLower(), cacheResidualLower(), init(), prepareLowerD(), and residualBlockLower().
|
protected |
Definition at line 2614 of file Assembly.h.
Referenced by addResidualNeighbor(), cacheResidualNeighbor(), init(), prepareNeighbor(), residualBlockNeighbor(), and setResidualNeighbor().
|
private |
Definition at line 2266 of file Assembly.h.
Referenced by addCachedJacobian(), cacheResidual(), cacheResidualNodes(), computeADFace(), computeFaceMap(), computeSinglePointMapAD(), elementVolume(), init(), reinitFE(), reinitLowerDElem(), reinitNeighborLowerDElem(), and setCoordinateTransformation().
|
private |
Definition at line 2265 of file Assembly.h.
Referenced by addCachedJacobian(), addCachedResiduals(), addJacobianBlock(), addJacobianBlockNonlocal(), addJacobianCoupledVarPair(), addJacobianLowerD(), addJacobianNeighbor(), addJacobianNeighborLowerD(), addJacobianNonlocal(), addJacobianOffDiagScalar(), addResidual(), addResidualLower(), addResidualNeighbor(), addResidualScalar(), cacheJacobian(), cacheJacobianBlock(), cacheJacobianBlockNonzero(), cacheJacobianCoupledVarPair(), cacheJacobianMortar(), cacheJacobianNeighbor(), cacheJacobianNonlocal(), cacheResidual(), cacheResidualLower(), cacheResidualNeighbor(), computeFaceMap(), computeSinglePointMapAD(), copyFaceShapes(), copyNeighborShapes(), copyShapes(), hasScalingVector(), init(), initNonlocalCoupling(), prepareBlock(), prepareBlockNonlocal(), prepareLowerD(), prepareNeighbor(), prepareOffDiagScalar(), prepareResidual(), prepareScalar(), setCachedJacobian(), setResidual(), setResidualNeighbor(), and zeroCachedJacobian().
|
protected |
Temporary work vector to keep from reallocating it.
Definition at line 2774 of file Assembly.h.
Referenced by addResidualBlock(), and cacheResidualBlock().
|
protected |
Temporary work data for reinitAtPhysical()
Definition at line 2777 of file Assembly.h.
Referenced by reinitAtPhysical().
|
private |
Thread number (id)
Definition at line 2303 of file Assembly.h.
Referenced by addJacobianBlock(), addJacobianBlockNonlocal(), addJacobianNeighbor(), addJacobianOffDiagScalar(), addResidual(), addResidualLower(), addResidualNeighbor(), addResidualScalar(), cacheResidual(), cacheResidualLower(), cacheResidualNeighbor(), copyFaceShapes(), copyNeighborShapes(), copyShapes(), init(), initNonlocalCoupling(), prepareBlock(), prepareBlockNonlocal(), prepareLowerD(), prepareNeighbor(), prepareOffDiagScalar(), prepareResidual(), prepareScalar(), setResidual(), and setResidualNeighbor().
|
protected |
auxiliary matrix for scaling jacobians (optimization to avoid expensive construction/destruction)
Definition at line 2653 of file Assembly.h.
|
protected |
auxiliary vector for scaling residuals (optimization to avoid expensive construction/destruction)
Definition at line 2619 of file Assembly.h.
Referenced by addResidualBlock(), cacheResidualBlock(), and setResidualBlock().
|
private |
Definition at line 2323 of file Assembly.h.
Referenced by havePRefinement(), reinitElemFaceRef(), reinitFEFace(), and setFaceQRule().
|
private |
Definition at line 2324 of file Assembly.h.
Referenced by havePRefinement(), reinitFEFaceNeighbor(), reinitNeighborFaceRef(), and setNeighborQRule().
|
private |
Containers for holding unique FE helper types if we are doing p-refinement.
If we are not doing p-refinement then the helper data is owned by the _fe
data members
Definition at line 2322 of file Assembly.h.
Referenced by havePRefinement(), reinitFE(), and setVolumeQRule().
|
private |
Definition at line 2326 of file Assembly.h.
Referenced by havePRefinement(), reinitLowerDElem(), and setLowerQRule().
|
private |
Definition at line 2325 of file Assembly.h.
Referenced by havePRefinement(), and reinitFENeighbor().
|
mutableprivate |
Definition at line 2316 of file Assembly.h.
Referenced by buildFaceNeighborFE(), and havePRefinement().
|
mutableprivate |
Definition at line 2315 of file Assembly.h.
Referenced by buildFaceFE(), and havePRefinement().
|
mutableprivate |
Definition at line 2318 of file Assembly.h.
Referenced by buildLowerDFE(), and havePRefinement().
|
mutableprivate |
Definition at line 2317 of file Assembly.h.
Referenced by buildNeighborFE(), and havePRefinement().
|
mutableprivate |
Whether user code requested a FEType
the same as our _helper_type
.
Definition at line 2314 of file Assembly.h.
Referenced by buildFE(), and havePRefinement().
|
protected |
Definition at line 2676 of file Assembly.h.
Referenced by curlPhi().
|
protected |
Definition at line 2682 of file Assembly.h.
Referenced by copyFaceShapes(), and curlPhiFace().
|
protected |
Definition at line 2694 of file Assembly.h.
Referenced by curlPhiFaceNeighbor().
|
protected |
Definition at line 2688 of file Assembly.h.
Referenced by curlPhiNeighbor().
|
protected |
Definition at line 2677 of file Assembly.h.
Referenced by divPhi().
|
protected |
Definition at line 2683 of file Assembly.h.
Referenced by copyFaceShapes(), and divPhiFace().
|
protected |
Definition at line 2695 of file Assembly.h.
Referenced by divPhiFaceNeighbor().
|
protected |
Definition at line 2689 of file Assembly.h.
Referenced by divPhiNeighbor().
|
mutableprivate |
Each dimension's actual vector fe objects indexed on type.
Definition at line 2357 of file Assembly.h.
Referenced by buildVectorFE(), getVectorFE(), havePRefinement(), reinitFE(), setVolumeQRule(), and ~Assembly().
|
mutableprivate |
types of vector finite elements
Definition at line 2469 of file Assembly.h.
Referenced by buildVectorFaceFE(), computeADFace(), getVectorFEFace(), havePRefinement(), reinitElemFaceRef(), reinitFEFace(), setFaceQRule(), and ~Assembly().
|
mutableprivate |
Definition at line 2502 of file Assembly.h.
Referenced by buildVectorFaceNeighborFE(), getVectorFEFaceNeighbor(), havePRefinement(), reinitFEFaceNeighbor(), reinitNeighborFaceRef(), setNeighborQRule(), and ~Assembly().
|
mutableprivate |
Vector FE objects for lower dimensional elements.
Definition at line 2511 of file Assembly.h.
Referenced by buildVectorDualLowerDFE(), buildVectorLowerDFE(), havePRefinement(), setLowerQRule(), and ~Assembly().
|
mutableprivate |
Definition at line 2501 of file Assembly.h.
Referenced by buildVectorNeighborFE(), getVectorFENeighbor(), havePRefinement(), reinitFENeighbor(), and ~Assembly().
|
mutableprotected |
Shape function values, gradients, second derivatives for each vector FE type.
Definition at line 2726 of file Assembly.h.
Referenced by buildVectorFE(), and reinitFE().
|
mutableprotected |
Definition at line 2731 of file Assembly.h.
Referenced by buildVectorDualLowerDFE().
|
mutableprotected |
Definition at line 2727 of file Assembly.h.
Referenced by buildVectorFaceFE(), computeADFace(), reinitElemFaceRef(), and reinitFEFace().
|
mutableprotected |
Definition at line 2729 of file Assembly.h.
Referenced by buildVectorFaceNeighborFE(), reinitFEFaceNeighbor(), and reinitNeighborFaceRef().
|
mutableprotected |
Definition at line 2730 of file Assembly.h.
Referenced by buildVectorLowerDFE().
|
mutableprotected |
Definition at line 2728 of file Assembly.h.
Referenced by buildVectorNeighborFE(), and reinitFENeighbor().
|
protected |
Definition at line 2674 of file Assembly.h.
Referenced by gradPhi().
|
protected |
Definition at line 2680 of file Assembly.h.
Referenced by gradPhiFace().
|
protected |
Definition at line 2692 of file Assembly.h.
Referenced by gradPhiFaceNeighbor().
|
protected |
Definition at line 2686 of file Assembly.h.
Referenced by gradPhiNeighbor().
|
protected |
Definition at line 2673 of file Assembly.h.
Referenced by phi().
|
protected |
Definition at line 2679 of file Assembly.h.
Referenced by phiFace().
|
protected |
Definition at line 2691 of file Assembly.h.
Referenced by phiFaceNeighbor().
|
protected |
Definition at line 2685 of file Assembly.h.
Referenced by phiNeighbor().
|
protected |
Definition at line 2675 of file Assembly.h.
Referenced by secondPhi().
|
protected |
Definition at line 2681 of file Assembly.h.
Referenced by secondPhiFace().
|
protected |
Definition at line 2693 of file Assembly.h.
Referenced by secondPhiFaceNeighbor().
|
protected |
Definition at line 2687 of file Assembly.h.
Referenced by secondPhiNeighbor().
|
private |
The XFEM controller.
Definition at line 2332 of file Assembly.h.
Referenced by modifyFaceWeightsDueToXFEM(), modifyWeightsDueToXFEM(), reinitFE(), reinitFEFace(), and setXFEM().