33 #ifndef HSS_OPTIONS_HPP
34 #define HSS_OPTIONS_HPP
126 using real_t =
typename RealType<scalar_t>::value_type;
129 structured::StructuredOptions<scalar_t>(structured::
Type::
HSS) {
134 : structured::StructuredOptions<scalar_t>(sopts) {
194 clustering_algo_ = a;
204 approximate_neighbors_ = neighbors;
217 ann_iterations_ = iters;
253 int d0()
const {
return d0_; }
263 int dd()
const {
return dd_; }
270 int p()
const {
return p_; }
286 return random_distribution_;
295 return compress_algo_;
305 return clustering_algo_;
315 return approximate_neighbors_;
381 bool user_defined_random_ =
false;
382 bool log_ranks_ =
false;
386 int approximate_neighbors_ = 64;
387 int ann_iterations_ = 5;
389 void set_defaults() {
391 this->rel_tol_ = default_HSS_rel_tol<real_t>();
392 this->abs_tol_ = default_HSS_abs_tol<real_t>();
393 this->leaf_size_ = 512;
394 this->max_rank_ = 50000;
Main include file for the different clustering/ordering codes. These ordering codes can be used to de...
Contains the class definition for StructuredOptions, as well as some routines to get default options,...
Class containing several options for the HSS code and data-structures.
Definition: HSSOptions.hpp:118
void set_synchronized_compression(bool sync)
Definition: HSSOptions.hpp:233
void set_approximate_neighbors(int neighbors)
Definition: HSSOptions.hpp:203
void set_random_engine(random::RandomEngine random_engine)
Definition: HSSOptions.hpp:164
void set_dd(int dd)
Definition: HSSOptions.hpp:152
void describe_options() const override
void set_d0(int d0)
Definition: HSSOptions.hpp:143
int p() const
Definition: HSSOptions.hpp:270
random::RandomDistribution random_distribution() const
Definition: HSSOptions.hpp:285
int ann_iterations() const
Definition: HSSOptions.hpp:326
int dd() const
Definition: HSSOptions.hpp:263
void set_ann_iterations(int iters)
Definition: HSSOptions.hpp:215
bool synchronized_compression() const
Definition: HSSOptions.hpp:345
bool user_defined_random() const
Definition: HSSOptions.hpp:336
random::RandomEngine random_engine() const
Definition: HSSOptions.hpp:277
int approximate_neighbors() const
Definition: HSSOptions.hpp:314
void set_p(int p)
Definition: HSSOptions.hpp:158
void set_log_ranks(bool log_ranks)
Definition: HSSOptions.hpp:241
int d0() const
Definition: HSSOptions.hpp:253
ClusteringAlgorithm clustering_algorithm() const
Definition: HSSOptions.hpp:304
CompressionAlgorithm compression_algorithm() const
Definition: HSSOptions.hpp:294
void set_compression_algorithm(CompressionAlgorithm a)
Definition: HSSOptions.hpp:183
void set_random_distribution(random::RandomDistribution random_distribution)
Definition: HSSOptions.hpp:173
void set_clustering_algorithm(ClusteringAlgorithm a)
Definition: HSSOptions.hpp:193
bool log_ranks() const
Definition: HSSOptions.hpp:355
void set_from_command_line(int argc, const char *const *cargv) override
void set_user_defined_random(bool user_defined_random)
Definition: HSSOptions.hpp:224
Class containing several options for the StructuredMatrix code and data-structures.
Definition: StructuredOptions.hpp:106
CompressionAlgorithm
Definition: HSSOptions.hpp:87
real_t default_HSS_abs_tol()
Definition: HSSOptions.hpp:59
real_t default_HSS_rel_tol()
Definition: HSSOptions.hpp:51
std::string get_name(CompressionAlgorithm a)
RandomEngine
Random number engine.
Definition: RandomWrapper.hpp:52
RandomDistribution
Definition: RandomWrapper.hpp:74
Type
Definition: StructuredOptions.hpp:61
Definition: StrumpackOptions.hpp:42
ClusteringAlgorithm
Definition: Clustering.hpp:51