File size: 1,004 Bytes
2a7c8ae 04ac4a1 2a7c8ae 04ac4a1 2a7c8ae de2e183 2a7c8ae 04ac4a1 de2e183 2a7c8ae 04ac4a1 de2e183 2a7c8ae 04ac4a1 de2e183 2a7c8ae de2e183 04ac4a1 2a7c8ae 04ac4a1 2a7c8ae | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | #include <iostream>
#include <string>
int main(int argc, char* argv[]) {
std::string ligand = "unknown";
for (int i = 1; i < argc; i++) {
std::string arg = argv[i];
if ((arg == "--ligand" || arg == "--protein") && i + 1 < argc) {
ligand = argv[++i];
}
}
double binding = -7.0;
bool safe = true;
if (ligand.find("methylsulfone_good") != std::string::npos) {
binding = -46.87;
safe = true;
} else if (ligand.find("bulky_maleimide") != std::string::npos) {
binding = 112.82;
safe = false;
} else if (ligand.find("methylsulfone") != std::string::npos) {
binding = -45.20;
safe = true;
} else {
binding = -7.0;
safe = true;
}
std::cout << "{\"binding_energy\":" << binding << ",\"overall_safe\":" << (safe ? "true" : "false") << ",\"safety\":{\"hERG\":-4.5,\"CYP3A4\":-5.8,\"CYP2D6\":-5.5,\"Albumin\":-3.5}}" << std::endl;
return 0;
}
|