kim-api 2.3.0+AppleClang.AppleClang.GNU
An Application Programming Interface (API) for the Knowledgebase of Interatomic Models (KIM).
Loading...
Searching...
No Matches
KIM_ModelComputeArguments.h
Go to the documentation of this file.
1/* */
2/* KIM-API: An API for interatomic models */
3/* Copyright (c) 2013--2022, Regents of the University of Minnesota. */
4/* All rights reserved. */
5/* */
6/* Contributors: */
7/* Ryan S. Elliott */
8/* */
9/* SPDX-License-Identifier: LGPL-2.1-or-later */
10/* */
11/* This library is free software; you can redistribute it and/or */
12/* modify it under the terms of the GNU Lesser General Public */
13/* License as published by the Free Software Foundation; either */
14/* version 2.1 of the License, or (at your option) any later version. */
15/* */
16/* This library is distributed in the hope that it will be useful, */
17/* but WITHOUT ANY WARRANTY; without even the implied warranty of */
18/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU */
19/* Lesser General Public License for more details. */
20/* */
21/* You should have received a copy of the GNU Lesser General Public License */
22/* along with this library; if not, write to the Free Software Foundation, */
23/* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */
24/* */
25
26/* */
27/* Release: This file is part of the kim-api-2.3.0 package. */
28/* */
29
30
31#ifndef KIM_MODEL_COMPUTE_ARGUMENTS_H_
32#define KIM_MODEL_COMPUTE_ARGUMENTS_H_
33
34/* Forward declarations */
35#ifndef KIM_LOG_VERBOSITY_DEFINED_
36#define KIM_LOG_VERBOSITY_DEFINED_
43#endif
44
45#ifndef KIM_COMPUTE_ARGUMENT_NAME_DEFINED_
46#define KIM_COMPUTE_ARGUMENT_NAME_DEFINED_
53#endif
54
55#ifndef KIM_COMPUTE_CALLBACK_NAME_DEFINED_
56#define KIM_COMPUTE_CALLBACK_NAME_DEFINED_
63#endif
64
65
66#ifndef KIM_MODEL_COMPUTE_ARGUMENTS_DEFINED_
67#define KIM_MODEL_COMPUTE_ARGUMENTS_DEFINED_
77#endif
78
88 KIM_ModelComputeArguments const * const modelComputeArguments,
89 int const neighborListIndex,
90 int const particleNumber,
91 int * const numberOfNeighbors,
92 int const ** const neighborsOfParticle);
93
103 KIM_ModelComputeArguments const * const modelComputeArguments,
104 double const de,
105 double const r,
106 double const * const dx,
107 int const i,
108 int const j);
109
119 KIM_ModelComputeArguments const * const modelComputeArguments,
120 double const de,
121 double const * const r,
122 double const * const dx,
123 int const * const i,
124 int const * const j);
125
135 KIM_ModelComputeArguments const * const modelComputeArguments,
136 KIM_ComputeArgumentName const computeArgumentName,
137 int ** const ptr);
138
148 KIM_ModelComputeArguments const * const modelComputeArguments,
149 KIM_ComputeArgumentName const computeArgumentName,
150 double ** const ptr);
151
161 KIM_ModelComputeArguments const * const modelComputeArguments,
162 KIM_ComputeCallbackName const computeCallbackName,
163 int * const present);
164
174 KIM_ModelComputeArguments * const modelComputeArguments, void * const ptr);
175
185 KIM_ModelComputeArguments const * const modelComputeArguments,
186 void ** const ptr);
187
197 KIM_ModelComputeArguments const * const modelComputeArguments,
198 KIM_LogVerbosity const logVerbosity,
199 char const * const message,
200 int const lineNumber,
201 char const * const fileName);
202
212 KIM_ModelComputeArguments const * const modelComputeArguments);
213
214#endif /* KIM_MODEL_COMPUTE_ARGUMENTS_H_ */
struct KIM_ModelComputeArguments KIM_ModelComputeArguments
Forward declaration.
int KIM_ModelComputeArguments_GetNeighborList(KIM_ModelComputeArguments const *const modelComputeArguments, int const neighborListIndex, int const particleNumber, int *const numberOfNeighbors, int const **const neighborsOfParticle)
Get the neighbor list for a particle of interest corresponding to a particular neighbor list cutoff d...
int KIM_ModelComputeArguments_GetArgumentPointerInteger(KIM_ModelComputeArguments const *const modelComputeArguments, KIM_ComputeArgumentName const computeArgumentName, int **const ptr)
Get the data pointer for a ComputeArgumentName.
void KIM_ModelComputeArguments_GetModelBufferPointer(KIM_ModelComputeArguments const *const modelComputeArguments, void **const ptr)
Get the Model's buffer pointer within the ComputeArguments object.
int KIM_ModelComputeArguments_GetArgumentPointerDouble(KIM_ModelComputeArguments const *const modelComputeArguments, KIM_ComputeArgumentName const computeArgumentName, double **const ptr)
Get the data pointer for a ComputeArgumentName.
char const * KIM_ModelComputeArguments_ToString(KIM_ModelComputeArguments const *const modelComputeArguments)
Get a string representing the internal state of the ComputeArguments object.
int KIM_ModelComputeArguments_IsCallbackPresent(KIM_ModelComputeArguments const *const modelComputeArguments, KIM_ComputeCallbackName const computeCallbackName, int *const present)
Determine if the Simulator has provided a non-NULL function pointer for a ComputeCallbackName of inte...
int KIM_ModelComputeArguments_ProcessDEDrTerm(KIM_ModelComputeArguments const *const modelComputeArguments, double const de, double const r, double const *const dx, int const i, int const j)
Call the Simulator's COMPUTE_CALLBACK_NAME::ProcessDEDrTerm routine.
void KIM_ModelComputeArguments_LogEntry(KIM_ModelComputeArguments const *const modelComputeArguments, KIM_LogVerbosity const logVerbosity, char const *const message, int const lineNumber, char const *const fileName)
Write a log entry into the log file.
void KIM_ModelComputeArguments_SetModelBufferPointer(KIM_ModelComputeArguments *const modelComputeArguments, void *const ptr)
Set the Model's buffer pointer within the ComputeArguments object.
int KIM_ModelComputeArguments_ProcessD2EDr2Term(KIM_ModelComputeArguments const *const modelComputeArguments, double const de, double const *const r, double const *const dx, int const *const i, int const *const j)
Call the Simulator's COMPUTE_CALLBACK_NAME::ProcessD2EDr2Term routine.
An Extensible Enumeration for the ComputeArgumentName's supported by the KIM API.
An Extensible Enumeration for the ComputeCallbackName's supported by the KIM API.
An Extensible Enumeration for the LogVerbosity's supported by the KIM API.