pyHarm.Elements.ABCElement ========================== .. py:module:: pyHarm.Elements.ABCElement Classes ------- .. autoapisummary:: pyHarm.Elements.ABCElement.ABCElement Module Contents --------------- .. py:class:: ABCElement(nh: int | list[int], nti: int, name: str, data: dict, CS: pyHarm.CoordinateSystem.CoordinateSystem, dynop: Optional[dict[str, numpy.ndarray]] = None) Bases: :py:obj:`abc.ABC` This is the abstract class ruling the element class. An element consists in an elementary contribution to the residual equations. :param nh: number of harmonics. :type nh: int :param nti: number of time steps. :type nti: int :param name: name given to the kinematic condition. :type name: str :param data: dictionary containing all the definition information of the kinematic condition. :type data: dict :param CS: local or global coordinate system the kinematic condition is defined on. :type CS: CoordinateSystem .. attribute:: flag_nonlinear if True, the element is nonlinear. :type: bool .. attribute:: flag_AFT if True, the element requires an alternating frequency/time domain procedure for computing residuals. :type: bool .. attribute:: flag_extforcing if True, the element is an external forcing. :type: bool .. attribute:: flag_DLFT if True, the element uses the dynamic Lagrangian method for computing the residuals. :type: bool .. attribute:: flag_adim if True, the element is adimentioned. :type: bool .. attribute:: nh number of harmonics. :type: int .. attribute:: nti number of time steps. :type: int .. attribute:: D Dynamic operators containing inverse discrete Fourier transform and discrete Fourier transform. :type: dict[np.ndarray,np.ndarray] .. attribute:: nabla Derivation operator. :type: np.ndarray .. py:property:: factory_keyword :abstractmethod: .. py:method:: __init_flags__() .. py:method:: __init_harmonic_operators__(nh, nti, data: dict, dynop: Optional[dict[str, numpy.ndarray]] = None) .. py:method:: __repr__() .. py:method:: __post_init__(*args) .. py:method:: __flag_update__(*args) .. py:method:: __init_data__(name, data, CS) :abstractmethod: .. py:method:: __str__() :abstractmethod: .. py:method:: generateIndices(expl_dofs: pandas.DataFrame) :abstractmethod: .. py:method:: adim(lc, wc) :abstractmethod: Modifies the element properties according to the characteristic length and angular frequency. :param lc: characteristic length value. :type lc: float :param wc: characteristic angular frequency value. :type wc: float .. py:method:: evalResidual(x, om) :abstractmethod: Computes the residual. :param x: full displacement vector. :type x: np.ndarray :param om: angular frequency value. :type om: float .. py:method:: evalJacobian(x, om) :abstractmethod: Computes the jacobians. :param x: full displacement vector. :type x: np.ndarray :param om: angular frequency value. :type om: float