21 else if (gs.
val != NULL)
33 else if (gs.
val != NULL)
44 else if (gs.
val != NULL)
55 else if (gs.
val != NULL)
64 else if (gs.
val != NULL)
107 char chLabel_species[
NCHLAB] = { 0 };
108 strcpy( chLabel_species, chLabel );
112 bool lgLevels =
false;
114 for(
char* s=chLabel_species; *s !=
'\0'; ++s)
124 nLevelLo = strtol(s,&t,10);
127 fprintf(
ioQQQ,
"PROBLEM: In request for species \"%s\"\n",chLabel);
150 nLevelHi = strtol(s,&t,10);
154 fprintf(
ioQQQ,
"PROBLEM: In request for species \"%s\"\n",chLabel);
162 fprintf(
ioQQQ,
"PROBLEM: In request for species \"%s\"\n",chLabel);
163 fprintf(
ioQQQ,
"Excitation levels must be in balanced brackets\n");
176 fprintf(
ioQQQ,
"PROBLEM: Request for unidentified species \"%s\"\n",chLabel_species);
186 fprintf(
ioQQQ,
"PROBLEM: Request for level in unresolved species \"%s\"\n",chLabel_species);
192 for (
int nLevel = nLevelLo; nLevel<=nLevelHi; ++nLevel)
195 LevelList.push_back( nLevel );
204 fprintf(
ioQQQ,
"PROBLEM: Request for level \"%s\", but species only has %lu levels\n",
214 for (
int nLevel = nLevelLo; nLevel<=nLevelHi; ++nLevel)
216 LevelList.push_back( nLevel-1 );
224 vector<genericState>
matchGeneric(
const char *chLabel,
bool lgValidate)
227 vector<genericState> v;
229 if (chLabel[0] ==
'*')
231 if (strncmp(chLabel+1,
"depth",6) == 0)
236 else if (strncmp(chLabel+1,
"AV",3) == 0)
241 else if (strncmp(chLabel+1,
"AVx",4) == 0)
246 else if (strncmp(chLabel+1,
"time",5) == 0)
251 else if (strncmp(chLabel+1,
"temp",5) == 0)
256 else if (strncmp(chLabel+1,
"all",4) == 0)
266 vector<long> LevelList;
271 for( vector<long>::iterator nLevel = LevelList.begin();
272 nLevel != LevelList.end(); ++nLevel)
t_mole_global mole_global
double depart(const genericState &gs)
const molecule * global() const
vector< genericState > matchGeneric(const char *chLabel, bool lgValidate)
double DepartCoef() const
molezone * findspecieslocal(const char buf[])
double energy(const genericState &gs)
valarray< class molezone > species
const molezone * getLevelsGeneric(const char *chLabel, bool lgValidate, vector< long > &LevelList)
double column(const genericState &gs)
double AnuUnit(realnum energy)
double levels(const genericState &gs)
double density(const genericState &gs)
double extin_mag_V_extended
#define DEBUG_ENTRY(funcname)
int fprintf(const Output &stream, const char *format,...)
static const long IGNORE_LEVEL