#include <Eigs.H>
Public Member Functions | |
| S_Engine () | |
| Construct an S_Engine object, but leave it invalid. | |
| ~S_Engine () | |
| Deallocate gsl matrix and workspace. | |
| S_Engine (const std::vector< float > &s) | |
| Construct an S_Engine with an initial s value. | |
| bool | setS (const std::vector< float > &s) |
| Insert a set of s values and compute the eigenvalues and vectors Side Effect: Sets valid to true. | |
| bool | getXYZ (const EigsEnum which, std::vector< float > &xyz) const |
| Get the cartisian coordinate for a particular eigen vector. | |
| bool | isValid () const |
| Do we have a working s value that can be queried? | |
Private Member Functions | |
| bool | init () |
| Used by constructors to allocate up GSL variables. | |
Private Attributes | |
| bool | valid |
| True if an s value has been set. | |
| std::vector< float > | s |
| see s_eigs. Store 6 values. Ignores the 7th value (sigma) | |
| gsl_eigen_symmv_workspace * | w |
| GNU Scientific Library workspace for decomposition. | |
| gsl_matrix * | A |
| Matrix that we will get eigen parameters from. | |
| gsl_vector * | eigenval |
| unordered eigen values | |
| gsl_matrix * | eigenvec |
| results stored here ordered by eigen val | |
| float | eigs [9] |
| Lisa Tauxe style eigen parameters. See s_eigs program. | |
Designed to be a reusable container, so you do not have to pay for the cost of allocating and freeing GNU Scientific Library working variables over and over. This class does a little bit more work than necessary in that it calls GetEigs no matter what, but you probably want that anyway, right?
|
|
Construct an S_Engine object, but leave it invalid. You need to call setS() before pulling out data with getXYZ() or other get methods. You should recycle one S_Engine rather than create/destroy a new object for each s array that you want to process. Each object has to manage 4 gsl objects. |
|
|
Deallocate gsl matrix and workspace.
|
|
|
Construct an S_Engine with an initial s value.
|
|
||||||||||||
|
Get the cartisian coordinate for a particular eigen vector.
|
|
|
Used by constructors to allocate up GSL variables.
|
|
|
Do we have a working s value that can be queried?
|
|
|
Insert a set of s values and compute the eigenvalues and vectors Side Effect: Sets valid to true.
|
|
|
Matrix that we will get eigen parameters from.
|
|
|
unordered eigen values
|
|
|
results stored here ordered by eigen val
|
|
|
Lisa Tauxe style eigen parameters. See s_eigs program. 3 tau_i, dec_i inc_i triples of eigenval and eigenvectors In groups of three with min in [0..2], int in [3..5], and max in [6..8] |
|
|
see s_eigs. Store 6 values. Ignores the 7th value (sigma)
|
|
|
True if an s value has been set.
|
|
|
GNU Scientific Library workspace for decomposition.
|
1.4.6