1#include "GPSymbRegEvalOp.h"
9 if (!calculateBoundsIfRootNode(result, tree)) {
19 IAPrimitiveP prim = boost::dynamic_pointer_cast<IAPrimitive>(tree[tree.
iNode_]->primitive_);
21 IABounds bounds = prim->calculateBounds(tree);
23 if (!bounds.isWithinBounds) {
26 }
else if (bounds.lowerBound < 0 || (bounds.lowerBound == 0 && bounds.isLowerBoundInclusive)) {
28 retVal.isWithinBounds =
false;
33 retVal.isWithinBounds =
true;
34 retVal.isLowerBoundInclusive = bounds.isLowerBoundInclusive;
35 retVal.lowerBound = log10(bounds.lowerBound);
36 retVal.isUpperBoundInclusive = bounds.isUpperBoundInclusive;
37 retVal.upperBound = log10(bounds.upperBound);
virtual void execute(void *result, Tree::Tree &tree)
Execute the primitive.
void execute(void *result, Tree &tree)
Execute the primitive.
Tree class - implements genotype as a tree.
uint iNode_
current node index (when parsing the tree)