delphyne
IdmPlannerParameters< T > Class Template Referencefinal

Detailed Description

template<typename T>
class delphyne::IdmPlannerParameters< T >

Specializes BasicVector with specific getters and setters.

#include <src/gen/idm_planner_parameters.h>

Inheritance diagram for IdmPlannerParameters< T >:
[legend]

Public Types

typedef IdmPlannerParametersIndices K
 An abbreviation for our row index constants. More...
 

Public Member Functions

 IdmPlannerParameters ()
 Default constructor. More...
 
Implements CopyConstructible, CopyAssignable, MoveConstructible,

MoveAssignable

 IdmPlannerParameters (const IdmPlannerParameters &other)
 
 IdmPlannerParameters (IdmPlannerParameters &&other) noexcept
 
IdmPlannerParametersoperator= (const IdmPlannerParameters &other)
 
IdmPlannerParametersoperator= (IdmPlannerParameters &&other) noexcept
 
template<typename U = T>
std::enable_if< std::is_same< U, drake::symbolic::Expression >::value >::type SetToNamedVariables ()
 Create a drake::symbolic::Variable for each element with the known variable name. More...
 
IdmPlannerParameters< T > * DoClone () const final
 

Getters and Setters

const T & v_ref () const
 desired velocity in free traffic More...
 
void set_v_ref (const T &v_ref)
 Setter that matches v_ref(). More...
 
DRAKE_VECTOR_GEN_NODISCARD IdmPlannerParameters< T > with_v_ref (const T &v_ref) const
 Fluent setter that matches v_ref(). More...
 
const T & a () const
 max acceleration More...
 
void set_a (const T &a)
 Setter that matches a(). More...
 
DRAKE_VECTOR_GEN_NODISCARD IdmPlannerParameters< T > with_a (const T &a) const
 Fluent setter that matches a(). More...
 
const T & b () const
 comfortable braking deceleration More...
 
void set_b (const T &b)
 Setter that matches b(). More...
 
DRAKE_VECTOR_GEN_NODISCARD IdmPlannerParameters< T > with_b (const T &b) const
 Fluent setter that matches b(). More...
 
const T & s_0 () const
 minimum desired net distance More...
 
void set_s_0 (const T &s_0)
 Setter that matches s_0(). More...
 
DRAKE_VECTOR_GEN_NODISCARD IdmPlannerParameters< T > with_s_0 (const T &s_0) const
 Fluent setter that matches s_0(). More...
 
const T & time_headway () const
 desired time headway to vehicle in front More...
 
void set_time_headway (const T &time_headway)
 Setter that matches time_headway(). More...
 
DRAKE_VECTOR_GEN_NODISCARD IdmPlannerParameters< T > with_time_headway (const T &time_headway) const
 Fluent setter that matches time_headway(). More...
 
const T & delta () const
 free-road exponent More...
 
void set_delta (const T &delta)
 Setter that matches delta(). More...
 
DRAKE_VECTOR_GEN_NODISCARD IdmPlannerParameters< T > with_delta (const T &delta) const
 Fluent setter that matches delta(). More...
 
const T & bloat_diameter () const
 diameter of circle about the vehicle's pose that encloses its physical footprint More...
 
void set_bloat_diameter (const T &bloat_diameter)
 Setter that matches bloat_diameter(). More...
 
DRAKE_VECTOR_GEN_NODISCARD IdmPlannerParameters< T > with_bloat_diameter (const T &bloat_diameter) const
 Fluent setter that matches bloat_diameter(). More...
 
const T & distance_lower_limit () const
 lower saturation bound on net distance to prevent near-singular IDM solutions More...
 
void set_distance_lower_limit (const T &distance_lower_limit)
 Setter that matches distance_lower_limit(). More...
 
DRAKE_VECTOR_GEN_NODISCARD IdmPlannerParameters< T > with_distance_lower_limit (const T &distance_lower_limit) const
 Fluent setter that matches distance_lower_limit(). More...
 
const T & scan_ahead_distance () const
 distance to scan ahead on road for a leading vehicle More...
 
void set_scan_ahead_distance (const T &scan_ahead_distance)
 Setter that matches scan_ahead_distance(). More...
 
DRAKE_VECTOR_GEN_NODISCARD IdmPlannerParameters< T > with_scan_ahead_distance (const T &scan_ahead_distance) const
 Fluent setter that matches scan_ahead_distance(). More...
 
drake::boolean< T > IsValid () const
 Returns whether the current values of this vector are well-formed. More...
 
void GetElementBounds (Eigen::VectorXd *lower, Eigen::VectorXd *upper) const final
 
static const std::vector< std::string > & GetCoordinateNames ()
 See IdmPlannerParametersIndices::GetCoordinateNames(). More...
 

Member Typedef Documentation

◆ K

An abbreviation for our row index constants.

Constructor & Destructor Documentation

◆ IdmPlannerParameters() [1/3]

Default constructor.

Sets all rows to their default value:

  • v_ref defaults to 10.0 m/s.
  • a defaults to 1.0 m/s^2.
  • b defaults to 3.0 m/s^2.
  • s_0 defaults to 1.0 m.
  • time_headway defaults to 0.1 s.
  • delta defaults to 4.0 dimensionless.
  • bloat_diameter defaults to 4.5 m.
  • distance_lower_limit defaults to 1e-2 m.
  • scan_ahead_distance defaults to 100.0 m.

◆ IdmPlannerParameters() [2/3]

IdmPlannerParameters ( const IdmPlannerParameters< T > &  other)

◆ IdmPlannerParameters() [3/3]

IdmPlannerParameters ( IdmPlannerParameters< T > &&  other)
noexcept

Member Function Documentation

◆ a()

const T& a ( ) const

max acceleration

Note
a is expressed in units of m/s^2.
a has a limited domain of [0.0, +Inf].

◆ b()

const T& b ( ) const

comfortable braking deceleration

Note
b is expressed in units of m/s^2.
b has a limited domain of [0.0, +Inf].

◆ bloat_diameter()

const T& bloat_diameter ( ) const

diameter of circle about the vehicle's pose that encloses its physical footprint

Note
bloat_diameter is expressed in units of m.
bloat_diameter has a limited domain of [0.0, +Inf].

◆ delta()

const T& delta ( ) const

free-road exponent

Note
delta is expressed in units of dimensionless.
delta has a limited domain of [0.0, +Inf].

◆ distance_lower_limit()

const T& distance_lower_limit ( ) const

lower saturation bound on net distance to prevent near-singular IDM solutions

Note
distance_lower_limit is expressed in units of m.
distance_lower_limit has a limited domain of [0.0, +Inf].

◆ DoClone()

IdmPlannerParameters<T>* DoClone ( ) const
final

◆ GetCoordinateNames()

static const std::vector<std::string>& GetCoordinateNames ( )
static

◆ GetElementBounds()

void GetElementBounds ( Eigen::VectorXd *  lower,
Eigen::VectorXd *  upper 
) const
final

◆ IsValid()

drake::boolean<T> IsValid ( ) const

Returns whether the current values of this vector are well-formed.

◆ operator=() [1/2]

IdmPlannerParameters& operator= ( const IdmPlannerParameters< T > &  other)

◆ operator=() [2/2]

IdmPlannerParameters& operator= ( IdmPlannerParameters< T > &&  other)
noexcept

◆ s_0()

const T& s_0 ( ) const

minimum desired net distance

Note
s_0 is expressed in units of m.
s_0 has a limited domain of [0.0, +Inf].

◆ scan_ahead_distance()

const T& scan_ahead_distance ( ) const

distance to scan ahead on road for a leading vehicle

Note
scan_ahead_distance is expressed in units of m.
scan_ahead_distance has a limited domain of [0.0, +Inf].

◆ set_a()

void set_a ( const T &  a)

Setter that matches a().

◆ set_b()

void set_b ( const T &  b)

Setter that matches b().

◆ set_bloat_diameter()

void set_bloat_diameter ( const T &  bloat_diameter)

Setter that matches bloat_diameter().

◆ set_delta()

void set_delta ( const T &  delta)

Setter that matches delta().

◆ set_distance_lower_limit()

void set_distance_lower_limit ( const T &  distance_lower_limit)

Setter that matches distance_lower_limit().

◆ set_s_0()

void set_s_0 ( const T &  s_0)

Setter that matches s_0().

◆ set_scan_ahead_distance()

void set_scan_ahead_distance ( const T &  scan_ahead_distance)

Setter that matches scan_ahead_distance().

◆ set_time_headway()

void set_time_headway ( const T &  time_headway)

Setter that matches time_headway().

◆ set_v_ref()

void set_v_ref ( const T &  v_ref)

Setter that matches v_ref().

◆ SetToNamedVariables()

std::enable_if<std::is_same<U, drake::symbolic::Expression>::value>::type SetToNamedVariables ( )

Create a drake::symbolic::Variable for each element with the known variable name.

This is only available for T == drake::symbolic::Expression.

◆ time_headway()

const T& time_headway ( ) const

desired time headway to vehicle in front

Note
time_headway is expressed in units of s.
time_headway has a limited domain of [0.0, +Inf].

◆ v_ref()

const T& v_ref ( ) const

desired velocity in free traffic

Note
v_ref is expressed in units of m/s.
v_ref has a limited domain of [0.0, +Inf].

◆ with_a()

DRAKE_VECTOR_GEN_NODISCARD IdmPlannerParameters<T> with_a ( const T &  a) const

Fluent setter that matches a().

Returns a copy of this with a set to a new value.

◆ with_b()

DRAKE_VECTOR_GEN_NODISCARD IdmPlannerParameters<T> with_b ( const T &  b) const

Fluent setter that matches b().

Returns a copy of this with b set to a new value.

◆ with_bloat_diameter()

DRAKE_VECTOR_GEN_NODISCARD IdmPlannerParameters<T> with_bloat_diameter ( const T &  bloat_diameter) const

Fluent setter that matches bloat_diameter().

Returns a copy of this with bloat_diameter set to a new value.

◆ with_delta()

DRAKE_VECTOR_GEN_NODISCARD IdmPlannerParameters<T> with_delta ( const T &  delta) const

Fluent setter that matches delta().

Returns a copy of this with delta set to a new value.

◆ with_distance_lower_limit()

DRAKE_VECTOR_GEN_NODISCARD IdmPlannerParameters<T> with_distance_lower_limit ( const T &  distance_lower_limit) const

Fluent setter that matches distance_lower_limit().

Returns a copy of this with distance_lower_limit set to a new value.

◆ with_s_0()

DRAKE_VECTOR_GEN_NODISCARD IdmPlannerParameters<T> with_s_0 ( const T &  s_0) const

Fluent setter that matches s_0().

Returns a copy of this with s_0 set to a new value.

◆ with_scan_ahead_distance()

DRAKE_VECTOR_GEN_NODISCARD IdmPlannerParameters<T> with_scan_ahead_distance ( const T &  scan_ahead_distance) const

Fluent setter that matches scan_ahead_distance().

Returns a copy of this with scan_ahead_distance set to a new value.

◆ with_time_headway()

DRAKE_VECTOR_GEN_NODISCARD IdmPlannerParameters<T> with_time_headway ( const T &  time_headway) const

Fluent setter that matches time_headway().

Returns a copy of this with time_headway set to a new value.

◆ with_v_ref()

DRAKE_VECTOR_GEN_NODISCARD IdmPlannerParameters<T> with_v_ref ( const T &  v_ref) const

Fluent setter that matches v_ref().

Returns a copy of this with v_ref set to a new value.


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