Skip to content
LIBRARY
WorldTorque.md

WorldTorque

External torque acting at frame_b, defined by 3 input signals.

Resolved in the world frame (default) or frame_b. No force is applied, only torque.

Usage

MultibodyComponents.WorldTorque(scale=0.1, color=world_default_force_color(), radius=world_default_arrow_diameter())

Parameters:

NameDescriptionUnitsDefault value
resolve_in_frameResolveInFrame.World()
scaleScale factor for visualization0.1
colorColor of torque arrow (RGBA)world_defau...rce_color()
radiusRadius of torque arrowworld_defau..._diameter()

Connectors

  • frame_b - Frame3D is the fundamental 3D connector used for 6DOF motion. Most components have one or several Frame

connectors that can be connected together (Frame3D)

  • torque_x - This connector represents a real signal as an input to a component (RealInput)

  • torque_y - This connector represents a real signal as an input to a component (RealInput)

  • torque_z - This connector represents a real signal as an input to a component (RealInput)

Behavior

Dict{MIME{Symbol("text/plain")}, String} with 1 entry: MIME type text/plain => "Error displaying result"

Source

dyad
"""
External torque acting at `frame_b`, defined by 3 input signals.

Resolved in the world frame (default) or `frame_b`.
No force is applied, only torque.
"""
component WorldTorque
  frame_b = Frame3D() {
    "Dyad": {
      "placement": {
        "diagram": {"iconName": "default", "x1": 450, "y1": 900, "x2": 550, "y2": 1000, "rot": 0}
      },
      "tags": []
    }
  }
  torque_x = RealInput() {
    "Dyad": {
      "placement": {
        "diagram": {"iconName": "default", "x1": 90, "y1": -50, "x2": 190, "y2": 50, "rot": 90}
      },
      "tags": []
    }
  }
  torque_y = RealInput() {
    "Dyad": {
      "placement": {
        "diagram": {"iconName": "default", "x1": 450, "y1": -50, "x2": 550, "y2": 50, "rot": 90}
      },
      "tags": []
    }
  }
  torque_z = RealInput() {
    "Dyad": {
      "placement": {
        "diagram": {"iconName": "default", "x1": 810, "y1": -50, "x2": 910, "y2": 50, "rot": 90}
      },
      "tags": []
    }
  }
  structural parameter resolve_in_frame::ResolveInFrame = ResolveInFrame.World()
  "Scale factor for visualization"
  parameter scale::Real = 0.1
  "Color of torque arrow (RGBA)"
  parameter color::Real[4] = world_default_force_color()
  "Radius of torque arrow"
  parameter radius::Real = world_default_arrow_diameter()
relations
  frame_b.f = [0, 0, 0]
  switch resolve_in_frame
    case World
      frame_b.tau = -resolve2(frame_b.R, [torque_x, torque_y, torque_z])
    case FrameB
      frame_b.tau = -[torque_x, torque_y, torque_z]
  end
metadata {
  "Dyad": {
    "icons": {"default": "dyad://MultibodyComponents/WorldTorque.svg"},
    "labels": [
      {
        "label": "$(instance)",
        "x": 500,
        "y": 150,
        "rot": 0,
        "attrs": {"font-size": "140"}
      }
    ]
  }
}
end
Flattened Source
dyad
"""
External torque acting at `frame_b`, defined by 3 input signals.

Resolved in the world frame (default) or `frame_b`.
No force is applied, only torque.
"""
component WorldTorque
  frame_b = Frame3D() {
    "Dyad": {
      "placement": {
        "diagram": {"iconName": "default", "x1": 450, "y1": 900, "x2": 550, "y2": 1000, "rot": 0}
      },
      "tags": []
    }
  }
  torque_x = RealInput() {
    "Dyad": {
      "placement": {
        "diagram": {"iconName": "default", "x1": 90, "y1": -50, "x2": 190, "y2": 50, "rot": 90}
      },
      "tags": []
    }
  }
  torque_y = RealInput() {
    "Dyad": {
      "placement": {
        "diagram": {"iconName": "default", "x1": 450, "y1": -50, "x2": 550, "y2": 50, "rot": 90}
      },
      "tags": []
    }
  }
  torque_z = RealInput() {
    "Dyad": {
      "placement": {
        "diagram": {"iconName": "default", "x1": 810, "y1": -50, "x2": 910, "y2": 50, "rot": 90}
      },
      "tags": []
    }
  }
  structural parameter resolve_in_frame::ResolveInFrame = ResolveInFrame.World()
  "Scale factor for visualization"
  parameter scale::Real = 0.1
  "Color of torque arrow (RGBA)"
  parameter color::Real[4] = world_default_force_color()
  "Radius of torque arrow"
  parameter radius::Real = world_default_arrow_diameter()
relations
  frame_b.f = [0, 0, 0]
  switch resolve_in_frame
    case World
      frame_b.tau = -resolve2(frame_b.R, [torque_x, torque_y, torque_z])
    case FrameB
      frame_b.tau = -[torque_x, torque_y, torque_z]
  end
metadata {
  "Dyad": {
    "icons": {"default": "dyad://MultibodyComponents/WorldTorque.svg"},
    "labels": [
      {
        "label": "$(instance)",
        "x": 500,
        "y": 150,
        "rot": 0,
        "attrs": {"font-size": "140"}
      }
    ]
  }
}
end


Test Cases

No test cases defined.

  • Examples

  • Experiments

  • Analyses