VisitModelIntraMap

class VisitModelIntraMap : public feasst::VisitModel

Intra-particle interactions are computed here. As described in VisitModelIntra, this does not include bonded interaction energies, and only includes “inter”-like interactions.

In this implementation, a map for each particle type is precomputed based on whether the “inter”-like interaction should be excluded due to the presence of a bond, angle or dihedral. In addition, dihedral interactions may be weighted. By default, all interactions are included except with self and there is no dihedral weight, so the user must specific if bonds, angles or dihedrals are to be excluded.

Public Functions

void precompute(Configuration *config)

Initialize include_map after VisitModel::precompute.

int include_map(const int particle_type, const int site1, const int site2)

Return 1 (true) if interactions between site1 and site2 in particle_type are included. Otherwise, return 0 (false);

Arguments

  • exclude_bonds: if true, exclude intra interactions between bonded sites (default: false).

  • exclude_angles: if true, exclude intra interactions between the two extremes of the angle sites (e.g, exclude AC of <ABC) (default: false).

  • exclude_dihedrals: if true, exclude intra interactions between the two extremes of the dihedral sites (e.g, exclude AD of <ABCD) (default: false).

  • dihedral_weight: if > 0, multiply intramolecular interactions for the 1-4 dihedral sites by this weight (default: -1). For example, CHARMM and OPLS may set this weight to 1/2. If exclude_dihedral is true, this weight cannot be > 0.