accelerInt
v0.1
|
Implementation of the arnoldi iteration methods. More...
#include <string.h>
#include "header.h"
#include "phiAHessenberg.h"
#include "exponential_linear_algebra.h"
Go to the source code of this file.
Functions | |
static int | arnoldi (const double scale, const int p, const double h, const double *A, const double *v, const double *sc, double *beta, double *Vm, double *Hm, double *phiHm) |
Runs the arnoldi iteration to calculate the Krylov projection. More... | |
Variables | |
static int | index_list [23] = {1, 2, 3, 4, 5, 6, 7, 9, 11, 14, 17, 21, 27, 34, 42, 53, 67, 84, 106, 133, 167, 211, 265} |
The list of indicies to check the Krylov projection error at. More... | |
Implementation of the arnoldi iteration methods.
Note: turn on EXACT_KRYLOV krylov definition to use the use the "happy breakdown" criteria in determining end of krylov iteration
Definition in file arnoldi.h.
|
inlinestatic |
Runs the arnoldi iteration to calculate the Krylov projection.
[in] | scale | the value to scale the timestep by |
[in] | p | the order of the maximum phi function needed |
[in] | h | the timestep |
[in] | A | the jacobian matrix |
[in] | v | the vector to use for the krylov subspace |
[in] | sc | the error scaling vector |
[out] | beta | the norm of the v vector |
[out] | Vm | the arnoldi basis matrix |
[out] | Hm | the constructed Hessenberg matrix, used in actual exponentials |
[out] | phiHm | the exponential matrix computed from h * scale * Hm |