StopperStopper Icon

Stopper

This component extends from TranslationalComponents.PartialTwoFlanges

Usage

Stopper(c, d)

Parameters:

NameDescriptionUnitsDefault value
cN/m
ds-1

Connectors

  • flange_a - This connector represents a mechanical flange with position and force as the potential and flow variables, respectively. (Flange)
  • flange_b - This connector represents a mechanical flange with position and force as the potential and flow variables, respectively. (Flange)

Variables

NameDescriptionUnits
v_am/s
v_bm/s
s_am
s_bm
fN

Behavior

\[ \begin{align} \mathtt{flange\_a.s}\left( t \right) &= \mathtt{s\_a}\left( t \right) \\ \mathtt{flange\_b.s}\left( t \right) &= \mathtt{s\_b}\left( t \right) \\ \mathtt{flange\_a.f}\left( t \right) &= f\left( t \right) \\ \mathtt{flange\_b.f}\left( t \right) &= - f\left( t \right) \\ \frac{\mathrm{d} \mathtt{s\_a}\left( t \right)}{\mathrm{d}t} &= \mathtt{v\_a}\left( t \right) \\ \frac{\mathrm{d} \mathtt{s\_b}\left( t \right)}{\mathrm{d}t} &= \mathtt{v\_b}\left( t \right) \\ f\left( t \right) &= ifelse\left( \mathtt{s\_a}\left( t \right) \geq \mathtt{s\_b}\left( t \right), c \left( - \mathtt{s\_b}\left( t \right) + \mathtt{s\_a}\left( t \right) \right) + d \left( \mathtt{v\_a}\left( t \right) - \mathtt{v\_b}\left( t \right) \right), 0 \right) \end{align} \]

Source

component Stopper
  extends TranslationalComponents.PartialTwoFlanges
  parameter c::TranslationalSpringConstant
  parameter d::DampingCoefficient
  variable v_a::Velocity
  variable v_b::Velocity
  variable s_a::Dyad.Position
  variable s_b::Dyad.Position
  variable f::Force
relations
  flange_a.s = s_a
  flange_b.s = s_b
  flange_a.f = f
  flange_b.f = -f
  D(s_a) = v_a
  D(s_b) = v_b
  f = ifelse((s_a >= s_b), (v_a - v_b) * d + c * (s_a - s_b), 0)
end
Flattened Source
component Stopper
  # Left mechanical translational flange (connector)
  flange_a = Flange() [{"Dyad": {"placement": {"icon": {"x1": -50, "y1": 450, "x2": 50, "y2": 550}}}}]
  # Right mechanical translational flange (connector)
  flange_b = Flange() [{"Dyad": {"placement": {"icon": {"x1": 950, "y1": 450, "x2": 1050, "y2": 550}}}}]
  parameter c::TranslationalSpringConstant
  parameter d::DampingCoefficient
  variable v_a::Velocity
  variable v_b::Velocity
  variable s_a::Dyad.Position
  variable s_b::Dyad.Position
  variable f::Force
relations
  flange_a.s = s_a
  flange_b.s = s_b
  flange_a.f = f
  flange_b.f = -f
  D(s_a) = v_a
  D(s_b) = v_b
  f = ifelse((s_a >= s_b), (v_a - v_b) * d + c * (s_a - s_b), 0)
metadata {}
end


Test Cases

No test cases defined.

  • Examples
  • Experiments
  • Analyses