eig_jacobi.cpp File Reference

#include <stdlib.h>
#include <stdio.h>
#include <math.h>
#include "eig_jacobi.h"

Include dependency graph for eig_jacobi.cpp:

Include dependency graph

Go to the source code of this file.

Namespaces

namespace  hugin_utils

Functions

void sortd (int length, double *a, int *ind)
void eig_jacobi (int n, double a[3][3], double v[3][3], double *d, int *ind, int *maxsweep, int *maxannil, double *epsilon)
 Implements jacobi eigenvalue/vector algorithm on a symmetric matrix stored as a 2 dimensional matrix a[n][n] and computes the eigenvectors in another globally allocated matrix v[n][n].


Detailed Description

Author:
mike_ess@yahoo.com
Function comes from http://mywebpages.comcast.net/mike_ess/

$Id$

Definition in file eig_jacobi.cpp.


Function Documentation

void hugin_utils::eig_jacobi int  n,
double  a[3][3],
double  v[3][3],
double *  d,
int *  ind,
int *  maxsweep,
int *  maxannil,
double *  epsilon
 

Implements jacobi eigenvalue/vector algorithm on a symmetric matrix stored as a 2 dimensional matrix a[n][n] and computes the eigenvectors in another globally allocated matrix v[n][n].

intput: n - size of matrix problem outputs: v - eigenvector matrix d[MAX] - a vector of unsorted eigenvalues ind[MAX] - a vector of indicies sorting d[] into descending order maxanil - number of rotations applied inputs/outputs a - input matrix (the input is changed) maxsweep - on input max number of sweeps

  • on output actual number of sweeps epsilon - on input tolerance to consider offdiagonal elements as zero
  • on output sum of offdiagonal elements

Definition at line 68 of file eig_jacobi.cpp.

References hugin_utils::sortd().

Referenced by HuginBase::StraightenPanorama::calcStraighteningRotation().

void sortd int  length,
double *  a,
int *  ind
 

Definition at line 24 of file eig_jacobi.cpp.

Referenced by hugin_utils::eig_jacobi().


Generated on Sun Sep 21 01:25:46 2014 for Hugintrunk by  doxygen 1.3.9.1