14 #ifndef included_Options_h
15 #define included_Options_h
17 #include "utils/Utilities.h"
45 bool update_right_SV_ =
false,
46 bool write_snapshots_ =
false
63 int max_basis_dimension_
83 double singular_value_tol_
113 int randomized_subspace_dim_ = -1,
143 double linearity_tol_,
145 double sampling_tol_,
146 double max_time_between_samples_,
147 bool fast_update_ =
false,
148 bool fast_update_brand_ =
false,
149 bool skip_linearly_dependent_ =
false
201 double min_sampling_time_step_scale_,
202 double sampling_time_step_scale_,
203 double max_sampling_time_step_scale_
bool fast_update_brand
If true use the exact Brand's algorithm for the incremental SVD.
double max_time_between_samples
The upper bound on time between samples of the incremental SVD algorithm.
bool debug_algorithm
Whether debugging is turned on (any randomness is turned off).
bool write_snapshots
Whether to write snapshots or bases.
bool restore_state
If true the state of the incremental SVD will be restored when the object is created.
int randomized_subspace_dim
The dimension of the randomized subspace used in the randomized SVD algogrithm.
Options(int dim_, int max_num_samples_, bool update_right_SV_=false, bool write_snapshots_=false)
Constructor.
int dim
The dimension of the system on this processor.
double max_sampling_time_step_scale
The maximum overall scale factor to apply to time step of the incremental SVD algorithm.
int max_num_samples
The maximum number of samples.
Options setSingularValueTol(double singular_value_tol_)
Sets the singular value tolerance of the SVD algorithm.
double singular_value_tol
The singular value tolerance used in the SVD algorithm.
double linearity_tol
The tolerance of the incremental SVD algorithm to determine whether or not a sample is linearly depen...
bool static_svd_preserve_snapshot
Option to preserve snapshot in StaticSVD::computeSVD.
Options setSamplingTimeStepScale(double min_sampling_time_step_scale_, double sampling_time_step_scale_, double max_sampling_time_step_scale_)
Sets the sampling time step scaling of the incremental SVD algorithm.
bool save_state
If true the state of the incremental SVD will be written to disk when the object is deleted....
double sampling_tol
The sampling control tolerance of the incremental SVD algorithm. Limits error in projection of soluti...
double min_sampling_time_step_scale
The minimum overall scale factor to apply to time step of the incremental SVD algorithm.
Options setMaxBasisDimension(int max_basis_dimension_)
Sets the maximum basis dimension of the SVD algorithm.
Options setDebugMode(bool debug_algorithm_)
Sets whether debugging is turned on.
Options setRandomizedSVD(bool randomized_, int randomized_subspace_dim_=-1, int random_seed_=1)
Sets the parameters of the randomized SVD algorithm.
Options setIncrementalSVD(double linearity_tol_, double initial_dt_, double sampling_tol_, double max_time_between_samples_, bool fast_update_=false, bool fast_update_brand_=false, bool skip_linearly_dependent_=false)
Sets the essential parameters of the incremental SVD algorithm.
bool randomized
Whether to use the randomized SVD algorithm.
bool update_right_SV
Whether to update the right singular values.
bool fast_update
If true use the fast update version of the incremental SVD algorithm.
bool skip_linearly_dependent
If true skip linearly dependent samples of the incremental SVD algorithm.
Options setStateIO(bool save_state_, bool restore_state_)
Sets the state IO parameters of the incremental SVD algorithm.
double initial_dt
The initial simulation time step of the incremental SVD algorithm.
int max_basis_dimension
The maximum dimension of the basis.
int random_seed
The random seed used to initialize the algorithm.
double sampling_time_step_scale
The scaling factor to apply to sampling algorithm of the incremental SVD algorithm.