42#include <boost/serialization/vector.hpp>
60template<
typename ComplexT>
71 return path_index == std::numeric_limits<SolnIndT>::max();
81 template<
class Archive>
82 void serialize(Archive& ar,
unsigned const)
99template<
typename ComplexT>
147 template<
class Archive>
148 void serialize(Archive& ar,
unsigned const)
188 return v == std::numeric_limits<std::size_t>::max();
194 return std::numeric_limits<std::size_t>::max();
198template<
typename ComplexT>
205template<
typename ComplexT>
Bertini extensions of the Eigen linear algebra library.
Extensions to the Boost.Multiprecision library.
Definition path_result.hpp:180
bool is_sentinel(std::size_t v)
Query whether a plain index value is the sentinel.
Definition path_result.hpp:186
std::size_t make_sentinel(std::size_t)
Make the sentinel index value.
Definition path_result.hpp:192
Definition initialize_finalize.hpp:43
constexpr int TAG_CAPACITY
MPI message tag: worker -> manager, max tasks in flight on that rank.
Definition path_result.hpp:49
constexpr int TAG_RESULT
MPI message tag: worker -> manager result.
Definition path_result.hpp:48
constexpr int TAG_WORK_ITEM
MPI message tag: manager -> worker work item.
Definition path_result.hpp:47
Definition algorithm_builder.hpp:36
constexpr unsigned DoublePrecision()
The number of digits considered "double precision" (16).
Definition num_traits.hpp:152
Eigen::Matrix< NumT, Eigen::Dynamic, 1 > Vec
A dynamically-sized column vector of NumT.
Definition eigen_extensions.hpp:296
SuccessCode
Definition config.hpp:42
@ NeverStarted
No tracking was attempted.
Definition config.hpp:50
Provides an Eigen-like NumTraits struct for querying traits of a number type.
Numeric traits for a bertini number type: digit counts, conversions, and companion types.
Definition num_traits.hpp:57
Result of executing one WHOLE path: start -> endgame boundary -> target.
Definition path_result.hpp:101
unsigned max_precision_used
The highest precision used over the whole path.
Definition path_result.hpp:130
unsigned num_successful_steps
Successful predictor-corrector steps over the whole path.
Definition path_result.hpp:136
bool precision_changed
Whether precision changed during the path.
Definition path_result.hpp:128
unsigned cycle_num
The estimated cycle number at the endpoint.
Definition path_result.hpp:123
SuccessCode pre_endgame_success_code
Outcome of pre-endgame tracking to the boundary.
Definition path_result.hpp:108
double accuracy_estimate_user_coords
Estimated accuracy in the user's coordinates.
Definition path_result.hpp:122
bool crossing_unresolved
Whether a crossing involving this path was detected at the endgame boundary and never resolved,...
Definition path_result.hpp:144
unsigned num_failed_steps
Failed predictor-corrector steps over the whole path.
Definition path_result.hpp:137
ComplexT final_time_used
The time value the endgame finished at.
Definition path_result.hpp:120
typename NumTraits< ComplexT >::Real RealT
The real companion of the complex type.
Definition path_result.hpp:103
Vec< ComplexT > solution
The solution point (final endpoint of the path).
Definition path_result.hpp:115
SolnIndT path_index
The index of the path this result is for.
Definition path_result.hpp:105
double function_residual
Residual of the system at the final solution.
Definition path_result.hpp:116
double wall_clock_limit_seconds
The per-path wall-clock budget in force when the path ran, seconds; 0 = none.
Definition path_result.hpp:139
double newton_residual
Final Newton residual.
Definition path_result.hpp:119
unsigned precision_digits
Digits the endgame finished in (= solution point's precision).
Definition path_result.hpp:124
std::size_t SolnIndT
The path-index type.
Definition path_result.hpp:102
SuccessCode endgame_success_code
Outcome of the endgame.
Definition path_result.hpp:114
double condition_number
Condition-number estimate at the final solution.
Definition path_result.hpp:117
unsigned boundary_precision
The precision at the endgame boundary.
Definition path_result.hpp:111
ComplexT time_of_first_prec_increase
The time of the first precision increase (if any).
Definition path_result.hpp:129
Vec< ComplexT > latest_path_point
The last point the tracker reached on a path that did not succeed; empty otherwise.
Definition path_result.hpp:138
double path_time_seconds
Wall-clock seconds to execute the whole path.
Definition path_result.hpp:133
unsigned accuracy_digits
Trustworthy digit count, from the convergence agreement.
Definition path_result.hpp:125
RealT boundary_stepsize
The step size at the endgame boundary.
Definition path_result.hpp:110
double accuracy_estimate_internal_coords
Estimated accuracy in the solver's internal coordinates (homogenized, on the patch).
Definition path_result.hpp:121
Vec< ComplexT > boundary_point
The space point at the endgame boundary.
Definition path_result.hpp:109
Vec< double > singular_values
Singular values of the target Jacobian at the final solution, largest first (the spectrum behind cond...
Definition path_result.hpp:118
Work item for the speculative-full-path model: a path index plus its start point.
Definition path_result.hpp:62
bool is_sentinel() const
Query whether this is the sentinel "no more work" task.
Definition path_result.hpp:69
std::size_t SolnIndT
The path-index type.
Definition path_result.hpp:63
static StartPointTask sentinel()
Make the sentinel "no more work" task.
Definition path_result.hpp:75
SolnIndT path_index
The path index (max value marks a sentinel).
Definition path_result.hpp:65
Vec< ComplexT > start_point
The authoritative start point for this path.
Definition path_result.hpp:66