This commit is contained in:
caes 2017-07-11 05:53:30 -04:00
parent f9b701f6b6
commit b58d187c90
3 changed files with 32 additions and 10 deletions

View File

@ -157,11 +157,12 @@ C 2 2326.93A Stout, 2 4
Blnd 1335.00A Blend: "C 2 1334.53A"+"C 2 1335.66A"+"C 2 1335.71A"+"C 2R 1335.00A"
# no inwd
#C 2 1334.53A Stout, 1 7
#C 2 1335.66A Stout, 2 7
#C 2 1335.71A Stout, 2 6
C 2 1334.53A Stout, 1 7
C 2 1335.66A Stout, 2 7
C 2 1335.71A Stout, 2 6
Blnd 977.000A Blend: "C 3 977.020A"+"C 3R 977.000A"
# no inwd
C 3 977.020A Stout, 1 5
Blnd 1909.00A Blend: "C 3 1908.73A"+"C 3 1906.68A"+"C 3R 1909.00A"+"C 3H 1909.00A"
@ -236,9 +237,9 @@ O 1 1306.03A
Blnd 8446.00A Blend: "O 1 8446.25A"+"O 1 8446.36A"+"O 1 8446.76A"
# no inwd
#O 1 8446.25A
#O 1 8446.36A
#O 1 8446.76A
O 1 8446.25A
O 1 8446.36A
O 1 8446.76A
Blnd 1666.00A Blend: "O 3 1666.15A"+"O 3 1660.81A"+"O 3H 1665.00A"+"O 3A 1665.00A"
# no inwd

View File

@ -281,22 +281,37 @@ agn::cloudy_grid agn::read_cloudy_grid(std::ifstream& inputfile) {
agn::gridcoordlist::iterator coords = coordlist.begin();
while(grid.size() < coordlist.size()) {
bool failmode = false;
agn::cloudy_result point;
point.hden = coords->first;
point.phi = coords->second;
seek_string = "Intrinsic line intensities";
std::string fail_string = "PROBLEM DISASTER";
if(agn::debug) std::cout
<< "Grabbing header and cautions.";
std::string header="";
std::list<std::string> cautions;
while (inputline.find(seek_string) == std::string::npos) {
getline(inputfile,inputline);
if (inputline.find(fail_string) != std::string::npos) {
if(agn::debug) std::cout
<< " Found broken model.";
failmode = true;
break;
}
header.append(inputline);
header.append("\n");
if((inputline[1] == 'C' && inputline[2] == '-')
|| (inputline[1] == ' ' && inputline[2] == '!' ))
cautions.push_back(inputline);
}
if (failmode) {
grid[*coords] = point;
coords++;
//agn::seek_to("c ======================",inputfile);
//agn::seek_to("c ======================",inputfile);
continue;
}
point.header = header;
point.cautions = cautions;
std::stringstream headerstr;

View File

@ -283,6 +283,9 @@ std::ostream& agn::operator<< ( std::ostream& outstream,
agn::line_list agn::read_line_list(std::ifstream& inputfile) {
line_list list;
line_list nfnulist;
line_list inwtlist;
line_list inwclist;
inputfile.clear();
inputfile.seekg(0);
std::string line,label;
@ -301,16 +304,19 @@ agn::line_list agn::read_line_list(std::ifstream& inputfile) {
<< " to capture list.\n";
std::string applabel = label.substr(4);
if (label.substr(0,4).compare(std::string("nFnu")) == 0) {
list.push_back(std::string("nFnu").append(applabel));
nfnulist.push_back(std::string("nFnu").append(applabel));
//list.push_back(std::string("nInu").append(applabel));
list.push_back(std::string("InwT").append(applabel));
list.push_back(std::string("InwC").append(applabel));
inwtlist.push_back(std::string("InwT").append(applabel));
inwclist.push_back(std::string("InwC").append(applabel));
continue;
}
list.push_back(label);
//if (label.substr(0,4) != "Inci" && applabel != " 0 ")
// list.push_back(std::string("Inwd").append(applabel));
}
list.insert(list.end(),nfnulist.begin(),nfnulist.end());
list.insert(list.end(),inwtlist.begin(),inwtlist.end());
list.insert(list.end(),inwclist.begin(),inwclist.end());
return list;
}
@ -388,7 +394,7 @@ std::list<agn::eqwidth_table> agn::compile_eqwidth_tables(agn::cloudy_grid grid,
label == "Blnd 2326.00A" ||
label == "Blnd 2798.00A" ||
label == "Blnd 1335.00A" ||
label == "C 3 977.000A" ||
label == "Blnd 977.000A" ||
label == "Blnd 1909.00A" ||
label == "Blnd 1176.00A" ||
label == "Blnd 2141.00A" ||