StarNEig User's Guide  master branch
A task-based library for solving dense nonsymmetric eigenvalue problems
expert.h File Reference

This file contains configuration structures and functions for the expert interface functions. More...

Go to the source code of this file.

Data Structures

struct  starneig_hessenberg_conf
 Hessenberg reduction configuration structure. More...
 
struct  starneig_schur_conf
 Schur reduction configuration structure. More...
 
struct  starneig_reorder_conf
 Eigenvalue reordering configuration structure. More...
 
struct  starneig_eigenvectors_conf
 Eigenvector computation configuration structure. More...
 

Hessenberg reduction

#define STARNEIG_HESSENBERG_DEFAULT_TILE_SIZE   -1
 Default tile size.
 
#define STARNEIG_HESSENBERG_DEFAULT_PANEL_WIDTH   -1
 Default panel width.
 
void starneig_hessenberg_init_conf (struct starneig_hessenberg_conf *conf)
 Initializes a Hessenberg reduction configuration structure with default parameters. More...
 

Schur reduction

#define STARNEIG_SCHUR_DEFAULT_INTERATION_LIMIT   -1
 Default iteration limit.
 
#define STARNEIG_SCHUR_DEFAULT_TILE_SIZE   -1
 Default tile size.
 
#define STARNEIG_SCHUR_DEFAULT_SMALL_LIMIT   -1
 Default sequential QR limit.
 
#define STARNEIG_SCHUR_DEFAULT_AED_WINDOW_SIZE   -1
 Default AED window size.
 
#define STARNEIG_SCHUR_DEFAULT_AED_NIBBLE   -1
 Default nibble value.
 
#define STARNEIG_SCHUR_DEFAULT_AED_PARALLEL_SOFT_LIMIT   -1
 Default soft sequential AED limit.
 
#define STARNEIG_SCHUR_DEFAULT_AED_PARALLEL_HARD_LIMIT   -1
 Default hard sequential AED limit.
 
#define STARNEIG_SCHUR_DEFAULT_SHIFT_ORIGIN   -1
 Default shift origin.
 
#define STARNEIG_SCHUR_DEFAULT_SHIFT_COUNT   -1
 Default shift count.
 
#define STARNEIG_SCHUR_DEFAULT_WINDOW_SIZE   -1
 Default bulge chasing window size.
 
#define STARNEIG_SCHUR_ROUNDED_WINDOW_SIZE   -2
 Rounded bulge chasing window.
 
#define STARNEIG_SCHUR_DEFAULT_SHIFTS_PER_WINDOW   -1
 Default number of shifts per bulge chasing window.
 
#define STARNEIG_SCHUR_DEFAULT_UPDATE_WIDTH   -1
 Default left-hand side update width.
 
#define STARNEIG_SCHUR_DEFAULT_UPDATE_HEIGHT   -1
 Default right-hand side update height.
 
#define STARNEIG_SCHUR_DEFAULT_THRESHOLD   -1
 Default deflation threshold.
 
#define STARNEIG_SCHUR_NORM_STABLE_THRESHOLD   -2
 Norm stable deflation threshold.
 
#define STARNEIG_SCHUR_LAPACK_THRESHOLD   -3
 LAPACK-style deflation threshold.
 
void starneig_schur_init_conf (struct starneig_schur_conf *conf)
 Initializes a Schur reduction configuration structure with default parameters. More...
 

Eigenvalue reordering

#define STARNEIG_REORDER_DEFAULT_UPDATE_WIDTH   -1
 Default left-hand side update task width.
 
#define STARNEIG_REORDER_DEFAULT_UPDATE_HEIGHT   -1
 Default right-hand side update task height.
 
#define STARNEIG_REORDER_DEFAULT_TILE_SIZE   -1
 Default tile size.
 
#define STARNEIG_REORDER_DEFAULT_VALUES_PER_CHAIN   -1
 Default number of selected eigenvalues per window.
 
#define STARNEIG_REORDER_DEFAULT_WINDOW_SIZE   -1
 Default default window size.
 
#define STARNEIG_REORDER_ROUNDED_WINDOW_SIZE   -2
 Default rounded window size.
 
#define STARNEIG_REORDER_DEFAULT_SMALL_WINDOW_SIZE   -1
 Default small window size.
 
#define STARNEIG_REORDER_DEFAULT_SMALL_WINDOW_THRESHOLD   -1
 Default small window threshold.
 
enum  starneig_reorder_plan_t { STARNEIG_REORDER_DEFAULT_PLAN = 1, STARNEIG_REORDER_ONE_PART_PLAN = 2, STARNEIG_REORDER_MULTI_PART_PLAN = 3 }
 Reordering plan enumerator. More...
 
enum  starneig_reorder_blueprint_t {
  STARNEIG_REORDER_DEFAULT_BLUEPRINT = 1, STARNEIG_REORDER_DUMMY_INSERT_A = 2, STARNEIG_REORDER_DUMMY_INSERT_B = 3, STARNEIG_REORDER_CHAIN_INSERT_A = 4,
  STARNEIG_REORDER_CHAIN_INSERT_B = 5, STARNEIG_REORDER_CHAIN_INSERT_C = 6, STARNEIG_REORDER_CHAIN_INSERT_D = 7, STARNEIG_REORDER_CHAIN_INSERT_E = 8,
  STARNEIG_REORDER_CHAIN_INSERT_F = 9
}
 Task insertion blueprint. More...
 
void starneig_reorder_init_conf (struct starneig_reorder_conf *conf)
 Initializes an eigenvalue reordering configuration structure with default parameters. More...
 

Eigenvectors

#define STARNEIG_EIGENVECTORS_DEFAULT_TILE_SIZE   -1
 Default tile size.
 
void starneig_eigenvectors_init_conf (struct starneig_eigenvectors_conf *conf)
 Initializes an eigenvectors configuration structure with default parameters. More...
 

Detailed Description

This file contains configuration structures and functions for the expert interface functions.

Author
Mirko Myllykoski (mirko.nosp@m.m@cs.nosp@m..umu..nosp@m.se), Umeå University
Angelika Schwarz (angie.nosp@m.s@cs.nosp@m..umu..nosp@m.se), Umeå University