kim-api  2.3.0+v2.3.0.GNU.GNU.
An Application Programming Interface (API) for the Knowledgebase of Interatomic Models (KIM).
KIM_SpeciesName.hpp
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_SPECIES_NAME_HPP_
32 #define KIM_SPECIES_NAME_HPP_
33 
34 #include <string>
35 
36 namespace KIM
37 {
47 {
48  public:
59 
63  SpeciesName();
64 
70  SpeciesName(int const id);
71 
79  SpeciesName(std::string const & str);
80 
89  bool Known() const;
90 
98  bool operator==(SpeciesName const & rhs) const;
99 
107  bool operator!=(SpeciesName const & rhs) const;
108 
119  std::string const & ToString() const;
120 }; // class SpeciesName
121 
124 namespace SPECIES_NAME
125 {
132 extern SpeciesName const electron;
133 
139 extern SpeciesName const H;
140 
146 extern SpeciesName const He;
147 
153 extern SpeciesName const Li;
154 
160 extern SpeciesName const Be;
161 
167 extern SpeciesName const B;
168 
174 extern SpeciesName const C;
175 
181 extern SpeciesName const N;
182 
188 extern SpeciesName const O;
189 
195 extern SpeciesName const F;
196 
202 extern SpeciesName const Ne;
203 
209 extern SpeciesName const Na;
210 
216 extern SpeciesName const Mg;
217 
223 extern SpeciesName const Al;
224 
230 extern SpeciesName const Si;
231 
237 extern SpeciesName const P;
238 
244 extern SpeciesName const S;
245 
251 extern SpeciesName const Cl;
252 
258 extern SpeciesName const Ar;
259 
265 extern SpeciesName const K;
266 
272 extern SpeciesName const Ca;
273 
279 extern SpeciesName const Sc;
280 
286 extern SpeciesName const Ti;
287 
293 extern SpeciesName const V;
294 
300 extern SpeciesName const Cr;
301 
307 extern SpeciesName const Mn;
308 
314 extern SpeciesName const Fe;
315 
321 extern SpeciesName const Co;
322 
328 extern SpeciesName const Ni;
329 
335 extern SpeciesName const Cu;
336 
342 extern SpeciesName const Zn;
343 
349 extern SpeciesName const Ga;
350 
356 extern SpeciesName const Ge;
357 
363 extern SpeciesName const As;
364 
370 extern SpeciesName const Se;
371 
377 extern SpeciesName const Br;
378 
384 extern SpeciesName const Kr;
385 
391 extern SpeciesName const Rb;
392 
398 extern SpeciesName const Sr;
399 
405 extern SpeciesName const Y;
406 
412 extern SpeciesName const Zr;
413 
419 extern SpeciesName const Nb;
420 
426 extern SpeciesName const Mo;
427 
433 extern SpeciesName const Tc;
434 
440 extern SpeciesName const Ru;
441 
447 extern SpeciesName const Rh;
448 
454 extern SpeciesName const Pd;
455 
461 extern SpeciesName const Ag;
462 
468 extern SpeciesName const Cd;
469 
475 extern SpeciesName const In;
476 
482 extern SpeciesName const Sn;
483 
489 extern SpeciesName const Sb;
490 
496 extern SpeciesName const Te;
497 
503 extern SpeciesName const I;
504 
510 extern SpeciesName const Xe;
511 
517 extern SpeciesName const Cs;
518 
524 extern SpeciesName const Ba;
525 
531 extern SpeciesName const La;
532 
538 extern SpeciesName const Ce;
539 
545 extern SpeciesName const Pr;
546 
552 extern SpeciesName const Nd;
553 
559 extern SpeciesName const Pm;
560 
566 extern SpeciesName const Sm;
567 
573 extern SpeciesName const Eu;
574 
580 extern SpeciesName const Gd;
581 
587 extern SpeciesName const Tb;
588 
594 extern SpeciesName const Dy;
595 
601 extern SpeciesName const Ho;
602 
608 extern SpeciesName const Er;
609 
615 extern SpeciesName const Tm;
616 
622 extern SpeciesName const Yb;
623 
629 extern SpeciesName const Lu;
630 
636 extern SpeciesName const Hf;
637 
643 extern SpeciesName const Ta;
644 
650 extern SpeciesName const W;
651 
657 extern SpeciesName const Re;
658 
664 extern SpeciesName const Os;
665 
671 extern SpeciesName const Ir;
672 
678 extern SpeciesName const Pt;
679 
685 extern SpeciesName const Au;
686 
692 extern SpeciesName const Hg;
693 
699 extern SpeciesName const Tl;
700 
706 extern SpeciesName const Pb;
707 
713 extern SpeciesName const Bi;
714 
720 extern SpeciesName const Po;
721 
727 extern SpeciesName const At;
728 
734 extern SpeciesName const Rn;
735 
741 extern SpeciesName const Fr;
742 
748 extern SpeciesName const Ra;
749 
755 extern SpeciesName const Ac;
756 
762 extern SpeciesName const Th;
763 
769 extern SpeciesName const Pa;
770 
776 extern SpeciesName const U;
777 
783 extern SpeciesName const Np;
784 
790 extern SpeciesName const Pu;
791 
797 extern SpeciesName const Am;
798 
804 extern SpeciesName const Cm;
805 
811 extern SpeciesName const Bk;
812 
818 extern SpeciesName const Cf;
819 
825 extern SpeciesName const Es;
826 
832 extern SpeciesName const Fm;
833 
839 extern SpeciesName const Md;
840 
846 extern SpeciesName const No;
847 
853 extern SpeciesName const Lr;
854 
860 extern SpeciesName const Rf;
861 
867 extern SpeciesName const Db;
868 
874 extern SpeciesName const Sg;
875 
881 extern SpeciesName const Bh;
882 
888 extern SpeciesName const Hs;
889 
895 extern SpeciesName const Mt;
896 
902 extern SpeciesName const Ds;
903 
909 extern SpeciesName const Rg;
910 
916 extern SpeciesName const Cn;
917 
923 extern SpeciesName const Nh;
924 
930 extern SpeciesName const Fl;
931 
937 extern SpeciesName const Mc;
938 
944 extern SpeciesName const Lv;
945 
951 extern SpeciesName const Ts;
952 
958 extern SpeciesName const Og;
959 
966 extern SpeciesName const user01;
967 
974 extern SpeciesName const user02;
975 
982 extern SpeciesName const user03;
983 
990 extern SpeciesName const user04;
991 
998 extern SpeciesName const user05;
999 
1006 extern SpeciesName const user06;
1007 
1014 extern SpeciesName const user07;
1015 
1022 extern SpeciesName const user08;
1023 
1030 extern SpeciesName const user09;
1031 
1038 extern SpeciesName const user10;
1039 
1046 extern SpeciesName const user11;
1047 
1054 extern SpeciesName const user12;
1055 
1062 extern SpeciesName const user13;
1063 
1070 extern SpeciesName const user14;
1071 
1078 extern SpeciesName const user15;
1079 
1086 extern SpeciesName const user16;
1087 
1094 extern SpeciesName const user17;
1095 
1102 extern SpeciesName const user18;
1103 
1110 extern SpeciesName const user19;
1111 
1118 extern SpeciesName const user20;
1119 
1120 
1130 void GetNumberOfSpeciesNames(int * const numberOfSpeciesNames);
1131 
1146 int GetSpeciesName(int const index, SpeciesName * const speciesName);
1147 
1152 {
1157  bool operator()(SpeciesName const & a, SpeciesName const & b) const
1158  {
1159  return a.speciesNameID < b.speciesNameID;
1160  }
1161 }; // struct Comparator
1162 } // namespace SPECIES_NAME
1163 } // namespace KIM
1164 
1165 #endif // KIM_SPECIES_NAME_HPP_
SpeciesName const Pa
The standard Protactinium species.
SpeciesName const user19
The standard user19 species.
SpeciesName const Ru
The standard Ruthenium species.
SpeciesName const Ra
The standard Radium species.
SpeciesName const Es
The standard Einsteinium species.
SpeciesName const Am
The standard Americium species.
SpeciesName const Al
The standard Aluminum species.
SpeciesName const Ts
The standard Tennessine species.
int GetSpeciesName(int const index, SpeciesName *const speciesName)
Get the identity of each defined standard SpeciesName.
SpeciesName const user12
The standard user12 species.
SpeciesName const Gd
The standard Gadolinium species.
SpeciesName const V
The standard Vanadium species.
SpeciesName const Rb
The standard Rubidium species.
SpeciesName const Au
The standard Gold species.
SpeciesName const Nh
The standard Nihonium species.
SpeciesName const Ar
The standard Argon species.
SpeciesName const Mg
The standard Magnesium species.
SpeciesName const user08
The standard user08 species.
SpeciesName const Ba
The standard Barium species.
SpeciesName const Cm
The standard Curium species.
SpeciesName const Tm
The standard Thulium species.
SpeciesName const Te
The standard Tellurium species.
SpeciesName const Ga
The standard Gallium species.
SpeciesName const Zr
The standard Zirconium species.
SpeciesName const user18
The standard user18 species.
SpeciesName const B
The standard Boron species.
SpeciesName const Sn
The standard Tin species.
SpeciesName const user07
The standard user07 species.
SpeciesName const Nd
The standard Neodymium species.
SpeciesName const La
The standard Lanthanum species.
SpeciesName const Os
The standard Osmium species.
SpeciesName const Li
The standard Lithium species.
SpeciesName const user01
The standard user01 species.
SpeciesName const Na
The standard Sodium species.
SpeciesName const Zn
The standard Zinc species.
SpeciesName const Ge
The standard Germanium species.
SpeciesName const user14
The standard user14 species.
SpeciesName const Po
The standard Polonium species.
SpeciesName const Th
The standard Thorium species.
SpeciesName const electron
The standard electron species.
SpeciesName const Mc
The standard Moscovium species.
SpeciesName const Nb
The standard Niobium species.
SpeciesName const Mt
The standard Meitnerium species.
SpeciesName const user04
The standard user04 species.
SpeciesName const Cl
The standard Chlorine species.
SpeciesName const user02
The standard user02 species.
SpeciesName const Ac
The standard Actinium species.
SpeciesName const Cs
The standard Cesium species.
bool operator()(SpeciesName const &a, SpeciesName const &b) const
Provides an (logically unmeaningful) ordering for SpeciesName objects so that they can be stored in a...
SpeciesName const I
The standard Iodine species.
SpeciesName const Ti
The standard Titanium species.
SpeciesName const Tb
The standard Terbium species.
SpeciesName const Ce
The standard Cerium species.
SpeciesName const Tl
The standard Thallium species.
SpeciesName const Fe
The standard Iron species.
SpeciesName const Bi
The standard Bismuth species.
SpeciesName const Ta
The standard Tantalum species.
bool Known() const
Determines if the object is a quantity known to the KIM API.
SpeciesName const S
The standard Sulfur species.
SpeciesName const In
The standard Indium species.
SpeciesName const Lu
The standard Lutetium species.
SpeciesName const O
The standard Oxygen species.
SpeciesName const Sb
The standard Antimony species.
SpeciesName const Bh
The standard Bohrium species.
SpeciesName const user20
The standard user20 species.
SpeciesName const Mn
The standard Manganese species.
SpeciesName const Kr
The standard Krypton species.
SpeciesName const U
The standard Uranium species.
Structure provided for use with std::map.
SpeciesName const Rh
The standard Rhodium species.
SpeciesName const Xe
The standard Xenon species.
SpeciesName const Hf
The standard Hafnium species.
SpeciesName const Rn
The standard Radon species.
SpeciesName const Ag
The standard Silver species.
int speciesNameID
Integer identifying the specific SpeciesName represented.
void GetNumberOfSpeciesNames(int *const numberOfSpeciesNames)
Get the number of standard SpeciesName&#39;s defined by the KIM API.
SpeciesName const user13
The standard user13 species.
SpeciesName const Db
The standard Dubnium species.
SpeciesName const Sg
The standard Seaborgium species.
SpeciesName const Pt
The standard Platinum species.
SpeciesName const user09
The standard user09 species.
SpeciesName const user15
The standard user15 species.
SpeciesName const Co
The standard Cobalt species.
SpeciesName const Ds
The standard Darmstadtium species.
SpeciesName const Ne
The standard Neon species.
SpeciesName const K
The standard Potassium species.
SpeciesName const Pm
The standard Promethium species.
SpeciesName const H
The standard Hydrogen species.
SpeciesName const Np
The standard Neptunium species.
SpeciesName const Lr
The standard Lawrencium species.
SpeciesName const Cf
The standard Californium species.
SpeciesName const user11
The standard user11 species.
SpeciesName const At
The standard Astatine species.
SpeciesName const F
The standard Fluorine species.
SpeciesName const Cn
The standard Copernicium species.
SpeciesName const user03
The standard user03 species.
SpeciesName const Ir
The standard Iridium species.
SpeciesName const Si
The standard Silicon species.
SpeciesName const Ni
The standard Nickel species.
SpeciesName const Eu
The standard Europium species.
SpeciesName()
Create an uninitialized SpeciesName object.
SpeciesName const Se
The standard Selenium species.
SpeciesName const No
The standard Nobelium species.
SpeciesName const Pb
The standard Lead species.
SpeciesName const user17
The standard user17 species.
SpeciesName const Tc
The standard Technetium species.
std::string const & ToString() const
Converts the object to a string.
SpeciesName const Pd
The standard Palladium species.
SpeciesName const C
The standard Carbon species.
SpeciesName const Sr
The standard Strontium species.
SpeciesName const Yb
The standard Ytterbium species.
SpeciesName const Br
The standard Bromine species.
bool operator==(SpeciesName const &rhs) const
Compares SpeciesName objects for equality.
SpeciesName const Pr
The standard Praseodymium species.
SpeciesName const Lv
The standard Livermorium species.
SpeciesName const Fr
The standard Francium species.
SpeciesName const Bk
The standard Berkelium species.
SpeciesName const Ho
The standard Holmium species.
SpeciesName const Re
The standard Rhenium species.
SpeciesName const N
The standard Nitrogen species.
SpeciesName const Ca
The standard Calcium species.
SpeciesName const Cu
The standard Copper species.
SpeciesName const Dy
The standard Dysprosium species.
SpeciesName const P
The standard Phosphorus species.
SpeciesName const Hg
The standard Mercury species.
SpeciesName const Er
The standard Erbium species.
SpeciesName const Be
The standard Beryllium species.
SpeciesName const Hs
The standard Hassium species.
SpeciesName const Mo
The standard Molybdenum species.
SpeciesName const Fm
The standard Fermium species.
SpeciesName const As
The standard Arsenic species.
SpeciesName const Fl
The standard Flerovium species.
SpeciesName const user06
The standard user06 species.
SpeciesName const W
The standard Tungsten species.
SpeciesName const user05
The standard user05 species.
SpeciesName const Cr
The standard Chromium species.
SpeciesName const user10
The standard user10 species.
SpeciesName const Cd
The standard Cadmium species.
An Extensible Enumeration for the SpeciesName&#39;s supported by the KIM API.
SpeciesName const Rg
The standard Roentgenium species.
SpeciesName const Sm
The standard Samarium species.
SpeciesName const Og
The standard Oganesson species.
SpeciesName const Pu
The standard Plutonium species.
SpeciesName const Y
The standard Yttrium species.
SpeciesName const He
The standard Helium species.
SpeciesName const user16
The standard user16 species.
SpeciesName const Rf
The standard Rutherfordium species.
bool operator!=(SpeciesName const &rhs) const
Compares SpeciesName objects for inequality.
SpeciesName const Sc
The standard Scandium species.
SpeciesName const Md
The standard Mendelevium species.