Program Listing for File SecondaryDeathCondition.h¶
↰ Return to documentation for file (/home/kpenev/projects/git/poet/poet_src/Evolve/SecondaryDeathCondition.h)
#ifndef __SECONDARY_DEATH_CONDITION_H
#define __SECONDARY_DEATH_CONDITION_H
#include "../Core/SharedLibraryExportMacros.h"
#include "StoppingCondition.h"
namespace Evolve {
class BinarySystem;
class LIB_LOCAL SecondaryDeathCondition : public StoppingCondition {
private:
BinarySystem &__system;
public:
SecondaryDeathCondition(BinarySystem &system) :
StoppingCondition(-1),
__system(system)
{}
std::valarray<double> operator()(
Core::EvolModeType evol_mode,
const std::valarray<double> &orbit,
const std::valarray<double> &derivatives,
std::valarray<double> &stop_deriv) const;
StoppingConditionType type(unsigned =0) const {return PLANET_DEATH;}
void reached(short deriv_sign, unsigned index=0);
virtual std::string describe(int index = -1) const;
}; //End SecondaryDeathCondition class.
} //End Evolve namespace.
#endif