gemseo.problems.ode.springs.springs_dynamics_discipline module#

The discipline describing the dynamics of a single mass connected by springs.

class SpringsDynamicsDiscipline(mass, left_stiffness, right_stiffness, times=None, left_position=0.0, right_position=0.0, is_left_position_fixed=False, is_right_position_fixed=False, state_names=('position', 'velocity'), state_dot_var_names=('position_dot', 'velocity_dot'), left_position_name='', right_position_name='', **kwargs)[source]#

Bases: Discipline

A discipline defining the dynamics of a mass connected to two springs.

Initialize self. See help(type(self)) for accurate signature.

Parameters:
  • mass (float) -- The value of the mass.

  • left_stiffness (float) -- The stiffness of the spring on the left-hand side.

  • right_stiffness (float) -- The stiffness of the spring on the right-hand side.

  • times (RealArray | None) -- the time vector for the evaluation of the left and right positions.

  • left_position (RealArray | float) --

    The position of the other extremity of the spring to the left.

    By default it is set to 0.0.

  • right_position (RealArray | float) --

    The position of the other extremity of the spring to the right.

    By default it is set to 0.0.

  • is_left_position_fixed --

    True if the other end of the spring to the left is fixed.

    By default it is set to False.

  • is_right_position_fixed --

    True if the other end of the spring to the right is fixed.

    By default it is set to False.

  • state_names (Sequence[str]) --

    The names of the state variables (by default 'position' and 'velocity').

    By default it is set to ('position', 'velocity').

  • state_dot_var_names (Sequence[str]) --

    The names of the time derivatives of the state variables (by default 'position_dot' and 'velocity_dot').

    By default it is set to ('position_dot', 'velocity_dot').

  • left_position_name (str) --

    Name of the input describing the position of the mass on the left, if is_left_position_fixed is False.

    By default it is set to "".

  • right_position_name (str) --

    Name of the input describing the position of the mass on the right, if is_right_position_fixed is False.

    By default it is set to "".

  • **kwargs -- The description is missing.

Returns:

The Discipline describing a single point mass.

POSITION: Final[str] = 'position'#

The name of the state variable representing the position.

STATE_DOT_NAMES: Final[tuple[str, str]] = ('position_dot', 'velocity_dot')#

The names of the derivatives of the state variables.

STATE_NAMES: Final[tuple[str, str]] = ('position', 'velocity')#

The names of the state variables.

TIME: Final[str] = 'time'#

The name of the time variable.

VELOCITY: Final[str] = 'velocity'#

The name of the state variable representing the velocity.