#include <BALL/NMR/haighMallionShiftProcessor.h>
Shift assignment processor implementing Haigh Mallion theory.
Definition at line 30 of file haighMallionShiftProcessor.h.
BALL::HaighMallionShiftProcessor::HaighMallionShiftProcessor | ( | ) |
Default constructor.
BALL::HaighMallionShiftProcessor::HaighMallionShiftProcessor | ( | const HaighMallionShiftProcessor & | processor | ) |
Default copy constructor.
virtual BALL::HaighMallionShiftProcessor::~HaighMallionShiftProcessor | ( | ) | [virtual] |
Destructor.
virtual bool BALL::HaighMallionShiftProcessor::finish | ( | ) | [virtual] |
Finish method. If no targets or effectors of the ring current effect were found during the application of the { operator()}, no ring current shift effects are computed. Otherwise for all target effector pairs (e t) the current ring shift contribution is computed as
shift = intensity_factors_[effector_types_[e]] * target_nucleus_factor[t] * geometrical_factor;
and added to the current shift of the target atom t stored in the named property PROPERTY__RING_CURRENT_SHIFT and the named property ShiftModule::PROPERTY__SHIFT .
Reimplemented from BALL::ShiftModule.
virtual void BALL::HaighMallionShiftProcessor::init | ( | ) | [virtual] |
Initialization method. This method reads the parameter section "HaighMallionRingCurrent" and "RingCurrentTargets" and parses its content. The effector residue names are stored in effector_names_, the corresponding intensity factors are stored in intensity_factors_, and the effectors ring atoms are stored in ring_atoms_. The ring current target atom names and factors are stored in target_names_ and target_nucleus_factors_. Furthermore the flags H_influenced_by_all_effectors_ (default false) HA_influenced_by_all_effectors_ (default false) use_cut_off_ (default false) cut_off_ (default 0.) project_target_to_ring_plane_ (default false) all_hydrogens_are_targets_ (default false) default_hydrogen_target_nucleus_factor_ (default 5.13) negative_ringcurrent_factor_ (default 1.1) are read.
Reimplemented from BALL::ShiftModule.
virtual Processor::Result BALL::HaighMallionShiftProcessor::operator() | ( | Composite & | atom | ) | [virtual] |
Application method. Works as a collector: It stores the systems aromatic rings in a vector of vectors effectors_ and each target (H, N or C) in a vector called targets_.
Reimplemented from BALL::UnaryProcessor< Composite >.
void BALL::HaighMallionShiftProcessor::postprocessing_ | ( | ) | [private] |
void BALL::HaighMallionShiftProcessor::printEffectors_ | ( | ) | [private] |
void BALL::HaighMallionShiftProcessor::printParameters_ | ( | ) | [private] |
void BALL::HaighMallionShiftProcessor::printTargets_ | ( | ) | [private] |
virtual bool BALL::HaighMallionShiftProcessor::start | ( | ) | [virtual] |
Processor start method. This method clears the targets and effectors lists. It fails if no parameters were assigned.
parameters_ == 0
Reimplemented from BALL::ShiftModule.
Definition at line 167 of file haighMallionShiftProcessor.h.
A flag indicating whether CA shifts should be corrected by the HA shift values.
Default is false.
Definition at line 173 of file haighMallionShiftProcessor.h.
float BALL::HaighMallionShiftProcessor::cut_off2_ [protected] |
Definition at line 160 of file haighMallionShiftProcessor.h.
Definition at line 189 of file haighMallionShiftProcessor.h.
std::vector<BALL::String> BALL::HaighMallionShiftProcessor::effector_names_ [protected] |
Definition at line 206 of file haighMallionShiftProcessor.h.
std::vector<String> BALL::HaighMallionShiftProcessor::effector_types_ [protected] |
Definition at line 202 of file haighMallionShiftProcessor.h.
std::vector< std::vector<Atom*> > BALL::HaighMallionShiftProcessor::effectors_ [protected] |
Definition at line 197 of file haighMallionShiftProcessor.h.
Definition at line 137 of file haighMallionShiftProcessor.h.
Definition at line 145 of file haighMallionShiftProcessor.h.
Definition at line 210 of file haighMallionShiftProcessor.h.
Definition at line 193 of file haighMallionShiftProcessor.h.
Definition at line 181 of file haighMallionShiftProcessor.h.
const char* BALL::HaighMallionShiftProcessor::PROPERTY__RING_CURRENT_SHIFT [static] |
A symbolic name for the ring current contribution to the chemical shift.
Definition at line 44 of file haighMallionShiftProcessor.h.
std::vector< std::vector<BALL::String> > BALL::HaighMallionShiftProcessor::ring_atoms_ [protected] |
Definition at line 214 of file haighMallionShiftProcessor.h.
std::vector< BALL::String> BALL::HaighMallionShiftProcessor::target_names_ [protected] |
Definition at line 218 of file haighMallionShiftProcessor.h.
Definition at line 185 of file haighMallionShiftProcessor.h.
std::vector<Atom* > BALL::HaighMallionShiftProcessor::targets_ [protected] |
Definition at line 222 of file haighMallionShiftProcessor.h.
bool BALL::HaighMallionShiftProcessor::use_cut_off_ [protected] |
Definition at line 152 of file haighMallionShiftProcessor.h.