class rgpot::SPCEPot

Overview

Flexible SPC/E with the CCL intramolecular term. Same atom order as TIP4P. More…

#include <WaterPots.hpp>
 
class SPCEPot: public rgpot::Potential< SPCEPot > {
public:
    // structs
 
    struct Impl;
 
    // construction
 
    SPCEPot();
    SPCEPot(const WaterConfig& config);
    SPCEPot(const SPCEPot&);
    ~SPCEPot();
 
    // methods
 
    SPCEPot& operator=(const SPCEPot&);
    const WaterConfig& config() const;
    virtual PotCaps caps() const;
    virtual uint64_t paramsKey() const;
    void forceImpl(const ForceInput& in, ForceOut* out) const;
};

Detailed Documentation

Flexible SPC/E with the CCL intramolecular term. Same atom order as TIP4P.

Methods

virtual PotCaps caps() const

Concurrency and evaluation capabilities of this potential.

Multi-threaded callers (NEB images, dimer endpoints) derive their sharing and cloning policy from this instead of hard-coded lists.

virtual uint64_t paramsKey() const

Fingerprint of the potential’s parameter set.

Mixed into the result-cache key so results never cross parameter sets. Implementations hash their config field by field (see ParamHash.hpp) plus a kernel-version salt that changes whenever the numerics change. The default (0) suits parameter-free potentials whose numerics never changed.