Gazebo Sim

API Reference

9.0.0
LiftDrag Class Reference

The LiftDrag system computes lift and drag forces enabling simulation of aerodynamic robots. More...

#include <LiftDrag.hh>

Public Member Functions

 LiftDrag ()
 Constructor.
 
 ~LiftDrag () override=default
 Destructor.
 
void Configure (const Entity &_entity, const std::shared_ptr< const sdf::Element > &_sdf, EntityComponentManager &_ecm, EventManager &_eventMgr) override
 Configure the system.
 
void PreUpdate (const UpdateInfo &_info, EntityComponentManager &_ecm) final
 Documentation inherited.
 
- Public Member Functions inherited from System
 System ()=default
 Constructor.
 
virtual ~System ()=default
 Destructor.
 

Additional Inherited Members

- Public Types inherited from System
using PriorityType = int32_t
 Signed integer type used for specifying priority of the execution order of PreUpdate and Update phases.
 
- Static Public Attributes inherited from System
static constexpr PriorityType kDefaultPriority = {0}
 Default priority value for execution order of the PreUpdate and Update phases.
 
static constexpr std::string_view kPriorityElementName
 Name of the XML element from which the priority value will be parsed.
 

Detailed Description

The LiftDrag system computes lift and drag forces enabling simulation of aerodynamic robots.

System Parameters

  • <link_name>: Name of the link affected by the group of lift/drag properties. This can be a scoped name to reference links in nested models.
    See also
    entitiesFromScopedName to learn more about scoped names.
  • <air_density>: Density of the fluid this model is suspended in.
  • <area>: Surface area of the link.
  • <a0>: The initial "alpha" or initial angle of attack. a0 is also the y-intercept of the alpha-lift coefficient curve.
  • <cla>: The ratio of the coefficient of lift and alpha slope before stall. Slope of the first portion of the alpha-lift coefficient curve.
  • <cda>: The ratio of the coefficient of drag and alpha slope before stall.
  • <cp>: Center of pressure. The forces due to lift and drag will be applied here.
  • <forward>: 3-vector representing the forward direction of motion in the link frame.
  • <upward>: 3-vector representing the direction of lift or drag.
  • <alpha_stall>: Angle of attack at stall point; the peak angle of attack.
  • <cla_stall>: The ratio of coefficient of lift and alpha slope after stall. Slope of the second portion of the alpha-lift coefficient curve.
  • <cda_stall>: The ratio of coefficient of drag and alpha slope after stall.
  • <control_joint_name>: Name of joint that actuates a control surface for this lifting body (Optional)
  • <cm_delta>: How much Cm changes with a change in control surface deflection angle

Constructor & Destructor Documentation

◆ LiftDrag()

LiftDrag ( )

Constructor.

◆ ~LiftDrag()

~LiftDrag ( )
overridedefault

Destructor.

Member Function Documentation

◆ Configure()

void Configure ( const Entity _entity,
const std::shared_ptr< const sdf::Element > &  _sdf,
EntityComponentManager _ecm,
EventManager _eventMgr 
)
overridevirtual

Configure the system.

Parameters
[in]_entityThe entity this plugin is attached to.
[in]_sdfThe SDF Element associated with this system plugin.
[in]_ecmThe EntityComponentManager of the given simulation instance.
[in]_eventMgrThe EventManager of the given simulation instance.

Implements ISystemConfigure.

◆ PreUpdate()

void PreUpdate ( const UpdateInfo _info,
EntityComponentManager _ecm 
)
finalvirtual

Documentation inherited.

Implements ISystemPreUpdate.


The documentation for this class was generated from the following file: