Loading...
Searching...
No Matches
BALL::EmpiricalHSShiftProcessor Class Reference
Molecular Modeling » Nuclear Magnetic Resonance Spectroscopy » Shift modules

`#include <BALL/NMR/empiricalHSShiftProcessor.h>`

Inheritance diagram for BALL::EmpiricalHSShiftProcessor:

## Classes

struct | Option
| Option names. More...
struct | Default
| Default values for options. More...
class | PropertiesForShift_
class | ShiftHyperSurface_

## Public Member Functions

Constructors and Destructors.
| EmpiricalHSShiftProcessor ()
virtual | ~EmpiricalHSShiftProcessor ()
Accessors.
virtual void | init ()
Processor specific functions.
virtual bool | start ()
virtual Processor::Result | operator() (Composite &composite)
virtual bool | finish ()
Public Member Functions inherited from BALL::ShiftModule
| ShiftModule ()
| ShiftModule (Parameters &parameters, const String &name="")
| ShiftModule (const ShiftModule &module)
virtual | ~ShiftModule ()
virtual void | clear ()
const ShiftModule & | operator= (const ShiftModule &module)
void | setName (const String &name)
const String & | getName () const
void | setParameters (Parameters &parameters)
const Parameters * | getParameters () const
bool | isValid () const
Public Member Functions inherited from BALL::UnaryProcessor< Composite >
| UnaryProcessor ()
| UnaryProcessor (const UnaryProcessor &)
virtual | ~UnaryProcessor ()

## Static Public Attributes

static const int | VERBOSITY_LEVEL_CRITICAL
static const int | VERBOSITY_LEVEL_DEBUG
Enums and Constants.
static const char * | PROPERTY__EHS_SHIFT
Static Public Attributes inherited from BALL::ShiftModule
static const char * | PROPERTY__SHIFT
static const char * | PROPERTY__EXPERIMENTAL__SHIFT

## Public Attributes

Options | options
| options
std::vector< PropertiesForShift_ > | targets_
vector< String > | target_names_
vector< std::set< String > > | target_property_names_
vector< std::map< std::pair< String, String >, String > > | property_files_
std::map< String, vector< std::pair< String, String > > > | property_pairs_
std::map< String, std::map< std::pair< String, String >, EmpiricalHSShiftProcessor::ShiftHyperSurface_ > > | hypersurfaces_
bool | exclude_prolins_
std::map< String, float > | ssbond_correction_
void | setDefaultOptions ()

## Additional Inherited Members

Public Types inherited from BALL::UnaryFunctor< ArgumentType, ResultType >
typedef ResultType | result_type
typedef ArgumentType | argument_type
typedef ArgumentType & | argument_reference
typedef const ArgumentType & | const_argument_reference
typedef ArgumentType * | argument_pointer
typedef const ArgumentType * | const_argument_pointer
String | module_name_
Parameters * | parameters_
bool | valid_

## Detailed Description

Shift assignment processor implementing the empirical hypersurface contribution.

Definition at line 40 of file empiricalHSShiftProcessor.h.

## Constructor & Destructor Documentation

## EmpiricalHSShiftProcessor()

BALL::EmpiricalHSShiftProcessor::EmpiricalHSShiftProcessor | ( |  | ) |

Default constructor.

## ~EmpiricalHSShiftProcessor()

virtual BALL::EmpiricalHSShiftProcessor::~EmpiricalHSShiftProcessor | ( |  | ) |

virtual

Destructor.

## Member Function Documentation

## finish()

virtual bool BALL::EmpiricalHSShiftProcessor::finish | ( |  | ) |

virtual

Finish method. This method performs the chemical shift calculation for all previously collected target atoms (targets_ ) iteratively by evaluating all atom type relevant hypersurfaces (hypersurfaces_ ) iteratively using the precomputed atoms properties (targets_). For disulfid bonds, a special term as specified in section {\tt SSBondCorrection} of the {\tt ShiftX.ini} - file is added. According to the flag {\tt exclude_prolins_} (default false) (pecification in the {\tt ShiftX.ini} - file) prolins my by excluded from shift computations. If the processor found no target atoms or had no hypersurfaces, the processor returns immediately. The empirical hypersurface related chemical shift is stored for each target atom using the named property PROPERTY__EF_SHIFT and added to the named property ShiftModule::PROPERTY__SHIFT .

Returns
  bool, false if invalid_

Reimplemented from BALL::ShiftModule.

## init()

virtual void BALL::EmpiricalHSShiftProcessor::init | ( |  | ) |

virtual

Initialization method. This method reads the parameter section SSBondCorrection, parses, and stores its content in the vector ssbond_correction_ . The parameter section SSBondCorrection defines atom types of residues, which have a disulfid bond, and the corresponding shift contribution. In addition, this method reads the parameter section EmpiricalShiftHyperSurfaces and parses its content. The parameter section EmpiricalShiftHyperSurfaces defines target atom types, associated hypersurface property pairs and the corresponding datafiles. All target atom types are stored in a vector target_names_ . All properties relevant for an atom type are stored in a set. The sets are stored per target atom in the vector target_property_names_ in the same order as in the vector target_names.

The property pairs for each atom type are stored as pairs in vectors. These vectors are themselves stored per atom type in a map property_pairs_ .

The file names of the hypersurface data files of an atom type are stored in a map,
whose key is the pair of properties, to which the hypersurface data belong. The maps themselfes are stored per target atom type in the vector property_files_ the same order as the atom types in the vector target_names.

For each atom type's property combinations a hypersurface is created and stored in the map hypersurfaces_ key {\tt atom type} of maps with key property pair. The hypersurfaces will be evaluated for each target atom in () finish () .

The flag {\tt exclude_prolins}, denoting the consideration of prolins in the shift computations, is read from this section too.

See also
  finish ()

Reimplemented from BALL::ShiftModule.

## operator()()

virtual Processor::Result BALL::EmpiricalHSShiftProcessor::operator() | ( | Composite & | composite | ) |

virtual

operator (). This method collects all target atoms, whose atom type was specified in the section {\tt EmpiricalShiftHyperSurfaces} of the {\tt ShiftX.ini} - file and stored in target_names_ , and computes all target atoms properties, which were likewise specified for each target atom type in the {\tt ShiftX.ini} - file and stored in target_property_names_ . The atoms and their properties are stored in the list targets_ .

Returns
  Processor::CONTINUE

Parameters

  composite | an arbitrary composite. All non-atom objects are ignored.

Reimplemented from BALL::UnaryProcessor< Composite >.

## setDefaultOptions()

void BALL::EmpiricalHSShiftProcessor::setDefaultOptions | ( |  | ) |

reset the options to default values

## start()

virtual bool BALL::EmpiricalHSShiftProcessor::start | ( |  | ) |

virtual

Processor start method. This method clears the targets_ list. It fails if no parameters were assigned.

Returns
  bool, false if parameters_ == 0

Reimplemented from BALL::ShiftModule.

## Member Data Documentation

## exclude_prolins_

bool BALL::EmpiricalHSShiftProcessor::exclude_prolins_

protected

Definition at line 489 of file empiricalHSShiftProcessor.h.

## hypersurfaces_

std::map<String, std::map <std::pair<String, String>,EmpiricalHSShiftProcessor::ShiftHyperSurface_> > BALL::EmpiricalHSShiftProcessor::hypersurfaces_

protected

Definition at line 484 of file empiricalHSShiftProcessor.h.

## options

Options BALL::EmpiricalHSShiftProcessor::options

options

Definition at line 183 of file empiricalHSShiftProcessor.h.

## PROPERTY__EHS_SHIFT

const char* BALL::EmpiricalHSShiftProcessor::PROPERTY__EHS_SHIFT

static

A symbolic name for the empirical hypersurfaces contribution to the chemical shift.

See also
  ShiftModule::PROPERTY__SHIFT

Definition at line 78 of file empiricalHSShiftProcessor.h.

## property_files_

vector< std::map< std::pair<String, String>, String > > BALL::EmpiricalHSShiftProcessor::property_files_

protected

Definition at line 472 of file empiricalHSShiftProcessor.h.

## property_pairs_

std::map< String, vector< std::pair<String, String> > > BALL::EmpiricalHSShiftProcessor::property_pairs_

protected

Definition at line 477 of file empiricalHSShiftProcessor.h.

## ssbond_correction_

std::map<String, float> BALL::EmpiricalHSShiftProcessor::ssbond_correction_

protected

Definition at line 492 of file empiricalHSShiftProcessor.h.

## target_names_

vector<String> BALL::EmpiricalHSShiftProcessor::target_names_

protected

Definition at line 456 of file empiricalHSShiftProcessor.h.

## target_property_names_

vector< std::set<String> > BALL::EmpiricalHSShiftProcessor::target_property_names_

protected

Definition at line 463 of file empiricalHSShiftProcessor.h.

## targets_

std::vector<PropertiesForShift_> BALL::EmpiricalHSShiftProcessor::targets_

protected

Definition at line 451 of file empiricalHSShiftProcessor.h.

## VERBOSITY_LEVEL_CRITICAL

const int BALL::EmpiricalHSShiftProcessor::VERBOSITY_LEVEL_CRITICAL

static

Definition at line 47 of file empiricalHSShiftProcessor.h.

## VERBOSITY_LEVEL_DEBUG

const int BALL::EmpiricalHSShiftProcessor::VERBOSITY_LEVEL_DEBUG

static

Definition at line 48 of file empiricalHSShiftProcessor.h.