#include <math.h>
#include <time.h>
#include <stdio.h>
#include "toeplitz.h"
#include "cmdline_cpu.h"
Go to the source code of this file.
Functions | |
void | parse_cmdline (int argc, char *argv[], struct gengetopt_args_info_cpu *args_info) |
int | si2w_cpu (unsigned int n, const T *t, T ia, T ib, T sigma, unsigned int nEig, unsigned int max_k, T tolerance, T *l_out, T *v_out) |
int | main (int argc, char *argv[]) |
Variables | |
static struct gengetopt_args_info_cpu | args_info |
Definition in file cpu_eigen.c.
int main | ( | int | argc, | |
char * | argv[] | |||
) |
Definition at line 214 of file cpu_eigen.c.
void parse_cmdline | ( | int | argc, | |
char * | argv[], | |||
struct gengetopt_args_info_cpu * | args_info | |||
) |
Parse command line commands into args_info structure (uses gengetopt).
argc | Number of params in command line. | |
argv | Params of command line. | |
args_info | Structure to be filled with parsed input params. |
Definition at line 49 of file cpu_eigen.c.
int si2w_cpu | ( | unsigned int | n, | |
const T * | t, | |||
T | ia, | |||
T | ib, | |||
T | sigma, | |||
unsigned int | nEig, | |||
unsigned int | max_k, | |||
T | tolerance, | |||
T * | l_out, | |||
T * | v_out | |||
) |
CPU version of the Shift-and-invert 2-way Lanczos algorithm.
n | Size of t vector. | |
t | Symmetric Toeplitz matrix data in vector form. | |
ia | Start of the eigenvalue extraction interval. | |
ib | End of the eigenvalue extraction interval. | |
sigma | Shift value used for eigenvalue extraction. | |
nEig | Number of required eigenvalues in the interval. | |
max_k | Maximum size of Krylov subspace. | |
tolerance | Tolerance threshold used to check eigenvalue convergence. | |
l_out | Vector of size nEig containing extracted eigenvalues. | |
v_out | Matrix of size n nEig (column order)containing extracted eigenvectors. |
Definition at line 84 of file cpu_eigen.c.
struct gengetopt_args_info_cpu args_info [static] |
Definition at line 40 of file cpu_eigen.c.