kim-api  2.3.0+v2.3.0.GNU.GNU.
An Application Programming Interface (API) for the Knowledgebase of Interatomic Models (KIM).
Data Types | Functions/Subroutines | Variables
kim_simulator_model_module Module Reference

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

Functions/Subroutines

recursive subroutine, public kim_simulator_model_create (simulator_model_name, simulator_model_handle, ierr)
 Create a new KIM API SimulatorModel object. More...
 
recursive subroutine, public kim_simulator_model_destroy (simulator_model_handle)
 Destroy a previously SimulatorModel::Create'd object. More...
 
recursive subroutine kim_simulator_model_get_number_of_supported_species (simulator_model_handle, number_of_supported_species)
 Get the number of species supported by the SimulatorModel. More...
 
recursive subroutine kim_simulator_model_get_supported_species (simulator_model_handle, index, species_name, ierr)
 Get a species name supported by the SimulatorModel. More...
 
recursive subroutine kim_simulator_model_open_and_initialize_template_map (simulator_model_handle)
 Open and initialize the template map for simulator field line substitutions. More...
 
integer(c_int) recursive function kim_simulator_model_template_map_is_open (simulator_model_handle)
 Determine if the template map is open. More...
 
recursive subroutine kim_simulator_model_add_template_map (simulator_model_handle, key, value, ierr)
 Add a new key-value entry to the template map. More...
 
recursive subroutine kim_simulator_model_close_template_map (simulator_model_handle)
 Close the template map and perform template substitutions. More...
 
recursive subroutine kim_simulator_model_get_number_of_simulator_fields (simulator_model_handle, number_of_simulator_fields)
 Get the number of simulator fields provided by the SimulatorModel. More...
 
recursive subroutine kim_simulator_model_get_simulator_field_metadata (simulator_model_handle, field_index, extent, field_name, ierr)
 Get the metadata for the simulator field of interest. More...
 
recursive subroutine kim_simulator_model_get_simulator_field_line (simulator_model_handle, field_index, line_index, line_value, ierr)
 Get a line for the simulator field of interest with all template substitutions performed (Requires the template map is closed). More...
 
recursive subroutine kim_simulator_model_get_parameter_file_directory_name (simulator_model_handle, directory_name)
 Get absolute path name of the temporary directory where parameter files provided by the simulator model are written. More...
 
recursive subroutine kim_simulator_model_get_specification_file_name (simulator_model_handle, specification_file_name)
 Get the SimulatorModel's specification file basename (file name without path). The file is located in the SimulatorModel's parameter file directory. More...
 
recursive subroutine kim_simulator_model_get_number_of_parameter_files (simulator_model_handle, number_of_parameter_files)
 Get the number of parameter files provided by the SimulatorModel. More...
 
recursive subroutine kim_simulator_model_get_parameter_file_name (simulator_model_handle, index, parameter_file_name, ierr)
 Get the basename (file name without path) of a particular parameter file. The file is located in the SimulatorModel's parameter file directory. More...
 
recursive subroutine kim_simulator_model_get_parameter_file_basename (simulator_model_handle, index, parameter_file_basename, ierr)
 Get the basename (file name without path) of a particular parameter file. The file is located in the SimulatorModel's parameter file directory. More...
 
recursive subroutine kim_simulator_model_set_simulator_buffer_pointer (simulator_model_handle, ptr)
 Set the Simulator's buffer pointer within the SimulatorModel object. More...
 
recursive subroutine kim_simulator_model_get_simulator_buffer_pointer (simulator_model_handle, ptr)
 Get the Simulator's buffer pointer from the SimulatorModel object. More...
 
recursive subroutine kim_simulator_model_to_string (simulator_model_handle, string)
 Get a string representing the internal state of the SimulatorModel object. More...
 
recursive subroutine kim_simulator_model_set_log_id (simulator_model_handle, log_id)
 Set the identity of the Log object associated with the SimulatorModel object. More...
 
recursive subroutine kim_simulator_model_push_log_verbosity (simulator_model_handle, log_verbosity)
 Push a new LogVerbosity onto the SimulatorModel object's Log object verbosity stack. More...
 
recursive subroutine kim_simulator_model_pop_log_verbosity (simulator_model_handle)
 Pop a LogVerbosity from the SimulatorModel object's Log object verbosity stack. More...
 

Variables

type(kim_simulator_model_handle_type), save, public, protected kim_simulator_model_null_handle
 NULL handle for use in comparisons. More...
 

Detailed Description

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

See also
KIM::SimulatorModel, KIM_SimulatorModel
Since
2.1

Function/Subroutine Documentation

◆ kim_simulator_model_add_template_map()

recursive subroutine kim_simulator_model_module::kim_simulator_model_add_template_map ( type(kim_simulator_model_handle_type), intent(in)  simulator_model_handle,
character(len=*, kind=c_char), intent(in)  key,
character(len=*, kind=c_char), intent(in)  value,
integer(c_int), intent(out)  ierr 
)

Add a new key-value entry to the template map.

See also
KIM::SimulatorModel::AddTemplateMap, KIM_SimulatorModel_AddTemplateMap
Since
2.1

Definition at line 552 of file kim_simulator_model_module.f90.

◆ kim_simulator_model_close_template_map()

recursive subroutine kim_simulator_model_module::kim_simulator_model_close_template_map ( type(kim_simulator_model_handle_type), intent(in)  simulator_model_handle)

Close the template map and perform template substitutions.

See also
KIM::SimulatorModel::CloseTemplateMap, KIM_SimulatorModel_CloseTemplateMap
Since
2.1

Definition at line 586 of file kim_simulator_model_module.f90.

◆ kim_simulator_model_create()

recursive subroutine, public kim_simulator_model_module::kim_simulator_model_create ( character(len=*, kind=c_char), intent(in)  simulator_model_name,
type(kim_simulator_model_handle_type), intent(out)  simulator_model_handle,
integer(c_int), intent(out)  ierr 
)

Create a new KIM API SimulatorModel object.

See also
KIM::SimulatorModel::Create, KIM_SimulatorModel_Create
Since
2.1

Definition at line 344 of file kim_simulator_model_module.f90.

◆ kim_simulator_model_destroy()

recursive subroutine, public kim_simulator_model_module::kim_simulator_model_destroy ( type(kim_simulator_model_handle_type), intent(inout)  simulator_model_handle)

Destroy a previously SimulatorModel::Create'd object.

See also
KIM::SimulatorModel::Destroy, KIM_SimulatorModel_Destroy
Since
2.1

Definition at line 371 of file kim_simulator_model_module.f90.

◆ kim_simulator_model_get_number_of_parameter_files()

recursive subroutine kim_simulator_model_module::kim_simulator_model_get_number_of_parameter_files ( type(kim_simulator_model_handle_type), intent(in)  simulator_model_handle,
integer(c_int), intent(out)  number_of_parameter_files 
)

Get the number of parameter files provided by the SimulatorModel.

See also
KIM::SimulatorModel::GetNumberOfParameterFiles, KIM_SimulatorModel_GetNumberOfParameterFiles
Since
2.1

Definition at line 787 of file kim_simulator_model_module.f90.

◆ kim_simulator_model_get_number_of_simulator_fields()

recursive subroutine kim_simulator_model_module::kim_simulator_model_get_number_of_simulator_fields ( type(kim_simulator_model_handle_type), intent(in)  simulator_model_handle,
integer(c_int), intent(out)  number_of_simulator_fields 
)

Get the number of simulator fields provided by the SimulatorModel.

See also
KIM::SimulatorModel::GetNumberOfSimulatorFields, KIM_SimulatorModel_GetNumberOfSimulatorFields
Since
2.1

Definition at line 612 of file kim_simulator_model_module.f90.

◆ kim_simulator_model_get_number_of_supported_species()

recursive subroutine kim_simulator_model_module::kim_simulator_model_get_number_of_supported_species ( type(kim_simulator_model_handle_type), intent(in)  simulator_model_handle,
integer(c_int), intent(out)  number_of_supported_species 
)

Get the number of species supported by the SimulatorModel.

See also
KIM::SimulatorModel::GetNumberOfSupportedSpecies, KIM_SimulatorModel_GetNumberOfSupportedSpecies
Since
2.1

Definition at line 434 of file kim_simulator_model_module.f90.

◆ kim_simulator_model_get_parameter_file_basename()

recursive subroutine kim_simulator_model_module::kim_simulator_model_get_parameter_file_basename ( type(kim_simulator_model_handle_type), intent(in)  simulator_model_handle,
integer(c_int), intent(in)  index,
character(len=*, kind=c_char), intent(out)  parameter_file_basename,
integer(c_int), intent(out)  ierr 
)

Get the basename (file name without path) of a particular parameter file. The file is located in the SimulatorModel's parameter file directory.

See also
KIM::SimulatorModel::GetParameterFileBasename, KIM_SimulatorModel_GetParameterFileBasename
Since
2.2

Definition at line 858 of file kim_simulator_model_module.f90.

◆ kim_simulator_model_get_parameter_file_directory_name()

recursive subroutine kim_simulator_model_module::kim_simulator_model_get_parameter_file_directory_name ( type(kim_simulator_model_handle_type), intent(in)  simulator_model_handle,
character(len=*, kind=c_char), intent(out)  directory_name 
)

Get absolute path name of the temporary directory where parameter files provided by the simulator model are written.

See also
KIM::SimulatorModel::GetParameterFileDirectoryName, KIM_SimulatorModel_GetParameterFileDirectoryName
Since
2.1

Definition at line 720 of file kim_simulator_model_module.f90.

◆ kim_simulator_model_get_parameter_file_name()

recursive subroutine kim_simulator_model_module::kim_simulator_model_get_parameter_file_name ( type(kim_simulator_model_handle_type), intent(in)  simulator_model_handle,
integer(c_int), intent(in)  index,
character(len=*, kind=c_char), intent(out)  parameter_file_name,
integer(c_int), intent(out)  ierr 
)

Get the basename (file name without path) of a particular parameter file. The file is located in the SimulatorModel's parameter file directory.

See also
KIM::SimulatorModel::GetParameterFileName, KIM_SimulatorModel_GetParameterFileName
Since
2.1
Deprecated:
As of 2.2. Please use kim_simulator_model_module::kim_get_parameter_file_basename() instead.

Definition at line 820 of file kim_simulator_model_module.f90.

◆ kim_simulator_model_get_simulator_buffer_pointer()

recursive subroutine kim_simulator_model_module::kim_simulator_model_get_simulator_buffer_pointer ( type(kim_simulator_model_handle_type), intent(in)  simulator_model_handle,
type(c_ptr), intent(out)  ptr 
)

◆ kim_simulator_model_get_simulator_field_line()

recursive subroutine kim_simulator_model_module::kim_simulator_model_get_simulator_field_line ( type(kim_simulator_model_handle_type), intent(in)  simulator_model_handle,
integer(c_int), intent(in), value  field_index,
integer(c_int), intent(in), value  line_index,
character(len=*, kind=c_char), intent(out)  line_value,
integer(c_int), intent(out)  ierr 
)

Get a line for the simulator field of interest with all template substitutions performed (Requires the template map is closed).

See also
KIM::SimulatorModel::GetSimulatorFieldLine, KIM_SimulatorModel_GetSimulatorFieldLine
Since
2.1

Definition at line 681 of file kim_simulator_model_module.f90.

◆ kim_simulator_model_get_simulator_field_metadata()

recursive subroutine kim_simulator_model_module::kim_simulator_model_get_simulator_field_metadata ( type(kim_simulator_model_handle_type), intent(in)  simulator_model_handle,
integer(c_int), intent(in)  field_index,
integer(c_int), intent(out)  extent,
character(len=*, kind=c_char), intent(out)  field_name,
integer(c_int), intent(out)  ierr 
)

Get the metadata for the simulator field of interest.

See also
KIM::SimulatorModel::GetSimulatorFieldMetadata, KIM_SimulatorModel_GetSimulatorFieldMetadata
Since
2.1

Definition at line 642 of file kim_simulator_model_module.f90.

◆ kim_simulator_model_get_specification_file_name()

recursive subroutine kim_simulator_model_module::kim_simulator_model_get_specification_file_name ( type(kim_simulator_model_handle_type), intent(in)  simulator_model_handle,
character(len=*, kind=c_char), intent(out)  specification_file_name 
)

Get the SimulatorModel's specification file basename (file name without path). The file is located in the SimulatorModel's parameter file directory.

See also
KIM::SimulatorModel::GetSpecificationFileName, KIM_SimulatorModel_GetSpecificationFileName
Since
2.1

Definition at line 753 of file kim_simulator_model_module.f90.

◆ kim_simulator_model_get_supported_species()

recursive subroutine kim_simulator_model_module::kim_simulator_model_get_supported_species ( type(kim_simulator_model_handle_type), intent(in)  simulator_model_handle,
integer(c_int), intent(in)  index,
character(len=*, kind=c_char), intent(out)  species_name,
integer(c_int), intent(out)  ierr 
)

Get a species name supported by the SimulatorModel.

See also
KIM::SimulatorModel::GetSupportedSpecies, KIM_SimulatorModel_GetSupportedSpecies
Since
2.1

Definition at line 464 of file kim_simulator_model_module.f90.

◆ kim_simulator_model_open_and_initialize_template_map()

recursive subroutine kim_simulator_model_module::kim_simulator_model_open_and_initialize_template_map ( type(kim_simulator_model_handle_type), intent(in)  simulator_model_handle)

Open and initialize the template map for simulator field line substitutions.

See also
KIM::SimulatorModel::OpenAndInitializeTemplateMap, KIM_SimulatorModel_OpenAndInitializeTemplateMap
Since
2.1

Definition at line 500 of file kim_simulator_model_module.f90.

◆ kim_simulator_model_pop_log_verbosity()

recursive subroutine kim_simulator_model_module::kim_simulator_model_pop_log_verbosity ( type(kim_simulator_model_handle_type), intent(in)  simulator_model_handle)

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

See also
KIM::SimulatorModel::, KIM_SimulatorModel_PopLogVerbosity
Since
2.1

Definition at line 1038 of file kim_simulator_model_module.f90.

◆ kim_simulator_model_push_log_verbosity()

recursive subroutine kim_simulator_model_module::kim_simulator_model_push_log_verbosity ( type(kim_simulator_model_handle_type), intent(in)  simulator_model_handle,
type(kim_log_verbosity_type), intent(in)  log_verbosity 
)

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

See also
KIM::SimulatorModel::PushLogVerbosity, KIM_SimulatorModel_PushLogVerbosity
Since
2.1

Definition at line 1009 of file kim_simulator_model_module.f90.

◆ kim_simulator_model_set_log_id()

recursive subroutine kim_simulator_model_module::kim_simulator_model_set_log_id ( type(kim_simulator_model_handle_type), intent(in)  simulator_model_handle,
character(len=*, kind=c_char), intent(in)  log_id 
)

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

See also
KIM::SimulatorModel::SetLogID, KIM_SimulatorModel_SetLogID
Since
2.1

Definition at line 981 of file kim_simulator_model_module.f90.

◆ kim_simulator_model_set_simulator_buffer_pointer()

recursive subroutine kim_simulator_model_module::kim_simulator_model_set_simulator_buffer_pointer ( type(kim_simulator_model_handle_type), intent(in)  simulator_model_handle,
type(c_ptr), intent(in)  ptr 
)

◆ kim_simulator_model_template_map_is_open()

integer(c_int) recursive function kim_simulator_model_module::kim_simulator_model_template_map_is_open ( type(kim_simulator_model_handle_type), intent(in)  simulator_model_handle)

Determine if the template map is open.

See also
KIM::SimulatorModel::TemplateMapIsOpen, KIM_SimulatorModel_TemplateMapIsOpen
Since
2.1

Definition at line 526 of file kim_simulator_model_module.f90.

◆ kim_simulator_model_to_string()

recursive subroutine kim_simulator_model_module::kim_simulator_model_to_string ( type(kim_simulator_model_handle_type), intent(in)  simulator_model_handle,
character(len=*, kind=c_char), intent(out)  string 
)

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

See also
KIM::SimulatorModel::ToString, KIM_SimulatorModel_ToString
Since
2.1

Definition at line 951 of file kim_simulator_model_module.f90.

Variable Documentation

◆ kim_simulator_model_null_handle

type(kim_simulator_model_handle_type), save, public, protected kim_simulator_model_module::kim_simulator_model_null_handle

NULL handle for use in comparisons.

Since
2.1

Definition at line 84 of file kim_simulator_model_module.f90.