|
| | ExtPot (const eonc::Parameters &p) |
| | ~ExtPot () |
| void | cleanMemory (void) |
| void | force (long N, const double *R, const int *atomicNrs, double *F, double *U, double *variance, const double *box) override |
| bool | isThreadSafe () const noexcept override |
| | One instance owns one exchange directory, so two threads in force() on it write the same structure file and read the same result.
|
| bool | needsPerImageInstance () const noexcept override |
| | The external program runs as a subprocess and each instance runs it in a directory of its own, so separate instances are independent.
|
| unsigned | layoutFlags () const noexcept override |
| | Potential (PotType a_ptype) |
| | Production default: construction-scope registry, else PotRegistry::get().
|
| | Potential (PotType a_ptype, IPotRegistry ®istry) |
| | Test seam: injected registry, no process-default get() counters.
|
| | Potential (PotType a_ptype, const Parameters &p) |
| | Potential (const Parameters &a_params) |
| virtual | ~Potential () |
| void | force (std::span< const double > positions, std::span< const int > atomicNrs, std::span< double > forces, double *energy, double *variance, std::span< const double > box) |
| | C++ call site: size-checked view over the raw FFI force().
|
| virtual void | setFixedMask (long nAtoms, const double *isFixed) |
| | Optional frozen-atom mask (nAtoms*3, 1.0 = fixed).
|
| std::tuple< double, AtomMatrix > | get_ef (const AtomMatrix &pos, const VectorXi &atmnrs, const Matrix3d &box) |
| PotType | getType () const |
| virtual double | finiteCutoff () const noexcept |
| | Finite interaction range in position length units.
|
| virtual bool | isSurrogate () const noexcept |
| | Whether this is a surrogate (GP) potential.
|
| virtual bool | requiresIsolatedMoleculeLayout () const noexcept |
| | True for molecular QM / non-PBC backends (NWChem socket, ASE ORCA/NWChem, …).
|
| virtual bool | isSharedInstanceThreadSafe () const noexcept |
| | Conservative gate for sharing one Potential instance across threads.
|
| virtual std::shared_ptr< Potential > | clonePotential () const |
| | Independent instance that does not reload from disk.
|
| virtual bool | supportsBatchEvaluation () const noexcept |
| | Whether this potential supports batched evaluation of N systems in a single call.
|
| virtual bool | computesStress () const noexcept |
| | True when force() leaves a Cauchy stress that cauchyStress() can read until the next force() on this instance.
|
| virtual Matrix3d | cauchyStress () const |
| | Cauchy stress in eV/Angstrom^3.
|
| virtual void | forceBatchOwned (long nSystems, long nAtoms, const double *const *positions, const int *const *atomicNrs, double *const *forces, double *energies, double *variances, const double *const *boxes, const long *owners) |
| | Evaluate forces for N systems in a single call.
|
| virtual void | forceBatch (long nSystems, long nAtoms, const double *const *positions, const int *const *atomicNrs, double *const *forces, double *energies, double *variances, const double *const *boxes) |
Definition at line 19 of file ExtPot.h.