accelerInt
v0.1
|
Computes various matrix exponential functions on the Krylov Hessenberg matricies. More...
#include <stdlib.h>
#include "header.cuh"
#include "solver_options.cuh"
#include "solver_props.cuh"
#include "complexInverse.cuh"
Go to the source code of this file.
Functions | |
__device__ int | phi2Ac_variable (const int m, const double *__restrict__ A, const double c, double *__restrict__ phiA, const solver_memory *__restrict__ solver, cuDoubleComplex *__restrict__ work) |
Compute the 2nd order Phi (exponential) matrix function. More... | |
__device__ int | phiAc_variable (const int m, const double *__restrict__ A, const double c, double *__restrict__ phiA, const solver_memory *__restrict__ solver, cuDoubleComplex *__restrict__ work) |
Compute the first order Phi (exponential) matrix function. More... | |
__device__ int | expAc_variable (const int m, const double *__restrict__ A, const double c, double *__restrict__ phiA, const solver_memory *__restrict__ solver, cuDoubleComplex *__restrict__ work) |
Compute the zeroth order Phi (exponential) matrix function. This is the regular matrix exponential. More... | |
Variables | |
__device__ __constant__ cuDoubleComplex | poles [N_RA] |
__device__ __constant__ cuDoubleComplex | res [N_RA] |
Computes various matrix exponential functions on the Krylov Hessenberg matricies.
Definition in file phiAHessenberg.cu.
__device__ int expAc_variable | ( | const int | m, |
const double *__restrict__ | A, | ||
const double | c, | ||
double *__restrict__ | phiA, | ||
const solver_memory *__restrict__ | solver, | ||
cuDoubleComplex *__restrict__ | work | ||
) |
Compute the zeroth order Phi (exponential) matrix function. This is the regular matrix exponential.
Computes \(\phi_0(c*A)\)
[in] | m | The Hessenberg matrix size (mxm) |
[in] | A | The input Hessenberg matrix |
[in] | c | The scaling factor |
[out] | phiA | The resulting exponential matrix |
[in] | solver | The solver_memory object |
[in] | work | A complex work array |
Definition at line 148 of file phiAHessenberg.cu.
__device__ int phi2Ac_variable | ( | const int | m, |
const double *__restrict__ | A, | ||
const double | c, | ||
double *__restrict__ | phiA, | ||
const solver_memory *__restrict__ | solver, | ||
cuDoubleComplex *__restrict__ | work | ||
) |
Compute the 2nd order Phi (exponential) matrix function.
Computes \(\phi_2(c*A)\)
[in] | m | The Hessenberg matrix size (mxm) |
[in] | A | The input Hessenberg matrix |
[in] | c | The scaling factor |
[out] | phiA | The resulting exponential matrix |
[in] | solver | The solver_memory object |
[in] | work | A complex work array |
Definition at line 27 of file phiAHessenberg.cu.
__device__ int phiAc_variable | ( | const int | m, |
const double *__restrict__ | A, | ||
const double | c, | ||
double *__restrict__ | phiA, | ||
const solver_memory *__restrict__ | solver, | ||
cuDoubleComplex *__restrict__ | work | ||
) |
Compute the first order Phi (exponential) matrix function.
Computes \(\phi_1(c*A)\)
[in] | m | The Hessenberg matrix size (mxm) |
[in] | A | The input Hessenberg matrix |
[in] | c | The scaling factor |
[out] | phiA | The resulting exponential matrix |
[in] | solver | The solver_memory object |
[in] | work | A complex work array |
Definition at line 87 of file phiAHessenberg.cu.
__device__ __constant__ cuDoubleComplex poles[N_RA] |
Definition at line 17 of file rational_approximant.c.
__device__ __constant__ cuDoubleComplex res[N_RA] |
Definition at line 18 of file rational_approximant.c.