virtual const char* name();
};
+/**
+ * A model that favors reversals.
+ */
+class Whirl : public ModelImpl {
+ public:
+ /**
+ * Returns a higher score for reversals and a lower score
+ * for all other actions.
+ *
+ * \see Model::score
+ */
+ double score(const SortAction& sa, const GeneOrder& go);
+
+ /**
+ * \see Model::name
+ */
+ const char* name();
+};
/**
* A model that favors symmetric reversal, resulting in an X-like