namespace feasst


std::shared_ptr<TrialFactory> MakeTrialGrow(const std::vector<argtype> &args, const argtype &default_args = argtype())

  • default_args: Optionally, the following arguments for num_steps and reference_index are applied to every growth. Any option applied by the above args overwrites this option.

Manually describe partial or full-particle growth using configurational bias. The input is a vector of argtype, where each argtype represents a TrialStage for growing one (or rarely, multiple) sites.

The following options may only be used in the first argtype.

  • particle_type: type of particle in Configuration (always required).

  • site: site index in particle_type to transfer/regrow (always required).

  • weight: weight of selection of this trial (default: see Trial).

  • transfer: if true, create add and remove trial with equal weight (default: false).

  • regrow: if true, place anywhere in the domain (default: false).

  • transfer_avb: if true, same as transfer but with AVB Add/Remove for the first stage (default: false).

  • regrow_avb2: if true, regrow using AVB2 in the first stage (default: false).

  • regrow_avb4: if true, regrow using AVB4 in the first stage (default: false).

The following options may be used in any argtype, including the first for particle regrowth.

Note that only one of bond, angle or branch may be true for a given stage.