Skip to content

Commit

Permalink
Update bondslip constraint jacobian idaholab#99
Browse files Browse the repository at this point in the history
  • Loading branch information
SudiptaBiswas committed Jul 14, 2020
1 parent c12338f commit 1a32463
Show file tree
Hide file tree
Showing 3 changed files with 183 additions and 89 deletions.
13 changes: 12 additions & 1 deletion include/constraints/RebarBondSlipConstraint.h
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,15 @@ class RebarBondSlipConstraint : public EqualValueEmbeddedConstraint
bool shouldApply() override;
void reinitConstraint();

/**
* Determine whether the coupled variable is one of the displacement variables,
* and find its component
* @param var_num The number of the variable to be checked
* @param component The component index computed in this routine
* @return bool indicating whether the coupled variable is one of the displacement variables
*/
bool getCoupledVarComponent(unsigned int var_num, unsigned int & component);

protected:
virtual void computeTangent();
virtual Real computeQpResidual(Moose::ConstraintType type) override;
Expand Down Expand Up @@ -81,10 +90,12 @@ class RebarBondSlipConstraint : public EqualValueEmbeddedConstraint
std::vector<Real> _transitional_slip;
/// constraint force needed to enforce the constraint
RealVectorValue _constraint_residual;
RealVectorValue _constraint_jacobian_axial;
/// penalty force for the current constraint
RealVectorValue _pen_force;
RealVectorValue _slave_tangent;
RealVectorValue _secondary_tangent;
Real _current_elem_volume;
bool _bond;
Real _bond_stress;
Real _bond_stress_deriv;
};
Loading

0 comments on commit 1a32463

Please sign in to comment.