 |
vrpRouting
0.3
|
Go to the documentation of this file.
28 #ifndef INCLUDE_CPP_COMMON_BASE_MATRIX_H_
29 #define INCLUDE_CPP_COMMON_BASE_MATRIX_H_
41 #include "structures/generic/matrix.h"
116 void set_ids(
const std::vector<Matrix_cell_t> &);
138 #endif // INCLUDE_CPP_COMMON_BASE_MATRIX_H_
Id get_original_id(Idx) const
original id -> idx
Base_Matrix()=default
Constructs an emtpy matrix.
Idx get_index(Id) const
original id -> idx
std::vector< std::vector< TravelCost > > m_cost_matrix
the cost matrix for vroom
bool empty() const
is the matrix empty?
void set_ids(const std::vector< Matrix_cell_t > &)
Traverses the matrix information to set the ids of the nodes.
vroom::Matrix< vroom::Duration > get_vroom_duration_matrix() const
Get VROOM duration matrix from vrprouting Base Matrix.
friend std::ostream & operator<<(std::ostream &log, const Base_Matrix &matrix)
print matrix (row per cell)
bool has_no_infinity() const
does the matrix values not given by the user?
std::vector< Id > m_ids
DATA.
size_t fix_triangle_inequality(size_t depth=0)
Fix Triangle Inequality Theorem.
std::vector< std::vector< TInterval > > m_time_matrix
the actual time matrix
bool has_id(Id) const
has identifier
TInterval at(Idx i, Idx j) const
bool is_symmetric() const
is the matrix symetric?
vroom::Matrix< vroom::Cost > get_vroom_cost_matrix() const
Get VROOM cost matrix from vrprouting Base Matrix.
bool obeys_triangle_inequality() const
does the matrix obeys the triangle inequality?