![]() |
SEVN
|
#include <evolve.h>
Public Member Functions | |
| EvolveFunctor (SevnLogging &svlog, bool record_state=true, bool include_failed=false, Options *options=nullptr) | |
| virtual | ~EvolveFunctor ()=default |
| virtual int | operator() (_UNUSED Binstar &binary) |
| virtual int | operator() (_UNUSED Star &star) |
| virtual std::string | name () |
Static Public Member Functions | |
| template<typename System > | |
| static bool | check_stalling (System &system) |
Protected Member Functions | |
| template<class System > | |
| void | final_print (System &system, bool evolution_result) |
Static Protected Member Functions | |
| template<class System > | |
| static void | catched_error_message (System &system, const sevnstd::sevnerr &e) |
| static long | elapsed_time (std::chrono::steady_clock::time_point start_clock) |
Protected Attributes | |
| SevnLogging & | _svlog |
| const bool | _record_state |
| const bool | _include_failed |
| const Options * | _options |
Abstract Base class for Evolve functions. The derived class needs to call the base constructor with parameters:
| svlog,instance | of class Svlogging |
| record_state,If | true enable the state recording during the evolution (following the parameters in input) |
| include_failed,If | true include the results of failed evolutions in the output files |
| Options | [Optional], Pointer to an istance of the struct evolve_utility::Options containing a vector of doubles and a vector of strings. The struct is used to pass extra parameters to the given Evolve FUnctor (if needed) |
|
inlineexplicit |
|
virtualdefault |
|
inlinestaticprotected |
Special error message printed to std::cerr. This message is always print do not throw errors and can be used to print a message of a catched error during during a system evolution
| e | Instance of Sevnerror |
| system_name | name of the system (sytem.get_name()) |
| system_ID | ID of the system (system.get_ID()) |
|
inlinestatic |
Check if the system has been evolving for more than a given threshold (standard 20 s) If this is the case throw a sevnerror The check is performed only if the option check_stalling is set to true @TODO it could be better to move the check_stalling parameter from bool to double including the maximum time allowed for the evolution
| System | An object of the class Star or Binary |
| system | the system for which we want to check if the evolution is stalling |
|
inlinestaticprotected |
Measure the elapsed time in seconds from a given starting clock
| start_clock,an | instance of std::chrono::steady_clock::time_point, the elapsed time is estimated from this point |
|
inlineprotected |
|
inlinevirtual |
Reimplemented in evolve_utility::EvolveDebug, evolve_utility::EvolveDefault, evolve_utility::EvolveStopCondition, evolve_utility::EvolveRecordCondition, evolve_utility::EvolveBinaryCompact, evolve_utility::EvolveBinaryCompactOld, evolve_utility::EvolveBBH, evolve_utility::EvolveBLC, evolve_utility::EvolveBCX1, evolve_utility::EvolveBHMSTarantula, evolve_utility::EvolveBHMS, evolve_utility::EvolveW1, and evolve_utility::EvolveRRL.
|
protected |
|
protected |
|
protected |
|
protected |