pyHarm.Elements.ABCElement

Classes

ABCElement

This is the abstract class ruling the element class.

Module Contents

class pyHarm.Elements.ABCElement.ABCElement(nh: int | list[int], nti: int, name: str, data: dict, CS: pyHarm.CoordinateSystem.CoordinateSystem, dynop: dict[str, numpy.ndarray] | None = None)

Bases: abc.ABC

This is the abstract class ruling the element class.

An element consists in an elementary contribution to the residual equations.

Parameters:
  • nh (int) – number of harmonics.

  • nti (int) – number of time steps.

  • name (str) – name given to the kinematic condition.

  • data (dict) – dictionary containing all the definition information of the kinematic condition.

  • CS (CoordinateSystem) – local or global coordinate system the kinematic condition is defined on.

flag_nonlinear

if True, the element is nonlinear.

Type:

bool

flag_AFT

if True, the element requires an alternating frequency/time domain procedure for computing residuals.

Type:

bool

flag_extforcing

if True, the element is an external forcing.

Type:

bool

flag_DLFT

if True, the element uses the dynamic Lagrangian method for computing the residuals.

Type:

bool

flag_adim

if True, the element is adimentioned.

Type:

bool

nh

number of harmonics.

Type:

int

nti

number of time steps.

Type:

int

D

Dynamic operators containing inverse discrete Fourier transform and discrete Fourier transform.

Type:

dict[np.ndarray,np.ndarray]

nabla

Derivation operator.

Type:

np.ndarray

abstract property factory_keyword
__init_flags__()
__init_harmonic_operators__(nh, nti, data: dict, dynop: dict[str, numpy.ndarray] | None = None)
__repr__()
__post_init__(*args)
__flag_update__(*args)
abstractmethod __init_data__(name, data, CS)
abstractmethod __str__()
abstractmethod generateIndices(expl_dofs: pandas.DataFrame)
abstractmethod adim(lc, wc)

Modifies the element properties according to the characteristic length and angular frequency.

Parameters:
  • lc (float) – characteristic length value.

  • wc (float) – characteristic angular frequency value.

abstractmethod evalResidual(x, om)

Computes the residual.

Parameters:
  • x (np.ndarray) – full displacement vector.

  • om (float) – angular frequency value.

abstractmethod evalJacobian(x, om)

Computes the jacobians.

Parameters:
  • x (np.ndarray) – full displacement vector.

  • om (float) – angular frequency value.