Virtual Testbed
Ship dynamics simulator for extreme conditions
Public Types | Public Member Functions | Static Public Attributes | List of all members
vtb::core::Ship_hull_panel< T, N > Class Template Reference

Triangular ship hull panel (face). More...

#include <ship_hull_panel.hh>

Public Types

using vec = blitz::TinyVector< T, N >
 

Public Member Functions

 Ship_hull_panel (const vec &centre, vec n, T area, T volume)
 
Ship_hull_paneloperator= (const Ship_hull_panel &)=default
 
const vec & centre () const
 Get the centre of the panel in body-fixed coordinate system.
 
void centre (const vec &rhs)
 
const vec & normal () const
 Get surface normal.
 
void normal (const vec &rhs)
 
area () const
 Get surface area.
 
void area (T rhs)
 
volume () const
 Get tetrahedron volume.
 
void volume (T rhs)
 
const vec & force () const
 
vec & force ()
 
bool wetted () const
 
void wetted (bool rhs)
 
bool waterline () const
 
void waterline (bool rhs)
 

Static Public Attributes

static constexpr const int Centre = 0
 
static constexpr const int Normal = 1
 
static constexpr const int Force = 2
 
static constexpr const int Polyhedron = 3
 

Detailed Description

template<class T, int N>
class vtb::core::Ship_hull_panel< T, N >

Triangular ship hull panel (face).

Date
2018-08-23
Author
Ivan Gankevich

Definition at line 18 of file ship_hull_panel.hh.

Member Function Documentation

◆ force()

template<class T , int N>
const vec& vtb::core::Ship_hull_panel< T, N >::force ( ) const
inline

Get the force applied to the centre of the panel in the direction of the normal.

Definition at line 68 of file ship_hull_panel.hh.