controls  3.0.0
Public Member Functions | Public Attributes | List of all members
ThrusterLayout Class Reference

Manages a collection of Thruster objects and builds the allocation matrix. More...

#include <ThrusterLayout.h>

Public Member Functions

 ThrusterLayout ()
 Constructs an empty layout. More...
 
void addThruster (const Thruster &thruster)
 Adds a thruster to the layout. More...
 
void clear ()
 Removes all thrusters from the layout. More...
 
MatrixXd buildAllocationMatrix () const
 Builds the 6xN force-allocation matrix from the current thruster set. More...
 

Public Attributes

std::vector< Thrusterthrusters
 All thrusters registered in this layout. More...
 

Detailed Description

Manages a collection of Thruster objects and builds the allocation matrix.

Constructor & Destructor Documentation

◆ ThrusterLayout()

ThrusterLayout::ThrusterLayout ( )

Constructs an empty layout.

Member Function Documentation

◆ addThruster()

void ThrusterLayout::addThruster ( const Thruster thruster)

Adds a thruster to the layout.

Parameters
thruster[in] Thruster to append

◆ buildAllocationMatrix()

MatrixXd ThrusterLayout::buildAllocationMatrix ( ) const

Builds the 6xN force-allocation matrix from the current thruster set.

Each column i corresponds to the thruster with idx == i. The upper three rows are the normalised thrust direction; the lower three rows are the cross-product moment arm (position × direction).

Returns
6xN allocation matrix T where T * f_thrusters = τ_body

◆ clear()

void ThrusterLayout::clear ( )

Removes all thrusters from the layout.

Member Data Documentation

◆ thrusters

std::vector<Thruster> ThrusterLayout::thrusters

All thrusters registered in this layout.


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