ls1-MarDyn
ls1-MarDyn molecular dynamics code
Public Member Functions | Friends | List of all members
bhfmm::SolidHarmonicsStorage Class Reference

#include <SolidHarmonicsStorage.h>

Public Member Functions

 SolidHarmonicsStorage (int numRows=0, bool initializeToZero=true)
 
 SolidHarmonicsStorage (const SolidHarmonicsStorage &s)
 
 ~SolidHarmonicsStorage ()
 
SolidHarmonicsStorageoperator= (SolidHarmonicsStorage s)
 
SolidHarmonicsStorageoperator+= (const SolidHarmonicsStorage &s)
 
SolidHarmonicsStorageoperator*= (double scalar)
 
int getNumRows () const
 
int getTotalNumValues () const
 
void setToZero ()
 
int index (int l, int m) const
 
double & getValue (int l, int m)
 
double & getValueSequential (int i)
 
double getValueConst (int l, int m) const
 
double getValueConstSequential (int i) const
 

Friends

void swap (SolidHarmonicsStorage &s1, SolidHarmonicsStorage &s2)
 

Detailed Description

Class to store the solid-harmonics expansions in the form of a triangular matrix. Provides, storage, means to access it and trivial (entrywise) math operations.

Constructor & Destructor Documentation

◆ SolidHarmonicsStorage() [1/2]

bhfmm::SolidHarmonicsStorage::SolidHarmonicsStorage ( int  numRows = 0,
bool  initializeToZero = true 
)

constructor

Parameters
numRows- the number of rows that the (lower) triangular matrix should have
initializeToZero- if true, values are initialized to zero, otherwise left uninitialized

◆ SolidHarmonicsStorage() [2/2]

bhfmm::SolidHarmonicsStorage::SolidHarmonicsStorage ( const SolidHarmonicsStorage s)

copy constructor

Parameters
s

◆ ~SolidHarmonicsStorage()

bhfmm::SolidHarmonicsStorage::~SolidHarmonicsStorage ( )

Destructor - frees allocated memory

Member Function Documentation

◆ getNumRows()

int bhfmm::SolidHarmonicsStorage::getNumRows ( ) const
inline
Returns
the number of rows

◆ getTotalNumValues()

int bhfmm::SolidHarmonicsStorage::getTotalNumValues ( ) const
Returns
the total number of entries

◆ getValue()

double& bhfmm::SolidHarmonicsStorage::getValue ( int  l,
int  m 
)
inline

access to value in matrix form

Parameters
lrow
mcolumn
Returns
entry at (l,m) by reference (for modification)

◆ getValueConst()

double bhfmm::SolidHarmonicsStorage::getValueConst ( int  l,
int  m 
) const
inline

const-access to value in matrix form

Parameters
lrow
mcolumn
Returns
copy of entry at (l,m) (for read-only access)

◆ getValueConstSequential()

double bhfmm::SolidHarmonicsStorage::getValueConstSequential ( int  i) const
inline

const-access to value sequentially

Parameters
ientry
Returns
copy of entry at (i) (for read-only access)

◆ getValueSequential()

double& bhfmm::SolidHarmonicsStorage::getValueSequential ( int  i)
inline

access to value sequentially

Parameters
iindex
Returns
entry at (i) by reference (for modification)

◆ index()

int bhfmm::SolidHarmonicsStorage::index ( int  l,
int  m 
) const
inline

calculate the sequential index, corresponding to entry (l,m)

Parameters
lrow
mcolumn
Returns
corresponding sequential index

◆ operator*=()

SolidHarmonicsStorage & bhfmm::SolidHarmonicsStorage::operator*= ( double  scalar)

scalar multiplication

Parameters
scalar
Returns

◆ operator+=()

SolidHarmonicsStorage & bhfmm::SolidHarmonicsStorage::operator+= ( const SolidHarmonicsStorage s)

entrywise addition

Parameters
s
Returns

◆ operator=()

SolidHarmonicsStorage & bhfmm::SolidHarmonicsStorage::operator= ( SolidHarmonicsStorage  s)

assignment operator: values are copied entrywise

Parameters
s
Returns

◆ setToZero()

void bhfmm::SolidHarmonicsStorage::setToZero ( )

set all entries to zero

Friends And Related Function Documentation

◆ swap

void swap ( SolidHarmonicsStorage s1,
SolidHarmonicsStorage s2 
)
friend

swap function (for the copy-and-swap idiom)

Parameters
s1
s2

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