LOOS 4.1.0
The Lightweight Object Oriented Structural analysis library/toolkit
|
Vibrational subsystem analysis ENM. More...
#include <vsa-lib.hpp>
Public Member Functions | |
VSA (SuperBlock *blocker, const uint subn) | |
Constructor for VSA without masses. | |
VSA (SuperBlock *blocker, const uint subn, const loos::DoubleMatrix &M) | |
Constructor for VSA with masses. | |
void | solve () |
Computes the hessian and solves for the eigenpairs. | |
void | setMasses (const loos::DoubleMatrix &M) |
Sets the mass matrix and determines what kind of VSA calc to use. | |
void | free () |
Free up internal storage... | |
Public Member Functions inherited from ENM::ElasticNetworkModel | |
ElasticNetworkModel (SuperBlock *blocker) | |
Base constructor for all ENMs. | |
void | setSuperBlockFunction (SuperBlock *p) |
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::DoubleMatrix & | eigenvectors () const |
Accessors for eigenpairs and hessian. | |
const loos::DoubleMatrix & | eigenvalues () const |
Accessors for eigenpairs and hessian. | |
const loos::DoubleMatrix & | hessian () const |
Accessors for eigenpairs and hessian. | |
Additional Inherited Members | |
Protected Member Functions inherited from ENM::ElasticNetworkModel | |
void | buildHessian () |
Construct the hessian using the contained SuperBlock. | |
Protected Attributes inherited from ENM::ElasticNetworkModel | |
SuperBlock * | blocker_ |
std::string | name_ |
std::string | prefix_ |
std::string | meta_ |
bool | debugging_ |
int | verbosity_ |
loos::DoubleMatrix | eigenvecs_ |
loos::DoubleMatrix | eigenvals_ |
loos::DoubleMatrix | hessian_ |
Vibrational subsystem analysis ENM.
References:
The VSA class expects that the list of nodes contained in the passed SuperBlock instance represents the combined system, i.e. subsystem and environment. The first subn nodes are the subsystem.
|
inline |
Constructor for VSA without masses.
Arguments:
blocker
Determines how the Hessian is built subn
The number of nodes in the subsystem
|
inline |
Constructor for VSA with masses.
Arguments:
|
inline |
Sets the mass matrix and determines what kind of VSA calc to use.
Setting the mass matrix to an initialized matrix implies that VSA will use the mass-VSA version. On the other hand, setting the matrix to a default, uninitialized matrix will switch to the mass-less VSA:
|
virtual |
Computes the hessian and solves for the eigenpairs.
Implements ENM::ElasticNetworkModel.