8 #ifndef __STOP_HISTORY_INTERVAL_H 9 #define __STOP_HISTORY_INTERVAL_H 11 #include "../Core/SharedLibraryExportMacros.h" 12 #include "../Core/Error.h" 41 std::list<double>::const_iterator __first_age,
51 __discarded_age_begin,
57 std::list< std::valarray<double> >::const_iterator __first_stop_cond,
63 __stop_cond_history_end,
66 __stop_cond_discarded_begin,
78 __stop_deriv_history_end,
81 __stop_deriv_discarded_begin,
89 void advance_iterator_set(std::list<double>::const_iterator &age_i,
90 std::list< std::valarray<double> >::const_iterator &cond_i,
91 std::list< std::valarray<double> >::const_iterator &deriv_i);
96 void retreat_iterator_set(std::list<double>::const_iterator &age_i,
97 std::list< std::valarray<double> >::const_iterator &cond_i,
98 std::list< std::valarray<double> >::const_iterator &deriv_i);
107 std::list<double>::const_iterator
108 first_age=std::list<double>::const_iterator(),
111 std::list<double>::const_iterator
112 history_age_end=std::list<double>::const_iterator(),
115 std::list<double>::const_iterator
116 discarded_age_begin=std::list<double>::const_iterator(),
120 std::list< std::valarray<double> >::const_iterator
123 std::list< std::valarray<double> >::const_iterator(),
127 std::list< std::valarray<double> >::const_iterator
128 stop_cond_history_end
130 std::list< std::valarray<double> >::const_iterator(),
134 std::list< std::valarray<double> >::const_iterator
135 stop_cond_discarded_begin
137 std::list< std::valarray<double> >::const_iterator(),
141 std::list< std::valarray<double> >::const_iterator
144 std::list< std::valarray<double> >::const_iterator(),
148 std::list< std::valarray<double> >::const_iterator
149 stop_deriv_history_end
151 std::list< std::valarray<double> >::const_iterator(),
155 std::list< std::valarray<double> >::const_iterator
156 stop_deriv_discarded_begin
158 std::list< std::valarray<double> >::const_iterator()
204 void grow_left(
size_t n=1);
207 void grow_right(
size_t n=1);
220 bool end() {
return __point_i==__num_points;}
229 double age()
const {
return *__age_i;}
234 {
return (*__first_stop_cond)[condition_index];}
239 {
return (*__last_stop_cond)[condition_index];}
244 {
return (*__stop_cond_i)[condition_index];}
249 {
return (*__first_stop_deriv)[condition_index];}
254 {
return (*__last_stop_deriv)[condition_index];}
259 {
return (*__stop_deriv_i)[condition_index];}
263 LIB_LOCAL std::ostream &
operator<<(std::ostream &os,
double stop_condition_deriv(size_t condition_index) const
Returns the derivative of the stop condition with the given index for the current point...
size_t number_conditions()
Returns the number of conditions at the first point.
std::ostream & operator<<(std::ostream &os, const ZoneEvolutionQuantities &evol_var)
More civilized output for EvolVarType variables.
std::list< std::valarray< double > >::const_iterator __stop_deriv_i
The current stop condition derivative.
double first_stop_condition_deriv(size_t condition_index) const
Returns the derivative of the stop condition with the given index for the first point in the interval...
std::list< double >::const_iterator __last_age
The last age in the interval.
Orientations of zones of bodies in a binary system.
size_t __point_i
The index of the current point.
size_t current_point_index()
Returns the index of the current point within the interval.
double first_age() const
Returns the age of the first point in the interval.
double last_stop_condition_value(size_t condition_index) const
Returns the value of the stop condition with the given index for the last point in the interval...
size_t num_points()
Returns the number of points in the interval.
bool end()
Returns true iff this is the invalid point marking the end of the interval.
double stop_condition_value(size_t condition_index) const
Returns the value of the stop condition with the given index for the current point.
double last_age() const
Returns the age of the last point in the interval.
double first_stop_condition_value(size_t condition_index) const
Returns the value of the stop condition with the given index for the first point in the interval...
double age() const
Returns the age of the current point.
A collection of accepted and discarded evolution steps which contain some reason to stop...
double last_stop_condition_deriv(size_t condition_index) const
Returns the derivative of the stop condition with the given index for the last point in the interval...