pyHarm.KinematicConditions.BaseProjection¶
Classes¶
Kinematic condition that imposes base projection between two substructures. |
Module Contents¶
- class pyHarm.KinematicConditions.BaseProjection.BaseProjection(nh: int, nti: int, name: str, data: dict, CS: pyHarm.CoordinateSystem.CoordinateSystem, dynop: dict[str, numpy.ndarray] | None = None)¶
Bases:
pyHarm.KinematicConditions.ABCKinematic.ABCKinematicKinematic condition that imposes base projection between two substructures. A linear transformation is imposed through base projection matrix in between a master substructure and the slave substructure. Residual contribution computed on the slave substructure is projected back onto the master substructure.
- factory_keyword¶
keyword that is used to call the creation of this class in the system factory.
- Type:
str
- default¶
dictionary containing the default parameters for the kinematic condition.
- Type:
dict
- phi¶
transformation matrix that goes from master base to slave base.
- Type:
np.ndarray
- phi_inv¶
transpose of phi
- Type:
np.ndarray
- factory_keyword: str = 'BaseProjection'¶
- default¶
- __post_init__()¶
- generateIndices(expl_dofs: pandas.DataFrame)¶
From the explicit dof DataFrame, generates the index of dofs concerned by the connector.
- Parameters:
expl_dofs (pd.DataFrame) – explicit dof DataFrame from the studied system.
- indices¶
index of the dofs that the connector needs.
- Type:
np.ndarray
- Pdir¶
a slice of first dimension is a transformation matrix to a direction in local coordinate system.
- Type:
np.ndarray
- Pslave¶
selection array that selects the slave dofs of the connector.
- Type:
np.ndarray
- Pmaster¶
selection array that selects the master dofs of the connector.
- Type:
np.ndarray
- complete_x(x)¶
Returns a vector x_add of same size of x that completes the vector of displacement x = x + x_add such that the kinematic condition is verified.
- Parameters:
x (np.ndarray) – displacement vector.
om (float) – angular frequency.
- Returns:
vector of displacement to add to the displacement vector in order to impose the kinematic condition.
- Return type:
(np.ndarray)
- complete_R(R, x)¶
Computes the transfer of residual of the kinematicaly constrained dofs with respect to the displacement.
- Parameters:
R (np.ndarray) – residual vector.
x (np.ndarray) – displacement vector.
- Returns:
vector of residual contributions to add to the residual vetor in order to impose the kinematic condition.
- Return type:
(np.ndarray)
- complete_J(Jx, Jom, x)¶
Computes the transfer of jacobian of the kinematicaly constrained dofs with respect to the displacement.
- Parameters:
Jx (np.ndarray) – jacobian matrix with respect to displacement.
Jom (np.ndarray) – jacobian matrix with respect to angular frequency.
x (np.ndarray) – displacement vector.
- Returns:
tuple containing the jacobians contributions to add to the jacobians in order to impose the kinematic condition.
- Return type:
(tuple[np.ndarray,np.ndarray])
- adim(lc, wc)¶
Using adim parameters, modifies the kinematic conditions accordingly.
- Parameters:
lc (float) – characteristic length.
wc (float) – characteristic angular frequency.