StarNEig Library  version v0.1-beta.4
A task-based library for solving nonsymmetric eigenvalue problems
expert.h
Go to the documentation of this file.
1 
41 #ifndef STARNEIG_EXPERT_H
42 #define STARNEIG_EXPERT_H
43 
44 #ifdef __cplusplus
45 extern "C" {
46 #endif
47 
48 #include <starneig/configuration.h>
49 
58 
63 
67 #define STARNEIG_HESSENBERG_DEFAULT_TILE_SIZE -1
68 
72 #define STARNEIG_HESSENBERG_DEFAULT_PANEL_WIDTH -1
73 
78 
83  int tile_size;
84 
90 };
91 
100 
104 
109 
113 #define STARNEIG_SCHUR_DEFAULT_INTERATION_LIMIT -1
114 
118 #define STARNEIG_SCHUR_DEFAULT_TILE_SIZE -1
119 
123 #define STARNEIG_SCHUR_DEFAULT_SMALL_LIMIT -1
124 
128 #define STARNEIG_SCHUR_DEFAULT_AED_WINDOW_SIZE -1
129 
133 #define STARNEIG_SCHUR_DEFAULT_AED_SHIFT_COUNT -1
134 
138 #define STARNEIG_SCHUR_DEFAULT_AED_NIBBLE -1
139 
143 #define STARNEIG_SCHUR_DEFAULT_AED_PARALLEL_SOFT_LIMIT -1
144 
148 #define STARNEIG_SCHUR_DEFAULT_AED_PARALLEL_HARD_LIMIT -1
149 
153 #define STARNEIG_SCHUR_DEFAULT_WINDOW_SIZE -1
154 
158 #define STARNEIG_SCHUR_ROUNDED_WINDOW_SIZE -2
159 
163 #define STARNEIG_SCHUR_DEFAULT_SHIFTS_PER_WINDOW -1
164 
168 #define STARNEIG_SCHUR_DEFAULT_UPDATE_WIDTH -1
169 
173 #define STARNEIG_SCHUR_DEFAULT_UPDATE_HEIGHT -1
174 
178 #define STARNEIG_SCHUR_DEFAULT_THRESHOLD -1
179 
183 #define STARNEIG_SCHUR_NORM_STABLE_THRESHOLD -2
184 
188 #define STARNEIG_SCHUR_LAPACK_THRESHOLD -3
189 
194 
201 
207 
216 
224 
232 
241 
253 
264 
280 
288 
297 
306 
319 
333 
344 };
345 
354 
358 
363 
549 typedef enum {
554 
560 typedef enum {
561 
564 
569 
575 
581 
588 
594 
602 
610 
619 
621 
625 #define STARNEIG_REORDER_DEFAULT_UPDATE_WIDTH -1
626 
630 #define STARNEIG_REORDER_DEFAULT_UPDATE_HEIGHT -1
631 
635 #define STARNEIG_REORDER_DEFAULT_TILE_SIZE -1
636 
640 #define STARNEIG_REORDER_DEFAULT_VALUES_PER_CHAIN -1
641 
645 #define STARNEIG_REORDER_DEFAULT_WINDOW_SIZE -1
646 
650 #define STARNEIG_REORDER_ROUNDED_WINDOW_SIZE -2
651 
655 #define STARNEIG_REORDER_DEFAULT_SMALL_WINDOW_SIZE -1
656 
660 #define STARNEIG_REORDER_DEFAULT_SMALL_WINDOW_THRESHOLD -1
661 
666 
671 
677 
683 
690 
706 
713 
721 
730 
739 };
740 
749 
753 
758 
762 #define STARNEIG_EIGENVECTORS_DEFAULT_TILE_SIZE -1
763 
768 
774 };
775 
776 
785 
789 
793 
794 #ifdef __cplusplus
795 }
796 #endif
797 
798 #endif // STARNEIG_EXPERT_H
int aed_window_size
Definition: expert.h:223
void starneig_schur_init_conf(struct starneig_schur_conf *conf)
Initializes a Schur reduction configuration structure with default parameters.
int small_window_threshold
Definition: expert.h:720
Default blueprint.
Definition: expert.h:563
int small_window_size
Definition: expert.h:712
int aed_shift_count
Definition: expert.h:231
Definition: expert.h:601
int iteration_limit
Definition: expert.h:200
void starneig_eigenvectors_init_conf(struct starneig_eigenvectors_conf *conf)
Initializes an eigenvectors configuration structure with default parameters.
Multi part plan.
Definition: expert.h:552
One part plan.
Definition: expert.h:551
Definition: expert.h:568
int update_height
Definition: expert.h:738
int window_size
Definition: expert.h:705
Schur reduction configuration structure.
Definition: expert.h:193
int shifts_per_window
Definition: expert.h:287
Eigenvalue reordering configuration structure.
Definition: expert.h:665
starneig_reorder_plan_t
Reordering plan enumerator.
Definition: expert.h:549
int aed_nibble
Definition: expert.h:240
starneig_reorder_plan_t plan
Definition: expert.h:670
double inf_threshold
Definition: expert.h:343
starneig_reorder_blueprint_t
Task insertion blueprint.
Definition: expert.h:560
Default plan.
Definition: expert.h:550
This file contains StarNEig library configuration.
void starneig_hessenberg_init_conf(struct starneig_hessenberg_conf *conf)
Initializes a Hessenberg reduction configuration structure with default parameters.
Definition: expert.h:574
int aed_parallel_soft_limit
Definition: expert.h:252
double left_threshold
Definition: expert.h:318
int update_width
Definition: expert.h:296
Eigenvector computation configuration structure.
Definition: expert.h:767
int update_height
Definition: expert.h:305
int small_limit
Definition: expert.h:215
int window_size
Definition: expert.h:279
int aed_parallel_hard_limit
Definition: expert.h:263
Definition: expert.h:609
int panel_width
Definition: expert.h:89
int tile_size
Definition: expert.h:83
int tile_size
Definition: expert.h:773
starneig_reorder_blueprint_t blueprint
Definition: expert.h:676
int tile_size
Definition: expert.h:206
Definition: expert.h:587
Definition: expert.h:593
int update_width
Definition: expert.h:729
void starneig_reorder_init_conf(struct starneig_reorder_conf *conf)
Initializes an eigenvalue reordering configuration structure with default parameters.
double right_threshold
Definition: expert.h:332
Definition: expert.h:580
Definition: expert.h:618
Hessenberg reduction configuration structure.
Definition: expert.h:77
int tile_size
Definition: expert.h:682
int values_per_chain
Definition: expert.h:689