atom_num.cc

Go to the documentation of this file.
00001 
00007 #define EXTERN
00008 #include <cstdio>
00009 #include <cstring>
00010 #include <cstdlib>
00011 #include "input.h"
00012 #include <physconst.h>
00013 #include "global.h"
00014 #include "defines.h"
00015 
00016 namespace psi { namespace input {
00017 
00018 void atom_num(char *A,  double *C)
00019 {
00020  int i=0;
00021  if(!strcmp(A,"GHOST") || !strcmp(A,"G")){
00022   *C = 0.00;
00023   }
00024 else if(!strcmp(A,"H") || !strcmp(A,"HYDROGEN")){
00025   *C = 1.00;
00026  }
00027 else if(!strcmp(A,"HE") || !strcmp(A,"HELIUM")){
00028   *C = 2.00;
00029  }
00030 else if(!strcmp(A,"LI")|| !strcmp(A,"LITHIUM")){
00031   *C = 3.00;
00032  }
00033 else if(!strcmp(A,"BE")|| !strcmp(A,"BERYLLIUM")){
00034   *C = 4.00;
00035  }
00036 else if(!strcmp(A,"B")|| !strcmp(A,"BORON")){
00037   *C = 5.00;
00038  }
00039 else if(!strcmp(A,"C") || !strcmp(A,"CARBON")){
00040   *C = 6.00;
00041  }
00042 else if(!strcmp(A,"N") || !strcmp(A,"NITROGEN")){
00043   *C = 7.00;
00044  }
00045 else if(!strcmp(A,"O") || !strcmp(A,"OXYGEN")){
00046   *C = 8.00;
00047  }
00048 else if(!strcmp(A,"F") || !strcmp(A,"FLUORINE")){
00049   *C = 9.00;
00050  }
00051 else if(!strcmp(A,"NE") || !strcmp(A,"NEON")){
00052   *C = 10.00;
00053  }
00054 else if(!strcmp(A,"NA") || !strcmp(A,"SODIUM")){
00055   *C = 11.00;
00056  }
00057 else if(!strcmp(A,"MG") || !strcmp(A,"MAGNESIUM")){
00058   *C = 12.00;
00059  }
00060 else if(!strcmp(A,"AL") || !strcmp(A,"ALUMINUM")){
00061   *C = 13.00;
00062  }
00063 else if(!strcmp(A,"SI") || !strcmp(A,"SILICON")){
00064   *C = 14.00;
00065  }
00066 else if(!strcmp(A,"P") || !strcmp(A,"PHOSPHORUS")){
00067   *C = 15.00;
00068  }
00069 else if(!strcmp(A,"S") || !strcmp(A,"SULPHUR") || !strcmp(A,"SULFUR")){
00070   *C = 16.00;
00071  }
00072 else if(!strcmp(A,"CL") || !strcmp(A,"CHLORINE")){
00073   *C = 17.00;
00074  }
00075 else if(!strcmp(A,"AR") || !strcmp(A,"ARGON")){
00076   *C = 18.00;
00077  }
00078 else if(!strcmp(A,"K") || !strcmp(A,"POTASSIUM")){
00079   *C = 19.00;
00080  }
00081 else if(!strcmp(A,"CA") || !strcmp(A,"CALCIUM")){
00082   *C = 20.00;
00083  }
00084 else if(!strcmp(A,"SC") || !strcmp(A,"SCANDIUM")){
00085   *C = 21.00;
00086  }
00087 else if(!strcmp(A,"TI") || !strcmp(A,"TITANIUM")){
00088   *C = 22.00;
00089  }
00090 else if(!strcmp(A,"V") || !strcmp(A,"VANADIUM")){
00091   *C = 23.00;
00092  }
00093 else if(!strcmp(A,"CR") || !strcmp(A,"CHROMIUM")){
00094   *C = 24.00;
00095  }
00096 else if(!strcmp(A,"MN") || !strcmp(A,"MANGANESE")){
00097   *C = 25.00;
00098  }
00099 else if(!strcmp(A,"FE") || !strcmp(A,"IRON")){
00100   *C = 26.00;
00101  }
00102 else if(!strcmp(A,"CO") || !strcmp(A,"COBALT")){
00103   *C = 27.00;
00104  }
00105 else if(!strcmp(A,"NI") || !strcmp(A,"NICKEL")){
00106   *C = 28.00;
00107  }
00108 else if(!strcmp(A,"CU") || !strcmp(A,"COPPER")){
00109   *C = 29.00;
00110  }
00111 else if(!strcmp(A,"ZN") || !strcmp(A,"ZINC")){
00112   *C = 30.00;
00113  }
00114 else if(!strcmp(A,"GA") || !strcmp(A,"GALLIUM")){
00115   *C = 31.00;
00116  }
00117 else if(!strcmp(A,"GE") || !strcmp(A,"GERMANIUM")){
00118   *C = 32.00;
00119  }
00120 else if(!strcmp(A,"AS") || !strcmp(A,"ARSENIC")){
00121   *C = 33.00;
00122  }
00123 else if(!strcmp(A,"SE") || !strcmp(A,"SELENIUM")){
00124   *C = 34.00;
00125  }
00126 else if(!strcmp(A,"BR") || !strcmp(A,"BROMINE")){
00127   *C = 35.00;
00128  }
00129 else if(!strcmp(A,"KR") || !strcmp(A,"KRYPTON")){
00130   *C = 36.00;
00131  }
00132 else if(!strcmp(A,"RB") || !strcmp(A,"RUBIDIUM")){
00133   *C = 37.00;
00134  }
00135 else if(!strcmp(A,"SR") || !strcmp(A,"STRONTIUM")){
00136   *C = 38.00;
00137  }
00138 else if(!strcmp(A,"Y") || !strcmp(A,"YTTRIUM")){
00139   *C = 39.00;
00140  }
00141 else if(!strcmp(A,"ZR") || !strcmp(A,"ZIRCONIUM")){
00142   *C = 40.00;
00143  }
00144 else if(!strcmp(A,"NB") || !strcmp(A,"NIOBIUM")){
00145   *C = 41.00;
00146  }
00147 else if(!strcmp(A,"MO") || !strcmp(A,"MOLYBDENUM")){
00148   *C = 42.00;
00149  }
00150 else if(!strcmp(A,"TC") || !strcmp(A,"TECHNETIUM")){
00151   *C = 43.00;
00152  }
00153 else if(!strcmp(A,"RU") || !strcmp(A,"RUTHENIUM")){
00154   *C = 44.00;
00155  }
00156 else if(!strcmp(A,"RH") || !strcmp(A,"RHODIUM")){
00157   *C = 45.00;
00158  }
00159 else if(!strcmp(A,"PD") || !strcmp(A,"PALLADIUM")){
00160   *C = 46.00;
00161  }
00162 else if(!strcmp(A,"AG") || !strcmp(A,"SILVER")){
00163   *C = 47.00;
00164  }
00165 else if(!strcmp(A,"CD") || !strcmp(A,"CADMIUM")){
00166   *C = 48.00;
00167  }
00168 else if(!strcmp(A,"IN") || !strcmp(A,"INDIUM")){
00169   *C = 49.00;
00170  }
00171 else if(!strcmp(A,"SN") || !strcmp(A,"TIN")){
00172   *C = 50.00;
00173  }
00174 else if(!strcmp(A,"SB") || !strcmp(A,"ANTIMONY")){
00175   *C = 51.00;
00176  }
00177 else if(!strcmp(A,"TE") || !strcmp(A,"TELLURIUM")){
00178   *C = 52.00;
00179  }
00180 else if(!strcmp(A,"I") || !strcmp(A,"IODINE")){
00181   *C = 53.00;
00182  }
00183 else if(!strcmp(A,"XE") || !strcmp(A,"XENON")){
00184   *C = 54.00;
00185  }
00186 else if(!strcmp(A,"CS") || !strcmp(A,"CESIUM")){
00187   *C = 55.00;
00188  }
00189 else if(!strcmp(A,"BA") || !strcmp(A,"BARIUM")){
00190   *C = 56.00;
00191  }
00192 else if(!strcmp(A,"LA") || !strcmp(A,"LANTHANUM")){
00193   *C = 57.00;
00194  }
00195 else if(!strcmp(A,"CE") || !strcmp(A,"CERIUM")){
00196   *C = 58.00;
00197  }
00198 else if(!strcmp(A,"PR") || !strcmp(A,"PRASEODYMIUM")){
00199   *C = 59.00;
00200  }
00201 else if(!strcmp(A,"ND") || !strcmp(A,"NEODYMIUM")){
00202   *C = 60.00;
00203  }
00204 else if(!strcmp(A,"PM") || !strcmp(A,"PROMETHIUM")){
00205   *C = 61.00;
00206  }
00207 else if(!strcmp(A,"SM") || !strcmp(A,"SAMARIUM")){
00208   *C = 62.00;
00209  }
00210 else if(!strcmp(A,"EU") || !strcmp(A,"EUROPIUM")){
00211   *C = 63.00;
00212  }
00213 else if(!strcmp(A,"GD") || !strcmp(A,"GADOLINIUM")){
00214   *C = 64.00;
00215  }
00216 else if(!strcmp(A,"TB") || !strcmp(A,"TERBIUM")){
00217   *C = 65.00;
00218  }
00219 else if(!strcmp(A,"DY") || !strcmp(A,"DYSPROSIUM")){
00220   *C = 66.00;
00221  }
00222 else if(!strcmp(A,"HO") || !strcmp(A,"HOLMIUM")){
00223   *C = 67.00;
00224  }
00225 else if(!strcmp(A,"ER") || !strcmp(A,"ERBIUM")){
00226   *C = 68.00;
00227  }
00228 else if(!strcmp(A,"TM") || !strcmp(A,"THULIUM")){
00229   *C = 69.00;
00230  }
00231 else if(!strcmp(A,"YB") || !strcmp(A,"YTTERBIUM")){
00232   *C = 70.00;
00233  }
00234 else if(!strcmp(A,"LU") || !strcmp(A,"LUTETIUM")){
00235   *C = 71.00;
00236  }
00237 else if(!strcmp(A,"HF") || !strcmp(A,"HAFNIUM")){
00238   *C = 72.00;
00239  }
00240 else if(!strcmp(A,"TA") || !strcmp(A,"TANTALUM")){
00241   *C = 73.00;
00242  }
00243 else if(!strcmp(A,"W") || !strcmp(A,"TUNGSTEN")){
00244   *C = 74.00;
00245  }
00246 else if(!strcmp(A,"RE") || !strcmp(A,"RHENIUM")){
00247   *C = 75.00;
00248  }
00249 else if(!strcmp(A,"OS") || !strcmp(A,"OSMIUM")){
00250   *C = 76.00;
00251  }
00252 else if(!strcmp(A,"IR") || !strcmp(A,"IRIDIUM")){
00253   *C = 77.00;
00254  }
00255 else if(!strcmp(A,"PT") || !strcmp(A,"PLATINUM")){
00256   *C = 78.00;
00257  }
00258 else if(!strcmp(A,"AU") || !strcmp(A,"GOLD")){
00259   *C = 79.00;
00260  }
00261 else if(!strcmp(A,"HG") || !strcmp(A,"MERCURY")){
00262   *C = 80.00;
00263  }
00264 else if(!strcmp(A,"TL") || !strcmp(A,"THALLIUM")){
00265   *C = 81.00;
00266  }
00267 else if(!strcmp(A,"PB") || !strcmp(A,"LEAD")){
00268   *C = 82.00;
00269  }
00270 else if(!strcmp(A,"BI") || !strcmp(A,"BISMUTH")){
00271   *C = 83.00;
00272  }
00273 else if(!strcmp(A,"PO") || !strcmp(A,"POLONIUM")){
00274   *C = 84.00;
00275  }
00276 else if(!strcmp(A,"AT") || !strcmp(A,"ASTATINE")){
00277   *C = 85.00;
00278  }
00279 else if(!strcmp(A,"RN") || !strcmp(A,"RADON")){
00280   *C = 86.00;
00281  }
00282 else if(!strcmp(A,"FR") || !strcmp(A,"FRANCIUM")){
00283   *C = 87.00;
00284  }
00285 else if(!strcmp(A,"RA") || !strcmp(A,"RADIUM")){
00286   *C = 88.00;
00287  }
00288 else if(!strcmp(A,"AC") || !strcmp(A,"ACTINIUM")){
00289   *C = 89.00;
00290  }
00291 else if(!strcmp(A,"TH") || !strcmp(A,"THORIUM")){
00292   *C = 90.00;
00293  }
00294 else if(!strcmp(A,"PA") || !strcmp(A,"PROTACTINIUM")){
00295   *C = 91.00;
00296  }
00297 else if(!strcmp(A,"U") || !strcmp(A,"URANIUM")){
00298   *C = 92.00;
00299  }
00300 else if(!strcmp(A,"NP") || !strcmp(A,"NEPTUNIUM")){
00301   *C = 93.00;
00302  }
00303 else if(!strcmp(A,"PU") || !strcmp(A,"PLUTONIUM")){
00304   *C = 94.00;
00305  }
00306 else if(!strcmp(A,"AM") || !strcmp(A,"AMERICIUM")){
00307   *C = 95.00;
00308  }
00309 else if(!strcmp(A,"CM") || !strcmp(A,"CURIUM")){
00310   *C = 96.00;
00311  }
00312 else if(!strcmp(A,"BK") || !strcmp(A,"BERKELIUM")){
00313   *C = 97.00;
00314  }
00315 else if(!strcmp(A,"CF") || !strcmp(A,"CALELSE IFORNIUM")){
00316   *C = 98.00;
00317  }
00318 else if(!strcmp(A,"ES") || !strcmp(A,"EINSTEINIUM")){
00319   *C = 99.00;
00320  }
00321 else if(!strcmp(A,"FM") || !strcmp(A,"FERMIUM")){
00322   *C = 100.00;
00323  }
00324 else if(!strcmp(A,"MD") || !strcmp(A,"MENDELEVIUM")){
00325   *C = 101.00;
00326  }
00327 else if(!strcmp(A,"NO") || !strcmp(A,"NOBELIUM")){
00328   *C = 102.00;
00329  }
00330 else if(!strcmp(A,"LR") || !strcmp(A,"LAWRENCIUM")){
00331   *C = 103.00;
00332  }
00333 else if(!strcmp(A,"UNQ")){
00334   *C = 104.00;
00335  }
00336 else if(!strcmp(A,"UNP")){
00337   *C = 105.00;
00338  }
00339 else if(!strcmp(A,"UNH")){
00340   *C = 106.00;
00341  }
00342 else if(!strcmp(A,"UNS")){
00343   *C = 107.00;
00344  }
00345 else if (i = atoi(A)) {
00346   *C = (double) i;
00347  }
00348 else
00349   punt("Unrecognized atom symbol/name!");
00350 }
00351 
00352 }} // namespace psi::input

Generated on Wed Feb 13 16:35:39 2008 for PSI by  doxygen 1.5.4