kim-api  2.1.4-git+v2.1.3-git-1-g7847914a.GNU
An Application Programming Interface (API) for the Knowledgebase of Interatomic Models (KIM).
Typedefs | Functions
KIM_Model.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Typedefs

typedef struct KIM_LogVerbosity KIM_LogVerbosity
 Forward declaration. More...
 
typedef struct KIM_DataType KIM_DataType
 Forward declaration. More...
 
typedef struct KIM_ModelRoutineName KIM_ModelRoutineName
 Forward declaration. More...
 
typedef struct KIM_SpeciesName KIM_SpeciesName
 Forward declaration. More...
 
typedef struct KIM_Numbering KIM_Numbering
 Forward declaration. More...
 
typedef struct KIM_LengthUnit KIM_LengthUnit
 Forward declaration. More...
 
typedef struct KIM_EnergyUnit KIM_EnergyUnit
 Forward declaration. More...
 
typedef struct KIM_ChargeUnit KIM_ChargeUnit
 Forward declaration. More...
 
typedef struct KIM_TemperatureUnit KIM_TemperatureUnit
 Forward declaration. More...
 
typedef struct KIM_TimeUnit KIM_TimeUnit
 Forward declaration. More...
 
typedef struct KIM_ComputeArguments KIM_ComputeArguments
 Forward declaration. More...
 
typedef struct KIM_Model KIM_Model
 Provides the primary interface to a KIM API Model object and is meant to be used by simulators. More...
 

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. More...
 
void KIM_Model_Destroy (KIM_Model **const model)
 Destroy a previously Model::Create'd object. More...
 
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. More...
 
void KIM_Model_GetInfluenceDistance (KIM_Model const *const model, double *const influenceDistance)
 Get the Model's influence distance. More...
 
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. More...
 
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. More...
 
int KIM_Model_ComputeArgumentsCreate (KIM_Model const *const model, KIM_ComputeArguments **const computeArguments)
 Create a new ComputeArguments object for the Model object. More...
 
int KIM_Model_ComputeArgumentsDestroy (KIM_Model const *const model, KIM_ComputeArguments **const computeArguments)
 Destroy a previously Model::ComputeArgumentsCreate'd object. More...
 
int KIM_Model_Compute (KIM_Model const *const model, KIM_ComputeArguments const *const computeArguments)
 Call the Model's MODEL_ROUTINE_NAME::Compute routine. More...
 
int KIM_Model_Extension (KIM_Model *const model, char const *const extensionID, void *const extensionStructure)
 Call the Model's MODEL_ROUTINE_NAME::Extension routine. More...
 
int KIM_Model_ClearThenRefresh (KIM_Model *const model)
 Clear influence distance and neighbor list pointers and refresh Model object after parameter changes. More...
 
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. More...
 
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. More...
 
void KIM_Model_GetNumberOfParameters (KIM_Model const *const model, int *const numberOfParameters)
 Get the number of parameter arrays provided by the Model. More...
 
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. More...
 
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. More...
 
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. More...
 
int KIM_Model_SetParameterInteger (KIM_Model *const model, int const parameterIndex, int const arrayIndex, int const parameterValue)
 Set a parameter value for the Model. More...
 
int KIM_Model_SetParameterDouble (KIM_Model *const model, int const parameterIndex, int const arrayIndex, double const parameterValue)
 Set a parameter value for the Model. More...
 
void KIM_Model_SetSimulatorBufferPointer (KIM_Model *const model, void *const ptr)
 Set the Simulator's buffer pointer within the Model object. More...
 
void KIM_Model_GetSimulatorBufferPointer (KIM_Model const *const model, void **const ptr)
 Get the Simulator's buffer pointer from the Model object. More...
 
char const * KIM_Model_ToString (KIM_Model const *const model)
 Get a string representing the internal state of the Model object. More...
 
void KIM_Model_SetLogID (KIM_Model *const model, char const *const logID)
 Set the identity of the Log object associated with the Model object. More...
 
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. More...
 
void KIM_Model_PopLogVerbosity (KIM_Model *const model)
 Pop a LogVerbosity from the Model object's Log object verbosity stack. More...
 

Typedef Documentation

◆ KIM_ChargeUnit

Forward declaration.

Since
2.0

Definition at line 117 of file KIM_Model.h.

◆ KIM_ComputeArguments

Forward declaration.

Since
2.0

Definition at line 147 of file KIM_Model.h.

◆ KIM_DataType

typedef struct KIM_DataType KIM_DataType

Forward declaration.

Since
2.0

Definition at line 57 of file KIM_Model.h.

◆ KIM_EnergyUnit

Forward declaration.

Since
2.0

Definition at line 107 of file KIM_Model.h.

◆ KIM_LengthUnit

Forward declaration.

Since
2.0

Definition at line 97 of file KIM_Model.h.

◆ KIM_LogVerbosity

Forward declaration.

Since
2.0

Definition at line 47 of file KIM_Model.h.

◆ 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.

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

Definition at line 160 of file KIM_Model.h.

◆ KIM_ModelRoutineName

Forward declaration.

Since
2.0

Definition at line 67 of file KIM_Model.h.

◆ KIM_Numbering

typedef struct KIM_Numbering KIM_Numbering

Forward declaration.

Since
2.0

Definition at line 87 of file KIM_Model.h.

◆ KIM_SpeciesName

Forward declaration.

Since
2.0

Definition at line 77 of file KIM_Model.h.

◆ KIM_TemperatureUnit

Forward declaration.

Since
2.0

Definition at line 127 of file KIM_Model.h.

◆ KIM_TimeUnit

typedef struct KIM_TimeUnit KIM_TimeUnit

Forward declaration.

Since
2.0

Definition at line 137 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 
)

Get the Model's neighbor list information.

See also
KIM::Model::GetNeighborListPointers, kim_model_module::kim_get_number_of_neighbor_lists, kim_model_module::kim_get_neighbor_list_values
Since
2.0

◆ 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 
)

Get a parameter value from the Model.

See also
KIM::Model::GetParameter(int const,int const, double * const) const, kim_model_module::kim_get_parameter
Since
2.0

◆ KIM_Model_GetParameterInteger()

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.

See also
KIM::Model::GetParameter(int const,int const, int * const) const, kim_model_module::kim_get_parameter
Since
2.0

◆ 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 
)

Get the Simulator's buffer pointer from the Model object.

See also
KIM::Model::GetSimulatorBufferPointer, kim_model_module::kim_get_simulator_buffer_pointer
Since
2.0

◆ 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 
)

Set a parameter value for the Model.

See also
KIM::Model::SetParameter(int const, int const, double const), kim_model_module::kim_set_parameter
Since
2.0

◆ KIM_Model_SetParameterInteger()

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

Set a parameter value for the Model.

See also
KIM::Model::SetParameter(int const, int const, int const), kim_model_module::kim_set_parameter
Since
2.0

◆ KIM_Model_SetSimulatorBufferPointer()

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

Set the Simulator's buffer pointer within the Model object.

See also
KIM::Model::SetSimulatorBufferPointer, kim_model_module::kim_set_simulator_buffer_pointer
Since
2.0

◆ 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