BALL::EmpiricalHSShiftProcessor::ShiftHyperSurface_ Class Reference

#include <BALL/NMR/empiricalHSShiftProcessor.h>

List of all members.

Public Types

typedef std::map< String,
std::map< String, float > > 
tabletype

Enums and Constants



enum  HYPERSURFACE__TYPE {
  REAL__REAL, REAL__DISCRETE, DISCRETE__REAL, DISCRETE__DISCRETE,
  CHI__REAL, REAL__CHI, CHI__DISCRETE, DISCRETE__CHI,
  CHI__CHI, SINGLE__REAL, SINGLE__DISCRETE, SINGLE__CHI
}
int type_
String first_property_
String second_property_
CubicSpline2D s2d_
std::map< String, CubicSpline1Ds1d_
std::map< String, std::map
< String, float > > 
table_
std::map< String, floatrow_averages_
std::map< String, floatcol_averages_
float row_spacing_
float col_spacing_
bool invalid_
float average_
int verbosity_
vector< Stringy_axis_values_
vector< vector< String > > x_axis_values_
vector< vector< float > > sample_values_
 ShiftHyperSurface_ (int verbosity=EmpiricalHSShiftProcessor::VERBOSITY_LEVEL_CRITICAL)
 ShiftHyperSurface_ (String filename, String atomtype, String firstproperty, String secondproperty, int verbosity=EmpiricalHSShiftProcessor::VERBOSITY_LEVEL_CRITICAL) throw (Exception::FileNotFound)
virtual ~ShiftHyperSurface_ ()
float operator() (PropertiesForShift_ &properties)
bool isvalid ()
float getTotalAverage ()
float getTableAverage_ ()
float getTableRowAverage_ (const std::map< String, float > &row)
float getTableColumnAverage_ (const String &name)
bool tableHasColumn_ (const String &name)
void parseDataFile_ (BALL::File &file, String filename)
void convertToReal_ (const vector< String > &input, vector< float > &output)
void setType_ (String firstproperty, String secondproperty)

Detailed Description

Definition at line 282 of file empiricalHSShiftProcessor.h.


Member Typedef Documentation

Definition at line 285 of file empiricalHSShiftProcessor.h.


Member Enumeration Documentation

Enumerator:
REAL__REAL 
REAL__DISCRETE 
DISCRETE__REAL 
DISCRETE__DISCRETE 
CHI__REAL 
REAL__CHI 
CHI__DISCRETE 
DISCRETE__CHI 
CHI__CHI 
SINGLE__REAL 
SINGLE__DISCRETE 
SINGLE__CHI 

Definition at line 291 of file empiricalHSShiftProcessor.h.


Constructor & Destructor Documentation

BALL::EmpiricalHSShiftProcessor::ShiftHyperSurface_::ShiftHyperSurface_ ( int  verbosity = EmpiricalHSShiftProcessor::VERBOSITY_LEVEL_CRITICAL  ) 
BALL::EmpiricalHSShiftProcessor::ShiftHyperSurface_::ShiftHyperSurface_ ( String  filename,
String  atomtype,
String  firstproperty,
String  secondproperty,
int  verbosity = EmpiricalHSShiftProcessor::VERBOSITY_LEVEL_CRITICAL 
) throw (Exception::FileNotFound)
virtual BALL::EmpiricalHSShiftProcessor::ShiftHyperSurface_::~ShiftHyperSurface_ (  )  [virtual]

Destructor.


Member Function Documentation

void BALL::EmpiricalHSShiftProcessor::ShiftHyperSurface_::convertToReal_ ( const vector< String > &  input,
vector< float > &  output 
) [private]
float BALL::EmpiricalHSShiftProcessor::ShiftHyperSurface_::getTableAverage_ (  )  [private]
float BALL::EmpiricalHSShiftProcessor::ShiftHyperSurface_::getTableColumnAverage_ ( const String name  )  [private]
float BALL::EmpiricalHSShiftProcessor::ShiftHyperSurface_::getTableRowAverage_ ( const std::map< String, float > &  row  )  [private]
float BALL::EmpiricalHSShiftProcessor::ShiftHyperSurface_::getTotalAverage (  )  [inline]

Definition at line 360 of file empiricalHSShiftProcessor.h.

bool BALL::EmpiricalHSShiftProcessor::ShiftHyperSurface_::isvalid (  )  [inline]

Method to check if the hypersurface is valid.

Returns:
bool, false if hypersurface is invalid.

Definition at line 357 of file empiricalHSShiftProcessor.h.

float BALL::EmpiricalHSShiftProcessor::ShiftHyperSurface_::operator() ( PropertiesForShift_ properties  ) 

Method to evaluate the empirical hypersurface given the properties of an atom. In case of a SINGLE__?? property type, the property type string works as first accessor. If only one factor is out of bounds {/tt FLOAT_VALUE_NA} or {/tt STRING_VALUE_NA}, we return the all-values average. (We tried to simulate the SHIFTX behaviour)

If one of the property values is set to { /tt FLOAT_VALUE_IGNORE}, zero is returned.

void BALL::EmpiricalHSShiftProcessor::ShiftHyperSurface_::parseDataFile_ ( BALL::File file,
String  filename 
) [private]

Method to read the datafile of a shift hypersurface.

We assume the datafile to have the following structure:

atomtype factorx factory total_average (row_average_1;row_average_2;...;row_average_n|N/A) (col_averages_1;col_averages_2;...;col_averages_n|N/A) (row_spacing|N/A) (col_spacing|N/A) (y_axis_1;...;y_axis_n|N/A) x_axis_11;...;x_axis_1m value_11;...;value_1m ... x_axis_n1;...;x_axis_nm value_n1;...;value_nm

where ( | ) denotes alternatives and "N/A" an empty entry.

void BALL::EmpiricalHSShiftProcessor::ShiftHyperSurface_::setType_ ( String  firstproperty,
String  secondproperty 
) [private]

Method to set the type of the hypersurface according to two input property types (see { HYPERSURFACE__TYPE()} )

bool BALL::EmpiricalHSShiftProcessor::ShiftHyperSurface_::tableHasColumn_ ( const String name  )  [private]

Method to check if the hypersurface's look--up table has a column named "name".

Returns:
bool, false if the look-up table has no column "name".

Member Data Documentation

Definition at line 435 of file empiricalHSShiftProcessor.h.

Definition at line 424 of file empiricalHSShiftProcessor.h.

Definition at line 428 of file empiricalHSShiftProcessor.h.

Definition at line 412 of file empiricalHSShiftProcessor.h.

Definition at line 431 of file empiricalHSShiftProcessor.h.

Definition at line 423 of file empiricalHSShiftProcessor.h.

Definition at line 427 of file empiricalHSShiftProcessor.h.

Definition at line 417 of file empiricalHSShiftProcessor.h.

Definition at line 416 of file empiricalHSShiftProcessor.h.

Definition at line 443 of file empiricalHSShiftProcessor.h.

Definition at line 413 of file empiricalHSShiftProcessor.h.

Definition at line 419 of file empiricalHSShiftProcessor.h.

Definition at line 409 of file empiricalHSShiftProcessor.h.

Definition at line 438 of file empiricalHSShiftProcessor.h.

Definition at line 442 of file empiricalHSShiftProcessor.h.

Definition at line 441 of file empiricalHSShiftProcessor.h.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines
Generated by  doxygen 1.6.3