void write_all_output(model& m, const output_container& out, sz how_many, const std::string& output_name, const std::vector<std::string>& remarks) { if(out.size() < how_many) how_many = out.size(); VINA_CHECK(how_many <= remarks.size()); ofile f(make_path(output_name)); VINA_FOR(i, how_many) { m.set(out[i].c); m.write_model(f, i+1, remarks[i]); // so that model numbers start with 1 }
std::pair<sz, fl> find_closest(const vecv& a, const output_container& b) { std::pair<sz, fl> tmp(b.size(), max_fl); VINA_FOR_IN(i, b) { fl res = rmsd_upper_bound(a, b[i].coords); if(i == 0 || res < tmp.second) tmp = std::pair<sz, fl>(i, res); }