#include <EFShiftProcessor.h>

Public Member Functions |
|
|
Constructors and Destructors.
|
|
| EFShiftProcessor () | |
| Default constructor. |
|
| EFShiftProcessor (const EFShiftProcessor &processor) | |
| Copy constructor. |
|
| virtual | ~EFShiftProcessor () |
| Destructor. |
|
|
Accessors.
|
|
| virtual void | init () |
| Initialization method. |
|
|
Processor specific functions.
|
|
| virtual bool | start () |
| Processor
start method. |
|
| virtual Processor::Result | operator() (Composite &composite) |
| operator (). |
|
| virtual bool | finish () |
| Finish method. |
|
Static Public Attributes |
|
|
Enums and Constants
|
|
| static const char * | PROPERTY__EF_SHIFT |
| A symbolic name for the electric
field contribution to the chemical shift. |
|
Protected Attributes |
|
| std::list< Bond * > | bond_list_ |
| std::list< Atom * > | effector_list_ |
| std::vector< Expression > | first_atom_expressions_ |
| std::vector< Expression > | second_atom_expressions_ |
| std::vector< float > | epsilon1_ |
| std::vector< float > | epsilon2_ |
| StringHashMap< float > | charge_map_ |
| bool | exclude_residue_field_ |
| float | cut_off2_ |
| virtual bool BALL::EFShiftProcessor::finish | ( | ) | [virtual] |
Finish method.
This method performs the chemical shift calculation. It iterates over all bonds stored in bond_list_ . If the two bond atoms match a pair of expressions from first_atom_expressions_ and second_atom_expressions_ , the electric field vector is calculated at the bond position using Coulomb's law and the charges and positions of the atoms in the effector_list_ . The chemical shift induced by the electric field effect is calculated as ${EF} = * E_z + * E^2 $ where constants $$ and $$ are read from the parameter file (section ElectricFieldEffect). The chemical shift is stored in the {first} atom using the named property ShiftModule::PROPERTY__SHIFT and in the named property PROPERTY__EF_SHIFT .
parameters_ ==
0Reimplemented from BALL::ShiftModule.
| virtual void BALL::EFShiftProcessor::init | ( | ) | [virtual] |
Initialization method.
This method reads the parameter section ElectricFieldEffect and parses its contents. This section contains the definition of two expressions that define a bond (the first expression matches the atom whose shift is to be calculated, the second describes its bond partner). For each of these bonds, two parameters are given, $$ and $$.
Reimplemented from BALL::ShiftModule.
| virtual Processor::Result BALL::EFShiftProcessor::operator() | ( | Composite & | composite | ) | [virtual] |
operator ().
This method sets the charge for all atoms it encounters (using assign_charge_processor_ ). Charged atoms are stored in the atom list effector_list_ . All bonds are stored in bond_list_ .
| composite | an arbitrary composite. All non-atom objects are ignored. |
Reimplemented from BALL::UnaryProcessor< Composite >.
| virtual bool BALL::EFShiftProcessor::start | ( | ) | [virtual] |
Processor start method.
This method clears the bond and effector list. It fails if no parameters were assigned.
parameters_ ==
0Reimplemented from BALL::ShiftModule.
const char*
BALL::EFShiftProcessor::PROPERTY__EF_SHIFT
[static] |
A symbolic name for the electric field contribution to the chemical shift.
1.5.8