Skip to content
LIBRARY
Examples.Accelerate.md

Examples.Accelerate

Use of model Accelerate.

Demonstrates usage of component Sources.Accelerate by moving a mass with a predefined constant acceleration of 1 m/s².

Expected results after 1 s:

  • acceleration a = 1 m/s²

  • velocity v = 1 m/s

  • position s = 0.5 m (of the Accelerate source)

Usage

TranslationalComponents.Examples.Accelerate()

Behavior

[connect(constantacc+y,accelerate+aref)connect(accelerate+flange,mass+flangea)connect(accelerate+support,fixed+flange)constantacc.y(t)=constantacc.kaccelerate.s(t)=accelerate.flange.s(t)accelerate.support.s(t)accelerate.support.f(t)=accelerate.flange.f(t)accelerate.v(t)=daccelerate.s(t)dtaccelerate.a(t)=daccelerate.v(t)dtaccelerate.a(t)=accelerate.aref(t)mass.flangea.s(t)=12mass.L+mass.s(t)mass.flangeb.s(t)=mass.L2+mass.s(t)mass.v(t)=dmass.s(t)dtmass.a(t)=dmass.v(t)dt(mass.a(t)+mass.gsin(mass.theta))mass.m=mass.flangeb.f(t)+mass.flangea.f(t)fixed.flange.s(t)=fixed.s0]

Source

dyad
"""
Use of model Accelerate.

Demonstrates usage of component `Sources.Accelerate` by moving a mass with a
predefined constant acceleration of 1 m/s².

Expected results after 1 s:
- acceleration a = 1 m/s²
- velocity v = 1 m/s
- position s = 0.5 m (of the Accelerate source)
"""
example component Accelerate
  constant_acc = BlockComponents.Sources.Constant(k = 1.0)
  accelerate = TranslationalComponents.Sources.Accelerate()
  mass = TranslationalComponents.Components.Mass(L = 1.0, m = 1.0)
  fixed = TranslationalComponents.Components.Fixed()
relations
  connect(constant_acc.y, accelerate.a_ref)
  connect(accelerate.flange, mass.flange_a)
  connect(accelerate.support, fixed.flange)
metadata {
  "Dyad": {
    "icons": {"default": "dyad://TranslationalComponents/Example.svg"},
    "tests": {
      "case1": {
        "stop": 1,
        "atol": {"accelerate.v": 0.01, "accelerate.s": 0.01},
        "expect": {
          "final": {"accelerate.v": 1, "accelerate.s": 0.5},
          "signals": ["accelerate.s", "accelerate.v"]
        }
      }
    }
  }
}
end
Flattened Source
dyad
"""
Use of model Accelerate.

Demonstrates usage of component `Sources.Accelerate` by moving a mass with a
predefined constant acceleration of 1 m/s².

Expected results after 1 s:
- acceleration a = 1 m/s²
- velocity v = 1 m/s
- position s = 0.5 m (of the Accelerate source)
"""
example component Accelerate
  constant_acc = BlockComponents.Sources.Constant(k = 1.0)
  accelerate = TranslationalComponents.Sources.Accelerate()
  mass = TranslationalComponents.Components.Mass(L = 1.0, m = 1.0)
  fixed = TranslationalComponents.Components.Fixed()
relations
  connect(constant_acc.y, accelerate.a_ref)
  connect(accelerate.flange, mass.flange_a)
  connect(accelerate.support, fixed.flange)
metadata {
  "Dyad": {
    "icons": {"default": "dyad://TranslationalComponents/Example.svg"},
    "tests": {
      "case1": {
        "stop": 1,
        "atol": {"accelerate.v": 0.01, "accelerate.s": 0.01},
        "expect": {
          "final": {"accelerate.v": 1, "accelerate.s": 0.5},
          "signals": ["accelerate.s", "accelerate.v"]
        }
      }
    }
  }
}
end


Test Cases

Test Case case1

julia
plt

julia
plt