Class: wsim.linearPTOWithController

wsim.linearPTOWithController is a class representing a linear power-take-off
mechanism in a wave energy converter. It facilitates sending the correct
forces to an MBDyn multibody simulation. wsim.linearPTOWithController applies
forces between two MBDyn nodes based on their relative displacement.
Forces are applied based on the relative displacement and velocity of the
two nodes along axis 3 in the reference frame of the first node. It is
assumed that the nodes motion is constrained appropriately by other MBDyn
elements (e.g. a prismatic joint).

wsim.linearPTOWithController Methods:

  linearPTOWithController - construct a wsim.linearPTOWithController object
  forceAndMoment - returns the forces and moments applied by the PTO in 3D

  Inheirited Methods

  advanceStep - advance to the next simulation time step
  logData - appends the internal variable data to the log
  loggingSetup - sets up data logging for a wsim.linearPTOWithController object

Inheiritance Graph


digraph graph_for_linearPTOWithController {
   "handle" -> "wsim.powerTakeOff" -> "wsim.linearPTOWithController";
}

Parent Class Properties and Methods


handle

Inheirited Properties

None

Inheirited Methods

  • addlistener : ADDLISTENER Add listener for event.
  • addlistener : ADDLISTENER Add listener for event.
  • addlistener : ADDLISTENER Add listener for event.
  • addlistener : ADDLISTENER Add listener for event.
  • addlistener : ADDLISTENER Add listener for event.
  • delete : DELETE Delete a handle object.
  • eq : == (EQ) Test handle equality.
  • findobj : FINDOBJ Find objects matching specified conditions.
  • findprop : FINDPROP Find property of MATLAB handle object.
  • ge : >= (GE) Greater than or equal relation for handles.
  • gt : > (GT) Greater than relation for handles.
  • isvalid : ISVALID Test handle validity.
  • le : <= (LE) Less than or equal relation for handles.
  • listener : LISTENER Add listener for event without binding the listener to the source object.
  • listener : LISTENER Add listener for event without binding the listener to the source object.
  • listener : LISTENER Add listener for event without binding the listener to the source object.
  • listener : LISTENER Add listener for event without binding the listener to the source object.
  • listener : LISTENER Add listener for event without binding the listener to the source object.
  • lt : < (LT) Less than relation for handles.
  • ne : ~= (NE) Not equal relation for handles.
  • notify : NOTIFY Notify listeners of event.
  • notify : NOTIFY Notify listeners of event.

wsim.powerTakeOff

Inheirited Properties

  • id
  • loggingInfo
  • loggingOn
  • otherNode
  • referenceNode
  • uniqueLoggingNames

Inheirited Methods

  • powerTakeOff : wsim.powerTakeOff constructor
  • advanceStep : advance to the next simulation time step
  • finish : method called at end of wecSim simulation
  • forceAndMoment : forceAndMoment should return the force and moment from a PTO
  • logData : appends the internal variable data to the log
  • loggingSetup : sets up data logging for a wsim.linearPowerTakeOff object
  • start : initialise the pto simulation

Properties


No public properties

Methods


  • linearPTOWithController
  • forceAndMoment

linearPTOWithController


Summary

construct a wsim.linearPTOWithController object

Syntax

lpto = wsim.linearPTOWithController (reference_node, other_node, axisNum, controller)
lpto = wsim.linearPTOWithController (..., 'Parameter', value)

Description

wsim.linearPTOWithController is a class representing a linear
power-take-off mechanism in a wave energy converter. It
facilitates sending the correct forces to an MBDyn multibody
simulation. wsim.linearPTOWithController applies forces
between two MBDyn nodes based on a wsim.wecController's
output pto forces. Forces are applied based on the relative
displacement and velocity of the two nodes along axis 3 in
the reference frame of the first node. It is assumed that the
nodes motion is constrained appropriately by other MBDyn
elements (e.g. a prismatic joint).

wsim.linearPTOWithController Methods:

 wsim.linearPTOWithController - constructor
 forceAndMoment - returns pto forces and moments on the
   attached nodes

Inputs

reference_node

mbdyn.pre.structuralNode6dof object

other_node

mbdyn.pre.structuralNode6dof object

axisNum

axis in the frame of the reference node. Forces
will be applied to the node in a direction parallel to this
axis.

controller

a wsim.wecController object

Additional arguments may be supplied as parameter-value pairs:

InitialDisplacementZero

optional true/false flag
indicating whether the intial relative displacement (along
axis 3 of the reference node) in the global frame should
be taken as the reference point for displacement during
the simulation, i.e. the PTO starts with an initial
displacement of zero for the purposes of force calulation,
and future displacement is measured relative to this
initial position. If false, the raw position is used
instead. Default is true if not supplied.

LoggedVars

character vector, or cell array of character
vectors indicating what internal variables are to be
logged during a simulation. If a character vector, it must
be 'none', meaning nothing will be logged. Otherwise it
must be a cell array containing any combination of the
following names:

InternalForce

This is the internal PTO force
calculated using the controller

RelativeDisplacement

The relative displacement used to
calculate the PTO force

RelativeVelocity

The relative velocity used to
calculate the PTO force

Outputs

lpto

a wsim.linearPTOWithController object

See Also


forceAndMoment


Summary

returns the forces and moments applied by the PTO in 3D

Syntax

[FM, ptotorque, reltheta, relomega] = forceAndMoment (rot)

Description

wsim.linearPTOWithController.forceAndMoment calculates the
forces and moments applied in the global frame by the PTO to
the two nodes associated with the PTO.

Inputs

rot

wsim.rotaryPowerTakeOff object

Outputs

FM

(6 x 2) vector of forces and moments in the global
frame which the PTO is applying to the two nodes. The first
column is the forces applied to the reference node, the
second column is the forces and moments applied to the
other node.

ptoforce

scalar force value applied to the nodes parallel
to axis three of the reference node. This is the force
which is applied to the non-reference node, the opposite
force is applied to the reference node.

reldisp

relative displacement of the non-reference node
relative to the reference node in a direction parallel to
axis three of the reference node

relvel

relative angular velocity of the non-reference node
relative to the reference node in a direction parallel to
axis three of the reference node