38#ifndef pairPotential_H
39#define pairPotential_H
55class energyScalingFunction;
145 inline scalar
rMin()
const;
147 inline scalar
dr()
const;
149 inline scalar
rCut()
const;
153 scalar
energy (
const scalar r)
const;
155 scalar
force (
const scalar r)
const;
170 const bool scaledEnergyDerivative =
true
A 1D array of objects of type <T>, where the size of the vector is known and used for subscript bound...
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
pairPotential(const pairPotential &)=delete
No copy construct.
bool writeEnergyAndForceTables(Ostream &os) const
virtual ~pairPotential()=default
Destructor.
virtual bool read(const dictionary &pairPotentialProperties)=0
Read pairPotential dictionary.
scalar energy(const scalar r) const
const dictionary & pairPotentialProperties() const
static autoPtr< pairPotential > New(const word &name, const dictionary &pairPotentialProperties)
Return a reference to the selected viscosity model.
energyScalingFunction * esfPtr_
scalar energyDerivative(const scalar r, const bool scaledEnergyDerivative=true) const
List< scalar > energyLookup_
void scaleEnergy(scalar &e, const scalar r) const
void operator=(const pairPotential &)=delete
No copy assignment.
List< Pair< scalar > > energyTable() const
List< scalar > forceLookup_
virtual scalar unscaledEnergy(const scalar r) const =0
TypeName("pairPotential")
Runtime type information.
List< Pair< scalar > > forceTable() const
scalar scaledEnergy(const scalar r) const
dictionary pairPotentialProperties_
scalar force(const scalar r) const
declareRunTimeSelectionTable(autoPtr, pairPotential, dictionary,(const word &name, const dictionary &pairPotentialProperties),(name, pairPotentialProperties))
A class for handling words, derived from Foam::string.
OBJstream os(runTime.globalPath()/outputName)
word name(const expressions::valueTypeCode typeCode)
A word representation of a valueTypeCode. Empty for INVALID.
Macros to ease declaration of run-time selection tables.
#define declareRunTimeSelectionTable(ptrWrapper, baseType, argNames, argList, parList)
Declare a run-time selection (variables and adder classes)
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.