https://mooseframework.inl.gov
NodalStickConstraint.h
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://mooseframework.inl.gov
3 //*
4 //* All rights reserved, see COPYRIGHT for full restrictions
5 //* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6 //*
7 //* Licensed under LGPL 2.1, please see LICENSE for details
8 //* https://www.gnu.org/licenses/lgpl-2.1.html
9 
10 #pragma once
11 
12 #include "NodalConstraint.h"
13 
15 {
16 public:
18 
20 
21  virtual void meshChanged() override;
22 
23  virtual void computeResidual(NumericVector<Number> & residual) override;
24  virtual void computeJacobian(SparseMatrix<Number> & jacobian) override;
27 
28 protected:
33 
36 
38  BoundaryName _primary_boundary_id;
39 
41  BoundaryName _secondary_boundary_id;
42 
44  const Real & _penalty;
45 
47  std::vector<dof_id_type> _primary_conn;
48 };
NodalStickConstraint(const InputParameters &parameters)
ConstraintType
const Real & _penalty
Tangential stiffness of spring in all directions.
virtual void computeResidual() override final
static InputParameters validParams()
virtual void meshChanged() override
virtual Real computeQpResidual(Moose::ConstraintType type) override
const std::string & type() const
BoundaryName _primary_boundary_id
Holds the secondary node set or side set.
virtual void computeJacobian() override final
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
ConstraintJacobianType
const InputParameters & parameters() const
void updateConstrainedNodes()
Update the sets of nodes with constrained DOFs.
virtual Real computeQpJacobian(Moose::ConstraintJacobianType type) override
std::vector< dof_id_type > _primary_conn
primary node id connected to each secondary node in _connected_nodes
BoundaryName _secondary_boundary_id
Holds the secondary node set or side set.