pyHarm.Elements.NodeToNodeElements.PenaltyBilateralGap¶
Classes¶
This element is an approximation of bilateral contact by adding a rigidity when contact is made. |
Functions¶
|
|
|
Module Contents¶
- pyHarm.Elements.NodeToNodeElements.PenaltyBilateralGap.PenalGapResidual(x, om, Pdir, Pslave, Pmaster, g, k, DFT, DTF)¶
- pyHarm.Elements.NodeToNodeElements.PenaltyBilateralGap.PenalGapJacobian(x, om, Pdir, Pslave, Pmaster, g, k, DFT, DTF)¶
- class pyHarm.Elements.NodeToNodeElements.PenaltyBilateralGap.PenaltyBilateralGap(nh: int, nti: int, name: str, data: dict, CS: pyHarm.CoordinateSystem.CoordinateSystem)¶
Bases:
pyHarm.Elements.NodeToNodeElements.NodeToNodeElement.NodeToNodeElementThis element is an approximation of bilateral contact by adding a rigidity when contact is made.
- g¶
gap value.
- Type:
float
- k¶
linear spring value.
- Type:
float
- jac¶
if “analytical” uses analytical expression of jacobian, if “jax” uses automatic differentiation, if “DF” uses finite difference.
- Type:
str
- factory_keyword: str = 'PenaltyBilateralGap'¶
keyword that is used to call the creation of this class in the system factory.
- Type:
str
- __post_init__()¶
- __flag_update__()¶
- _evalJaco_DF(xg, om, step)¶
Computes the jacobian using finite difference method.
- Parameters:
xg (np.ndarray) – full displacement vector.
om (float) – angular frequency value.
step (float) – step size for the finite difference method.
- Returns:
jacobian with respect to displacement vector. dJdom (np.ndarray): jacobian with respect to angular frequency.
- Return type:
dJdx (np.ndarray)
- _evalJaco_ana(xg, om)¶
- adim(lc, wc)¶
Modifies the element properties according to the characteristic length and angular frequency.
- k¶
modified linear coefficient to apply according to the characteristic parameters.
- Type:
float
- g¶
modified gap value according to the characteristic parameters.
- Type:
float
- flag_adim¶
True if equations are to be adimensionalized.
- Type:
bool
- evalResidual(xg, om)¶
Computes the residual.
- Parameters:
xg (np.ndarray) – full displacement vector.
om (float) – angular frequency value.
- Returns:
residual vector.
- Return type:
np.ndarray
- evalJacobian(xg, om)¶
Computes the jacobians.
- Parameters:
xg (np.ndarray) – full displacement vector.
om (float) – angular frequency value.
- Returns:
Jacobian with respect to displacement. np.ndarray: Jacobian with respect to angular frequency.
- Return type:
np.ndarray