38template<
int dim,
size_t orderDim>
47 return (p1.first[0]<p2.first[0]);
55 if (p1.first[0]==p2.first[0]) {
56 return (p1.first[1] < p2.first[1]);
59 return (p1.first[0] < p2.first[0]);
66 if (p1.first[1]==p2.first[1]) {
67 return (p1.first[0] < p2.first[0]);
70 return (p1.first[1] < p2.first[1]);
79 if (p1.first[2]==p2.first[2]){
80 if (p1.first[1]==p2.first[1]) {
81 return p1.first[0] < p2.first[0];
84 return (p1.first[1] < p2.first[1]);
88 return (p1.first[2] < p2.first[2]);
95 if (p1.first[0]==p2.first[0]){
96 if (p1.first[2]==p2.first[2]) {
97 return p1.first[1] < p2.first[1];
100 return (p1.first[2] < p2.first[2]);
104 return (p1.first[0] < p2.first[0]);
111 if (p1.first[1]==p2.first[1]){
112 if (p1.first[0]==p2.first[0]) {
113 return p1.first[2] < p2.first[2];
116 return (p1.first[0] < p2.first[0]);
120 return (p1.first[1] < p2.first[1]);
128template<
int dim,
size_t orderDim>
137 return (p1.first[0]>p2.first[0]);
145 if (p1.first[0]==p2.first[0]) {
146 return (p1.first[1] > p2.first[1]);
149 return (p1.first[0] > p2.first[0]);
156 if (p1.first[1]==p2.first[1]) {
157 return (p1.first[0] > p2.first[0]);
160 return (p1.first[1] > p2.first[1]);
169 if (p1.first[2]==p2.first[2]){
170 if (p1.first[1]==p2.first[1]) {
171 return p1.first[0] > p2.first[0];
174 return (p1.first[1] > p2.first[1]);
178 return (p1.first[2] > p2.first[2]);
185 if (p1.first[0]==p2.first[0]){
186 if (p1.first[2]==p2.first[2]) {
187 return p1.first[1] > p2.first[1];
190 return (p1.first[2] > p2.first[2]);
194 return (p1.first[0] > p2.first[0]);
201 if (p1.first[1]==p2.first[1]){
202 if (p1.first[0]==p2.first[0]) {
203 return p1.first[2] > p2.first[2];
206 return (p1.first[0] > p2.first[0]);
210 return (p1.first[1] > p2.first[1]);
a mathematical Vector with N entries.
Definition math_vector.h:97
bool ComparePosDim< 3, 1 >(const std::pair< MathVector< 3 >, size_t > &p1, const std::pair< MathVector< 3 >, size_t > &p2)
Definition lexorder_comparators.cpp:92
bool ComparePosDim(const std::pair< MathVector< dim >, size_t > &p1, const std::pair< MathVector< dim >, size_t > &p2)
Definition lexorder_comparators.cpp:39
bool ComparePosDim< 3, 2 >(const std::pair< MathVector< 3 >, size_t > &p1, const std::pair< MathVector< 3 >, size_t > &p2)
Definition lexorder_comparators.cpp:108
bool ComparePosDim< 1, 0 >(const std::pair< MathVector< 1 >, size_t > &p1, const std::pair< MathVector< 1 >, size_t > &p2)
Definition lexorder_comparators.cpp:44
bool ComparePosDimDec< 2, 1 >(const std::pair< MathVector< 2 >, size_t > &p1, const std::pair< MathVector< 2 >, size_t > &p2)
Definition lexorder_comparators.cpp:153
bool ComparePosDimDec< 3, 1 >(const std::pair< MathVector< 3 >, size_t > &p1, const std::pair< MathVector< 3 >, size_t > &p2)
Definition lexorder_comparators.cpp:182
bool ComparePosDimDec< 1, 0 >(const std::pair< MathVector< 1 >, size_t > &p1, const std::pair< MathVector< 1 >, size_t > &p2)
Definition lexorder_comparators.cpp:134
bool ComparePosDimDec< 3, 2 >(const std::pair< MathVector< 3 >, size_t > &p1, const std::pair< MathVector< 3 >, size_t > &p2)
Definition lexorder_comparators.cpp:198
bool ComparePosDim< 2, 0 >(const std::pair< MathVector< 2 >, size_t > &p1, const std::pair< MathVector< 2 >, size_t > &p2)
Definition lexorder_comparators.cpp:52
bool ComparePosDim< 3, 0 >(const std::pair< MathVector< 3 >, size_t > &p1, const std::pair< MathVector< 3 >, size_t > &p2)
Definition lexorder_comparators.cpp:76
bool ComparePosDimDec(const std::pair< MathVector< dim >, size_t > &p1, const std::pair< MathVector< dim >, size_t > &p2)
Definition lexorder_comparators.cpp:129
bool ComparePosDimDec< 3, 0 >(const std::pair< MathVector< 3 >, size_t > &p1, const std::pair< MathVector< 3 >, size_t > &p2)
Definition lexorder_comparators.cpp:166
bool ComparePosDim< 2, 1 >(const std::pair< MathVector< 2 >, size_t > &p1, const std::pair< MathVector< 2 >, size_t > &p2)
Definition lexorder_comparators.cpp:63
bool ComparePosDimDec< 2, 0 >(const std::pair< MathVector< 2 >, size_t > &p1, const std::pair< MathVector< 2 >, size_t > &p2)
Definition lexorder_comparators.cpp:142