41class ModelRoutineName;
49class ComputeArguments;
50class ModelImplementation;
125 std::string
const & modelName,
126 int *
const requestedUnitsAccepted,
127 Model **
const model);
167 int *
const required)
const;
208 int *
const numberOfNeighborLists,
209 double const **
const cutoffs,
210 int const **
const modelWillNotRequestNeighborsOfNoncontributingParticles)
320 void *
const extensionStructure);
365 std::string
const & modelName)
const;
388 int *
const speciesIsSupported,
389 int *
const code)
const;
429 std::string
const **
const name,
430 std::string
const **
const description)
const;
451 int const arrayIndex,
452 int *
const parameterValue)
const;
456 int const arrayIndex,
457 double *
const parameterValue)
const;
478 int const arrayIndex,
479 int const parameterValue);
483 int const arrayIndex,
484 double const parameterValue);
556 void operator=(
Model const &);
561 ModelImplementation * pimpl;
An Extensible Enumeration for the ChargeUnit's supported by the KIM API.
Provides the primary interface to a KIM API ComputeArguments object and is meant to be used by simula...
An Extensible Enumeration for the DataType's supported by the KIM API.
An Extensible Enumeration for the EnergyUnit's supported by the KIM API.
An Extensible Enumeration for the LengthUnit's supported by the KIM API.
An Extensible Enumeration for the LogVerbosity's supported by the KIM API.
Provides the primary interface to a KIM API Model object and is meant to be used by simulators.
void GetNeighborListPointers(int *const numberOfNeighborLists, double const **const cutoffs, int const **const modelWillNotRequestNeighborsOfNoncontributingParticles) const
Get the Model's neighbor list information.
int Compute(ComputeArguments const *const computeArguments) const
Call the Model's MODEL_ROUTINE_NAME::Compute routine.
int SetParameter(int const parameterIndex, int const arrayIndex, double const parameterValue)
This is an overloaded member function, provided for convenience. It differs from the above function o...
std::string const & ToString() const
Get a string representing the internal state of the Model object.
int GetSpeciesSupportAndCode(SpeciesName const speciesName, int *const speciesIsSupported, int *const code) const
Get the Model's support and code for the requested SpeciesName.
int ClearThenRefresh()
Clear influence distance and neighbor list pointers and refresh Model object after parameter changes.
int ComputeArgumentsDestroy(ComputeArguments **const computeArguments) const
Destroy a previously Model::ComputeArgumentsCreate'd object.
void GetUnits(LengthUnit *const lengthUnit, EnergyUnit *const energyUnit, ChargeUnit *const chargeUnit, TemperatureUnit *const temperatureUnit, TimeUnit *const timeUnit) const
Get the Model's base unit values.
static int Create(Numbering const numbering, LengthUnit const requestedLengthUnit, EnergyUnit const requestedEnergyUnit, ChargeUnit const requestedChargeUnit, TemperatureUnit const requestedTemperatureUnit, TimeUnit const requestedTimeUnit, std::string const &modelName, int *const requestedUnitsAccepted, Model **const model)
Create a new KIM API Model object.
int GetParameter(int const parameterIndex, int const arrayIndex, double *const parameterValue) const
This is an overloaded member function, provided for convenience. It differs from the above function o...
static void Destroy(Model **const model)
Destroy a previously Model::Create'd object.
void PushLogVerbosity(LogVerbosity const logVerbosity)
Push a new LogVerbosity onto the Model object's Log object verbosity stack.
void GetInfluenceDistance(double *const influenceDistance) const
Get the Model's influence distance.
int GetParameter(int const parameterIndex, int const arrayIndex, int *const parameterValue) const
Get a parameter value from the Model.
int Extension(std::string const &extensionID, void *const extensionStructure)
Call the Model's MODEL_ROUTINE_NAME::Extension routine.
int SetParameter(int const parameterIndex, int const arrayIndex, int const parameterValue)
Set a parameter value for the Model.
void SetLogID(std::string const &logID)
Set the identity of the Log object associated with the Model object.
void SetSimulatorBufferPointer(void *const ptr)
Set the Simulator's buffer pointer within the Model object.
int WriteParameterizedModel(std::string const &path, std::string const &modelName) const
Call the Model's MODEL_ROUTINE_NAME::WriteParameterizedModel routine.
int IsRoutinePresent(ModelRoutineName const modelRoutineName, int *const present, int *const required) const
Determine presence and required status of the given ModelRoutineName.
void GetNumberOfParameters(int *const numberOfParameters) const
Get the number of parameter arrays provided by the Model.
void PopLogVerbosity()
Pop a LogVerbosity from the Model object's Log object verbosity stack.
void GetSimulatorBufferPointer(void **const ptr) const
Get the Simulator's buffer pointer from the Model object.
int ComputeArgumentsCreate(ComputeArguments **const computeArguments) const
Create a new ComputeArguments object for the Model object.
int GetParameterMetadata(int const parameterIndex, DataType *const dataType, int *const extent, std::string const **const name, std::string const **const description) const
Get the metadata associated with one of the Model's parameter arrays.
An Extensible Enumeration for the ModelRoutineName's supported by the KIM API.
An Extensible Enumeration for the Numbering's supported by the KIM API.
An Extensible Enumeration for the SpeciesName's supported by the KIM API.
An Extensible Enumeration for the TemperatureUnit's supported by the KIM API.
An Extensible Enumeration for the TimeUnit's supported by the KIM API.