kim-api  2.3.1-git+v2.3.0-git-2-g378406f9.GNU.GNU.
An Application Programming Interface (API) for the Knowledgebase of Interatomic Models (KIM).
KIM_EnergyUnit.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.git repository. */
28 /* */
29 
30 
31 #ifndef KIM_ENERGY_UNIT_H_
32 #define KIM_ENERGY_UNIT_H_
33 
42 {
52 };
53 #ifndef KIM_ENERGY_UNIT_DEFINED_
54 #define KIM_ENERGY_UNIT_DEFINED_
55 
61 #endif
62 
71 KIM_EnergyUnit KIM_EnergyUnit_FromString(char const * const str);
72 
80 int KIM_EnergyUnit_Known(KIM_EnergyUnit const energyUnit);
81 
89 int KIM_EnergyUnit_Equal(KIM_EnergyUnit const lhs, KIM_EnergyUnit const rhs);
90 
98 int KIM_EnergyUnit_NotEqual(KIM_EnergyUnit const lhs, KIM_EnergyUnit const rhs);
99 
107 char const * KIM_EnergyUnit_ToString(KIM_EnergyUnit const energyUnit);
108 
118 
128 
137 
146 
156 
164 extern KIM_EnergyUnit const KIM_ENERGY_UNIT_J;
165 
175 
184 void KIM_ENERGY_UNIT_GetNumberOfEnergyUnits(int * const numberOfEnergyUnits);
185 
194 int KIM_ENERGY_UNIT_GetEnergyUnit(int const index,
195  KIM_EnergyUnit * const energyUnit);
196 
197 #endif /* KIM_ENERGY_UNIT_H_ */
int KIM_ENERGY_UNIT_GetEnergyUnit(int const index, KIM_EnergyUnit *const energyUnit)
Get the identity of each defined standard EnergyUnit.
KIM_EnergyUnit const KIM_ENERGY_UNIT_kcal_mol
The standard kilocalorie per mole unit of energy.
char const * KIM_EnergyUnit_ToString(KIM_EnergyUnit const energyUnit)
Converts the object to a string.
KIM_EnergyUnit const KIM_ENERGY_UNIT_erg
The standard erg unit of energy.
An Extensible Enumeration for the EnergyUnit's supported by the KIM API.
int KIM_EnergyUnit_NotEqual(KIM_EnergyUnit const lhs, KIM_EnergyUnit const rhs)
Compares EnergyUnit objects for inequality.
int KIM_EnergyUnit_Equal(KIM_EnergyUnit const lhs, KIM_EnergyUnit const rhs)
Compares EnergyUnit objects for equality.
KIM_EnergyUnit const KIM_ENERGY_UNIT_unused
Indicates that a EnergyUnit is not used.
void KIM_ENERGY_UNIT_GetNumberOfEnergyUnits(int *const numberOfEnergyUnits)
Get the number of standard EnergyUnit's defined by the KIM API.
KIM_EnergyUnit const KIM_ENERGY_UNIT_amu_A2_per_ps2
The standard amu*A /ps unit of energy.
int KIM_EnergyUnit_Known(KIM_EnergyUnit const energyUnit)
Determines if the object is a quantity known to the KIM API.
KIM_EnergyUnit const KIM_ENERGY_UNIT_eV
The standard electronvolt unit of energy.
int energyUnitID
Integer identifying the specific EnergyUnit represented.
KIM_EnergyUnit const KIM_ENERGY_UNIT_Hartree
The standard Hartree unit of energy.
KIM_EnergyUnit KIM_EnergyUnit_FromString(char const *const str)
Create an EnergyUnit object corresponding to the provided string. If the string does not match one of...
KIM_EnergyUnit const KIM_ENERGY_UNIT_J
The standard Joule unit of energy.