20 #ifndef LIBMESH_RB_EVALUATION_H 21 #define LIBMESH_RB_EVALUATION_H 39 template <
typename T>
class NumericVector;
40 class RBThetaExpansion;
70 virtual void clear()
override;
94 bool resize_error_bound_data=
true);
169 const bool write_binary_data=
true);
178 bool read_error_bound_data=
true,
179 const bool read_binary_data=
true);
189 const std::string & directory_name =
"offline_data",
190 const bool write_binary_basis_functions =
true);
198 const std::string & directory_name =
"offline_data",
199 const std::string & data_name =
"bf",
200 const bool write_binary_basis_functions =
true);
210 const std::string & directory_name =
"offline_data",
211 const bool read_binary_basis_functions =
true);
220 const std::string & directory_name,
221 const std::string & data_name,
222 const bool read_binary_vectors);
232 const std::vector<std::string> & multiple_directory_names,
233 const std::vector<std::string> & multiple_data_names,
234 const bool read_binary_vectors);
351 #endif // LIBMESH_RB_EVALUATION_H virtual Real residual_scaling_denom(Real alpha_LB)
std::vector< std::vector< std::unique_ptr< NumericVector< Number > > > > Aq_representor
bool compute_RB_inner_product
bool evaluate_RB_error_bound
std::vector< Number > Fq_representor_innerprods
virtual void read_in_basis_functions(System &sys, const std::string &directory_name="offline_data", const bool read_binary_basis_functions=true)
DenseVector< Number > RB_solution
RBThetaExpansion & get_rb_theta_expansion()
DenseMatrix< Number > RB_inner_product_matrix
std::vector< std::unique_ptr< NumericVector< Number > > > basis_functions
virtual void set_n_basis_functions(unsigned int n_bfs)
const Parallel::Communicator & comm() const
std::vector< std::vector< Number > > output_dual_innerprods
NumericVector< Number > & get_basis_function(unsigned int i)
void read_in_vectors_from_multiple_files(System &sys, std::vector< std::vector< std::unique_ptr< NumericVector< Number >>> *> multiple_vectors, const std::vector< std::string > &multiple_directory_names, const std::vector< std::string > &multiple_data_names, const bool read_binary_vectors)
std::vector< RBParameters > greedy_param_list
void read_in_vectors(System &sys, std::vector< std::unique_ptr< NumericVector< Number >>> &vectors, const std::string &directory_name, const std::string &data_name, const bool read_binary_vectors)
RBEvaluation(const Parallel::Communicator &comm)
std::vector< DenseVector< Number > > RB_Fq_vector
virtual Real rb_solve(unsigned int N)
virtual void resize_data_structures(const unsigned int Nmax, bool resize_error_bound_data=true)
virtual void legacy_read_offline_data_from_files(const std::string &directory_name="offline_data", bool read_error_bound_data=true, const bool read_binary_data=true)
Manages consistently variables, degrees of freedom, and coefficient vectors.
virtual Real get_error_bound_normalization()
std::vector< Real > RB_output_error_bounds
virtual void write_out_basis_functions(System &sys, const std::string &directory_name="offline_data", const bool write_binary_basis_functions=true)
virtual Real get_stability_lower_bound()
An object whose state is distributed along a set of processors.
void set_rb_theta_expansion(RBThetaExpansion &rb_theta_expansion_in)
std::vector< std::vector< std::vector< Number > > > Fq_Aq_representor_innerprods
virtual void legacy_write_offline_data_to_files(const std::string &directory_name="offline_data", const bool write_binary_data=true)
std::vector< DenseMatrix< Number > > RB_Aq_vector
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
virtual void clear() override
virtual void write_out_vectors(System &sys, std::vector< NumericVector< Number > *> &vectors, const std::string &directory_name="offline_data", const std::string &data_name="bf", const bool write_binary_basis_functions=true)
virtual Real compute_residual_dual_norm(const unsigned int N)
Real eval_output_dual_norm(unsigned int n, const RBParameters &mu)
void assert_file_exists(const std::string &file_name)
virtual unsigned int get_n_basis_functions() const
std::vector< Number > RB_outputs
virtual void clear_riesz_representors()
RBThetaExpansion * rb_theta_expansion
std::vector< std::vector< std::vector< Number > > > Aq_Aq_representor_innerprods
bool is_rb_theta_expansion_initialized() const
std::vector< std::vector< DenseVector< Number > > > RB_output_vectors