LOOS  v2.3.2
ENM::ElasticNetworkModel Class Referenceabstract

Interface for all ENMs. More...

#include <enm-lib.hpp>

Inheritance diagram for ENM::ElasticNetworkModel:
Collaboration diagram for ENM::ElasticNetworkModel:

Public Member Functions

 ElasticNetworkModel (SuperBlock *blocker)
 Base constructor for all ENMs. More...
void setSuperBlockFunction (SuperBlock *p)
virtual void solve ()=0
 Computes the hessian and solves for the eigenpairs.
void prefix (const std::string &s)
 Filename prefix when we have to write something out.
std::string prefix () const
void meta (const std::string &s)
 Any metadata that gets added to matrices written out.
std::string meta () const
void debugging (const bool b)
 Debugging flag (generally means write out all intermediate matrices)
bool debugging () const
void verbosity (const int i)
 How wordy are we?
int verbosity () const
SpringFunction::Params setParams (const SpringFunction::Params &v)
 Forwards to contained superblock.
bool validParams () const
 Forwards to contained superblock.
uint paramSize () const
 Forwards to contained superblock.
const loos::DoubleMatrixeigenvectors () const
 Accessors for eigenpairs and hessian.
const loos::DoubleMatrixeigenvalues () const
 Accessors for eigenpairs and hessian.
const loos::DoubleMatrixhessian () const
 Accessors for eigenpairs and hessian.

Protected Member Functions

void buildHessian ()
 Construct the hessian using the contained SuperBlock. More...

Protected Attributes

std::string name_
std::string prefix_
std::string meta_
bool debugging_
int verbosity_
loos::DoubleMatrix eigenvecs_
loos::DoubleMatrix eigenvals_
loos::DoubleMatrix hessian_

Detailed Description

Interface for all ENMs.

Definition at line 67 of file enm-lib.hpp.

Constructor & Destructor Documentation

ENM::ElasticNetworkModel::ElasticNetworkModel ( SuperBlock blocker)

Base constructor for all ENMs.

The blocker arg determines how the hessian is actually constructed, i.e. what nodes are used and how the spring function between them is calculated.

Definition at line 75 of file enm-lib.hpp.

Member Function Documentation

void ENM::ElasticNetworkModel::buildHessian ( )

Construct the hessian using the contained SuperBlock.

It is not expected that subclasses will want to override this... Uses the contained SuperBlock to build a hessian

Definition at line 84 of file enm-lib.cpp.

The documentation for this class was generated from the following files: