LOOS  v2.3.2
ENM::SuperBlock Class Reference

This class creates superblocks in a hessian. More...

#include <hessian.hpp>

Inheritance diagram for ENM::SuperBlock:
Collaboration diagram for ENM::SuperBlock:

Public Member Functions

 SuperBlock (SpringFunction *func, const loos::AtomicGroup &nodelist)
 Constructor taking a spring function and a list of nodes. More...
 
 SuperBlock (const SuperBlock &b)
 
uint size () const
 
virtual SpringFunction::Params setParams (const SpringFunction::Params &v)
 Forwards to the contained SpringFunction...
 
virtual bool validParams () const
 Forwards to the contained SpringFunction...
 
virtual uint paramSize () const
 Forwards to the contained SpringFunction...
 
virtual loos::DoubleMatrix block (const uint j, const uint i)
 Returns a 3x3 matrix representing a superblock in the Hessian for the two nodes.
 

Protected Member Functions

loos::DoubleMatrix blockImpl (const uint j, const uint i, SpringFunction *fptr)
 Implementation of the superblock calculation. More...
 

Protected Attributes

SpringFunctionsprings
 
loos::AtomicGroup nodes
 

Detailed Description

This class creates superblocks in a hessian.

This is the base class for defining elements (superblocks) in the Hessian. Note that this class does NOT use NVI, so derived classes should verify that they have valid args for the block() function.

Definition at line 52 of file hessian.hpp.

Constructor & Destructor Documentation

ENM::SuperBlock::SuperBlock ( SpringFunction func,
const loos::AtomicGroup nodelist 
)
inline

Constructor taking a spring function and a list of nodes.

Arguments:

  • func SpringFunction to use to determine spring constants between nodes
  • nodelist List of nodes in the model

For example, to compute a hessian using the HCA method,

SpringFunction *spring = new HCA;
SuperBlock *blocker = new SuperBlock(spring, model);

Definition at line 68 of file hessian.hpp.

Member Function Documentation

loos::DoubleMatrix ENM::SuperBlock::blockImpl ( const uint  j,
const uint  i,
SpringFunction fptr 
)
inlineprotected

Implementation of the superblock calculation.

This is the actual implementation of the SuperBlock calculation. In most cases, derived clases will probably want to use this but with alternative spring functions...

Definition at line 101 of file hessian.hpp.


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