kim-api 2.4.1+AppleClang.AppleClang.GNU
An Application Programming Interface (API) for the Knowledgebase of Interatomic Models (KIM).
 
Loading...
Searching...
No Matches
KIM_Model.h File Reference

Go to the source code of this file.

Typedefs

typedef struct KIM_ModelRoutineName KIM_ModelRoutineName
 Forward declaration.
 
typedef struct KIM_SpeciesName KIM_SpeciesName
 Forward declaration.
 
typedef struct KIM_Numbering KIM_Numbering
 Forward declaration.
 
typedef struct KIM_Model KIM_Model
 Provides the primary interface to a KIM API Model object and is meant to be used by simulators.
 

Functions

int KIM_Model_Create (KIM_Numbering const numbering, KIM_LengthUnit const requestedLengthUnit, KIM_EnergyUnit const requestedEnergyUnit, KIM_ChargeUnit const requestedChargeUnit, KIM_TemperatureUnit const requestedTemperatureUnit, KIM_TimeUnit const requestedTimeUnit, char const *const modelName, int *const requestedUnitsAccepted, KIM_Model **const model)
 Create a new KIM API Model object.
 
void KIM_Model_Destroy (KIM_Model **const model)
 Destroy a previously Model::Create'd object.
 
int KIM_Model_IsRoutinePresent (KIM_Model const *const model, KIM_ModelRoutineName const modelRoutineName, int *const present, int *const required)
 Determine presence and required status of the given ModelRoutineName.
 
void KIM_Model_GetInfluenceDistance (KIM_Model const *const model, double *const influenceDistance)
 Get the Model's influence distance.
 
void KIM_Model_GetNeighborListPointers (KIM_Model const *const model, int *const numberOfNeighborLists, double const **const cutoffs, int const **const modelWillNotRequestNeighborsOfNoncontributingParticles)
 Get the Model's neighbor list information.
 
void KIM_Model_GetUnits (KIM_Model const *const model, KIM_LengthUnit *const lengthUnit, KIM_EnergyUnit *const energyUnit, KIM_ChargeUnit *const chargeUnit, KIM_TemperatureUnit *const temperatureUnit, KIM_TimeUnit *const timeUnit)
 Get the Model's base unit values.
 
int KIM_Model_ComputeArgumentsCreate (KIM_Model const *const model, KIM_ComputeArguments **const computeArguments)
 Create a new ComputeArguments object for the Model object.
 
int KIM_Model_ComputeArgumentsDestroy (KIM_Model const *const model, KIM_ComputeArguments **const computeArguments)
 Destroy a previously Model::ComputeArgumentsCreate'd object.
 
int KIM_Model_Compute (KIM_Model const *const model, KIM_ComputeArguments const *const computeArguments)
 Call the Model's MODEL_ROUTINE_NAME::Compute routine.
 
int KIM_Model_Extension (KIM_Model *const model, char const *const extensionID, void *const extensionStructure)
 Call the Model's MODEL_ROUTINE_NAME::Extension routine.
 
int KIM_Model_ClearThenRefresh (KIM_Model *const model)
 Clear influence distance and neighbor list pointers and refresh Model object after parameter changes.
 
int KIM_Model_WriteParameterizedModel (KIM_Model const *const model, char const *const path, char const *const modelName)
 Call the Model's MODEL_ROUTINE_NAME::WriteParameterizedModel routine.
 
int KIM_Model_GetSpeciesSupportAndCode (KIM_Model const *const model, KIM_SpeciesName const speciesName, int *const speciesIsSupported, int *const code)
 Get the Model's support and code for the requested SpeciesName.
 
void KIM_Model_GetNumberOfParameters (KIM_Model const *const model, int *const numberOfParameters)
 Get the number of parameter arrays provided by the Model.
 
int KIM_Model_GetParameterMetadata (KIM_Model const *const model, int const parameterIndex, KIM_DataType *const dataType, int *const extent, char const **const name, char const **const description)
 Get the metadata associated with one of the Model's parameter arrays.
 
int KIM_Model_GetParameterInteger (KIM_Model const *const model, int const parameterIndex, int const arrayIndex, int *const parameterValue)
 Get a parameter value from the Model.
 
int KIM_Model_GetParameterDouble (KIM_Model const *const model, int const parameterIndex, int const arrayIndex, double *const parameterValue)
 Get a parameter value from the Model.
 
int KIM_Model_SetParameterInteger (KIM_Model *const model, int const parameterIndex, int const arrayIndex, int const parameterValue)
 Set a parameter value for the Model.
 
int KIM_Model_SetParameterDouble (KIM_Model *const model, int const parameterIndex, int const arrayIndex, double const parameterValue)
 Set a parameter value for the Model.
 
void KIM_Model_SetSimulatorBufferPointer (KIM_Model *const model, void *const ptr)
 Set the Simulator's buffer pointer within the Model object.
 
void KIM_Model_GetSimulatorBufferPointer (KIM_Model const *const model, void **const ptr)
 Get the Simulator's buffer pointer from the Model object.
 
char const * KIM_Model_ToString (KIM_Model const *const model)
 Get a string representing the internal state of the Model object.
 
void KIM_Model_SetLogID (KIM_Model *const model, char const *const logID)
 Set the identity of the Log object associated with the Model object.
 
void KIM_Model_PushLogVerbosity (KIM_Model *const model, KIM_LogVerbosity const logVerbosity)
 Push a new LogVerbosity onto the Model object's Log object verbosity stack.
 
void KIM_Model_PopLogVerbosity (KIM_Model *const model)
 Pop a LogVerbosity from the Model object's Log object verbosity stack.
 

Typedef Documentation

◆ KIM_Model

typedef struct KIM_Model KIM_Model

Provides the primary interface to a KIM API Model object and is meant to be used by simulators.

Forward declaration.

See also
KIM::Model, kim_model_module::kim_model_handle_type
Since
2.0
2.0

Definition at line 155 of file KIM_Model.h.

◆ KIM_ModelRoutineName

typedef struct KIM_ModelRoutineName KIM_ModelRoutineName

Forward declaration.

Convenience typedef.

Since
2.0

Definition at line 62 of file KIM_Model.h.

◆ KIM_Numbering

typedef struct KIM_Numbering KIM_Numbering

Forward declaration.

Since
2.0

Definition at line 82 of file KIM_Model.h.

◆ KIM_SpeciesName

typedef struct KIM_SpeciesName KIM_SpeciesName

Forward declaration.

Since
2.0

Definition at line 72 of file KIM_Model.h.

Function Documentation

◆ KIM_Model_ClearThenRefresh()

int KIM_Model_ClearThenRefresh ( KIM_Model *const model)

Clear influence distance and neighbor list pointers and refresh Model object after parameter changes.

See also
KIM::Model::ClearThenRefresh, kim_model_module::kim_clear_then_refresh
Since
2.0

◆ KIM_Model_Compute()

int KIM_Model_Compute ( KIM_Model const *const model,
KIM_ComputeArguments const *const computeArguments )

Call the Model's MODEL_ROUTINE_NAME::Compute routine.

See also
KIM::Model::Compute, kim_model_module::kim_compute
Since
2.0

◆ KIM_Model_ComputeArgumentsCreate()

int KIM_Model_ComputeArgumentsCreate ( KIM_Model const *const model,
KIM_ComputeArguments **const computeArguments )

Create a new ComputeArguments object for the Model object.

See also
KIM::Model::ComputeArgumentsCreate, kim_model_module::kim_compute_arguments_create
Since
2.0

◆ KIM_Model_ComputeArgumentsDestroy()

int KIM_Model_ComputeArgumentsDestroy ( KIM_Model const *const model,
KIM_ComputeArguments **const computeArguments )

Destroy a previously Model::ComputeArgumentsCreate'd object.

See also
KIM::Model::ComputeArgumentsDestroy, kim_model_module::kim_compute_arguments_destroy
Since
2.0

◆ KIM_Model_Create()

int KIM_Model_Create ( KIM_Numbering const numbering,
KIM_LengthUnit const requestedLengthUnit,
KIM_EnergyUnit const requestedEnergyUnit,
KIM_ChargeUnit const requestedChargeUnit,
KIM_TemperatureUnit const requestedTemperatureUnit,
KIM_TimeUnit const requestedTimeUnit,
char const *const modelName,
int *const requestedUnitsAccepted,
KIM_Model **const model )

Create a new KIM API Model object.

See also
KIM::Model::Create, kim_model_module::kim_model_create
Since
2.0

◆ KIM_Model_Destroy()

void KIM_Model_Destroy ( KIM_Model **const model)

Destroy a previously Model::Create'd object.

See also
KIM::Model::Destroy, kim_model_module::kim_model_destroy
Since
2.0

◆ KIM_Model_Extension()

int KIM_Model_Extension ( KIM_Model *const model,
char const *const extensionID,
void *const extensionStructure )

Call the Model's MODEL_ROUTINE_NAME::Extension routine.

See also
KIM::Model::Extension, kim_model_module::kim_extension
Since
2.0

◆ KIM_Model_GetInfluenceDistance()

void KIM_Model_GetInfluenceDistance ( KIM_Model const *const model,
double *const influenceDistance )

Get the Model's influence distance.

See also
KIM::Model::GetInfluenceDistance, kim_model_module::kim_get_influence_distance
Since
2.0

◆ KIM_Model_GetNeighborListPointers()

void KIM_Model_GetNeighborListPointers ( KIM_Model const *const model,
int *const numberOfNeighborLists,
double const **const cutoffs,
int const **const modelWillNotRequestNeighborsOfNoncontributingParticles )

◆ KIM_Model_GetNumberOfParameters()

void KIM_Model_GetNumberOfParameters ( KIM_Model const *const model,
int *const numberOfParameters )

Get the number of parameter arrays provided by the Model.

See also
KIM::Model::GetNumberOfParameters, kim_model_module::kim_get_number_of_parameters
Since
2.0

◆ KIM_Model_GetParameterDouble()

int KIM_Model_GetParameterDouble ( KIM_Model const *const model,
int const parameterIndex,
int const arrayIndex,
double *const parameterValue )

◆ KIM_Model_GetParameterInteger()

int KIM_Model_GetParameterInteger ( KIM_Model const *const model,
int const parameterIndex,
int const arrayIndex,
int *const parameterValue )

◆ KIM_Model_GetParameterMetadata()

int KIM_Model_GetParameterMetadata ( KIM_Model const *const model,
int const parameterIndex,
KIM_DataType *const dataType,
int *const extent,
char const **const name,
char const **const description )

Get the metadata associated with one of the Model's parameter arrays.

See also
KIM::Model::GetParameterMetadata, kim_model_module::kim_get_parameter_metadata
Since
2.0

◆ KIM_Model_GetSimulatorBufferPointer()

void KIM_Model_GetSimulatorBufferPointer ( KIM_Model const *const model,
void **const ptr )

◆ KIM_Model_GetSpeciesSupportAndCode()

int KIM_Model_GetSpeciesSupportAndCode ( KIM_Model const *const model,
KIM_SpeciesName const speciesName,
int *const speciesIsSupported,
int *const code )

Get the Model's support and code for the requested SpeciesName.

See also
KIM::Model::GetSpeciesSupportAndCode, kim_model_module::kim_get_species_support_and_code
Since
2.0

◆ KIM_Model_GetUnits()

void KIM_Model_GetUnits ( KIM_Model const *const model,
KIM_LengthUnit *const lengthUnit,
KIM_EnergyUnit *const energyUnit,
KIM_ChargeUnit *const chargeUnit,
KIM_TemperatureUnit *const temperatureUnit,
KIM_TimeUnit *const timeUnit )

Get the Model's base unit values.

See also
KIM::Model::GetUnits, kim_model_module::kim_get_units
Since
2.0

◆ KIM_Model_IsRoutinePresent()

int KIM_Model_IsRoutinePresent ( KIM_Model const *const model,
KIM_ModelRoutineName const modelRoutineName,
int *const present,
int *const required )

Determine presence and required status of the given ModelRoutineName.

See also
KIM::Model::IsRoutinePresent, kim_model_module::kim_is_routine_present
Since
2.0

◆ KIM_Model_PopLogVerbosity()

void KIM_Model_PopLogVerbosity ( KIM_Model *const model)

Pop a LogVerbosity from the Model object's Log object verbosity stack.

See also
KIM::Model::PopLogVerbosity, kim_model_module::kim_pop_log_verbosity
Since
2.0

◆ KIM_Model_PushLogVerbosity()

void KIM_Model_PushLogVerbosity ( KIM_Model *const model,
KIM_LogVerbosity const logVerbosity )

Push a new LogVerbosity onto the Model object's Log object verbosity stack.

See also
KIM::Model::PushLogVerbosity, kim_model_module::kim_push_log_verbosity
Since
2.0

◆ KIM_Model_SetLogID()

void KIM_Model_SetLogID ( KIM_Model *const model,
char const *const logID )

Set the identity of the Log object associated with the Model object.

See also
KIM::Model::SetLogID, kim_model_module::kim_set_log_id
Since
2.0

◆ KIM_Model_SetParameterDouble()

int KIM_Model_SetParameterDouble ( KIM_Model *const model,
int const parameterIndex,
int const arrayIndex,
double const parameterValue )

◆ KIM_Model_SetParameterInteger()

int KIM_Model_SetParameterInteger ( KIM_Model *const model,
int const parameterIndex,
int const arrayIndex,
int const parameterValue )

◆ KIM_Model_SetSimulatorBufferPointer()

void KIM_Model_SetSimulatorBufferPointer ( KIM_Model *const model,
void *const ptr )

◆ KIM_Model_ToString()

char const * KIM_Model_ToString ( KIM_Model const *const model)

Get a string representing the internal state of the Model object.

See also
KIM::Model::ToString, kim_model_module::kim_to_string
Since
2.0

◆ KIM_Model_WriteParameterizedModel()

int KIM_Model_WriteParameterizedModel ( KIM_Model const *const model,
char const *const path,
char const *const modelName )

Call the Model's MODEL_ROUTINE_NAME::WriteParameterizedModel routine.

See also
KIM::Model::WriteParameterizedModel, kim_model_module::kim_write_parameterized_model
Since
2.0