class SelectCrankshaftSmall : public feasst::TrialSelectParticle

Similar to SelectSegment, but optimized for small molecules using anchors. The sites which move (mobile sites) are rotated about an axis defined by two anchors.


  • site[i]: add the (i+1)-th mobile site, beginning with i=1, where “site” is the first mobile site. The “[i]” is to be substituted for an integer 1, 2, 3 …

  • anchor_site0: an anchor site to define rotation axis.

  • anchor_site1: a second, different anchor site to define rotation axis.

Public Functions

void precompute(System *system)

Precompute quantities before simulation for optimization.

bool select(const Select &perturbed, System *system, Random *random)

Perform the selection as implemented in the derived class. Return false if the selection cannot be made. Otherwise, return true.

param perturbed:

Perturbed is included to allow chaining of selection based on previous.