File: rescoring4D.C

package info (click to toggle)
ball 1.5.0%2Bgit20180813.37fc53c-6
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 239,888 kB
  • sloc: cpp: 326,149; ansic: 4,208; python: 2,303; yacc: 1,778; lex: 1,099; xml: 958; sh: 322; makefile: 95
file content (45 lines) | stat: -rw-r--r-- 1,417 bytes parent folder | download | duplicates (6)
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
36
37
38
39
40
41
42
43
44
45
#include <BALL/SCORING/FUNCTIONS/rescoring4D.h>
#include <BALL/SCORING/COMPONENTS/aromaticRingStacking.h>
#include <BALL/SCORING/COMPONENTS/polarity.h>
#include <BALL/KERNEL/molecularInteractions.h>


using namespace BALL;


//namespace BALL
//{
	//namespace Docking
	//{

		Rescoring4D::Rescoring4D(AtomContainer& receptor, AtomContainer& reference_ligand, Options& options, String free_energy_label, ScoringFunction* sf)
		: Rescoring3D(receptor, reference_ligand, options, free_energy_label, sf)
		{
			name_ = "Rescoring4D";
			use_calibration_ = true;
			reg3D_grid_names_.clear();
			reg3D_grid_names_.push_back("rescore4D ES");
			reg3D_grid_names_.push_back("rescore4D vdW");
			reg3D_grid_names_.push_back("rescore4D fragSolv");
			reg3D_grid_names_.push_back("rescore4D HB");
		}

		// obtain score-contributions for a single atom
		void Rescoring4D::generateAtomScoreContributions_(const Atom* atom, vector<double>& contributions)
		{
			if (!atom)
			{
				contributions.resize(4, 0);
				return;
			}
			if (contributions.size() == 0) contributions.resize(4, 0);
			if (atom->interactions)
			{
				contributions[0] = atom->interactions->getInteractionEnergy("ES");
				contributions[1] = atom->interactions->getInteractionEnergy("vdW");
				contributions[2] = atom->interactions->getInteractionEnergy("fragSolv");
				contributions[3] = atom->interactions->getInteractionEnergy("HB");
			}
		}
	//}
//}