| libMesh
    | 
This class is part of the rbOOmit framework. More...
#include <rb_construction.h>
| Public Types | |
| typedef RBConstruction | sys_type | 
| The type of system.  More... | |
| typedef RBConstructionBase< LinearImplicitSystem > | Parent | 
| The type of the parent.  More... | |
| typedef Number(* | ValueFunctionPointer) (const Point &p, const Parameters &Parameters, const std::string &sys_name, const std::string &unknown_name) | 
| Projects arbitrary functions onto the current solution.  More... | |
| typedef Gradient(* | GradientFunctionPointer) (const Point &p, const Parameters ¶meters, const std::string &sys_name, const std::string &unknown_name) | 
| typedef std::map< std::string, std::unique_ptr< NumericVector< Number > >, std::less<> >::iterator | vectors_iterator | 
| Vector iterator typedefs.  More... | |
| typedef std::map< std::string, std::unique_ptr< NumericVector< Number > >, std::less<> >::const_iterator | const_vectors_iterator | 
| typedef std::map< std::string, std::unique_ptr< SparseMatrix< Number > >, std::less<> >::iterator | matrices_iterator | 
| Matrix iterator typedefs.  More... | |
| typedef std::map< std::string, std::unique_ptr< SparseMatrix< Number > >, std::less<> >::const_iterator | const_matrices_iterator | 
| Public Member Functions | |
| RBConstruction (EquationSystems &es, const std::string &name, const unsigned int number) | |
| Constructor.  More... | |
| RBConstruction (RBConstruction &&)=default | |
| Special functions.  More... | |
| RBConstruction (const RBConstruction &)=delete | |
| RBConstruction & | operator= (const RBConstruction &)=delete | 
| RBConstruction & | operator= (RBConstruction &&)=delete | 
| virtual | ~RBConstruction () | 
| virtual void | solve_for_matrix_and_rhs (LinearSolver< Number > &input_solver, SparseMatrix< Number > &input_matrix, NumericVector< Number > &input_rhs) | 
| Assembles & solves the linear system A*x=b for the specified matrix input_matrixand right-hand siderhs.  More... | |
| void | set_rb_evaluation (RBEvaluation &rb_eval_in) | 
| Set the RBEvaluation object.  More... | |
| RBEvaluation & | get_rb_evaluation () | 
| Get a reference to the RBEvaluation object.  More... | |
| const RBEvaluation & | get_rb_evaluation () const | 
| bool | is_rb_eval_initialized () const | 
| RBThetaExpansion & | get_rb_theta_expansion () | 
| Get a reference to the RBThetaExpansion object that that belongs to rb_eval.  More... | |
| const RBThetaExpansion & | get_rb_theta_expansion () const | 
| void | set_rb_assembly_expansion (RBAssemblyExpansion &rb_assembly_expansion_in) | 
| Set the rb_assembly_expansion object.  More... | |
| RBAssemblyExpansion & | get_rb_assembly_expansion () | 
| sys_type & | system () | 
| virtual void | clear () override | 
| Clear all the data structures associated with the system.  More... | |
| virtual std::string | system_type () const override | 
| virtual Real | truth_solve (int plot_solution) | 
| Perform a "truth" solve, i.e.  More... | |
| virtual Real | train_reduced_basis (const bool resize_rb_eval_data=true) | 
| Train the reduced basis.  More... | |
| Real | train_reduced_basis_with_greedy (const bool resize_rb_eval_data) | 
| Train the reduced basis using the "Greedy algorithm.".  More... | |
| void | enrich_basis_from_rhs_terms (const bool resize_rb_eval_data=true) | 
| This function computes one basis function for each rhs term.  More... | |
| void | train_reduced_basis_with_POD () | 
| Train the reduced basis using Proper Orthogonal Decomposition (POD).  More... | |
| virtual Real | compute_max_error_bound () | 
| (i) Compute the a posteriori error bound for each set of parameters in the training set, (ii) set current_parameters to the parameters that maximize the error bound, and (iii) return the maximum error bound.  More... | |
| const RBParameters & | get_greedy_parameter (unsigned int i) | 
| Return the parameters chosen during the i^th step of the Greedy algorithm.  More... | |
| void | set_rel_training_tolerance (Real new_training_tolerance) | 
| Get/set the relative tolerance for the basis training.  More... | |
| Real | get_rel_training_tolerance () const | 
| void | set_abs_training_tolerance (Real new_training_tolerance) | 
| Get/set the absolute tolerance for the basis training.  More... | |
| Real | get_abs_training_tolerance () const | 
| void | set_normalize_rb_bound_in_greedy (bool normalize_rb_bound_in_greedy_in) | 
| Get/set the boolean to indicate if we normalize the RB error in the greedy.  More... | |
| bool | get_normalize_rb_bound_in_greedy () const | 
| virtual bool | is_serial_training_type (const std::string &RB_training_type_in) | 
| void | set_RB_training_type (const std::string &RB_training_type_in) | 
| Get/set the string that determines the training type.  More... | |
| const std::string & | get_RB_training_type () const | 
| unsigned int | get_Nmax () const | 
| Get/set Nmax, the maximum number of RB functions we are willing to compute.  More... | |
| virtual void | set_Nmax (unsigned int Nmax) | 
| virtual void | load_basis_function (unsigned int i) | 
| Load the i^th RB function into the RBConstruction solution vector.  More... | |
| virtual void | load_rb_solution () | 
| Load the RB solution from the most recent solve with rb_eval into this system's solution vector.  More... | |
| Real | compute_residual_dual_norm_slow (const unsigned int N) | 
| The slow (but simple, non-error prone) way to compute the residual dual norm.  More... | |
| SparseMatrix< Number > * | get_inner_product_matrix () | 
| Get a pointer to inner_product_matrix.  More... | |
| const SparseMatrix< Number > * | get_inner_product_matrix () const | 
| SparseMatrix< Number > * | get_non_dirichlet_inner_product_matrix () | 
| Get the non-Dirichlet (or more generally no-constraints) version of the inner-product matrix.  More... | |
| const SparseMatrix< Number > * | get_non_dirichlet_inner_product_matrix () const | 
| SparseMatrix< Number > * | get_non_dirichlet_inner_product_matrix_if_avail () | 
| Get the non-Dirichlet inner-product matrix if it's available, otherwise get the inner-product matrix with constraints.  More... | |
| const SparseMatrix< Number > * | get_non_dirichlet_inner_product_matrix_if_avail () const | 
| SparseMatrix< Number > * | get_Aq (unsigned int q) | 
| Get a pointer to Aq.  More... | |
| SparseMatrix< Number > * | get_non_dirichlet_Aq (unsigned int q) | 
| Get a pointer to non_dirichlet_Aq.  More... | |
| SparseMatrix< Number > * | get_non_dirichlet_Aq_if_avail (unsigned int q) | 
| Get a pointer to non_dirichlet_Aq if it's available, otherwise get Aq.  More... | |
| virtual void | initialize_rb_construction (bool skip_matrix_assembly=false, bool skip_vector_assembly=false) | 
| Allocate all the data structures necessary for the construction stage of the RB method.  More... | |
| NumericVector< Number > * | get_Fq (unsigned int q) | 
| Get a pointer to Fq.  More... | |
| NumericVector< Number > * | get_non_dirichlet_Fq (unsigned int q) | 
| Get a pointer to non-Dirichlet Fq.  More... | |
| NumericVector< Number > * | get_non_dirichlet_Fq_if_avail (unsigned int q) | 
| Get a pointer to non_dirichlet_Fq if it's available, otherwise get Fq.  More... | |
| NumericVector< Number > * | get_output_vector (unsigned int n, unsigned int q_l) | 
| Get a pointer to the n^th output.  More... | |
| NumericVector< Number > * | get_non_dirichlet_output_vector (unsigned int n, unsigned int q_l) | 
| Get a pointer to non-Dirichlet output vector.  More... | |
| virtual void | get_all_matrices (std::map< std::string, SparseMatrix< Number > *> &all_matrices) | 
| Get a map that stores pointers to all of the matrices.  More... | |
| virtual void | get_all_vectors (std::map< std::string, NumericVector< Number > *> &all_vectors) | 
| Get a map that stores pointers to all of the vectors.  More... | |
| virtual void | get_output_vectors (std::map< std::string, NumericVector< Number > *> &all_vectors) | 
| Get a map that stores pointers to all of the vectors.  More... | |
| virtual void | assemble_affine_expansion (bool skip_matrix_assembly, bool skip_vector_assembly) | 
| Assemble the matrices and vectors for this system.  More... | |
| void | assemble_inner_product_matrix (SparseMatrix< Number > *input_matrix, bool apply_dof_constraints=true) | 
| Assemble the inner product matrix and store it in input_matrix.  More... | |
| void | assemble_Aq_matrix (unsigned int q, SparseMatrix< Number > *input_matrix, bool apply_dof_constraints=true) | 
| Assemble the q^th affine matrix and store it in input_matrix.  More... | |
| void | assemble_Fq_vector (unsigned int q, NumericVector< Number > *input_vector, bool apply_dof_constraints=true) | 
| Assemble the q^th affine vector and store it in input_matrix.  More... | |
| void | add_scaled_Aq (Number scalar, unsigned int q_a, SparseMatrix< Number > *input_matrix, bool symmetrize) | 
| Add the scaled q^th affine matrix to input_matrix.  More... | |
| virtual void | write_riesz_representors_to_files (const std::string &riesz_representors_dir, const bool write_binary_residual_representors) | 
| Write out all the Riesz representor data to files.  More... | |
| virtual void | read_riesz_representors_from_files (const std::string &riesz_representors_dir, const bool write_binary_residual_representors) | 
| Read in all the Riesz representor data from files.  More... | |
| virtual void | recompute_all_residual_terms (const bool compute_inner_products=true) | 
| This function computes all of the residual representors, can be useful when restarting a basis training computation.  More... | |
| virtual void | process_parameters_file (const std::string ¶meters_filename) | 
| Read in from the file specified by parameters_filenameand set the this system's member variables accordingly.  More... | |
| void | set_rb_construction_parameters (unsigned int n_training_samples_in, bool deterministic_training_in, int training_parameters_random_seed_in, bool quiet_mode_in, unsigned int Nmax_in, Real rel_training_tolerance_in, Real abs_training_tolerance_in, bool normalize_rb_error_bound_in_greedy_in, const std::string &RB_training_type_in, const RBParameters &mu_min_in, const RBParameters &mu_max_in, const std::map< std::string, std::vector< Real >> &discrete_parameter_values_in, const std::map< std::string, bool > &log_scaling, std::map< std::string, std::vector< RBParameter >> *training_sample_list=nullptr) | 
| Set the state of this RBConstruction object based on the arguments to this function.  More... | |
| virtual void | print_info () const | 
| Print out info that describes the current setup of this RBConstruction.  More... | |
| void | print_basis_function_orthogonality () const | 
| Print out a matrix that shows the orthogonality of the RB basis functions.  More... | |
| unsigned int | get_delta_N () const | 
| Get delta_N, the number of basis functions we add to the RB space per iteration of the greedy algorithm.  More... | |
| void | set_inner_product_assembly (ElemAssembly &inner_product_assembly_in) | 
| Set the rb_assembly_expansion object.  More... | |
| ElemAssembly & | get_inner_product_assembly () | 
| void | set_energy_inner_product (const std::vector< Number > &energy_inner_product_coeffs_in) | 
| Specify the coefficients of the A_q operators to be used in the energy inner-product.  More... | |
| void | zero_constrained_dofs_on_vector (NumericVector< Number > &vector) const | 
| It is sometimes useful to be able to zero vector entries that correspond to constrained dofs.  More... | |
| virtual bool | check_if_zero_truth_solve () const | 
| void | set_convergence_assertion_flag (bool flag) | 
| Setter for the flag determining if convergence should be checked after each solve.  More... | |
| bool | get_preevaluate_thetas_flag () const | 
| Get/set flag to pre-evaluate the theta functions.  More... | |
| void | set_preevaluate_thetas_flag (bool flag) | 
| void | set_quiet_mode (bool quiet_mode_in) | 
| Set the quiet_mode flag.  More... | |
| bool | is_quiet () const | 
| Is the system in quiet mode?  More... | |
| void | set_normalize_solution_snapshots (bool value) | 
| Set the boolean option that indicates if we normalization solution snapshots or not.  More... | |
| numeric_index_type | get_n_training_samples () const | 
| Get the number of global training samples.  More... | |
| numeric_index_type | get_local_n_training_samples () const | 
| Get the total number of training samples local to this processor.  More... | |
| numeric_index_type | get_first_local_training_index () const | 
| Get the first local index of the training parameters.  More... | |
| numeric_index_type | get_last_local_training_index () const | 
| Get the last local index of the training parameters.  More... | |
| virtual void | initialize_training_parameters (const RBParameters &mu_min, const RBParameters &mu_max, const unsigned int n_global_training_samples, const std::map< std::string, bool > &log_param_scale, const bool deterministic=true) | 
| Initialize the parameter ranges and indicate whether deterministic or random training parameters should be used and whether or not we want the parameters to be scaled logarithmically.  More... | |
| virtual void | load_training_set (const std::map< std::string, std::vector< RBParameter >> &new_training_set) | 
| Overwrite the training parameters with new_training_set.  More... | |
| void | set_training_parameter_values (const std::string ¶m_name, const std::vector< RBParameter > &values) | 
| Overwrite the local training samples for param_nameusingvalues.  More... | |
| void | broadcast_parameters (const unsigned int proc_id) | 
| Broadcasts parameters from processor proc_id to all processors.  More... | |
| void | set_training_random_seed (int seed) | 
| Set the seed that is used to randomly generate training parameters.  More... | |
| void | set_deterministic_training_parameter_name (const std::string &name) | 
| In some cases we only want to allow discrete parameter values, instead of parameters that may take any value in a specified interval.  More... | |
| const std::string & | get_deterministic_training_parameter_name () const | 
| Get the name of the parameter that we will generate deterministic training parameters for.  More... | |
| virtual void | reinit () override | 
| Reinitializes the member data fields associated with the system, so that, e.g., assemble()may be used.  More... | |
| virtual void | assemble () override | 
| Prepares matrixand_dof_mapfor matrix assembly.  More... | |
| virtual void | restrict_solve_to (const SystemSubset *subset, const SubsetSolveMode subset_solve_mode=SUBSET_ZERO) override | 
| After calling this method, any solve will be limited to the given subset.  More... | |
| virtual void | solve () override | 
| Assembles & solves the linear system A*x=b.  More... | |
| virtual LinearSolver< Number > * | get_linear_solver () const override | 
| virtual void | assembly (bool get_residual, bool get_jacobian, bool apply_heterogeneous_constraints=false, bool apply_no_constraints=false) override | 
| Assembles a residual in rhsand/or a jacobian inmatrix, as requested.  More... | |
| unsigned int | n_linear_iterations () const | 
| Real | final_linear_residual () const | 
| void | attach_shell_matrix (ShellMatrix< Number > *shell_matrix) | 
| This function enables the user to provide a shell matrix, i.e.  More... | |
| void | detach_shell_matrix () | 
| Detaches a shell matrix.  More... | |
| ShellMatrix< Number > * | get_shell_matrix () | 
| virtual void | create_static_condensation () override | 
| Request that static condensation be performed for this system.  More... | |
| virtual void | disable_cache () override | 
| Avoids use of any cached data that might affect any solve result.  More... | |
| virtual std::pair< unsigned int, Real > | get_linear_solve_parameters () const | 
| virtual void | release_linear_solver (LinearSolver< Number > *) const | 
| Currently a no-op.  More... | |
| virtual void | assemble_residual_derivatives (const ParameterVector ¶meters) override | 
| Residual parameter derivative function.  More... | |
| virtual std::pair< unsigned int, Real > | sensitivity_solve (const ParameterVector ¶meters) override | 
| Assembles & solves the linear system(s) (dR/du)*u_p = -dR/dp, for those parameters contained within parameters.  More... | |
| virtual std::pair< unsigned int, Real > | weighted_sensitivity_solve (const ParameterVector ¶meters, const ParameterVector &weights) override | 
| Assembles & solves the linear system(s) (dR/du)*u_w = sum(w_p*-dR/dp), for those parameters p contained within parametersweighted by the values w_p found withinweights.  More... | |
| virtual std::pair< unsigned int, Real > | adjoint_solve (const QoISet &qoi_indices=QoISet()) override | 
| Assembles & solves the linear system (dR/du)^T*z = dq/du, for those quantities of interest q specified by qoi_indices.  More... | |
| virtual std::pair< unsigned int, Real > | weighted_sensitivity_adjoint_solve (const ParameterVector ¶meters, const ParameterVector &weights, const QoISet &qoi_indices=QoISet()) override | 
| Assembles & solves the linear system(s) (dR/du)^T*z_w = sum(w_p*(d^2q/dudp - d^2R/dudp*z)), for those parameters p contained within parameters, weighted by the values w_p found withinweights.  More... | |
| virtual void | adjoint_qoi_parameter_sensitivity (const QoISet &qoi_indices, const ParameterVector ¶meters, SensitivityData &sensitivities) override | 
| Solves for the derivative of each of the system's quantities of interest q in qoi[qoi_indices] with respect to each parameter inparameters, placing the result for qoiiand parameterjintosensitivities[i][j].  More... | |
| virtual void | forward_qoi_parameter_sensitivity (const QoISet &qoi_indices, const ParameterVector ¶meters, SensitivityData &sensitivities) override | 
| Solves for the derivative of each of the system's quantities of interest q in qoi[qoi_indices] with respect to each parameter inparameters, placing the result for qoiiand parameterjintosensitivities[i][j].  More... | |
| virtual void | qoi_parameter_hessian (const QoISet &qoi_indices, const ParameterVector ¶meters, SensitivityData &hessian) override | 
| For each of the system's quantities of interest q in qoi[qoi_indices], and for a vector of parameters p, the parameter sensitivity Hessian H_ij is defined as H_ij = (d^2 q)/(d p_i d p_j) This Hessian is the output of this method, where for each q_i, H_jk is stored inhessian.second_derivative(i,j,k).  More... | |
| virtual void | qoi_parameter_hessian_vector_product (const QoISet &qoi_indices, const ParameterVector ¶meters, const ParameterVector &vector, SensitivityData &product) override | 
| For each of the system's quantities of interest q in qoi[qoi_indices], and for a vector of parameters p, the parameter sensitivity Hessian H_ij is defined as H_ij = (d^2 q)/(d p_i d p_j) The Hessian-vector product, for a vector v_k in parameter space, is S_j = H_jk v_k This product is the output of this method, where for each q_i, S_j is stored insensitivities[i][j].  More... | |
| const SparseMatrix< Number > & | get_system_matrix () const | 
| SparseMatrix< Number > & | get_system_matrix () | 
| StaticCondensation & | get_static_condensation () | 
| virtual void | assemble_qoi (const QoISet &qoi_indices=QoISet()) override | 
| Prepares qoifor quantity of interest assembly, then calls user qoi function.  More... | |
| virtual void | assemble_qoi_derivative (const QoISet &qoi_indices=QoISet(), bool include_liftfunc=true, bool apply_constraints=true) override | 
| Prepares adjoint_rhsfor quantity of interest derivative assembly, then calls user qoi derivative function.  More... | |
| void | init () | 
| Initializes degrees of freedom on the current mesh.  More... | |
| virtual void | reinit_constraints () | 
| Reinitializes the constraints for this system.  More... | |
| virtual void | reinit_mesh () | 
| Reinitializes the system with a new mesh.  More... | |
| bool | is_initialized () const | 
| virtual void | update () | 
| Update the local values to reflect the solution on neighboring processors.  More... | |
| bool | is_adjoint_already_solved () const | 
| Accessor for the adjoint_already_solved boolean.  More... | |
| void | set_adjoint_already_solved (bool setting) | 
| Setter for the adjoint_already_solved boolean.  More... | |
| virtual void | qoi_parameter_sensitivity (const QoISet &qoi_indices, const ParameterVector ¶meters, SensitivityData &sensitivities) | 
| Solves for the derivative of each of the system's quantities of interest q in qoi[qoi_indices] with respect to each parameter inparameters, placing the result for qoiiand parameterjintosensitivities[i][j].  More... | |
| virtual bool | compare (const System &other_system, const Real threshold, const bool verbose) const | 
| const std::string & | name () const | 
| void | project_solution (FunctionBase< Number > *f, FunctionBase< Gradient > *g=nullptr) const | 
| Projects arbitrary functions onto the current solution.  More... | |
| void | project_solution (FEMFunctionBase< Number > *f, FEMFunctionBase< Gradient > *g=nullptr) const | 
| Projects arbitrary functions onto the current solution.  More... | |
| void | project_solution (ValueFunctionPointer fptr, GradientFunctionPointer gptr, const Parameters ¶meters) const | 
| This method projects an arbitrary function onto the solution via L2 projections and nodal interpolations on each element.  More... | |
| void | project_vector (NumericVector< Number > &new_vector, FunctionBase< Number > *f, FunctionBase< Gradient > *g=nullptr, int is_adjoint=-1) const | 
| Projects arbitrary functions onto a vector of degree of freedom values for the current system.  More... | |
| void | project_vector (NumericVector< Number > &new_vector, FEMFunctionBase< Number > *f, FEMFunctionBase< Gradient > *g=nullptr, int is_adjoint=-1) const | 
| Projects arbitrary functions onto a vector of degree of freedom values for the current system.  More... | |
| void | project_vector (ValueFunctionPointer fptr, GradientFunctionPointer gptr, const Parameters ¶meters, NumericVector< Number > &new_vector, int is_adjoint=-1) const | 
| Projects arbitrary functions onto a vector of degree of freedom values for the current system.  More... | |
| void | boundary_project_solution (const std::set< boundary_id_type > &b, const std::vector< unsigned int > &variables, FunctionBase< Number > *f, FunctionBase< Gradient > *g=nullptr) | 
| Projects arbitrary boundary functions onto a vector of degree of freedom values for the current system.  More... | |
| void | boundary_project_solution (const std::set< boundary_id_type > &b, const std::vector< unsigned int > &variables, ValueFunctionPointer fptr, GradientFunctionPointer gptr, const Parameters ¶meters) | 
| Projects arbitrary boundary functions onto a vector of degree of freedom values for the current system.  More... | |
| void | boundary_project_vector (const std::set< boundary_id_type > &b, const std::vector< unsigned int > &variables, NumericVector< Number > &new_vector, FunctionBase< Number > *f, FunctionBase< Gradient > *g=nullptr, int is_adjoint=-1) const | 
| Projects arbitrary boundary functions onto a vector of degree of freedom values for the current system.  More... | |
| void | boundary_project_vector (const std::set< boundary_id_type > &b, const std::vector< unsigned int > &variables, ValueFunctionPointer fptr, GradientFunctionPointer gptr, const Parameters ¶meters, NumericVector< Number > &new_vector, int is_adjoint=-1) const | 
| Projects arbitrary boundary functions onto a vector of degree of freedom values for the current system.  More... | |
| unsigned int | number () const | 
| void | update_global_solution (std::vector< Number > &global_soln) const | 
| Fill the input vector global_solnso that it contains the global solution on all processors.  More... | |
| void | update_global_solution (std::vector< Number > &global_soln, const processor_id_type dest_proc) const | 
| Fill the input vector global_solnso that it contains the global solution on processordest_proc.  More... | |
| const MeshBase & | get_mesh () const | 
| MeshBase & | get_mesh () | 
| const DofMap & | get_dof_map () const | 
| DofMap & | get_dof_map () | 
| const EquationSystems & | get_equation_systems () const | 
| EquationSystems & | get_equation_systems () | 
| bool | active () const | 
| void | activate () | 
| Activates the system.  More... | |
| void | deactivate () | 
| Deactivates the system.  More... | |
| void | set_basic_system_only () | 
| Sets the system to be "basic only": i.e.  More... | |
| vectors_iterator | vectors_begin () | 
| Beginning of vectors container.  More... | |
| const_vectors_iterator | vectors_begin () const | 
| Beginning of vectors container.  More... | |
| vectors_iterator | vectors_end () | 
| End of vectors container.  More... | |
| const_vectors_iterator | vectors_end () const | 
| End of vectors container.  More... | |
| matrices_iterator | matrices_begin () | 
| Beginning of matrices container.  More... | |
| const_matrices_iterator | matrices_begin () const | 
| Beginning of matrices container.  More... | |
| matrices_iterator | matrices_end () | 
| End of matrices container.  More... | |
| const_matrices_iterator | matrices_end () const | 
| End of matrices container.  More... | |
| NumericVector< Number > & | add_vector (std::string_view vec_name, const bool projections=true, const ParallelType type=PARALLEL) | 
| Adds the additional vector vec_nameto this system.  More... | |
| void | remove_vector (std::string_view vec_name) | 
| Removes the additional vector vec_namefrom this system.  More... | |
| bool & | project_solution_on_reinit (void) | 
| Tells the System whether or not to project the solution vector onto new grids when the system is reinitialized.  More... | |
| bool | have_vector (std::string_view vec_name) const | 
| const NumericVector< Number > * | request_vector (std::string_view vec_name) const | 
| NumericVector< Number > * | request_vector (std::string_view vec_name) | 
| const NumericVector< Number > * | request_vector (const unsigned int vec_num) const | 
| NumericVector< Number > * | request_vector (const unsigned int vec_num) | 
| const NumericVector< Number > & | get_vector (std::string_view vec_name) const | 
| NumericVector< Number > & | get_vector (std::string_view vec_name) | 
| const NumericVector< Number > & | get_vector (const unsigned int vec_num) const | 
| NumericVector< Number > & | get_vector (const unsigned int vec_num) | 
| const std::string & | vector_name (const unsigned int vec_num) const | 
| const std::string & | vector_name (const NumericVector< Number > &vec_reference) const | 
| void | set_vector_as_adjoint (const std::string &vec_name, int qoi_num) | 
| Allows one to set the QoI index controlling whether the vector identified by vec_name represents a solution from the adjoint (qoi_num >= 0) or primal (qoi_num == -1) space.  More... | |
| int | vector_is_adjoint (std::string_view vec_name) const | 
| void | set_vector_preservation (const std::string &vec_name, bool preserve) | 
| Allows one to set the boolean controlling whether the vector identified by vec_name should be "preserved": projected to new meshes, saved, etc.  More... | |
| bool | vector_preservation (std::string_view vec_name) const | 
| NumericVector< Number > & | add_adjoint_solution (unsigned int i=0) | 
| NumericVector< Number > & | get_adjoint_solution (unsigned int i=0) | 
| const NumericVector< Number > & | get_adjoint_solution (unsigned int i=0) const | 
| NumericVector< Number > & | add_sensitivity_solution (unsigned int i=0) | 
| NumericVector< Number > & | get_sensitivity_solution (unsigned int i=0) | 
| const NumericVector< Number > & | get_sensitivity_solution (unsigned int i=0) const | 
| NumericVector< Number > & | add_weighted_sensitivity_adjoint_solution (unsigned int i=0) | 
| NumericVector< Number > & | get_weighted_sensitivity_adjoint_solution (unsigned int i=0) | 
| const NumericVector< Number > & | get_weighted_sensitivity_adjoint_solution (unsigned int i=0) const | 
| NumericVector< Number > & | add_weighted_sensitivity_solution () | 
| NumericVector< Number > & | get_weighted_sensitivity_solution () | 
| const NumericVector< Number > & | get_weighted_sensitivity_solution () const | 
| NumericVector< Number > & | add_adjoint_rhs (unsigned int i=0) | 
| NumericVector< Number > & | get_adjoint_rhs (unsigned int i=0) | 
| const NumericVector< Number > & | get_adjoint_rhs (unsigned int i=0) const | 
| NumericVector< Number > & | add_sensitivity_rhs (unsigned int i=0) | 
| NumericVector< Number > & | get_sensitivity_rhs (unsigned int i=0) | 
| const NumericVector< Number > & | get_sensitivity_rhs (unsigned int i=0) const | 
| unsigned int | n_vectors () const | 
| unsigned int | n_matrices () const | 
| unsigned int | n_vars () const | 
| unsigned int | n_variable_groups () const | 
| unsigned int | n_components () const | 
| dof_id_type | n_dofs () const | 
| dof_id_type | n_active_dofs () const | 
| dof_id_type | n_constrained_dofs () const | 
| dof_id_type | n_local_constrained_dofs () const | 
| dof_id_type | n_local_dofs () const | 
| unsigned int | add_variable (std::string_view var, const FEType &type, const std::set< subdomain_id_type > *const active_subdomains=nullptr) | 
| Adds the variable varto the list of variables for this system.  More... | |
| unsigned int | add_variable (std::string_view var, const Order order=FIRST, const FEFamily=LAGRANGE, const std::set< subdomain_id_type > *const active_subdomains=nullptr) | 
| Adds the variable varto the list of variables for this system.  More... | |
| unsigned int | add_variables (const std::vector< std::string > &vars, const FEType &type, const std::set< subdomain_id_type > *const active_subdomains=nullptr) | 
| Adds the variables varsto the list of variables for this system.  More... | |
| unsigned int | add_variables (const std::vector< std::string > &vars, const Order order=FIRST, const FEFamily=LAGRANGE, const std::set< subdomain_id_type > *const active_subdomains=nullptr) | 
| Adds the variable varto the list of variables for this system.  More... | |
| unsigned int | add_variable_array (const std::vector< std::string > &vars, const FEType &type, const std::set< subdomain_id_type > *const active_subdomains=nullptr) | 
| Adds variables varsto the list of variables for this system.  More... | |
| const Variable & | variable (unsigned int var) const | 
| Return a constant reference to Variablevar.  More... | |
| const VariableGroup & | variable_group (unsigned int vg) const | 
| Return a constant reference to VariableGroupvg.  More... | |
| bool | has_variable (std::string_view var) const | 
| const std::string & | variable_name (const unsigned int i) const | 
| unsigned int | variable_number (std::string_view var) const | 
| void | get_all_variable_numbers (std::vector< unsigned int > &all_variable_numbers) const | 
| Fills all_variable_numberswith all the variable numbers for the variables that have been added to this system.  More... | |
| unsigned int | variable_scalar_number (std::string_view var, unsigned int component) const | 
| unsigned int | variable_scalar_number (unsigned int var_num, unsigned int component) const | 
| const FEType & | variable_type (const unsigned int i) const | 
| const FEType & | variable_type (std::string_view var) const | 
| bool | identify_variable_groups () const | 
| void | identify_variable_groups (const bool) | 
| Toggle automatic VariableGroupidentification.  More... | |
| Real | calculate_norm (const NumericVector< Number > &v, unsigned int var, FEMNormType norm_type, std::set< unsigned int > *skip_dimensions=nullptr) const | 
| Real | calculate_norm (const NumericVector< Number > &v, const SystemNorm &norm, std::set< unsigned int > *skip_dimensions=nullptr) const | 
| void | read_header (Xdr &io, std::string_view version, const bool read_header=true, const bool read_additional_data=true, const bool read_legacy_format=false) | 
| Reads the basic data header for this System.  More... | |
| void | read_legacy_data (Xdr &io, const bool read_additional_data=true) | 
| Reads additional data, namely vectors, for this System.  More... | |
| template<typename ValType > | |
| void | read_serialized_data (Xdr &io, const bool read_additional_data=true) | 
| Reads additional data, namely vectors, for this System.  More... | |
| void | read_serialized_data (Xdr &io, const bool read_additional_data=true) | 
| Non-templated version for backward compatibility.  More... | |
| template<typename InValType > | |
| std::size_t | read_serialized_vectors (Xdr &io, const std::vector< NumericVector< Number > *> &vectors) const | 
| Read a number of identically distributed vectors.  More... | |
| std::size_t | read_serialized_vectors (Xdr &io, const std::vector< NumericVector< Number > *> &vectors) const | 
| Non-templated version for backward compatibility.  More... | |
| template<typename InValType > | |
| void | read_parallel_data (Xdr &io, const bool read_additional_data) | 
| Reads additional data, namely vectors, for this System.  More... | |
| void | read_parallel_data (Xdr &io, const bool read_additional_data) | 
| Non-templated version for backward compatibility.  More... | |
| void | write_header (Xdr &io, std::string_view version, const bool write_additional_data) const | 
| Writes the basic data header for this System.  More... | |
| void | write_serialized_data (Xdr &io, const bool write_additional_data=true) const | 
| Writes additional data, namely vectors, for this System.  More... | |
| std::size_t | write_serialized_vectors (Xdr &io, const std::vector< const NumericVector< Number > *> &vectors) const | 
| Serialize & write a number of identically distributed vectors.  More... | |
| void | write_parallel_data (Xdr &io, const bool write_additional_data) const | 
| Writes additional data, namely vectors, for this System.  More... | |
| std::string | get_info () const | 
| void | attach_init_function (void fptr(EquationSystems &es, const std::string &name)) | 
| Register a user function to use in initializing the system.  More... | |
| void | attach_init_object (Initialization &init) | 
| Register a user class to use to initialize the system.  More... | |
| void | attach_assemble_function (void fptr(EquationSystems &es, const std::string &name)) | 
| Register a user function to use in assembling the system matrix and RHS.  More... | |
| void | attach_assemble_object (Assembly &assemble) | 
| Register a user object to use in assembling the system matrix and RHS.  More... | |
| void | attach_constraint_function (void fptr(EquationSystems &es, const std::string &name)) | 
| Register a user function for imposing constraints.  More... | |
| void | attach_constraint_object (Constraint &constrain) | 
| Register a user object for imposing constraints.  More... | |
| bool | has_constraint_object () const | 
| Constraint & | get_constraint_object () | 
| Return the user object for imposing constraints.  More... | |
| void | attach_QOI_function (void fptr(EquationSystems &es, const std::string &name, const QoISet &qoi_indices)) | 
| Register a user function for evaluating the quantities of interest, whose values should be placed in System::qoi.  More... | |
| void | attach_QOI_object (QOI &qoi) | 
| Register a user object for evaluating the quantities of interest, whose values should be placed in System::qoi.  More... | |
| void | attach_QOI_derivative (void fptr(EquationSystems &es, const std::string &name, const QoISet &qoi_indices, bool include_liftfunc, bool apply_constraints)) | 
| Register a user function for evaluating derivatives of a quantity of interest with respect to test functions, whose values should be placed in System::rhs.  More... | |
| void | attach_QOI_derivative_object (QOIDerivative &qoi_derivative) | 
| Register a user object for evaluating derivatives of a quantity of interest with respect to test functions, whose values should be placed in System::rhs.  More... | |
| virtual void | user_initialization () | 
| Calls user's attached initialization function, or is overridden by the user in derived classes.  More... | |
| virtual void | user_assembly () | 
| Calls user's attached assembly function, or is overridden by the user in derived classes.  More... | |
| virtual void | user_constrain () | 
| Calls user's attached constraint function, or is overridden by the user in derived classes.  More... | |
| virtual void | user_QOI (const QoISet &qoi_indices) | 
| Calls user's attached quantity of interest function, or is overridden by the user in derived classes.  More... | |
| virtual void | user_QOI_derivative (const QoISet &qoi_indices=QoISet(), bool include_liftfunc=true, bool apply_constraints=true) | 
| Calls user's attached quantity of interest derivative function, or is overridden by the user in derived classes.  More... | |
| virtual void | re_update () | 
| Re-update the local values when the mesh has changed.  More... | |
| virtual void | restrict_vectors () | 
| Restrict vectors after the mesh has coarsened.  More... | |
| virtual void | prolong_vectors () | 
| Prolong vectors after the mesh has refined.  More... | |
| Number | current_solution (const dof_id_type global_dof_number) const | 
| unsigned int | n_qois () const | 
| Number of currently active quantities of interest.  More... | |
| void | init_qois (unsigned int n_qois) | 
| Accessors for qoi and qoi_error_estimates vectors.  More... | |
| void | set_qoi (unsigned int qoi_index, Number qoi_value) | 
| void | set_qoi (std::vector< Number > new_qoi) | 
| Number | get_qoi_value (unsigned int qoi_index) const | 
| std::vector< Number > | get_qoi_values () const | 
| Returns a copy of qoi, not a reference.  More... | |
| void | set_qoi_error_estimate (unsigned int qoi_index, Number qoi_error_estimate) | 
| Number | get_qoi_error_estimate_value (unsigned int qoi_index) const | 
| Number | point_value (unsigned int var, const Point &p, const bool insist_on_success=true, const NumericVector< Number > *sol=nullptr) const | 
| Number | point_value (unsigned int var, const Point &p, const Elem &e, const NumericVector< Number > *sol=nullptr) const | 
| Number | point_value (unsigned int var, const Point &p, const Elem *e) const | 
| Calls the version of point_value() which takes a reference.  More... | |
| Number | point_value (unsigned int var, const Point &p, const NumericVector< Number > *sol) const | 
| Calls the parallel version of point_value().  More... | |
| Gradient | point_gradient (unsigned int var, const Point &p, const bool insist_on_success=true, const NumericVector< Number > *sol=nullptr) const | 
| Gradient | point_gradient (unsigned int var, const Point &p, const Elem &e, const NumericVector< Number > *sol=nullptr) const | 
| Gradient | point_gradient (unsigned int var, const Point &p, const Elem *e) const | 
| Calls the version of point_gradient() which takes a reference.  More... | |
| Gradient | point_gradient (unsigned int var, const Point &p, const NumericVector< Number > *sol) const | 
| Calls the parallel version of point_gradient().  More... | |
| Tensor | point_hessian (unsigned int var, const Point &p, const bool insist_on_success=true, const NumericVector< Number > *sol=nullptr) const | 
| Tensor | point_hessian (unsigned int var, const Point &p, const Elem &e, const NumericVector< Number > *sol=nullptr) const | 
| Tensor | point_hessian (unsigned int var, const Point &p, const Elem *e) const | 
| Calls the version of point_hessian() which takes a reference.  More... | |
| Tensor | point_hessian (unsigned int var, const Point &p, const NumericVector< Number > *sol) const | 
| Calls the parallel version of point_hessian().  More... | |
| void | local_dof_indices (const unsigned int var, std::set< dof_id_type > &var_indices) const | 
| Fills the std::set with the degrees of freedom on the local processor corresponding the the variable number passed in.  More... | |
| void | zero_variable (NumericVector< Number > &v, unsigned int var_num) const | 
| Zeroes all dofs in vthat correspond to variable numbervar_num.  More... | |
| bool | get_project_with_constraints () | 
| Setter and getter functions for project_with_constraints boolean.  More... | |
| void | set_project_with_constraints (bool _project_with_constraints) | 
| bool & | hide_output () | 
| void | projection_matrix (SparseMatrix< Number > &proj_mat) const | 
| This method creates a projection matrix which corresponds to the operation of project_vector between old and new solution spaces.  More... | |
| SparseMatrix< Number > & | add_matrix (std::string_view mat_name, ParallelType type=PARALLEL, MatrixBuildType mat_build_type=MatrixBuildType::AUTOMATIC) | 
| Adds the additional matrix mat_nameto this system.  More... | |
| template<template< typename > class> | |
| SparseMatrix< Number > & | add_matrix (std::string_view mat_name, ParallelType=PARALLEL) | 
| Adds the additional matrix mat_nameto this system.  More... | |
| SparseMatrix< Number > & | add_matrix (std::string_view mat_name, std::unique_ptr< SparseMatrix< Number >> matrix, ParallelType type=PARALLEL) | 
| Adds the additional matrix mat_nameto this system.  More... | |
| void | remove_matrix (std::string_view mat_name) | 
| Removes the additional matrix mat_namefrom this system.  More... | |
| bool | have_matrix (std::string_view mat_name) const | 
| const SparseMatrix< Number > * | request_matrix (std::string_view mat_name) const | 
| SparseMatrix< Number > * | request_matrix (std::string_view mat_name) | 
| const SparseMatrix< Number > & | get_matrix (std::string_view mat_name) const | 
| SparseMatrix< Number > & | get_matrix (std::string_view mat_name) | 
| void | prefer_hash_table_matrix_assembly (bool preference) | 
| Sets whether to use hash table matrix assembly if the matrix sub-classes support it.  More... | |
| void | prefix_with_name (bool value) | 
| Instructs this system to prefix solve options with its name for solvers that leverage prefixes.  More... | |
| bool | prefix_with_name () const | 
| std::string | prefix () const | 
| bool | has_static_condensation () const | 
| const Parallel::Communicator & | comm () const | 
| processor_id_type | n_processors () const | 
| processor_id_type | processor_id () const | 
| void | initialize_parameters (const RBParameters &mu_min_in, const RBParameters &mu_max_in, const std::map< std::string, std::vector< Real >> &discrete_parameter_values) | 
| Initialize the parameter ranges and set current_parameters.  More... | |
| void | initialize_parameters (const RBParametrized &rb_parametrized) | 
| Initialize the parameter ranges and set current_parameters.  More... | |
| unsigned int | get_n_params () const | 
| Get the number of parameters.  More... | |
| unsigned int | get_n_continuous_params () const | 
| Get the number of continuous parameters.  More... | |
| unsigned int | get_n_discrete_params () const | 
| Get the number of discrete parameters.  More... | |
| std::set< std::string > | get_parameter_names () const | 
| Get a set that stores the parameter names.  More... | |
| const RBParameters & | get_parameters () const | 
| Get the current parameters.  More... | |
| bool | set_parameters (const RBParameters ¶ms) | 
| Set the current parameters to paramsThe parameters are checked for validity; an error is thrown if the number of parameters or samples is different than expected.  More... | |
| const RBParameters & | get_parameters_min () const | 
| Get an RBParameters object that specifies the minimum allowable value for each parameter.  More... | |
| const RBParameters & | get_parameters_max () const | 
| Get an RBParameters object that specifies the maximum allowable value for each parameter.  More... | |
| Real | get_parameter_min (const std::string ¶m_name) const | 
| Get minimum allowable value of parameter param_name.  More... | |
| Real | get_parameter_max (const std::string ¶m_name) const | 
| Get maximum allowable value of parameter param_name.  More... | |
| void | print_parameters () const | 
| Print the current parameters.  More... | |
| void | write_parameter_data_to_files (const std::string &continuous_param_file_name, const std::string &discrete_param_file_name, const bool write_binary_data) | 
| Write out the parameter ranges to files.  More... | |
| void | read_parameter_data_from_files (const std::string &continuous_param_file_name, const std::string &discrete_param_file_name, const bool read_binary_data) | 
| Read in the parameter ranges from files.  More... | |
| bool | is_discrete_parameter (const std::string &mu_name) const | 
| Is parameter mu_namediscrete?  More... | |
| const std::map< std::string, std::vector< Real > > & | get_discrete_parameter_values () const | 
| Get a const reference to the discrete parameter values.  More... | |
| void | print_discrete_parameter_values () const | 
| Print out all the discrete parameter values.  More... | |
| Static Public Member Functions | |
| static std::unique_ptr< DirichletBoundary > | build_zero_dirichlet_boundary_object () | 
| It's helpful to be able to generate a DirichletBoundary that stores a ZeroFunction in order to impose Dirichlet boundary conditions.  More... | |
| static std::pair< std::size_t, std::size_t > | generate_training_parameters_random (const Parallel::Communicator &communicator, const std::map< std::string, bool > &log_param_scale, std::map< std::string, std::vector< RBParameter >> &local_training_parameters_in, const unsigned int n_global_training_samples_in, const RBParameters &min_parameters, const RBParameters &max_parameters, const int training_parameters_random_seed=-1, const bool serial_training_set=false) | 
| Static helper function for generating a randomized set of parameters.  More... | |
| static std::pair< std::size_t, std::size_t > | generate_training_parameters_deterministic (const Parallel::Communicator &communicator, const std::map< std::string, bool > &log_param_scale, std::map< std::string, std::vector< RBParameter >> &local_training_parameters_in, const unsigned int n_global_training_samples_in, const RBParameters &min_parameters, const RBParameters &max_parameters, const bool serial_training_set=false) | 
| Static helper function for generating a deterministic set of parameters.  More... | |
| static std::string | get_info () | 
| Gets a string containing the reference information.  More... | |
| static std::string | get_info () | 
| Gets a string containing the reference information.  More... | |
| static void | print_info (std::ostream &out_stream=libMesh::out) | 
| Prints the reference information, by default to libMesh::out.  More... | |
| static void | print_info (std::ostream &out_stream=libMesh::out) | 
| Prints the reference information, by default to libMesh::out.  More... | |
| static unsigned int | n_objects () | 
| Prints the number of outstanding (created, but not yet destroyed) objects.  More... | |
| static unsigned int | n_objects () | 
| Prints the number of outstanding (created, but not yet destroyed) objects.  More... | |
| static void | enable_print_counter_info () | 
| Methods to enable/disable the reference counter output from print_info()  More... | |
| static void | enable_print_counter_info () | 
| Methods to enable/disable the reference counter output from print_info()  More... | |
| static void | disable_print_counter_info () | 
| static void | disable_print_counter_info () | 
| static Real | get_closest_value (Real value, const std::vector< Real > &list_of_values) | 
| Public Attributes | |
| std::vector< Real > | training_error_bounds | 
| Vector storing the values of the error bound for each parameter in the training set — the parameter giving the largest error bound is chosen for the next snapshot in the Greedy basis training.  More... | |
| std::unique_ptr< LinearSolver< Number > > | inner_product_solver | 
| We store an extra linear solver object which we can optionally use for solving all systems in which the system matrix is set to inner_product_matrix.  More... | |
| LinearSolver< Number > * | extra_linear_solver | 
| Also, we store a pointer to an extra linear solver.  More... | |
| std::unique_ptr< SparseMatrix< Number > > | inner_product_matrix | 
| The inner product matrix.  More... | |
| std::vector< Number > | truth_outputs | 
| Vector storing the truth output values from the most recent truth solve.  More... | |
| std::vector< std::vector< Number > > | output_dual_innerprods | 
| The vector storing the dual norm inner product terms for each output.  More... | |
| std::vector< std::unique_ptr< NumericVector< Number > > > | Fq_representor | 
| Vector storing the residual representors associated with the right-hand side.  More... | |
| std::vector< Number > | Fq_representor_innerprods | 
| Vectors storing the residual representor inner products to be used in computing the residuals online.  More... | |
| bool | skip_residual_in_train_reduced_basis | 
| Boolean flag to indicate if we skip residual calculations in train_reduced_basis.  More... | |
| bool | exit_on_repeated_greedy_parameters | 
| Boolean flag to indicate whether we exit the greedy if we select the same parameters twice in a row.  More... | |
| bool | impose_internal_fluxes | 
| Boolean flag to indicate whether we impose "fluxes" (i.e.  More... | |
| bool | skip_degenerate_sides | 
| In some cases meshes are intentionally created with degenerate sides as a way to represent, say, triangles using a hex-only mesh.  More... | |
| bool | compute_RB_inner_product | 
| Boolean flag to indicate whether we compute the RB_inner_product_matrix.  More... | |
| bool | store_non_dirichlet_operators | 
| Boolean flag to indicate whether we store a second copy of each affine operator and vector which does not have Dirichlet bcs enforced.  More... | |
| bool | store_untransformed_basis | 
| Boolean flag to indicate whether we store a second copy of the basis without constraints or dof transformations applied to it.  More... | |
| bool | use_empty_rb_solve_in_greedy | 
| A boolean flag to indicate whether or not we initialize the Greedy algorithm by performing rb_solves on the training set with an "empty" (i.e.  More... | |
| bool | Fq_representor_innerprods_computed | 
| A boolean flag to indicate whether or not the Fq representor norms have already been computed — used to make sure that we don't recompute them unnecessarily.  More... | |
| SparseMatrix< Number > * | matrix | 
| The system matrix.  More... | |
| bool | zero_out_matrix_and_rhs | 
| By default, the system will zero out the matrix and the right hand side.  More... | |
| std::unique_ptr< LinearSolver< Number > > | linear_solver | 
| This class handles all the details of interfacing with various linear algebra packages like PETSc or LASPACK.  More... | |
| NumericVector< Number > * | rhs | 
| The system matrix.  More... | |
| Parameters | parameters | 
| Parameters for the system. If a parameter is not provided, it should be retrieved from the EquationSystems.  More... | |
| bool | assemble_before_solve | 
| Flag which tells the system to whether or not to call the user assembly function during each call to solve().  More... | |
| bool | use_fixed_solution | 
| A boolean to be set to true by systems using elem_fixed_solution, for optional use by e.g.  More... | |
| int | extra_quadrature_order | 
| A member int that can be employed to indicate increased or reduced quadrature order.  More... | |
| std::unique_ptr< NumericVector< Number > > | solution | 
| Data structure to hold solution values.  More... | |
| std::unique_ptr< NumericVector< Number > > | current_local_solution | 
| All the values I need to compute my contribution to the simulation at hand.  More... | |
| Real | time | 
| For time-dependent problems, this is the time t at the beginning of the current timestep.  More... | |
| bool | verbose_mode | 
| Public boolean to toggle verbose mode.  More... | |
| Protected Types | |
| typedef std::map< std::string, std::pair< unsigned int, unsigned int > > | Counts | 
| Data structure to log the information.  More... | |
| typedef std::map< std::string, std::pair< unsigned int, unsigned int > > | Counts | 
| Data structure to log the information.  More... | |
| Protected Member Functions | |
| virtual void | allocate_data_structures () | 
| Helper function that actually allocates all the data structures required by this class.  More... | |
| virtual void | truth_assembly () | 
| Assemble the truth matrix and right-hand side for current_parameters.  More... | |
| virtual std::unique_ptr< DGFEMContext > | build_context () | 
| Builds a DGFEMContext object with enough information to do evaluations on each element.  More... | |
| virtual SparseMatrix< Number > & | get_matrix_for_output_dual_solves () | 
| Return the matrix for the output residual dual norm solves.  More... | |
| virtual bool | greedy_termination_test (Real abs_greedy_error, Real initial_greedy_error, int count) | 
| Function that indicates when to terminate the Greedy basis training.  More... | |
| void | update_greedy_param_list () | 
| Update the list of Greedily chosen parameters with current_parameters.  More... | |
| void | add_scaled_matrix_and_vector (Number scalar, ElemAssembly *elem_assembly, SparseMatrix< Number > *input_matrix, NumericVector< Number > *input_vector, bool symmetrize=false, bool apply_dof_constraints=true) | 
| This function loops over the mesh and applies the specified interior and/or boundary assembly routines, then adds the scaled result to input_matrix and/or input_vector.  More... | |
| virtual void | post_process_elem_matrix_and_vector (DGFEMContext &) | 
| This function is called from add_scaled_matrix_and_vector() before each element matrix and vector are assembled into their global counterparts.  More... | |
| virtual void | post_process_truth_solution () | 
| Similarly, provide an opportunity to post-process the truth solution after the solve is complete.  More... | |
| virtual void | set_context_solution_vec (NumericVector< Number > &vec) | 
| Set current_local_solution = vec so that we can access vec from FEMContext during assembly.  More... | |
| virtual void | assemble_misc_matrices () | 
| Assemble and store all the inner-product matrix, the constraint matrix (for constrained problems) and the mass matrix (for time-dependent problems).  More... | |
| virtual void | assemble_all_affine_operators () | 
| Assemble and store all Q_a affine operators as well as the inner-product matrix.  More... | |
| virtual void | assemble_all_affine_vectors () | 
| Assemble and store the affine RHS vectors.  More... | |
| virtual void | assemble_all_output_vectors () | 
| Assemble and store the output vectors.  More... | |
| virtual void | compute_output_dual_innerprods () | 
| Compute and store the dual norm of each output functional.  More... | |
| virtual void | compute_Fq_representor_innerprods (bool compute_inner_products=true) | 
| Compute the terms that are combined ‘online’ to determine the dual norm of the residual.  More... | |
| virtual void | enrich_RB_space () | 
| Add a new basis function to the RB space.  More... | |
| virtual void | update_system () | 
| Update the system after enriching the RB space; this calls a series of functions to update the system properly.  More... | |
| virtual Real | get_RB_error_bound () | 
| virtual void | update_RB_system_matrices () | 
| Compute the reduced basis matrices for the current basis.  More... | |
| virtual void | update_residual_terms (bool compute_inner_products=true) | 
| Compute the terms that are combined ‘online’ to determine the dual norm of the residual.  More... | |
| virtual void | init_context (FEMContext &) | 
| Initialize the FEMContext prior to performing an element loop.  More... | |
| bool | get_convergence_assertion_flag () const | 
| Getter for the flag determining if convergence should be checked after each solve.  More... | |
| void | check_convergence (LinearSolver< Number > &input_solver) | 
| Check if the linear solver reports convergence.  More... | |
| unsigned int | get_current_training_parameter_index () const | 
| Get/set the current training parameter index.  More... | |
| void | set_current_training_parameter_index (unsigned int index) | 
| const std::vector< Number > & | get_evaluated_thetas (unsigned int training_parameter_index) const | 
| Return the evaluated theta functions at the given training parameter index.  More... | |
| virtual void | preevaluate_thetas () | 
| void | reset_preevaluate_thetas_completed () | 
| Reset the _preevaluate_thetas_completed flag to false.  More... | |
| virtual void | init_data () | 
| Initializes the member data fields associated with the system, so that, e.g., assemble()may be used.  More... | |
| RBParameters | get_params_from_training_set (unsigned int global_index) | 
| Return the RBParameters in index global_indexof the global training set.  More... | |
| void | set_params_from_training_set (unsigned int global_index) | 
| Set parameters to the RBParameters stored in index global_indexof the global training set.  More... | |
| virtual void | set_params_from_training_set_and_broadcast (unsigned int global_index) | 
| Load the specified training parameter and then broadcast to all processors.  More... | |
| virtual void | add_matrices () override | 
| Adds the system matrix.  More... | |
| template<typename T > | |
| void | setup_static_condensation_preconditioner (T &solver) | 
| Sets up the static condensation preconditioner for the supplied solver.  More... | |
| void | project_vector (NumericVector< Number > &, int is_adjoint=-1) const | 
| Projects the vector defined on the old mesh onto the new mesh.  More... | |
| void | project_vector (const NumericVector< Number > &, NumericVector< Number > &, int is_adjoint=-1) const | 
| Projects the vector defined on the old mesh onto the new mesh.  More... | |
| virtual void | init_matrices () | 
| Initializes the matrices associated with this system.  More... | |
| bool | can_add_matrices () const | 
| void | solve_for_unconstrained_dofs (NumericVector< Number > &, int is_adjoint=-1) const | 
| virtual bool | condense_constrained_dofs () const | 
| Whether this object should condense out constrained degrees of freedom.  More... | |
| void | increment_constructor_count (const std::string &name) noexcept | 
| Increments the construction counter.  More... | |
| void | increment_constructor_count (const std::string &name) noexcept | 
| Increments the construction counter.  More... | |
| void | increment_destructor_count (const std::string &name) noexcept | 
| Increments the destruction counter.  More... | |
| void | increment_destructor_count (const std::string &name) noexcept | 
| Increments the destruction counter.  More... | |
| Static Protected Member Functions | |
| static void | get_global_max_error_pair (const Parallel::Communicator &communicator, std::pair< numeric_index_type, Real > &error_pair) | 
| Static function to return the error pair (index,error) that is corresponds to the largest error on all processors.  More... | |
| Protected Attributes | |
| unsigned int | Nmax | 
| Maximum number of reduced basis functions we are willing to use.  More... | |
| unsigned int | delta_N | 
| The number of basis functions that we add at each greedy step.  More... | |
| bool | output_dual_innerprods_computed | 
| A boolean flag to indicate whether or not the output dual norms have already been computed — used to make sure that we don't recompute them unnecessarily.  More... | |
| bool | assert_convergence | 
| A boolean flag to indicate whether to check for proper convergence after each solve.  More... | |
| bool | quiet_mode | 
| Flag to indicate whether we print out extra information during the Offline stage.  More... | |
| bool | serial_training_set | 
| This boolean flag indicates whether or not the training set should be the same on all processors.  More... | |
| bool | _normalize_solution_snapshots | 
| Set this boolean to true if we want to normalize solution snapshots used in training to have norm of 1.  More... | |
| std::unique_ptr< NumericVector< Number > > | inner_product_storage_vector | 
| We keep an extra temporary vector that is useful for performing inner products (avoids unnecessary memory allocation/deallocation).  More... | |
| unsigned int | _n_linear_iterations | 
| The number of linear iterations required to solve the linear system Ax=b.  More... | |
| Real | _final_linear_residual | 
| The final residual for the linear system Ax=b.  More... | |
| ShellMatrix< Number > * | _shell_matrix | 
| User supplies shell matrix or nullptrif no shell matrix is used.  More... | |
| const SystemSubset * | _subset | 
| The current subset on which to solve (or nullptrif none).  More... | |
| SubsetSolveMode | _subset_solve_mode | 
| If restrict-solve-to-subset mode is active, this member decides what happens with the dofs outside the subset.  More... | |
| const Parallel::Communicator & | _communicator | 
| Static Protected Attributes | |
| static Counts | _counts | 
| Actually holds the data.  More... | |
| static Counts | _counts | 
| Actually holds the data.  More... | |
| static Threads::atomic< unsigned int > | _n_objects | 
| The number of objects.  More... | |
| static Threads::atomic< unsigned int > | _n_objects | 
| The number of objects.  More... | |
| static Threads::spin_mutex | _mutex | 
| Mutual exclusion object to enable thread-safe reference counting.  More... | |
| static Threads::spin_mutex | _mutex | 
| Mutual exclusion object to enable thread-safe reference counting.  More... | |
| static bool | _enable_print_counter = true | 
| Flag to control whether reference count information is printed when print_info is called.  More... | |
| static bool | _enable_print_counter = true | 
| Flag to control whether reference count information is printed when print_info is called.  More... | |
| Private Attributes | |
| RBEvaluation * | rb_eval | 
| The current RBEvaluation object we are using to perform the Evaluation stage of the reduced basis method.  More... | |
| RBAssemblyExpansion * | rb_assembly_expansion | 
| This member holds the (parameter independent) assembly functors that define the "affine expansion" of the PDE that we are solving.  More... | |
| ElemAssembly * | inner_product_assembly | 
| Pointer to inner product assembly.  More... | |
| bool | use_energy_inner_product | 
| Boolean to indicate whether we're using the energy inner-product.  More... | |
| std::vector< Number > | energy_inner_product_coeffs | 
| We may optionally want to use the "energy inner-product" rather than the inner-product assembly specified in inner_product_assembly.  More... | |
| std::vector< std::unique_ptr< SparseMatrix< Number > > > | Aq_vector | 
| Vector storing the Q_a matrices from the affine expansion.  More... | |
| std::vector< std::unique_ptr< NumericVector< Number > > > | Fq_vector | 
| Vector storing the Q_f vectors in the affine decomposition of the right-hand side.  More... | |
| std::vector< std::vector< std::unique_ptr< NumericVector< Number > > > > | outputs_vector | 
| The libMesh vectors that define the output functionals.  More... | |
| std::vector< std::unique_ptr< SparseMatrix< Number > > > | non_dirichlet_Aq_vector | 
| We may also need a second set of matrices/vectors that do not have the Dirichlet boundary conditions enforced.  More... | |
| std::vector< std::unique_ptr< NumericVector< Number > > > | non_dirichlet_Fq_vector | 
| std::vector< std::vector< std::unique_ptr< NumericVector< Number > > > > | non_dirichlet_outputs_vector | 
| std::unique_ptr< SparseMatrix< Number > > | non_dirichlet_inner_product_matrix | 
| Real | rel_training_tolerance | 
| Relative and absolute tolerances for training reduced basis using the Greedy scheme.  More... | |
| Real | abs_training_tolerance | 
| bool | normalize_rb_bound_in_greedy | 
| This boolean indicates if we normalize the RB error in the greedy using RBEvaluation::get_error_bound_normalization().  More... | |
| std::string | RB_training_type | 
| This string indicates the type of training that we will use.  More... | |
| std::vector< std::unique_ptr< NumericVector< Number > > > | _untransformed_basis_functions | 
| In cases where we have dof transformations such as a change of coordinates at some nodes we need to store an extra set of basis functions which have not had dof transformations applied to them.  More... | |
| std::unique_ptr< NumericVector< Number > > | _untransformed_solution | 
| We also store a copy of the untransformed solution in order to create _untransformed_basis_functions.  More... | |
| bool | _preevaluate_thetas_flag | 
| Flag to indicate if we preevaluate the theta functions.  More... | |
| bool | _preevaluate_thetas_completed | 
| Flag to indicate if the preevaluate_thetas function has been called, since this allows us to avoid calling preevaluate_thetas more than once, which is typically unnecessary.  More... | |
| unsigned int | _current_training_parameter_index | 
| The current training parameter index during reduced basis training.  More... | |
| std::vector< std::vector< Number > > | _evaluated_thetas | 
| Storage of evaluated theta functions at a set of parameters.  More... | |
This class is part of the rbOOmit framework.
RBConstruction implements the Construction stage of the certified reduced basis method for steady-state elliptic parametrized PDEs.
Definition at line 53 of file rb_construction.h.
| 
 | inherited | 
| 
 | inherited | 
| 
 | protectedinherited | 
Data structure to log the information.
The log is identified by the class name.
Definition at line 119 of file reference_counter.h.
| 
 | protectedinherited | 
Data structure to log the information.
The log is identified by the class name.
Definition at line 119 of file reference_counter.h.
| 
 | inherited | 
| 
 | inherited | 
The type of the parent.
Definition at line 130 of file rb_construction.h.
The type of system.
Definition at line 79 of file rb_construction.h.
| 
 | inherited | 
| 
 | inherited | 
| libMesh::RBConstruction::RBConstruction | ( | EquationSystems & | es, | 
| const std::string & | name, | ||
| const unsigned int | number | ||
| ) | 
Constructor.
Optionally initializes required data structures.
Definition at line 66 of file rb_construction.C.
References libMesh::System::assemble_before_solve.
| 
 | default | 
Special functions.
| 
 | delete | 
| 
 | virtualdefault | 
| 
 | inlineinherited | 
Activates the system.
Only active systems are solved.
Definition at line 2399 of file system.h.
References libMesh::System::_active.
| 
 | inlineinherited | 
true if the system is active, false otherwise. An active system will be solved. Definition at line 2391 of file system.h.
References libMesh::System::_active.
| 
 | inherited | 
Definition at line 1282 of file system.C.
References libMesh::System::add_vector().
Referenced by libMesh::ExplicitSystem::assemble_qoi_derivative(), and libMesh::FEMSystem::assemble_qoi_derivative().
| 
 | inherited | 
Definition at line 1218 of file system.C.
References libMesh::System::add_vector(), and libMesh::System::set_vector_as_adjoint().
Referenced by libMesh::ImplicitSystem::adjoint_solve().
| 
 | overrideprotectedvirtualinherited | 
Adds the system matrix.
Reimplemented from libMesh::System.
Definition at line 109 of file implicit_system.C.
References libMesh::System::add_matrices(), libMesh::System::add_matrix(), libMesh::libmesh_assert(), libMesh::ImplicitSystem::matrix, and libMesh::System::n_matrices().
| 
 | inherited | 
Adds the additional matrix mat_name to this system. 
Only allowed prior to assemble(). All additional matrices have the same sparsity pattern as the matrix used during solution. When not System but the user wants to initialize the main/system matrix, then all the additional matrices, if existent, have to be initialized by the user, too.
This non-template method will add a derived matrix type corresponding to the solver package. If the user wishes to specify the matrix type to add, use the templated add_matrix method instead
| mat_name | A name for the matrix | 
| type | The serial/parallel/ghosted type of the matrix | 
| mat_build_type | The matrix type to build | 
Definition at line 995 of file system.C.
References libMesh::System::_matrices, libMesh::System::_matrix_types, libMesh::SparseMatrix< T >::build(), libMesh::ParallelObject::comm(), libMesh::default_solver_package(), libMesh::DIAGONAL, libMesh::System::get_dof_map(), libMesh::System::get_mesh(), libMesh::DofMap::get_static_condensation(), libMesh::System::has_static_condensation(), libMesh::if(), libMesh::System::late_matrix_init(), and libMesh::libmesh_assert().
Referenced by libMesh::ImplicitSystem::add_matrices(), libMesh::EigenSystem::add_matrices(), alternative_fe_assembly(), libMesh::ClawSystem::assemble_boundary_condition_matrices(), libMesh::ImplicitSystem::create_static_condensation_system_matrix(), form_matrixA(), libMesh::EigenTimeSolver::init(), main(), and libMesh::NewmarkSystem::NewmarkSystem().
| 
 | inlineinherited | 
Adds the additional matrix mat_name to this system. 
Only allowed prior to assemble(). All additional matrices have the same sparsity pattern as the matrix used during solution. When not System but the user wants to initialize the main/system matrix, then all the additional matrices, if existent, have to be initialized by the user, too.
This method will create add a derived matrix of type MatrixType<Number>. One can use the non-templated add_matrix method to add a matrix corresponding to the default solver package
| mat_name | A name for the matrix | 
| type | The serial/parallel/ghosted type of the matrix | 
Definition at line 2606 of file system.h.
References libMesh::System::_matrices, libMesh::System::_matrix_types, and libMesh::System::late_matrix_init().
| 
 | inherited | 
Adds the additional matrix mat_name to this system. 
Only allowed prior to assemble(). All additional matrices have the same sparsity pattern as the matrix used during solution. When not System but the user wants to initialize the main/system matrix, then all the additional matrices, if existent, have to be initialized by the user, too.
| mat_name | A name for the matrix | 
| matrix | The matrix we are handing over the Systemfor ownership | 
| type | The serial/parallel/ghosted type of the matrix | 
Definition at line 1038 of file system.C.
References libMesh::System::_matrices, libMesh::System::_matrix_types, libMesh::ParallelObject::comm(), libMesh::System::late_matrix_init(), and libMesh::libmesh_assert().
| void libMesh::RBConstruction::add_scaled_Aq | ( | Number | scalar, | 
| unsigned int | q_a, | ||
| SparseMatrix< Number > * | input_matrix, | ||
| bool | symmetrize | ||
| ) | 
Add the scaled q^th affine matrix to input_matrix.
If symmetrize==true, then we symmetrize Aq before adding it.
Definition at line 1046 of file rb_construction.C.
References libMesh::SparseMatrix< T >::add(), add_scaled_matrix_and_vector(), libMesh::SparseMatrix< T >::close(), libMesh::RBAssemblyExpansion::get_A_assembly(), get_Aq(), get_rb_theta_expansion(), and rb_assembly_expansion.
Referenced by libMesh::RBSCMConstruction::add_scaled_symm_Aq().
| 
 | protected | 
This function loops over the mesh and applies the specified interior and/or boundary assembly routines, then adds the scaled result to input_matrix and/or input_vector.
If symmetrize==true then we assemble the symmetric part of the matrix, 0.5*(A + A^T)
Definition at line 631 of file rb_construction.C.
References libMesh::DofMap::_dof_coupling, libMesh::SparseMatrix< T >::add_matrix(), libMesh::NumericVector< T >::add_vector(), libMesh::FEAbstract::attach_quadrature_rule(), libMesh::ElemAssembly::boundary_assembly(), build_context(), libMesh::NumericVector< T >::close(), libMesh::SparseMatrix< T >::close(), libMesh::ParallelObject::comm(), libMesh::DofMap::constrain_element_matrix_and_vector(), libMesh::FEType::default_quadrature_rule(), libMesh::DGFEMContext::dg_terms_are_active(), libMesh::DenseMatrix< T >::el(), libMesh::FEMContext::elem_fe_reinit(), libMesh::DiffContext::get_dof_indices(), libMesh::System::get_dof_map(), libMesh::FEMContext::get_elem(), libMesh::DGFEMContext::get_elem_elem_jacobian(), libMesh::DiffContext::get_elem_jacobian(), libMesh::DGFEMContext::get_elem_neighbor_jacobian(), libMesh::DiffContext::get_elem_residual(), libMesh::FEMContext::get_element_fe(), libMesh::FEAbstract::get_fe_type(), libMesh::System::get_mesh(), libMesh::DGFEMContext::get_neighbor_dof_indices(), libMesh::DGFEMContext::get_neighbor_elem_jacobian(), libMesh::DGFEMContext::get_neighbor_neighbor_jacobian(), libMesh::ElemAssembly::get_nodal_values(), libMesh::FEMContext::get_side(), libMesh::DenseMatrix< T >::get_transpose(), impose_internal_fluxes, init_context(), libMesh::ElemAssembly::interior_assembly(), libMesh::Tri3Subdivision::is_ghost(), libMesh::DenseMatrixBase< T >::m(), TIMPI::Communicator::max(), mesh, libMesh::DenseMatrixBase< T >::n(), libMesh::Elem::n_sides(), libMesh::System::n_vars(), libMesh::Elem::neighbor_ptr(), libMesh::NODEELEM, post_process_elem_matrix_and_vector(), libMesh::FEMContext::pre_fe_reinit(), libMesh::DofObject::processor_id(), TIMPI::Communicator::rank(), libMesh::FEMContext::side, libMesh::DGFEMContext::side_fe_reinit(), libMesh::Elem::side_ptr(), skip_degenerate_sides, libMesh::TRI3SUBDIVISION, and libMesh::MeshTools::volume().
Referenced by add_scaled_Aq(), assemble_all_output_vectors(), assemble_Aq_matrix(), assemble_Fq_vector(), assemble_inner_product_matrix(), libMesh::TransientRBConstruction::assemble_L2_matrix(), and libMesh::TransientRBConstruction::assemble_Mq_matrix().
| 
 | inherited | 
Definition at line 1312 of file system.C.
References libMesh::System::add_vector().
Referenced by libMesh::ImplicitSystem::assemble_residual_derivatives().
| 
 | inherited | 
Definition at line 1167 of file system.C.
References libMesh::System::add_vector().
Referenced by libMesh::ImplicitSystem::sensitivity_solve().
| 
 | inherited | 
Adds the variable var to the list of variables for this system. 
If active_subdomains is either nullptr (the default) or points to an empty set, then it will be assumed that var has no subdomain restrictions
Definition at line 1342 of file system.C.
References libMesh::DofMap::add_variable(), and libMesh::System::get_dof_map().
Referenced by libMesh::DifferentiableSystem::add_second_order_dot_vars(), libMesh::System::add_variable(), assemble_and_solve(), OverlappingTestBase::init(), SolidSystem::init_data(), CurlCurlSystem::init_data(), SimpleEIMConstruction::init_data(), libMesh::AdvectionSystem::init_data(), HeatSystem::init_data(), SimpleRBConstruction::init_data(), libMesh::VariationalSmootherSystem::init_data(), NonManifoldCouplingTestBase::init_es(), main(), libMesh::ErrorVector::plot_error(), libMesh::System::read_header(), RationalMapTest< elem_type >::setUp(), SlitMeshRefinedSystemTest::setUp(), FETestBase< order, family, elem_type, 1 >::setUp(), WriteVecAndScalar::setupTests(), SystemsTest::simpleSetup(), MultiEvaluablePredTest::test(), ConstraintOperatorTest::test1DCoarseningNewNodes(), ConstraintOperatorTest::test1DCoarseningOperator(), MeshfunctionDFEM::test_mesh_function_dfem(), MeshfunctionDFEM::test_mesh_function_dfem_grad(), MeshFunctionTest::test_p_level(), MeshFunctionTest::test_subdomain_id_sets(), SystemsTest::testAssemblyWithDgFemContext(), DofMapTest::testBadElemFECombo(), EquationSystemsTest::testBadVarNames(), SystemsTest::testBlockRestrictedVarNDofs(), SystemsTest::testBoundaryProjectCube(), DofMapTest::testConstraintLoopDetection(), MeshInputTest::testCopyElementSolutionImpl(), MeshInputTest::testCopyElementVectorImpl(), MeshInputTest::testCopyNodalSolutionImpl(), ConstraintOperatorTest::testCoreform(), DefaultCouplingTest::testCoupling(), PointNeighborCouplingTest::testCoupling(), SystemsTest::testDofCouplingWithVarGroups(), DofMapTest::testDofOwner(), MeshInputTest::testDynaReadPatch(), MeshInputTest::testExodusWriteElementDataFromDiscontinuousNodalData(), MeshAssignTest::testMeshMoveAssign(), PeriodicBCTest::testPeriodicBC(), EquationSystemsTest::testPostInitAddElem(), EquationSystemsTest::testPostInitAddRealSystem(), SystemsTest::testProjectCubeWithMeshFunction(), MeshInputTest::testProjectionRegression(), SystemsTest::testProjectMatrix1D(), SystemsTest::testProjectMatrix2D(), SystemsTest::testProjectMatrix3D(), InfFERadialTest::testRefinement(), EquationSystemsTest::testRefineThenReinitPreserveFlags(), EquationSystemsTest::testReinitWithNodeElem(), EquationSystemsTest::testRepartitionThenReinit(), EquationSystemsTest::testSelectivePRefine(), SystemsTest::testSetSystemParameterOverEquationSystem(), BoundaryInfoTest::testShellFaceConstraints(), MeshInputTest::testSingleElementImpl(), WriteVecAndScalar::testWriteExodus(), and WriteVecAndScalar::testWriteNemesis().
| 
 | inherited | 
Adds the variable var to the list of variables for this system. 
Same as before, but assumes LAGRANGE as default value for FEType.family. If active_subdomains is either nullptr (the default) or points to an empty set, then it will be assumed that var has no subdomain restrictions 
Definition at line 1351 of file system.C.
References libMesh::System::add_variable().
| 
 | inherited | 
Adds variables vars to the list of variables for this system. 
If active_subdomains is either nullptr (the default) or points to an empty set, then it will be assumed that the vars have no subdomain restrictions. This API will end up calling this->add_variables(). However, we will additionally store data that can be leveraged by the DofMap to build degrees of freedom containers corresponding to all the variables in this variable array
An 'array variable' is simply a sequence of contiguous variable numbers defined by pair where the first member of the pair is the first number in the variable sequence and the second member of the pair is the number of the last variable in the sequence plus one. Array variables may be used in tandem with variable grouping by downstream code to build optimized physics kernels since each variable in the array will have the same shape functions.
Definition at line 1382 of file system.C.
References libMesh::DofMap::add_variable_array(), and libMesh::System::get_dof_map().
Referenced by DofMapTest::testArrayDofIndicesWithType().
| 
 | inherited | 
Adds the variables vars to the list of variables for this system. 
If active_subdomains is either nullptr (the default) or points to an empty set, then it will be assumed that the vars have no subdomain restrictions
Definition at line 1363 of file system.C.
References libMesh::DofMap::add_variables(), and libMesh::System::get_dof_map().
Referenced by libMesh::System::add_variables(), and SystemsTest::test100KVariables().
| 
 | inherited | 
Adds the variable var to the list of variables for this system. 
Same as before, but assumes LAGRANGE as default value for FEType.family. If active_subdomains is either nullptr (the default) or points to an empty set, then it will be assumed that var has no subdomain restrictions 
Definition at line 1372 of file system.C.
References libMesh::System::add_variables().
| 
 | inherited | 
Adds the additional vector vec_name to this system. 
All the additional vectors are similarly distributed, like the solution, and initialized to zero.
By default vectors added by add_vector are projected to changed grids by reinit(). To zero them instead (more efficient), pass "false" as the second argument
If the vector already exists, the existing vector is returned. after any upgrade to the projections or type has been made. We only handle upgrades (projections false->true, or type PARALLEL->GHOSTED) in this fashion, not downgrades, on the theory that if two codes have differing needs we want to support the union of those needs, not the intersection. Downgrades can only be accomplished manually, via set_vector_preservation() or by setting a vector type() and re-initializing. 
Definition at line 753 of file system.C.
References libMesh::System::_dof_map, libMesh::System::_is_initialized, libMesh::System::_vector_is_adjoint, libMesh::System::_vector_projections, libMesh::System::_vectors, libMesh::NumericVector< T >::build(), libMesh::NumericVector< T >::close(), libMesh::NumericVector< T >::closed(), libMesh::ParallelObject::comm(), libMesh::default_solver_package(), libMesh::GHOSTED, libMesh::NumericVector< T >::initialized(), libMesh::libmesh_assert(), libMesh::System::n_dofs(), libMesh::System::n_local_dofs(), libMesh::ParallelObject::n_processors(), libMesh::PARALLEL, libMesh::SERIAL, libMesh::NumericVector< T >::set_type(), libMesh::NumericVector< T >::swap(), and libMesh::NumericVector< T >::type().
Referenced by libMesh::System::add_adjoint_rhs(), libMesh::System::add_adjoint_solution(), libMesh::System::add_sensitivity_rhs(), libMesh::System::add_sensitivity_solution(), libMesh::ExplicitSystem::add_system_rhs(), libMesh::System::add_weighted_sensitivity_adjoint_solution(), libMesh::System::add_weighted_sensitivity_solution(), alternative_fe_assembly(), libMesh::AdjointRefinementEstimator::estimate_error(), fe_assembly(), form_functionA(), form_functionB(), libMesh::SecondOrderUnsteadySolver::init(), libMesh::UnsteadySolver::init(), libMesh::UnsteadySolver::init_adjoints(), libMesh::TimeSolver::init_adjoints(), libMesh::OptimizationSystem::init_data(), libMesh::ContinuationSystem::init_data(), main(), libMesh::NewmarkSystem::NewmarkSystem(), libMesh::System::read_header(), libMesh::FrequencySystem::set_frequencies(), libMesh::FrequencySystem::set_frequencies_by_range(), libMesh::FrequencySystem::set_frequencies_by_steps(), SystemsTest::testAddVectorProjChange(), SystemsTest::testAddVectorTypeChange(), SystemsTest::testPostInitAddVector(), and SystemsTest::testPostInitAddVectorTypeChange().
| 
 | inherited | 
Definition at line 1250 of file system.C.
References libMesh::System::add_vector(), and libMesh::System::set_vector_as_adjoint().
Referenced by libMesh::ImplicitSystem::weighted_sensitivity_adjoint_solve().
| 
 | inherited | 
Definition at line 1197 of file system.C.
References libMesh::System::add_vector().
Referenced by libMesh::ImplicitSystem::weighted_sensitivity_solve().
| 
 | overridevirtualinherited | 
Solves for the derivative of each of the system's quantities of interest q in qoi[qoi_indices] with respect to each parameter in parameters, placing the result for qoi i and parameter j into sensitivities[i][j]. 
Uses adjoint_solve() and the adjoint sensitivity method.
Currently uses finite differenced derivatives (partial q / partial p) and (partial R / partial p).
Reimplemented from libMesh::System.
Definition at line 513 of file implicit_system.C.
References libMesh::ImplicitSystem::adjoint_solve(), libMesh::SensitivityData::allocate_data(), libMesh::ExplicitSystem::assemble_qoi(), libMesh::ImplicitSystem::assemble_residual_derivatives(), libMesh::NumericVector< T >::dot(), libMesh::System::get_qoi_values(), libMesh::System::get_sensitivity_rhs(), libMesh::QoISet::has_index(), libMesh::System::is_adjoint_already_solved(), libMesh::System::n_qois(), libMesh::Real, libMesh::ParameterVector::size(), and libMesh::TOLERANCE.
Referenced by libMesh::UnsteadySolver::integrate_adjoint_sensitivity(), and main().
| 
 | overridevirtualinherited | 
Assembles & solves the linear system (dR/du)^T*z = dq/du, for those quantities of interest q specified by qoi_indices. 
Leave qoi_indices empty to solve all adjoint problems.
Reimplemented from libMesh::System.
Reimplemented in libMesh::DifferentiableSystem.
Definition at line 192 of file implicit_system.C.
References libMesh::System::add_adjoint_solution(), libMesh::LinearSolver< T >::adjoint_solve(), libMesh::System::assemble_before_solve, libMesh::ExplicitSystem::assemble_qoi_derivative(), libMesh::ImplicitSystem::assembly(), libMesh::DofMap::enforce_adjoint_constraints_exactly(), libMesh::System::get_adjoint_rhs(), libMesh::System::get_adjoint_solution(), libMesh::System::get_dof_map(), libMesh::ImplicitSystem::get_linear_solve_parameters(), libMesh::ImplicitSystem::get_linear_solver(), libMesh::QoISet::has_index(), libMesh::make_range(), libMesh::ImplicitSystem::matrix, and libMesh::System::n_qois().
Referenced by libMesh::ImplicitSystem::adjoint_qoi_parameter_sensitivity(), libMesh::AdjointRefinementEstimator::estimate_error(), libMesh::ImplicitSystem::qoi_parameter_hessian(), and libMesh::ImplicitSystem::qoi_parameter_hessian_vector_product().
| 
 | protectedvirtual | 
Helper function that actually allocates all the data structures required by this class.
Reimplemented in libMesh::TransientRBConstruction.
Definition at line 510 of file rb_construction.C.
References Aq_vector, libMesh::DofMap::attach_matrix(), libMesh::SparseMatrix< T >::build(), libMesh::NumericVector< T >::build(), libMesh::ParallelObject::comm(), Fq_representor, Fq_representor_innerprods, Fq_vector, libMesh::System::get_dof_map(), libMesh::RBThetaExpansion::get_n_A_terms(), libMesh::RBThetaExpansion::get_n_F_terms(), libMesh::RBThetaExpansion::get_n_output_terms(), libMesh::RBThetaExpansion::get_n_outputs(), get_rb_theta_expansion(), inner_product_matrix, libMesh::System::n_dofs(), libMesh::System::n_local_dofs(), non_dirichlet_Aq_vector, non_dirichlet_Fq_vector, non_dirichlet_inner_product_matrix, non_dirichlet_outputs_vector, output_dual_innerprods, outputs_vector, libMesh::PARALLEL, store_non_dirichlet_operators, and truth_outputs.
Referenced by libMesh::TransientRBConstruction::allocate_data_structures(), and initialize_rb_construction().
| 
 | inlineoverridevirtualinherited | 
Prepares matrix and _dof_map for matrix assembly. 
Does not actually assemble anything. For matrix assembly, use the assemble() in derived classes. Should be overridden in derived classes. 
Reimplemented from libMesh::ImplicitSystem.
Reimplemented in libMesh::FrequencySystem, and libMesh::NewmarkSystem.
Definition at line 115 of file linear_implicit_system.h.
References libMesh::ImplicitSystem::assemble().
Referenced by libMesh::NewmarkSystem::assemble(), libMesh::FrequencySystem::assemble(), libMesh::LinearImplicitSystem::assembly(), and libMesh::LinearImplicitSystem::solve().
| 
 | virtual | 
Assemble the matrices and vectors for this system.
Optionally skip matrix or vector assembly (e.g. we may want to read data in from disk instead).
Reimplemented in libMesh::TransientRBConstruction.
Definition at line 492 of file rb_construction.C.
References assemble_all_affine_operators(), assemble_all_affine_vectors(), assemble_all_output_vectors(), and assemble_misc_matrices().
Referenced by libMesh::TransientRBConstruction::assemble_affine_expansion(), and initialize_rb_construction().
| 
 | protectedvirtual | 
Assemble and store all Q_a affine operators as well as the inner-product matrix.
Reimplemented in libMesh::TransientRBConstruction.
Definition at line 1083 of file rb_construction.C.
References assemble_Aq_matrix(), get_Aq(), libMesh::RBThetaExpansion::get_n_A_terms(), get_non_dirichlet_Aq(), get_rb_theta_expansion(), libMesh::out, and store_non_dirichlet_operators.
Referenced by assemble_affine_expansion(), and libMesh::TransientRBConstruction::assemble_all_affine_operators().
| 
 | protectedvirtual | 
Assemble and store the affine RHS vectors.
Definition at line 1103 of file rb_construction.C.
References assemble_Fq_vector(), get_Fq(), libMesh::RBThetaExpansion::get_n_F_terms(), get_non_dirichlet_Fq(), get_rb_theta_expansion(), libMesh::out, and store_non_dirichlet_operators.
Referenced by assemble_affine_expansion().
| 
 | protectedvirtual | 
Assemble and store the output vectors.
Definition at line 1141 of file rb_construction.C.
References add_scaled_matrix_and_vector(), libMesh::RBThetaExpansion::get_n_output_terms(), libMesh::RBThetaExpansion::get_n_outputs(), get_non_dirichlet_output_vector(), libMesh::RBAssemblyExpansion::get_output_assembly(), get_output_vector(), get_rb_theta_expansion(), libMesh::out, rb_assembly_expansion, store_non_dirichlet_operators, and libMesh::NumericVector< T >::zero().
Referenced by assemble_affine_expansion().
| void libMesh::RBConstruction::assemble_Aq_matrix | ( | unsigned int | q, | 
| SparseMatrix< Number > * | input_matrix, | ||
| bool | apply_dof_constraints = true | ||
| ) | 
Assemble the q^th affine matrix and store it in input_matrix.
Definition at line 1029 of file rb_construction.C.
References add_scaled_matrix_and_vector(), libMesh::RBAssemblyExpansion::get_A_assembly(), get_rb_theta_expansion(), rb_assembly_expansion, and libMesh::SparseMatrix< T >::zero().
Referenced by assemble_all_affine_operators().
| void libMesh::RBConstruction::assemble_Fq_vector | ( | unsigned int | q, | 
| NumericVector< Number > * | input_vector, | ||
| bool | apply_dof_constraints = true | ||
| ) | 
Assemble the q^th affine vector and store it in input_matrix.
Definition at line 1124 of file rb_construction.C.
References add_scaled_matrix_and_vector(), libMesh::RBAssemblyExpansion::get_F_assembly(), get_rb_theta_expansion(), rb_assembly_expansion, and libMesh::NumericVector< T >::zero().
Referenced by assemble_all_affine_vectors().
| void libMesh::RBConstruction::assemble_inner_product_matrix | ( | SparseMatrix< Number > * | input_matrix, | 
| bool | apply_dof_constraints = true | ||
| ) | 
Assemble the inner product matrix and store it in input_matrix.
Definition at line 996 of file rb_construction.C.
References add_scaled_matrix_and_vector(), energy_inner_product_coeffs, libMesh::RBAssemblyExpansion::get_A_assembly(), libMesh::RBThetaExpansion::get_n_A_terms(), get_rb_theta_expansion(), inner_product_assembly, rb_assembly_expansion, use_energy_inner_product, and libMesh::SparseMatrix< T >::zero().
Referenced by assemble_misc_matrices().
| 
 | protectedvirtual | 
Assemble and store all the inner-product matrix, the constraint matrix (for constrained problems) and the mass matrix (for time-dependent problems).
Reimplemented in libMesh::TransientRBConstruction.
Definition at line 1071 of file rb_construction.C.
References assemble_inner_product_matrix(), inner_product_matrix, non_dirichlet_inner_product_matrix, libMesh::out, and store_non_dirichlet_operators.
Referenced by assemble_affine_expansion(), and libMesh::TransientRBConstruction::assemble_misc_matrices().
| 
 | overridevirtualinherited | 
Prepares qoi for quantity of interest assembly, then calls user qoi function. 
Can be overridden in derived classes.
Reimplemented from libMesh::System.
Reimplemented in libMesh::FEMSystem.
Definition at line 54 of file explicit_system.C.
References libMesh::System::assemble_qoi(), libMesh::QoISet::has_index(), libMesh::make_range(), libMesh::System::n_qois(), and libMesh::System::set_qoi().
Referenced by libMesh::ImplicitSystem::adjoint_qoi_parameter_sensitivity(), libMesh::ImplicitSystem::forward_qoi_parameter_sensitivity(), libMesh::Euler2Solver::integrate_qoi_timestep(), libMesh::EulerSolver::integrate_qoi_timestep(), libMesh::SteadySolver::integrate_qoi_timestep(), libMesh::ImplicitSystem::qoi_parameter_hessian(), and libMesh::ImplicitSystem::qoi_parameter_hessian_vector_product().
| 
 | overridevirtualinherited | 
Prepares adjoint_rhs for quantity of interest derivative assembly, then calls user qoi derivative function. 
Can be overridden in derived classes.
Reimplemented from libMesh::System.
Reimplemented in libMesh::FEMSystem.
Definition at line 67 of file explicit_system.C.
References libMesh::System::add_adjoint_rhs(), libMesh::System::assemble_qoi_derivative(), libMesh::QoISet::has_index(), libMesh::make_range(), libMesh::System::n_qois(), and libMesh::NumericVector< T >::zero().
Referenced by libMesh::ImplicitSystem::adjoint_solve(), libMesh::ImplicitSystem::forward_qoi_parameter_sensitivity(), libMesh::ImplicitSystem::qoi_parameter_hessian(), libMesh::ImplicitSystem::qoi_parameter_hessian_vector_product(), and libMesh::ImplicitSystem::weighted_sensitivity_adjoint_solve().
| 
 | overridevirtualinherited | 
Residual parameter derivative function.
Uses finite differences by default.
This will assemble the sensitivity rhs vectors to hold -(partial R / partial p_i), making them ready to solve the forward sensitivity equation.
Can be overridden in derived classes.
Reimplemented from libMesh::System.
Definition at line 470 of file implicit_system.C.
References libMesh::System::add_sensitivity_rhs(), libMesh::ImplicitSystem::assembly(), libMesh::NumericVector< T >::close(), libMesh::Real, libMesh::ExplicitSystem::rhs, libMesh::ParameterVector::size(), and libMesh::TOLERANCE.
Referenced by libMesh::ImplicitSystem::adjoint_qoi_parameter_sensitivity(), and libMesh::ImplicitSystem::sensitivity_solve().
| 
 | overridevirtualinherited | 
Assembles a residual in rhs and/or a jacobian in matrix, as requested. 
Reimplemented from libMesh::ImplicitSystem.
Definition at line 363 of file linear_implicit_system.C.
References libMesh::NumericVector< T >::add_vector(), libMesh::LinearImplicitSystem::assemble(), libMesh::NumericVector< T >::close(), libMesh::SparseMatrix< T >::close(), libMesh::ImplicitSystem::matrix, libMesh::ExplicitSystem::rhs, and libMesh::System::solution.
| 
 | inherited | 
Register a user function to use in assembling the system matrix and RHS.
Definition at line 1939 of file system.C.
References libMesh::System::_assemble_system_function, libMesh::System::_assemble_system_object, fptr(), and libMesh::libmesh_assert().
Referenced by assemble_and_solve(), main(), ConstraintOperatorTest::test1DCoarseningNewNodes(), ConstraintOperatorTest::test1DCoarseningOperator(), SystemsTest::testAssemblyWithDgFemContext(), ConstraintOperatorTest::testCoreform(), SystemsTest::testDofCouplingWithVarGroups(), and PeriodicBCTest::testPeriodicBC().
| 
 | inherited | 
Register a user object to use in assembling the system matrix and RHS.
Definition at line 1956 of file system.C.
References libMesh::System::_assemble_system_function, and libMesh::System::_assemble_system_object.
Referenced by main().
| 
 | inherited | 
Register a user function for imposing constraints.
Definition at line 1970 of file system.C.
References libMesh::System::_constrain_system_function, libMesh::System::_constrain_system_object, fptr(), and libMesh::libmesh_assert().
| 
 | inherited | 
Register a user object for imposing constraints.
Definition at line 1987 of file system.C.
References libMesh::System::_constrain_system_function, and libMesh::System::_constrain_system_object.
Referenced by libMesh::VariationalMeshSmoother::setup(), and DofMapTest::testConstraintLoopDetection().
| 
 | inherited | 
Register a user function to use in initializing the system.
Definition at line 1908 of file system.C.
References libMesh::System::_init_system_function, libMesh::System::_init_system_object, fptr(), and libMesh::libmesh_assert().
Referenced by main().
| 
 | inherited | 
Register a user class to use to initialize the system.
attach_init_function. Definition at line 1925 of file system.C.
References libMesh::System::_init_system_function, and libMesh::System::_init_system_object.
| 
 | inherited | 
Register a user function for evaluating derivatives of a quantity of interest with respect to test functions, whose values should be placed in System::rhs. 
Definition at line 2044 of file system.C.
References libMesh::System::_qoi_evaluate_derivative_function, libMesh::System::_qoi_evaluate_derivative_object, fptr(), and libMesh::libmesh_assert().
| 
 | inherited | 
Register a user object for evaluating derivatives of a quantity of interest with respect to test functions, whose values should be placed in System::rhs. 
Definition at line 2061 of file system.C.
References libMesh::System::_qoi_evaluate_derivative_function, and libMesh::System::_qoi_evaluate_derivative_object.
| 
 | inherited | 
Register a user function for evaluating the quantities of interest, whose values should be placed in System::qoi. 
Definition at line 2012 of file system.C.
References libMesh::System::_qoi_evaluate_function, libMesh::System::_qoi_evaluate_object, fptr(), and libMesh::libmesh_assert().
| 
 | inherited | 
Register a user object for evaluating the quantities of interest, whose values should be placed in System::qoi. 
Definition at line 2030 of file system.C.
References libMesh::System::_qoi_evaluate_function, and libMesh::System::_qoi_evaluate_object.
| 
 | inherited | 
This function enables the user to provide a shell matrix, i.e.
a matrix that is not stored element-wise, but as a function. When you register your shell matrix using this function, calling solve() will no longer use the matrix member but the registered shell matrix instead. You can reset this behaviour to its original state by supplying a nullptr to this function. 
Definition at line 161 of file linear_implicit_system.C.
References libMesh::LinearImplicitSystem::_shell_matrix.
Referenced by libMesh::LinearImplicitSystem::detach_shell_matrix(), and main().
| 
 | inherited | 
Projects arbitrary boundary functions onto a vector of degree of freedom values for the current system.
This method projects an arbitrary boundary function onto the solution via L2 projections and nodal interpolations on each element.
Only degrees of freedom which affect the function's trace on a boundary in the set b are affected. Only degrees of freedom associated with the variables listed in the vector variables are projected. The function value f and its gradient g are user-provided cloneable functors. A gradient g is only required/used for projecting onto finite element spaces with continuous derivatives. 
Definition at line 1253 of file system_projection.C.
Referenced by SystemsTest::testBoundaryProjectCube().
| 
 | inherited | 
Projects arbitrary boundary functions onto a vector of degree of freedom values for the current system.
This method projects components of an arbitrary boundary function onto the solution via L2 projections and nodal interpolations on each element.
Only degrees of freedom which affect the function's trace on a boundary in the set b are affected. Only degrees of freedom associated with the variables listed in the vector variables are projected. The function value fptr and its gradient gptr are represented by function pointers. A gradient gptr is only required/used for projecting onto finite element spaces with continuous derivatives. 
Definition at line 1236 of file system_projection.C.
References fptr(), and gptr().
| 
 | inherited | 
Projects arbitrary boundary functions onto a vector of degree of freedom values for the current system.
This method projects an arbitrary function via L2 projections and nodal interpolations on each element.
Only degrees of freedom which affect the function's trace on a boundary in the set b are affected. Only degrees of freedom associated with the variables listed in the vector variables are projected. The function value f and its gradient g are user-provided cloneable functors. A gradient g is only required/used for projecting onto finite element spaces with continuous derivatives.
Constrain the new vector using the requested adjoint rather than primal constraints if is_adjoint is non-negative.
Definition at line 1289 of file system_projection.C.
References libMesh::NumericVector< T >::close(), libMesh::libmesh_ignore(), and libMesh::Threads::parallel_for().
| 
 | inherited | 
Projects arbitrary boundary functions onto a vector of degree of freedom values for the current system.
This method projects an arbitrary boundary function via L2 projections and nodal interpolations on each element.
Only degrees of freedom which affect the function's trace on a boundary in the set b are affected. Only degrees of freedom associated with the variables listed in the vector variables are projected. The function value fptr and its gradient gptr are represented by function pointers. A gradient gptr is only required/used for projecting onto finite element spaces with continuous derivatives.
Constrain the new vector using the requested adjoint rather than primal constraints if is_adjoint is non-negative.
Definition at line 1271 of file system_projection.C.
References fptr(), and gptr().
| 
 | inherited | 
Broadcasts parameters from processor proc_id to all processors.
This broadcasts the RBParameters object from .get_parameters(), and then sets it on all processors with .set_parameters().
Definition at line 720 of file rb_construction_base.C.
Referenced by compute_max_error_bound().
| 
 | protectedvirtual | 
Builds a DGFEMContext object with enough information to do evaluations on each element.
We use DGFEMContext since it allows for both DG and continuous Galerkin formulations.
Definition at line 626 of file rb_construction.C.
Referenced by add_scaled_matrix_and_vector().
| 
 | static | 
It's helpful to be able to generate a DirichletBoundary that stores a ZeroFunction in order to impose Dirichlet boundary conditions.
Definition at line 2495 of file rb_construction.C.
Referenced by SimpleRBConstruction::init_data().
| 
 | inherited | 
var in the vector v, in the specified norm (e.g. L2, L_INF, H1) Definition at line 1502 of file system.C.
References libMesh::DISCRETE_L1, libMesh::DISCRETE_L2, libMesh::DISCRETE_L_INF, libMesh::System::discrete_var_norm(), libMesh::L2, libMesh::System::n_vars(), and libMesh::Real.
Referenced by libMesh::TwostepTimeSolver::adjoint_solve(), libMesh::AdaptiveTimeSolver::calculate_norm(), libMesh::UnsteadySolver::du(), main(), output_norms(), ConstraintOperatorTest::testCoreform(), and MeshInputTest::testProjectionRegression().
| 
 | inherited | 
v, using component_norm and component_scale to choose and weight the norms of each variable. Definition at line 1524 of file system.C.
References libMesh::System::_dof_map, libMesh::System::_mesh, libMesh::FEGenericBase< OutputType >::build(), libMesh::NumericVector< T >::build(), libMesh::ParallelObject::comm(), libMesh::FEType::default_quadrature_rule(), dim, libMesh::DISCRETE_L1, libMesh::DISCRETE_L2, libMesh::DISCRETE_L_INF, libMesh::System::discrete_var_norm(), libMesh::DofMap::dof_indices(), libMesh::MeshBase::elem_dimensions(), libMesh::Utility::enum_to_string(), libMesh::FEInterface::field_type(), libMesh::System::get_dof_map(), libMesh::System::get_mesh(), libMesh::GHOSTED, libMesh::H1, libMesh::H1_SEMINORM, libMesh::H2, libMesh::H2_SEMINORM, libMesh::L1, libMesh::NumericVector< T >::l1_norm(), libMesh::L2, libMesh::NumericVector< T >::l2_norm(), libMesh::L_INF, libMesh::libmesh_assert(), libMesh::NumericVector< T >::linfty_norm(), libMesh::NumericVector< T >::local_size(), libMesh::NumericVector< T >::localize(), libMesh::make_range(), TIMPI::Communicator::max(), libMesh::System::n_vars(), libMesh::TensorTools::norm(), libMesh::TensorTools::norm_sq(), libMesh::Real, libMesh::NumericVector< T >::size(), TIMPI::Communicator::sum(), libMesh::TYPE_SCALAR, libMesh::TYPE_VECTOR, libMesh::DofMap::variable_type(), libMesh::W1_INF_SEMINORM, libMesh::W2_INF_SEMINORM, and libMesh::SystemNorm::weight().
| 
 | inlineprotectedinherited | 
Definition at line 1998 of file system.h.
References libMesh::System::_matrices_initialized.
Referenced by libMesh::EigenSystem::set_eigenproblem_type().
| 
 | protected | 
Check if the linear solver reports convergence.
Throw an error when that is not the case.
Definition at line 2704 of file rb_construction.C.
References libMesh::LinearSolver< T >::get_converged_reason().
Referenced by compute_Fq_representor_innerprods(), compute_output_dual_innerprods(), enrich_basis_from_rhs_terms(), libMesh::TransientRBConstruction::truth_solve(), truth_solve(), libMesh::TransientRBConstruction::update_residual_terms(), and update_residual_terms().
| 
 | virtual | 
Definition at line 457 of file rb_construction.C.
References libMesh::System::solution.
Referenced by train_reduced_basis_with_greedy().
| 
 | overridevirtual | 
Clear all the data structures associated with the system.
Reimplemented from libMesh::RBConstructionBase< LinearImplicitSystem >.
Reimplemented in libMesh::TransientSystem< RBConstruction >, and libMesh::TransientRBConstruction.
Definition at line 103 of file rb_construction.C.
References Aq_vector, libMesh::RBConstructionBase< LinearImplicitSystem >::clear(), Fq_representor, Fq_representor_innerprods_computed, Fq_vector, non_dirichlet_Aq_vector, non_dirichlet_Fq_vector, non_dirichlet_outputs_vector, outputs_vector, and store_non_dirichlet_operators.
| 
 | inlineinherited | 
Parallel::Communicator object used by this mesh. Definition at line 97 of file parallel_object.h.
References libMesh::ParallelObject::_communicator.
Referenced by libMesh::__libmesh_petsc_diff_solver_jacobian(), libMesh::__libmesh_petsc_diff_solver_monitor(), libMesh::__libmesh_petsc_diff_solver_residual(), libMesh::__libmesh_tao_equality_constraints(), libMesh::__libmesh_tao_equality_constraints_jacobian(), libMesh::__libmesh_tao_gradient(), libMesh::__libmesh_tao_hessian(), libMesh::__libmesh_tao_inequality_constraints(), libMesh::__libmesh_tao_inequality_constraints_jacobian(), libMesh::__libmesh_tao_objective(), libMesh::MeshRefinement::_coarsen_elements(), libMesh::ExactSolution::_compute_error(), libMesh::UniformRefinementEstimator::_estimate_error(), libMesh::Partitioner::_find_global_index_by_pid_map(), libMesh::BoundaryInfo::_find_id_maps(), libMesh::PetscLinearSolver< Number >::_petsc_shell_matrix_get_diagonal(), libMesh::SlepcEigenSolver< libMesh::Number >::_petsc_shell_matrix_get_diagonal(), libMesh::PetscLinearSolver< Number >::_petsc_shell_matrix_mult(), libMesh::SlepcEigenSolver< libMesh::Number >::_petsc_shell_matrix_mult(), libMesh::PetscLinearSolver< Number >::_petsc_shell_matrix_mult_add(), libMesh::MeshRefinement::_refine_elements(), libMesh::MeshRefinement::_smooth_flags(), libMesh::DofMap::add_constraints_to_send_list(), add_cube_convex_hull_to_mesh(), libMesh::PetscDMWrapper::add_dofs_helper(), libMesh::PetscDMWrapper::add_dofs_to_section(), libMesh::TransientRBConstruction::add_IC_to_RB_space(), libMesh::RBEIMEvaluation::add_interpolation_data(), libMesh::CondensedEigenSystem::add_matrices(), libMesh::EigenSystem::add_matrices(), libMesh::System::add_matrix(), add_scaled_matrix_and_vector(), libMesh::DofMap::add_variable(), libMesh::DofMap::add_variables(), libMesh::System::add_vector(), libMesh::MeshTools::Modification::all_tri(), libMesh::LaplaceMeshSmoother::allgather_graph(), libMesh::DofMap::allgather_recursive_constraints(), libMesh::TransientRBConstruction::allocate_data_structures(), allocate_data_structures(), libMesh::TransientRBConstruction::assemble_affine_expansion(), libMesh::AdvectionSystem::assemble_claw_rhs(), libMesh::FEMSystem::assemble_qoi(), libMesh::Nemesis_IO::assert_symmetric_cmaps(), libMesh::MeshCommunication::assign_global_indices(), libMesh::Partitioner::assign_partitioning(), libMesh::MeshTools::Generation::build_extrusion(), libMesh::Partitioner::build_graph(), libMesh::BoundaryInfo::build_node_list_from_side_list(), libMesh::EquationSystems::build_parallel_elemental_solution_vector(), libMesh::EquationSystems::build_parallel_solution_vector(), libMesh::PetscDMWrapper::build_section(), libMesh::PetscDMWrapper::build_sf(), libMesh::MeshBase::cache_elem_data(), libMesh::System::calculate_norm(), libMesh::DofMap::check_dirichlet_bcid_consistency(), compute_Fq_representor_innerprods(), compute_max_error_bound(), libMesh::Nemesis_IO_Helper::compute_num_global_elem_blocks(), libMesh::Nemesis_IO_Helper::compute_num_global_nodesets(), libMesh::Nemesis_IO_Helper::compute_num_global_sidesets(), compute_output_dual_innerprods(), compute_residual_dual_norm_slow(), libMesh::RBSCMConstruction::compute_SCM_bounds_on_training_set(), libMesh::DofMap::computed_sparsity_already(), libMesh::Problem_Interface::computeF(), libMesh::Problem_Interface::computeJacobian(), libMesh::Problem_Interface::computePreconditioner(), libMesh::ContinuationSystem::ContinuationSystem(), libMesh::MeshBase::copy_constraint_rows(), libMesh::ExodusII_IO::copy_elemental_solution(), libMesh::ExodusII_IO::copy_nodal_solution(), libMesh::ExodusII_IO::copy_scalar_solution(), libMesh::CondensedEigenSystem::copy_super_to_sub(), libMesh::MeshTools::correct_node_proc_ids(), libMesh::MeshTools::create_bounding_box(), libMesh::DofMap::create_dof_constraints(), libMesh::MeshTools::create_nodal_bounding_box(), libMesh::MeshRefinement::create_parent_error_vector(), libMesh::MeshTools::create_processor_bounding_box(), libMesh::MeshTools::create_subdomain_bounding_box(), libMesh::PetscMatrix< T >::create_submatrix_nosort(), create_wrapped_function(), libMesh::MeshCommunication::delete_remote_elements(), libMesh::RBEIMEvaluation::distribute_bfs(), DMlibMeshFunction(), DMlibMeshJacobian(), DMlibMeshSetSystem_libMesh(), DMVariableBounds_libMesh(), libMesh::DTKSolutionTransfer::DTKSolutionTransfer(), libMesh::MeshRefinement::eliminate_unrefined_patches(), libMesh::RBEIMConstruction::enrich_eim_approximation_on_interiors(), libMesh::RBEIMConstruction::enrich_eim_approximation_on_nodes(), libMesh::RBEIMConstruction::enrich_eim_approximation_on_sides(), libMesh::TransientRBConstruction::enrich_RB_space(), libMesh::EpetraVector< T >::EpetraVector(), AssembleOptimization::equality_constraints(), libMesh::PatchRecoveryErrorEstimator::estimate_error(), libMesh::WeightedPatchRecoveryErrorEstimator::estimate_error(), libMesh::AdjointRefinementEstimator::estimate_error(), libMesh::ExactErrorEstimator::estimate_error(), libMesh::SmoothnessEstimator::estimate_smoothness(), libMesh::MeshRefinement::flag_elements_by_elem_fraction(), libMesh::MeshRefinement::flag_elements_by_error_fraction(), libMesh::MeshRefinement::flag_elements_by_error_tolerance(), libMesh::MeshRefinement::flag_elements_by_mean_stddev(), libMesh::MeshRefinement::flag_elements_by_nelem_target(), libMesh::RBEIMEvaluation::gather_bfs(), libMesh::DofMap::gather_constraints(), libMesh::MeshfreeInterpolation::gather_remote_data(), libMesh::CondensedEigenSystem::get_eigenpair(), libMesh::RBEIMEvaluation::get_eim_basis_function_node_value(), libMesh::RBEIMEvaluation::get_eim_basis_function_side_value(), libMesh::RBEIMEvaluation::get_eim_basis_function_value(), libMesh::MeshBase::get_info(), libMesh::System::get_info(), libMesh::DofMap::get_info(), libMesh::RBEIMEvaluation::get_interior_basis_functions_as_vecs(), libMesh::ImplicitSystem::get_linear_solver(), libMesh::RBEIMConstruction::get_max_abs_value(), libMesh::RBEIMConstruction::get_node_max_abs_value(), libMesh::RBEIMEvaluation::get_parametrized_function_node_value(), libMesh::RBEIMEvaluation::get_parametrized_function_side_value(), libMesh::RBEIMEvaluation::get_parametrized_function_value(), libMesh::RBEIMConstruction::get_random_point(), AssembleOptimization::inequality_constraints(), AssembleOptimization::inequality_constraints_jacobian(), libMesh::LocationMap< T >::init(), libMesh::TimeSolver::init(), libMesh::StaticCondensation::init(), libMesh::SystemSubsetBySubdomain::init(), libMesh::PetscDMWrapper::init_and_attach_petscdm(), libMesh::AdvectionSystem::init_data(), libMesh::ClawSystem::init_data(), libMesh::PetscDMWrapper::init_petscdm(), libMesh::ExodusII_IO_Helper::initialize(), libMesh::OptimizationSystem::initialize_equality_constraints_storage(), libMesh::OptimizationSystem::initialize_inequality_constraints_storage(), libMesh::RBEIMConstruction::initialize_parametrized_functions_in_training_set(), libMesh::RBEIMConstruction::inner_product(), integrate_function(), libMesh::MeshTools::libmesh_assert_consistent_distributed(), libMesh::MeshTools::libmesh_assert_consistent_distributed_nodes(), libMesh::MeshTools::libmesh_assert_contiguous_dof_ids(), libMesh::MeshTools::libmesh_assert_equal_connectivity(), libMesh::MeshTools::libmesh_assert_equal_points(), libMesh::MeshTools::libmesh_assert_parallel_consistent_new_node_procids(), libMesh::MeshTools::libmesh_assert_parallel_consistent_procids< Elem >(), libMesh::MeshTools::libmesh_assert_parallel_consistent_procids< Node >(), libMesh::MeshTools::libmesh_assert_topology_consistent_procids< Node >(), libMesh::MeshTools::libmesh_assert_valid_boundary_ids(), libMesh::MeshTools::libmesh_assert_valid_constraint_rows(), libMesh::MeshTools::libmesh_assert_valid_dof_ids(), libMesh::MeshTools::libmesh_assert_valid_neighbors(), libMesh::DistributedMesh::libmesh_assert_valid_parallel_flags(), libMesh::DistributedMesh::libmesh_assert_valid_parallel_object_ids(), libMesh::DistributedMesh::libmesh_assert_valid_parallel_p_levels(), libMesh::MeshTools::libmesh_assert_valid_refinement_flags(), libMesh::MeshTools::libmesh_assert_valid_unique_ids(), libMesh::libmesh_petsc_linesearch_shellfunc(), libMesh::libmesh_petsc_preconditioner_apply(), libMesh::libmesh_petsc_recalculate_monitor(), libMesh::libmesh_petsc_snes_fd_residual(), libMesh::libmesh_petsc_snes_jacobian(), libMesh::libmesh_petsc_snes_mffd_interface(), libMesh::libmesh_petsc_snes_mffd_residual(), libMesh::libmesh_petsc_snes_postcheck(), libMesh::libmesh_petsc_snes_precheck(), libMesh::libmesh_petsc_snes_residual(), libMesh::libmesh_petsc_snes_residual_helper(), libMesh::MeshRefinement::limit_level_mismatch_at_edge(), libMesh::MeshRefinement::limit_level_mismatch_at_node(), libMesh::MeshRefinement::limit_overrefined_boundary(), libMesh::MeshRefinement::limit_underrefined_boundary(), libMesh::LinearImplicitSystem::LinearImplicitSystem(), main(), libMesh::MeshRefinement::make_coarsening_compatible(), libMesh::MeshCommunication::make_elems_parallel_consistent(), libMesh::MeshRefinement::make_flags_parallel_consistent(), libMesh::MeshCommunication::make_new_node_proc_ids_parallel_consistent(), libMesh::MeshCommunication::make_new_nodes_parallel_consistent(), libMesh::MeshCommunication::make_node_bcids_parallel_consistent(), libMesh::MeshCommunication::make_node_ids_parallel_consistent(), libMesh::MeshCommunication::make_node_proc_ids_parallel_consistent(), libMesh::MeshCommunication::make_node_unique_ids_parallel_consistent(), libMesh::MeshCommunication::make_nodes_parallel_consistent(), libMesh::MeshCommunication::make_p_levels_parallel_consistent(), libMesh::MeshRefinement::make_refinement_compatible(), libMesh::TransientRBConstruction::mass_matrix_scaled_matvec(), libMesh::FEMSystem::mesh_position_set(), libMesh::TriangulatorInterface::MeshedHole::MeshedHole(), LinearElasticityWithContact::move_mesh(), libMesh::DistributedMesh::n_active_elem(), libMesh::MeshTools::n_active_levels(), libMesh::BoundaryInfo::n_boundary_conds(), libMesh::MeshTools::n_connected_components(), libMesh::DofMap::n_constrained_dofs(), libMesh::MeshBase::n_constraint_rows(), libMesh::DofMap::n_dofs(), libMesh::DofMap::n_dofs_per_processor(), libMesh::BoundaryInfo::n_edge_conds(), libMesh::CondensedEigenSystem::n_global_non_condensed_dofs(), libMesh::MeshTools::n_levels(), MixedOrderTest::n_neighbor_links(), libMesh::BoundaryInfo::n_nodeset_conds(), libMesh::SparsityPattern::Build::n_nonzeros(), libMesh::MeshTools::n_p_levels(), libMesh::BoundaryInfo::n_shellface_conds(), libMesh::RBEIMEvaluation::node_distribute_bfs(), libMesh::RBEIMEvaluation::node_gather_bfs(), libMesh::RBEIMConstruction::node_inner_product(), libMesh::MeshBase::operator==(), libMesh::DistributedMesh::parallel_max_elem_id(), libMesh::DistributedMesh::parallel_max_node_id(), libMesh::ReplicatedMesh::parallel_max_unique_id(), libMesh::DistributedMesh::parallel_max_unique_id(), libMesh::DistributedMesh::parallel_n_elem(), libMesh::DistributedMesh::parallel_n_nodes(), libMesh::SparsityPattern::Build::parallel_sync(), libMesh::BoundaryInfo::parallel_sync_node_ids(), libMesh::BoundaryInfo::parallel_sync_side_ids(), libMesh::MeshTools::paranoid_n_levels(), libMesh::Partitioner::partition(), libMesh::Partitioner::partition_unpartitioned_elements(), libMesh::petsc_auto_fieldsplit(), libMesh::System::point_gradient(), libMesh::System::point_hessian(), libMesh::System::point_value(), libMesh::MeshBase::prepare_for_use(), libMesh::MeshBase::print_constraint_rows(), libMesh::DofMap::print_dof_constraints(), libMesh::DofMap::process_mesh_constraint_rows(), libMesh::Partitioner::processor_pairs_to_interface_nodes(), libMesh::InterMeshProjection::project_system_vectors(), FEMParameters::read(), libMesh::Nemesis_IO::read(), libMesh::XdrIO::read(), libMesh::EquationSystems::read(), libMesh::ExodusII_IO::read_header(), libMesh::CheckpointIO::read_header(), libMesh::XdrIO::read_header(), libMesh::System::read_header(), libMesh::RBEIMEvaluation::read_in_interior_basis_functions(), libMesh::RBEIMEvaluation::read_in_node_basis_functions(), libMesh::RBEIMEvaluation::read_in_side_basis_functions(), libMesh::RBEvaluation::read_in_vectors_from_multiple_files(), libMesh::System::read_legacy_data(), libMesh::TransientRBConstruction::read_riesz_representors_from_files(), read_riesz_representors_from_files(), libMesh::System::read_SCALAR_dofs(), libMesh::XdrIO::read_serialized_bc_names(), libMesh::XdrIO::read_serialized_bcs_helper(), libMesh::System::read_serialized_blocked_dof_objects(), libMesh::XdrIO::read_serialized_connectivity(), libMesh::XdrIO::read_serialized_nodes(), libMesh::XdrIO::read_serialized_nodesets(), libMesh::XdrIO::read_serialized_subdomain_names(), libMesh::System::read_serialized_vector(), libMesh::Nemesis_IO_Helper::read_var_names_impl(), MeshFunctionTest::read_variable_info_from_output_data(), libMesh::MeshBase::recalculate_n_partitions(), libMesh::MeshRefinement::refine_and_coarsen_elements(), libMesh::SimplexRefiner::refine_via_edges(), libMesh::StaticCondensationDofMap::reinit(), libMesh::BoundaryInfo::remove_edge_id(), libMesh::BoundaryInfo::remove_node_id(), libMesh::BoundaryInfo::remove_shellface_id(), libMesh::BoundaryInfo::remove_side_id(), libMesh::DistributedMesh::renumber_dof_objects(), libMesh::DistributedMesh::renumber_nodes_and_elements(), LinearElasticityWithContact::residual_and_jacobian(), OverlappingAlgebraicGhostingTest::run_ghosting_test(), OverlappingCouplingGhostingTest::run_sparsity_pattern_test(), scale_mesh_and_plot(), libMesh::DofMap::scatter_constraints(), libMesh::CheckpointIO::select_split_config(), libMesh::GenericProjector< FFunctor, GFunctor, FValue, ProjectionAction >::send_and_insert_dof_values(), libMesh::TransientRBConstruction::set_error_temporal_data(), libMesh::Partitioner::set_interface_node_processor_ids_BFS(), libMesh::Partitioner::set_interface_node_processor_ids_linear(), libMesh::Partitioner::set_interface_node_processor_ids_petscpartitioner(), libMesh::Partitioner::set_node_processor_ids(), libMesh::DofMap::set_nonlocal_dof_objects(), libMesh::Partitioner::set_parent_processor_ids(), libMesh::PetscDMWrapper::set_point_range_in_section(), libMesh::PetscDiffSolver::setup_petsc_data(), libMesh::RBEIMEvaluation::side_distribute_bfs(), libMesh::RBEIMEvaluation::side_gather_bfs(), libMesh::RBEIMConstruction::side_inner_product(), libMesh::Partitioner::single_partition(), libMesh::LaplaceMeshSmoother::smooth(), libMesh::VariationalMeshSmoother::smooth(), libMesh::ClawSystem::solve_conservation_law(), libMesh::split_mesh(), libMesh::RBEIMConstruction::store_eim_solutions_for_training_set(), libMesh::MeshBase::subdomain_ids(), libMesh::BoundaryInfo::sync(), ConstraintOperatorTest::test1DCoarseningNewNodes(), ConstraintOperatorTest::test1DCoarseningOperator(), libMesh::MeshRefinement::test_level_one(), MeshfunctionDFEM::test_mesh_function_dfem(), MeshfunctionDFEM::test_mesh_function_dfem_grad(), MeshFunctionTest::test_p_level(), libMesh::MeshRefinement::test_unflagged(), DofMapTest::testBadElemFECombo(), SystemsTest::testBlockRestrictedVarNDofs(), BoundaryInfoTest::testBoundaryOnChildrenErrors(), VolumeTest::testC0PolygonMethods(), VolumeTest::testC0PolyhedronMethods(), ConstraintOperatorTest::testCoreform(), ConnectedComponentsTest::testEdge(), MeshInputTest::testExodusIGASidesets(), MeshTriangulationTest::testFoundCenters(), PointLocatorTest::testLocator(), BoundaryInfoTest::testMesh(), PointLocatorTest::testPlanar(), MeshTriangulationTest::testPoly2TriRefinementBase(), SystemsTest::testProjectCubeWithMeshFunction(), BoundaryInfoTest::testRenumber(), BoundaryInfoTest::testSelectiveRenumber(), CheckpointIOTest::testSplitter(), MeshInputTest::testTetgenIO(), MeshTriangulationTest::testTriangulatorInterp(), MeshTriangulationTest::testTriangulatorMeshedHoles(), MeshTriangulationTest::testTriangulatorRoundHole(), MeshSmootherTest::testVariationalSmoother(), libMesh::MeshTools::total_weight(), train_reduced_basis_with_POD(), libMesh::MeshFunctionSolutionTransfer::transfer(), libMesh::MeshfreeSolutionTransfer::transfer(), libMesh::Poly2TriTriangulator::triangulate(), libMesh::TransientRBConstruction::truth_assembly(), truth_assembly(), libMesh::MeshRefinement::uniformly_coarsen(), update_current_local_solution(), libMesh::TransientRBConstruction::update_RB_initial_condition_all_N(), libMesh::TransientRBConstruction::update_RB_system_matrices(), update_RB_system_matrices(), libMesh::TransientRBConstruction::update_residual_terms(), update_residual_terms(), libMesh::MeshTools::volume(), libMesh::STLIO::write(), libMesh::NameBasedIO::write(), libMesh::XdrIO::write(), libMesh::VTKIO::write_nodal_data(), libMesh::RBEIMEvaluation::write_out_interior_basis_functions(), libMesh::RBEIMEvaluation::write_out_node_basis_functions(), libMesh::RBEIMEvaluation::write_out_side_basis_functions(), libMesh::RBEvaluation::write_out_vectors(), libMesh::TransientRBConstruction::write_riesz_representors_to_files(), write_riesz_representors_to_files(), libMesh::System::write_SCALAR_dofs(), libMesh::XdrIO::write_serialized_bcs_helper(), libMesh::System::write_serialized_blocked_dof_objects(), libMesh::XdrIO::write_serialized_connectivity(), libMesh::XdrIO::write_serialized_nodes(), libMesh::XdrIO::write_serialized_nodesets(), libMesh::RBDataSerialization::RBEvaluationSerialization::write_to_file(), libMesh::RBDataSerialization::TransientRBEvaluationSerialization::write_to_file(), libMesh::RBDataSerialization::RBEIMEvaluationSerialization::write_to_file(), and libMesh::RBDataSerialization::RBSCMEvaluationSerialization::write_to_file().
| 
 | virtualinherited | 
true when the other system contains identical data, up to the given threshold. Outputs some diagnostic info when verbose is set. Definition at line 603 of file system.C.
References libMesh::System::_is_initialized, libMesh::System::_sys_name, libMesh::System::_vectors, libMesh::System::get_vector(), libMesh::libmesh_assert(), libMesh::System::n_vectors(), libMesh::System::name(), libMesh::out, and libMesh::System::solution.
| 
 | protectedvirtual | 
Compute the terms that are combined ‘online’ to determine the dual norm of the residual.
Here we compute the terms associated with the right-hand side. These terms are basis independent, hence we separate them from the rest of the calculations that are done in update_residual_terms. By default, inner product terms are also computed, but you can turn this feature off e.g. if you are already reading in that data from files.
Definition at line 2170 of file rb_construction.C.
References libMesh::NumericVector< T >::add(), assert_convergence, libMesh::NumericVector< T >::build(), check_convergence(), libMesh::ParallelObject::comm(), libMesh::LinearImplicitSystem::final_linear_residual(), Fq_representor, libMesh::RBEvaluation::Fq_representor_innerprods, Fq_representor_innerprods, Fq_representor_innerprods_computed, get_Fq(), libMesh::RBThetaExpansion::get_n_F_terms(), get_non_dirichlet_inner_product_matrix_if_avail(), get_rb_evaluation(), get_rb_theta_expansion(), libMesh::Utility::get_timestamp(), inner_product_matrix, inner_product_solver, libMesh::RBConstructionBase< LinearImplicitSystem >::inner_product_storage_vector, libMesh::RBConstructionBase< LinearImplicitSystem >::is_quiet(), libMesh::libmesh_assert(), libMesh::System::n_dofs(), libMesh::LinearImplicitSystem::n_linear_iterations(), libMesh::System::n_local_dofs(), libMesh::out, libMesh::PARALLEL, libMesh::ExplicitSystem::rhs, libMesh::System::solution, solve_for_matrix_and_rhs(), libMesh::SparseMatrix< T >::vector_mult(), and libMesh::NumericVector< T >::zero().
Referenced by recompute_all_residual_terms(), and train_reduced_basis_with_greedy().
| 
 | virtual | 
(i) Compute the a posteriori error bound for each set of parameters in the training set, (ii) set current_parameters to the parameters that maximize the error bound, and (iii) return the maximum error bound.
Definition at line 1817 of file rb_construction.C.
References libMesh::RBConstructionBase< LinearImplicitSystem >::broadcast_parameters(), libMesh::ParallelObject::comm(), libMesh::RBConstructionBase< LinearImplicitSystem >::get_first_local_training_index(), libMesh::RBConstructionBase< LinearImplicitSystem >::get_global_max_error_pair(), libMesh::RBConstructionBase< LinearImplicitSystem >::get_last_local_training_index(), libMesh::RBConstructionBase< LinearImplicitSystem >::get_local_n_training_samples(), libMesh::RBParametrized::get_n_params(), get_preevaluate_thetas_flag(), get_RB_error_bound(), get_rb_evaluation(), libMesh::ParallelObject::processor_id(), libMesh::Real, libMesh::RBConstructionBase< LinearImplicitSystem >::serial_training_set, set_current_training_parameter_index(), libMesh::RBConstructionBase< LinearImplicitSystem >::set_params_from_training_set(), TIMPI::Communicator::sum(), and training_error_bounds.
Referenced by train_reduced_basis_with_greedy().
| 
 | protectedvirtual | 
Compute and store the dual norm of each output functional.
Definition at line 2075 of file rb_construction.C.
References libMesh::NumericVector< T >::add(), assert_convergence, libMesh::NumericVector< T >::build(), check_convergence(), libMesh::ParallelObject::comm(), libMesh::LinearImplicitSystem::final_linear_residual(), libMesh::LinearImplicitSystem::get_linear_solver(), get_matrix_for_output_dual_solves(), libMesh::RBThetaExpansion::get_n_output_terms(), libMesh::RBThetaExpansion::get_n_outputs(), get_output_vector(), get_rb_evaluation(), get_rb_theta_expansion(), libMesh::Utility::get_timestamp(), libMesh::RBConstructionBase< LinearImplicitSystem >::inner_product_storage_vector, libMesh::RBConstructionBase< LinearImplicitSystem >::is_quiet(), libMesh::ImplicitSystem::linear_solver, libMesh::System::n_dofs(), libMesh::LinearImplicitSystem::n_linear_iterations(), libMesh::System::n_local_dofs(), libMesh::out, libMesh::RBEvaluation::output_dual_innerprods, output_dual_innerprods, output_dual_innerprods_computed, libMesh::PARALLEL, libMesh::ExplicitSystem::rhs, libMesh::System::solution, solve_for_matrix_and_rhs(), libMesh::SparseMatrix< T >::vector_mult(), and libMesh::NumericVector< T >::zero().
Referenced by train_reduced_basis_with_greedy().
The slow (but simple, non-error prone) way to compute the residual dual norm.
Useful for error checking.
Definition at line 2259 of file rb_construction.C.
References _untransformed_basis_functions, libMesh::SparseMatrix< T >::add(), libMesh::NumericVector< T >::add(), libMesh::NumericVector< T >::build(), libMesh::ParallelObject::comm(), libMesh::RBEvaluation::get_n_basis_functions(), get_non_dirichlet_inner_product_matrix_if_avail(), get_rb_evaluation(), inner_product_matrix, inner_product_solver, libMesh::RBConstructionBase< LinearImplicitSystem >::inner_product_storage_vector, libMesh::libmesh_real(), libMesh::ImplicitSystem::matrix, libMesh::System::n_dofs(), libMesh::System::n_local_dofs(), libMesh::PARALLEL, libMesh::ExplicitSystem::rhs, libMesh::System::solution, solve_for_matrix_and_rhs(), store_untransformed_basis, truth_assembly(), libMesh::SparseMatrix< T >::vector_mult(), and libMesh::SparseMatrix< T >::zero().
| 
 | inlineprotectedvirtualinherited | 
Whether this object should condense out constrained degrees of freedom.
Reimplemented in libMesh::CondensedEigenSystem.
Definition at line 2036 of file system.h.
Referenced by libMesh::EigenSystem::init_matrices().
| 
 | overridevirtualinherited | 
Request that static condensation be performed for this system.
Reimplemented from libMesh::ImplicitSystem.
Definition at line 63 of file linear_implicit_system.C.
References libMesh::ImplicitSystem::create_static_condensation(), libMesh::ImplicitSystem::linear_solver, and libMesh::ImplicitSystem::setup_static_condensation_preconditioner().
| 
 | inherited | 
Definition at line 163 of file system.C.
References libMesh::System::_dof_map, and libMesh::System::current_local_solution.
Referenced by libMesh::ExactSolution::_compute_error(), libMesh::UniformRefinementEstimator::_estimate_error(), libMesh::HPCoarsenTest::add_projection(), compute_stresses(), LinearElasticityWithContact::compute_stresses(), LinearElasticity::compute_stresses(), LargeDeformationElasticity::compute_stresses(), libMesh::ExactErrorEstimator::estimate_error(), main(), libMesh::WeightedPatchRecoveryErrorEstimator::EstimateError::operator()(), libMesh::SmoothnessEstimator::EstimateSmoothness::operator()(), libMesh::PatchRecoveryErrorEstimator::EstimateError::operator()(), libMesh::HPCoarsenTest::select_refinement(), SolidSystem::side_time_derivative(), libMesh::EnsightIO::write_scalar_ascii(), and libMesh::EnsightIO::write_vector_ascii().
| 
 | inlineinherited | 
Deactivates the system.
Only active systems are solved.
Definition at line 2407 of file system.h.
References libMesh::System::_active.
| 
 | inlineinherited | 
Detaches a shell matrix.
Same as attach_shell_matrix(nullptr). 
Definition at line 176 of file linear_implicit_system.h.
References libMesh::LinearImplicitSystem::attach_shell_matrix().
Referenced by main().
| 
 | overridevirtualinherited | 
Avoids use of any cached data that might affect any solve result.
Should be overridden in derived systems.
Reimplemented from libMesh::System.
Definition at line 128 of file implicit_system.C.
References libMesh::System::assemble_before_solve, libMesh::ImplicitSystem::get_linear_solver(), and libMesh::LinearSolver< T >::reuse_preconditioner().
Referenced by libMesh::DifferentiableSystem::pop_physics(), libMesh::DifferentiableSystem::push_physics(), and libMesh::DifferentiableSystem::swap_physics().
| 
 | staticinherited | 
Definition at line 100 of file reference_counter.C.
References libMesh::ReferenceCounter::_enable_print_counter.
| 
 | staticinherited | 
Definition at line 100 of file reference_counter.C.
References libMesh::ReferenceCounter::_enable_print_counter.
| 
 | staticinherited | 
Methods to enable/disable the reference counter output from print_info()
Definition at line 94 of file reference_counter.C.
References libMesh::ReferenceCounter::_enable_print_counter.
| 
 | staticinherited | 
Methods to enable/disable the reference counter output from print_info()
Definition at line 94 of file reference_counter.C.
References libMesh::ReferenceCounter::_enable_print_counter.
| void libMesh::RBConstruction::enrich_basis_from_rhs_terms | ( | const bool | resize_rb_eval_data = true | ) | 
This function computes one basis function for each rhs term.
This is useful in some cases since we can avoid doing a full greedy if we know that we do not have any "left-hand side" parameters, for example.
Definition at line 1315 of file rb_construction.C.
References assert_convergence, check_convergence(), enrich_RB_space(), extra_linear_solver, libMesh::System::get_equation_systems(), get_Fq(), libMesh::LinearImplicitSystem::get_linear_solver(), libMesh::System::get_mesh(), libMesh::RBThetaExpansion::get_n_F_terms(), get_Nmax(), get_rb_evaluation(), get_rb_theta_expansion(), libMesh::RBParametrized::initialize_parameters(), libMesh::NumericVector< T >::l2_norm(), libMesh::ImplicitSystem::matrix, libMesh::System::name(), libMesh::out, post_process_truth_solution(), libMesh::NumericVector< T >::print_matlab(), libMesh::RBEvaluation::resize_data_structures(), libMesh::ExplicitSystem::rhs, solve_for_matrix_and_rhs(), truth_assembly(), update_system(), and libMesh::ExodusII_IO::write_equation_systems().
| 
 | protectedvirtual | 
Add a new basis function to the RB space.
This is called during train_reduced_basis.
Reimplemented in libMesh::TransientRBConstruction.
Definition at line 1703 of file rb_construction.C.
References _untransformed_basis_functions, _untransformed_solution, libMesh::RBEvaluation::basis_functions, libMesh::RBEvaluation::get_n_basis_functions(), get_non_dirichlet_inner_product_matrix_if_avail(), get_rb_evaluation(), libMesh::RBConstructionBase< LinearImplicitSystem >::inner_product_storage_vector, libMesh::System::solution, store_untransformed_basis, and libMesh::SparseMatrix< T >::vector_mult().
Referenced by enrich_basis_from_rhs_terms(), and train_reduced_basis_with_greedy().
| 
 | inlineinherited | 
Definition at line 160 of file linear_implicit_system.h.
References libMesh::LinearImplicitSystem::_final_linear_residual.
Referenced by compute_Fq_representor_innerprods(), compute_output_dual_innerprods(), main(), libMesh::TransientRBConstruction::update_residual_terms(), and update_residual_terms().
| 
 | overridevirtualinherited | 
Solves for the derivative of each of the system's quantities of interest q in qoi[qoi_indices] with respect to each parameter in parameters, placing the result for qoi i and parameter j into sensitivities[i][j]. 
Uses the forward sensitivity method.
Currently uses finite differenced derivatives (partial q / partial p) and (partial R / partial p).
Reimplemented from libMesh::System.
Definition at line 623 of file implicit_system.C.
References libMesh::SensitivityData::allocate_data(), libMesh::ExplicitSystem::assemble_qoi(), libMesh::ExplicitSystem::assemble_qoi_derivative(), libMesh::ImplicitSystem::assembly(), libMesh::NumericVector< T >::close(), libMesh::SparseMatrix< T >::close(), libMesh::NumericVector< T >::dot(), libMesh::System::get_adjoint_rhs(), libMesh::System::get_qoi_values(), libMesh::System::get_sensitivity_solution(), libMesh::QoISet::has_index(), libMesh::make_range(), libMesh::ImplicitSystem::matrix, libMesh::System::n_qois(), libMesh::Real, libMesh::ExplicitSystem::rhs, libMesh::ImplicitSystem::sensitivity_solve(), libMesh::ParameterVector::size(), and libMesh::TOLERANCE.
Referenced by main().
| 
 | staticinherited | 
Static helper function for generating a deterministic set of parameters.
Only works with 1 or 2 parameters (as defined by the lengths of min/max parameters vectors), otherwise throws an error. The parameter n_global_training_samples_in is the total number of parameters to generate, and they will be split across all the processors (unless serial_training_set=true) in the local_training_parameters_in map. 
Definition at line 572 of file rb_construction_base.C.
| 
 | staticinherited | 
Static helper function for generating a randomized set of parameters.
The parameter n_global_training_samples_in is the total number of parameters to generate, and they will be split across all the processors (unless serial_training_set=true) in the local_training_parameters_in map. 
Definition at line 472 of file rb_construction_base.C.
| 
 | inline | 
Definition at line 227 of file rb_construction.h.
References abs_training_tolerance.
Referenced by print_info().
| 
 | inherited | 
Definition at line 1292 of file system.C.
References libMesh::System::get_vector().
Referenced by libMesh::ImplicitSystem::adjoint_solve(), libMesh::FEMSystem::assemble_qoi_derivative(), libMesh::ImplicitSystem::forward_qoi_parameter_sensitivity(), libMesh::ImplicitSystem::qoi_parameter_hessian(), libMesh::ImplicitSystem::qoi_parameter_hessian_vector_product(), and libMesh::ImplicitSystem::weighted_sensitivity_adjoint_solve().
| 
 | inherited | 
Definition at line 1302 of file system.C.
References libMesh::System::get_vector().
| 
 | inherited | 
Definition at line 1230 of file system.C.
References libMesh::System::get_vector().
Referenced by libMesh::UniformRefinementEstimator::_estimate_error(), libMesh::AdaptiveTimeSolver::adjoint_advance_timestep(), libMesh::UnsteadySolver::adjoint_advance_timestep(), libMesh::TwostepTimeSolver::adjoint_solve(), libMesh::ImplicitSystem::adjoint_solve(), libMesh::AdjointRefinementEstimator::estimate_error(), libMesh::AdjointResidualErrorEstimator::estimate_error(), HeatSystem::init_context(), libMesh::Euler2Solver::integrate_adjoint_refinement_error_estimate(), libMesh::EulerSolver::integrate_adjoint_refinement_error_estimate(), main(), libMesh::ImplicitSystem::qoi_parameter_hessian(), libMesh::ImplicitSystem::qoi_parameter_hessian_vector_product(), libMesh::FileSolutionHistory::retrieve(), and libMesh::ImplicitSystem::weighted_sensitivity_adjoint_solve().
| 
 | inherited | 
Definition at line 1240 of file system.C.
References libMesh::System::get_vector().
| 
 | virtual | 
Get a map that stores pointers to all of the matrices.
Reimplemented in libMesh::TransientRBConstruction.
Definition at line 2429 of file rb_construction.C.
References get_Aq(), get_inner_product_matrix(), libMesh::RBThetaExpansion::get_n_A_terms(), get_non_dirichlet_Aq(), get_non_dirichlet_inner_product_matrix(), get_rb_theta_expansion(), and store_non_dirichlet_operators.
Referenced by libMesh::TransientRBConstruction::get_all_matrices().
| 
 | inherited | 
Fills all_variable_numbers with all the variable numbers for the variables that have been added to this system. 
Definition at line 1399 of file system.C.
References libMesh::DofMap::get_all_variable_numbers(), and libMesh::System::get_dof_map().
Referenced by MeshFunctionTest::read_variable_info_from_output_data(), MeshfunctionDFEM::test_mesh_function_dfem(), MeshfunctionDFEM::test_mesh_function_dfem_grad(), and SystemsTest::testProjectCubeWithMeshFunction().
| 
 | virtual | 
Get a map that stores pointers to all of the vectors.
Definition at line 2454 of file rb_construction.C.
References get_Fq(), libMesh::RBThetaExpansion::get_n_F_terms(), get_non_dirichlet_Fq(), get_output_vectors(), get_rb_theta_expansion(), and store_non_dirichlet_operators.
| SparseMatrix< Number > * libMesh::RBConstruction::get_Aq | ( | unsigned int | q | ) | 
Get a pointer to Aq.
Definition at line 2351 of file rb_construction.C.
References Aq_vector, and get_rb_theta_expansion().
Referenced by add_scaled_Aq(), assemble_all_affine_operators(), get_all_matrices(), get_non_dirichlet_Aq_if_avail(), libMesh::TransientRBConstruction::truth_assembly(), truth_assembly(), and update_residual_terms().
| 
 | staticinherited | 
value from list_of_values. Definition at line 446 of file rb_parametrized.C.
References distance(), libMesh::Real, and value.
Referenced by libMesh::RBParametrized::is_value_in_list().
| 
 | inherited | 
Return the user object for imposing constraints.
Definition at line 2004 of file system.C.
References libMesh::System::_constrain_system_object.
| 
 | protected | 
Getter for the flag determining if convergence should be checked after each solve.
Definition at line 2713 of file rb_construction.C.
References assert_convergence.
| 
 | protected | 
Get/set the current training parameter index.
Definition at line 2733 of file rb_construction.C.
References _current_training_parameter_index.
Referenced by get_RB_error_bound().
| 
 | inline | 
Get delta_N, the number of basis functions we add to the RB space per iteration of the greedy algorithm.
For steady-state systems, this should be 1, but can be more than 1 for time-dependent systems.
Definition at line 469 of file rb_construction.h.
References delta_N.
Referenced by libMesh::TransientRBConstruction::add_IC_to_RB_space(), libMesh::TransientRBConstruction::enrich_RB_space(), libMesh::TransientRBConstruction::print_info(), libMesh::TransientRBConstruction::update_system(), libMesh::TransientRBConstruction::write_riesz_representors_to_files(), and write_riesz_representors_to_files().
| 
 | inherited | 
Get the name of the parameter that we will generate deterministic training parameters for.
| 
 | inherited | 
Get a const reference to the discrete parameter values.
Definition at line 373 of file rb_parametrized.C.
References libMesh::RBParametrized::_discrete_parameter_values, and libMesh::RBParametrized::parameters_initialized.
Referenced by libMesh::RBDataSerialization::add_parameter_ranges_to_builder(), libMesh::RBParametrized::check_if_valid_params(), libMesh::RBParametrized::get_n_discrete_params(), libMesh::RBParametrized::initialize_parameters(), libMesh::RBParametrized::print_discrete_parameter_values(), and libMesh::RBParametrized::write_discrete_parameter_values_to_file().
| 
 | inlineinherited | 
_dof_map. Definition at line 2375 of file system.h.
References libMesh::System::_dof_map.
Referenced by libMesh::__libmesh_petsc_diff_solver_jacobian(), libMesh::__libmesh_petsc_diff_solver_residual(), libMesh::ExactSolution::_compute_error(), libMesh::UniformRefinementEstimator::_estimate_error(), libMesh::DifferentiableSystem::add_dot_var_dirichlet_bcs(), libMesh::System::add_matrix(), libMesh::HPCoarsenTest::add_projection(), add_scaled_matrix_and_vector(), libMesh::System::add_variable(), libMesh::System::add_variable_array(), libMesh::System::add_variables(), libMesh::AdaptiveTimeSolver::adjoint_advance_timestep(), libMesh::UnsteadySolver::adjoint_advance_timestep(), libMesh::ImplicitSystem::adjoint_solve(), libMesh::NewmarkSolver::advance_timestep(), libMesh::AdaptiveTimeSolver::advance_timestep(), libMesh::UnsteadySolver::advance_timestep(), libMesh::EquationSystems::allgather(), libMesh::TransientRBConstruction::allocate_data_structures(), allocate_data_structures(), alternative_fe_assembly(), assemble(), LinearElasticity::assemble(), assemble_1D(), AssembleOptimization::assemble_A_and_F(), libMesh::ClawSystem::assemble_advection_matrices(), assemble_and_solve(), libMesh::ClawSystem::assemble_avg_coupling_matrices(), assemble_biharmonic(), libMesh::ClawSystem::assemble_boundary_condition_matrices(), assemble_divgrad(), assemble_elasticity(), assemble_ellipticdg(), assemble_func(), assemble_graddiv(), assemble_helmholtz(), libMesh::ClawSystem::assemble_jump_coupling_matrix(), assemble_laplace(), assemble_mass(), libMesh::ClawSystem::assemble_mass_matrix(), assemble_matrices(), assemble_matrix_and_rhs(), assemble_poisson(), assemble_SchroedingerEquation(), assemble_shell(), assemble_stokes(), assemble_wave(), libMesh::EquationSystems::build_parallel_elemental_solution_vector(), libMesh::EquationSystems::build_parallel_solution_vector(), libMesh::PetscDMWrapper::build_sf(), libMesh::System::calculate_norm(), compute_jacobian(), compute_residual(), compute_stresses(), LinearElasticityWithContact::compute_stresses(), LinearElasticity::compute_stresses(), LargeDeformationElasticity::compute_stresses(), libMesh::Problem_Interface::computeF(), libMesh::Problem_Interface::computeJacobian(), libMesh::Problem_Interface::computePreconditioner(), MyConstraint::constrain(), libMesh::VariationalSmootherConstraint::constrain_node_to_line(), libMesh::VariationalSmootherConstraint::constrain_node_to_plane(), libMesh::ExodusII_IO::copy_elemental_solution(), libMesh::Nemesis_IO::copy_elemental_solution(), libMesh::Nemesis_IO::copy_nodal_solution(), libMesh::ExodusII_IO::copy_scalar_solution(), libMesh::Nemesis_IO::copy_scalar_solution(), libMesh::CondensedEigenSystem::copy_sub_to_super(), libMesh::CondensedEigenSystem::copy_super_to_sub(), libMesh::System::create_static_condensation(), libMesh::ImplicitSystem::create_static_condensation_system_matrix(), create_wrapped_function(), DMCreateDomainDecomposition_libMesh(), DMCreateFieldDecomposition_libMesh(), DMlibMeshFunction(), DMlibMeshJacobian(), DMlibMeshSetSystem_libMesh(), libMesh::JumpErrorEstimator::estimate_error(), libMesh::AdjointRefinementEstimator::estimate_error(), libMesh::ExactErrorEstimator::estimate_error(), fe_assembly(), libMesh::GenericProjector< FFunctor, GFunctor, FValue, ProjectionAction >::SubFunctor::find_dofs_to_send(), libMesh::VariationalSmootherConstraint::fix_node(), form_functionA(), form_functionB(), form_matrixA(), libMesh::System::get_all_variable_numbers(), libMesh::CondensedEigenSystem::get_eigenpair(), libMesh::System::get_info(), libMesh::System::has_static_condensation(), libMesh::System::has_variable(), libMesh::System::identify_variable_groups(), libMesh::SystemSubsetBySubdomain::init(), libMesh::SecondOrderUnsteadySolver::init_data(), libMesh::UnsteadySolver::init_data(), HeatSystem::init_data(), SimpleRBConstruction::init_data(), libMesh::ClawSystem::init_data(), LaplaceSystem::init_dirichlet_bcs(), NonManifoldCouplingTestBase::init_es(), libMesh::FEMContext::init_internal_data(), libMesh::EigenSystem::init_matrices(), libMesh::System::init_matrices(), libMesh::PetscDMWrapper::init_petscdm(), libMesh::CondensedEigenSystem::initialize_condensed_dofs(), libMesh::OptimizationSystem::initialize_equality_constraints_storage(), libMesh::OptimizationSystem::initialize_inequality_constraints_storage(), LaplaceYoung::jacobian(), LargeDeformationElasticity::jacobian(), libMesh::System::late_matrix_init(), libMesh::libmesh_petsc_snes_fd_residual(), libMesh::libmesh_petsc_snes_jacobian(), libMesh::libmesh_petsc_snes_mffd_residual(), libMesh::libmesh_petsc_snes_residual(), libMesh::libmesh_petsc_snes_residual_helper(), libMesh::System::local_dof_indices(), AssembleOptimization::lower_and_upper_bounds(), main(), libMesh::DofMap::max_constraint_error(), LinearElasticityWithContact::move_mesh(), libMesh::System::n_components(), libMesh::System::n_variable_groups(), libMesh::System::n_vars(), libMesh::DGFEMContext::neighbor_side_fe_reinit(), libMesh::UnsteadySolver::old_nonlinear_solution(), libMesh::SecondOrderUnsteadySolver::old_solution_accel(), libMesh::SecondOrderUnsteadySolver::old_solution_rate(), libMesh::WeightedPatchRecoveryErrorEstimator::EstimateError::operator()(), libMesh::SmoothnessEstimator::EstimateSmoothness::operator()(), libMesh::PatchRecoveryErrorEstimator::EstimateError::operator()(), libMesh::GenericProjector< FFunctor, GFunctor, FValue, ProjectionAction >::ProjectSides::operator()(), libMesh::GenericProjector< FFunctor, GFunctor, FValue, ProjectionAction >::ProjectInteriors::operator()(), libMesh::RBSCMConstruction::perform_SCM_greedy(), periodic_bc_test_poisson(), libMesh::petsc_auto_fieldsplit(), libMesh::ErrorVector::plot_error(), libMesh::System::point_gradient(), libMesh::System::point_hessian(), libMesh::System::point_value(), libMesh::FEMContext::pre_fe_reinit(), libMesh::InterMeshProjection::project_system_vectors(), libMesh::System::re_update(), libMesh::System::read_parallel_data(), libMesh::System::read_SCALAR_dofs(), MeshFunctionTest::read_variable_info_from_output_data(), libMesh::SecondOrderUnsteadySolver::reinit(), libMesh::UnsteadySolver::reinit(), libMesh::System::reinit(), libMesh::System::reinit_constraints(), libMesh::EquationSystems::reinit_solutions(), LaplaceYoung::residual(), LargeDeformationElasticity::residual(), LinearElasticityWithContact::residual_and_jacobian(), libMesh::UnsteadySolver::retrieve_timestep(), OverlappingAlgebraicGhostingTest::run_ghosting_test(), OverlappingCouplingGhostingTest::run_sparsity_pattern_test(), libMesh::HPCoarsenTest::select_refinement(), libMesh::ImplicitSystem::sensitivity_solve(), set_context_solution_vec(), libMesh::PetscDMWrapper::set_point_range_in_section(), set_system_parameters(), SlitMeshRefinedSystemTest::setUp(), FETestBase< order, family, elem_type, 1 >::setUp(), SolidSystem::side_time_derivative(), libMesh::NewtonSolver::solve(), libMesh::PetscDiffSolver::solve(), libMesh::EigenSystem::solve(), solve_for_matrix_and_rhs(), SystemsTest::test100KVariables(), ConstraintOperatorTest::test1DCoarseningNewNodes(), ConstraintOperatorTest::test1DCoarseningOperator(), MeshfunctionDFEM::test_mesh_function_dfem(), MeshfunctionDFEM::test_mesh_function_dfem_grad(), MeshFunctionTest::test_p_level(), MeshFunctionTest::test_subdomain_id_sets(), SystemsTest::testBlockRestrictedVarNDofs(), DofMapTest::testConstraintLoopDetection(), DefaultCouplingTest::testCoupling(), PointNeighborCouplingTest::testCoupling(), EquationSystemsTest::testDisableDefaultGhosting(), SystemsTest::testDofCouplingWithVarGroups(), DofMapTest::testDofOwner(), MeshInputTest::testDynaReadPatch(), MeshInputTest::testExodusWriteElementDataFromDiscontinuousNodalData(), MeshAssignTest::testMeshMoveAssign(), PeriodicBCTest::testPeriodicBC(), SystemsTest::testPostInitAddVectorTypeChange(), SystemsTest::testProjectCubeWithMeshFunction(), SystemsTest::testProjectMatrix1D(), SystemsTest::testProjectMatrix2D(), SystemsTest::testProjectMatrix3D(), InfFERadialTest::testRefinement(), EquationSystemsTest::testSelectivePRefine(), BoundaryInfoTest::testShellFaceConstraints(), libMesh::MeshFunctionSolutionTransfer::transfer(), libMesh::BoundaryVolumeSolutionTransfer::transfer_boundary_volume(), libMesh::UnsteadySolver::update(), update_current_local_solution(), libMesh::System::variable(), libMesh::System::variable_group(), libMesh::System::variable_name(), libMesh::System::variable_number(), libMesh::System::variable_scalar_number(), libMesh::System::variable_type(), NonManifoldGhostingFunctorTest::verify_send_list_entries_helper(), libMesh::ImplicitSystem::weighted_sensitivity_adjoint_solve(), libMesh::ImplicitSystem::weighted_sensitivity_solve(), libMesh::Nemesis_IO_Helper::write_nodal_solution(), libMesh::System::write_parallel_data(), libMesh::EnsightIO::write_scalar_ascii(), libMesh::System::write_SCALAR_dofs(), libMesh::EnsightIO::write_vector_ascii(), and zero_constrained_dofs_on_vector().
| 
 | inlineinherited | 
_dof_map. Definition at line 2383 of file system.h.
References libMesh::System::_dof_map.
| 
 | inlineinherited | 
Definition at line 722 of file system.h.
References libMesh::System::_equation_systems.
Referenced by libMesh::UniformRefinementEstimator::_estimate_error(), libMesh::RBSCMConstruction::add_scaled_symm_Aq(), libMesh::NewmarkSystem::clear(), libMesh::FrequencySystem::clear_all(), compute_jacobian(), compute_residual(), LinearElasticityWithContact::compute_stresses(), SolidSystem::element_time_derivative(), enrich_basis_from_rhs_terms(), libMesh::AdjointRefinementEstimator::estimate_error(), libMesh::AdjointResidualErrorEstimator::estimate_error(), libMesh::ExactErrorEstimator::find_squared_element_error(), libMesh::ImplicitSystem::get_linear_solve_parameters(), SolidSystem::init_data(), HeatSystem::init_data(), libMesh::FrequencySystem::init_data(), LaplaceYoung::jacobian(), libMesh::RBSCMConstruction::load_matrix_B(), LinearElasticityWithContact::move_mesh(), libMesh::FrequencySystem::n_frequencies(), libMesh::RBSCMConstruction::perform_SCM_greedy(), libMesh::System::point_gradient(), libMesh::System::point_value(), libMesh::InterMeshProjection::project_system_vectors(), libMesh::StaticCondensationDofMap::reinit(), LaplaceYoung::residual(), LinearElasticityWithContact::residual_and_jacobian(), libMesh::FileHistoryData::retrieve_adjoint_solution(), libMesh::FileHistoryData::retrieve_primal_solution(), libMesh::FileHistoryData::rewrite_stored_solution(), SolidSystem::save_initial_mesh(), libMesh::FrequencySystem::set_current_frequency(), libMesh::FrequencySystem::set_frequencies(), libMesh::FrequencySystem::set_frequencies_by_range(), libMesh::FrequencySystem::set_frequencies_by_steps(), libMesh::NewmarkSystem::set_newmark_parameters(), libMesh::NonlinearImplicitSystem::set_solver_parameters(), SolidSystem::side_time_derivative(), libMesh::EigenSystem::solve(), libMesh::CondensedEigenSystem::solve(), libMesh::FrequencySystem::solve(), libMesh::ClawSystem::solve_conservation_law(), solve_for_matrix_and_rhs(), libMesh::EigenSystem::solve_helper(), libMesh::FileHistoryData::store_adjoint_solution(), libMesh::FileHistoryData::store_initial_solution(), libMesh::FileHistoryData::store_primal_solution(), MeshFunctionTest::test_p_level(), MeshFunctionTest::test_subdomain_id_sets(), MeshAssignTest::testMeshMoveAssign(), libMesh::MeshFunctionSolutionTransfer::transfer(), libMesh::DirectSolutionTransfer::transfer(), libMesh::MeshfreeSolutionTransfer::transfer(), libMesh::DTKSolutionTransfer::transfer(), libMesh::TransientRBConstruction::truth_solve(), truth_solve(), and libMesh::WrappedFunction< Output >::WrappedFunction().
| 
 | inlineinherited | 
Definition at line 727 of file system.h.
References libMesh::System::_equation_systems.
| 
 | protected | 
Return the evaluated theta functions at the given training parameter index.
Definition at line 2744 of file rb_construction.C.
References _evaluated_thetas, libMesh::RBConstructionBase< LinearImplicitSystem >::get_first_local_training_index(), and libMesh::libmesh_assert().
Referenced by get_RB_error_bound().
| 
 | inherited | 
Get the first local index of the training parameters.
Definition at line 191 of file rb_construction_base.C.
Referenced by compute_max_error_bound(), get_evaluated_thetas(), and preevaluate_thetas().
| NumericVector< Number > * libMesh::RBConstruction::get_Fq | ( | unsigned int | q | ) | 
Get a pointer to Fq.
Definition at line 2380 of file rb_construction.C.
References Fq_vector, and get_rb_theta_expansion().
Referenced by assemble_all_affine_vectors(), compute_Fq_representor_innerprods(), enrich_basis_from_rhs_terms(), get_all_vectors(), get_non_dirichlet_Fq_if_avail(), libMesh::TransientRBConstruction::truth_assembly(), and truth_assembly().
| 
 | staticprotectedinherited | 
Static function to return the error pair (index,error) that is corresponds to the largest error on all processors.
Definition at line 134 of file rb_construction_base.C.
Referenced by compute_max_error_bound().
| const RBParameters & libMesh::RBConstruction::get_greedy_parameter | ( | unsigned int | i | ) | 
Return the parameters chosen during the i^th step of the Greedy algorithm.
Definition at line 1591 of file rb_construction.C.
References get_rb_evaluation(), and libMesh::RBEvaluation::greedy_param_list.
| 
 | staticinherited | 
Gets a string containing the reference information.
Definition at line 47 of file reference_counter.C.
References libMesh::ReferenceCounter::_counts, and libMesh::Quality::name().
Referenced by libMesh::ReferenceCounter::print_info().
| 
 | staticinherited | 
Gets a string containing the reference information.
Definition at line 47 of file reference_counter.C.
References libMesh::ReferenceCounter::_counts, and libMesh::Quality::name().
Referenced by libMesh::ReferenceCounter::print_info().
| 
 | inherited | 
Definition at line 1818 of file system.C.
References libMesh::ParallelObject::comm(), libMesh::FEType::family, libMesh::System::get_dof_map(), libMesh::DofMap::get_info(), libMesh::FEType::inf_map, libMesh::make_range(), TIMPI::Communicator::max(), libMesh::System::n_constrained_dofs(), libMesh::System::n_dofs(), libMesh::System::n_local_constrained_dofs(), libMesh::System::n_local_dofs(), libMesh::System::n_matrices(), libMesh::System::n_variable_groups(), libMesh::VariableGroup::n_variables(), libMesh::System::n_vectors(), libMesh::VariableGroup::name(), libMesh::System::name(), libMesh::System::number(), libMesh::FEType::order, libMesh::FEType::radial_family, libMesh::FEType::radial_order, libMesh::System::system_type(), libMesh::Variable::type(), libMesh::DofMap::variable_group(), and libMesh::System::variable_group().
| ElemAssembly & libMesh::RBConstruction::get_inner_product_assembly | ( | ) | 
Definition at line 423 of file rb_construction.C.
References inner_product_assembly, and use_energy_inner_product.
| SparseMatrix< Number > * libMesh::RBConstruction::get_inner_product_matrix | ( | ) | 
Get a pointer to inner_product_matrix.
Accessing via this function, rather than directly through the class member allows us to do error checking (e.g. inner_product_matrix is not defined in low-memory mode).
Definition at line 2305 of file rb_construction.C.
References inner_product_matrix.
Referenced by get_all_matrices(), get_non_dirichlet_inner_product_matrix_if_avail(), and libMesh::RBSCMConstruction::load_matrix_B().
| const SparseMatrix< Number > * libMesh::RBConstruction::get_inner_product_matrix | ( | ) | const | 
Definition at line 2310 of file rb_construction.C.
References inner_product_matrix.
| 
 | inherited | 
Get the last local index of the training parameters.
Definition at line 213 of file rb_construction_base.C.
Referenced by compute_max_error_bound().
| 
 | virtualinherited | 
Reimplemented in libMesh::NonlinearImplicitSystem, and libMesh::DifferentiableSystem.
Definition at line 1233 of file implicit_system.C.
References libMesh::Parameters::get(), libMesh::System::get_equation_systems(), libMesh::Parameters::have_parameter(), libMesh::EquationSystems::parameters, libMesh::System::parameters, and libMesh::Real.
Referenced by libMesh::ImplicitSystem::adjoint_solve(), libMesh::ImplicitSystem::sensitivity_solve(), libMesh::NonlinearImplicitSystem::set_solver_parameters(), libMesh::FrequencySystem::solve(), libMesh::LinearImplicitSystem::solve(), libMesh::ImplicitSystem::weighted_sensitivity_adjoint_solve(), and libMesh::ImplicitSystem::weighted_sensitivity_solve().
| 
 | overridevirtualinherited | 
Reimplemented from libMesh::ImplicitSystem.
Definition at line 356 of file linear_implicit_system.C.
References libMesh::ImplicitSystem::linear_solver.
Referenced by compute_output_dual_innerprods(), enrich_basis_from_rhs_terms(), initialize_rb_construction(), main(), SystemsTest::testDofCouplingWithVarGroups(), libMesh::TransientRBConstruction::truth_solve(), and truth_solve().
| 
 | inherited | 
Get the total number of training samples local to this processor.
Definition at line 175 of file rb_construction_base.C.
Referenced by compute_max_error_bound(), and preevaluate_thetas().
| 
 | inherited | 
mat_name. Definition at line 1109 of file system.C.
References libMesh::System::_matrices.
Referenced by add_M_C_K_helmholtz(), assemble(), assemble_helmholtz(), assemble_poisson(), libMesh::NewmarkSystem::compute_matrix(), libMesh::ImplicitSystem::get_system_matrix(), main(), libMesh::EigenTimeSolver::solve(), and libMesh::NewmarkSystem::update_rhs().
| 
 | inherited | 
mat_name. Definition at line 1116 of file system.C.
References libMesh::System::_matrices.
| 
 | protectedvirtual | 
Return the matrix for the output residual dual norm solves.
By default we use the inner product matrix for steady state problems.
Reimplemented in libMesh::TransientRBConstruction.
Definition at line 2070 of file rb_construction.C.
References inner_product_matrix.
Referenced by compute_output_dual_innerprods().
| 
 | inlineinherited | 
_mesh. Definition at line 2359 of file system.h.
References libMesh::System::_mesh.
Referenced by libMesh::ExactSolution::_compute_error(), LinearElasticityWithContact::add_contact_edge_elements(), libMesh::PetscDMWrapper::add_dofs_to_section(), libMesh::System::add_matrix(), libMesh::HPCoarsenTest::add_projection(), add_scaled_matrix_and_vector(), libMesh::DofMap::add_variables(), AssembleOptimization::assemble_A_and_F(), libMesh::ClawSystem::assemble_advection_matrices(), libMesh::ClawSystem::assemble_avg_coupling_matrices(), libMesh::ClawSystem::assemble_boundary_condition_matrices(), libMesh::ClawSystem::assemble_jump_coupling_matrix(), libMesh::ClawSystem::assemble_mass_matrix(), libMesh::FEMSystem::assemble_qoi(), libMesh::FEMSystem::assemble_qoi_derivative(), libMesh::FEMSystem::assembly(), libMesh::VariationalSmootherSystem::assembly(), AssemblyA0::boundary_assembly(), AssemblyA1::boundary_assembly(), AssemblyF0::boundary_assembly(), AssemblyF1::boundary_assembly(), AssemblyA2::boundary_assembly(), AssemblyF2::boundary_assembly(), libMesh::System::calculate_norm(), compute_jacobian(), libMesh::VariationalSmootherSystem::compute_mesh_quality_info(), compute_residual(), LinearElasticityWithContact::compute_stresses(), libMesh::VariationalSmootherConstraint::constrain(), libMesh::VariationalSmootherConstraint::constrain_node_to_line(), libMesh::VariationalSmootherConstraint::constrain_node_to_plane(), libMesh::System::create_static_condensation(), libMesh::ImplicitSystem::create_static_condensation_system_matrix(), libMesh::RBEIMEvaluation::distribute_bfs(), DMCreateDomainDecomposition_libMesh(), DMCreateFieldDecomposition_libMesh(), DMlibMeshSetSystem_libMesh(), SolidSystem::element_time_derivative(), HeatSystem::element_time_derivative(), enrich_basis_from_rhs_terms(), libMesh::RBEIMConstruction::enrich_eim_approximation_on_interiors(), libMesh::RBEIMConstruction::enrich_eim_approximation_on_sides(), libMesh::PatchRecoveryErrorEstimator::estimate_error(), libMesh::WeightedPatchRecoveryErrorEstimator::estimate_error(), libMesh::JumpErrorEstimator::estimate_error(), libMesh::AdjointResidualErrorEstimator::estimate_error(), libMesh::ExactErrorEstimator::estimate_error(), libMesh::SmoothnessEstimator::estimate_smoothness(), libMesh::GenericProjector< FFunctor, GFunctor, FValue, ProjectionAction >::SubFunctor::find_dofs_to_send(), libMesh::VariationalSmootherConstraint::fix_node(), libMesh::GenericProjector< FFunctor, GFunctor, FValue, ProjectionAction >::GenericProjector(), LinearElasticityWithContact::get_least_and_max_gap_function(), libMesh::SystemSubsetBySubdomain::init(), libMesh::RBEIMConstruction::init_context(), SolidSystem::init_data(), libMesh::VariationalSmootherSystem::init_data(), libMesh::System::init_data(), libMesh::System::init_matrices(), libMesh::PetscDMWrapper::init_petscdm(), LinearElasticityWithContact::initialize_contact_load_paths(), libMesh::RBEIMConstruction::initialize_qp_data(), libMesh::System::local_dof_indices(), libMesh::DofMap::max_constraint_error(), libMesh::FEMSystem::mesh_position_get(), libMesh::FEMSystem::mesh_position_set(), LinearElasticityWithContact::move_mesh(), libMesh::System::n_components(), libMesh::RBEIMEvaluation::node_distribute_bfs(), libMesh::WeightedPatchRecoveryErrorEstimator::EstimateError::operator()(), libMesh::SmoothnessEstimator::EstimateSmoothness::operator()(), libMesh::PatchRecoveryErrorEstimator::EstimateError::operator()(), libMesh::GenericProjector< FFunctor, GFunctor, FValue, ProjectionAction >::ProjectVertices::operator()(), libMesh::petsc_auto_fieldsplit(), libMesh::System::point_gradient(), libMesh::System::point_hessian(), libMesh::System::point_value(), libMesh::FEMSystem::postprocess(), libMesh::RBParametrizedFunction::preevaluate_parametrized_function_on_mesh(), libMesh::RBParametrizedFunction::preevaluate_parametrized_function_on_mesh_sides(), libMesh::VariationalSmootherSystem::prepare_for_smoothing(), libMesh::System::read_header(), libMesh::RBEvaluation::read_in_vectors_from_multiple_files(), libMesh::System::read_legacy_data(), libMesh::System::read_parallel_data(), libMesh::System::read_serialized_vector(), libMesh::System::read_serialized_vectors(), libMesh::System::reinit(), LinearElasticityWithContact::residual_and_jacobian(), OverlappingAlgebraicGhostingTest::run_ghosting_test(), OverlappingCouplingGhostingTest::run_sparsity_pattern_test(), SolidSystem::save_initial_mesh(), libMesh::HPSingularity::select_refinement(), libMesh::HPCoarsenTest::select_refinement(), libMesh::PetscDMWrapper::set_point_range_in_section(), libMesh::RBEIMEvaluation::side_distribute_bfs(), SolidSystem::side_time_derivative(), libMesh::PetscDiffSolver::solve(), libMesh::ClawSystem::solve_conservation_law(), MeshAssignTest::testMeshMoveAssign(), libMesh::MeshFunctionSolutionTransfer::transfer(), libMesh::BoundaryVolumeSolutionTransfer::transfer(), libMesh::BoundaryVolumeSolutionTransfer::transfer_boundary_volume(), libMesh::BoundaryVolumeSolutionTransfer::transfer_volume_boundary(), libMesh::TransientRBConstruction::truth_solve(), truth_solve(), libMesh::System::write_header(), libMesh::RBEvaluation::write_out_vectors(), libMesh::System::write_parallel_data(), libMesh::System::write_serialized_vector(), libMesh::System::write_serialized_vectors(), and libMesh::System::zero_variable().
| 
 | inlineinherited | 
_mesh. Definition at line 2367 of file system.h.
References libMesh::System::_mesh.
| 
 | inherited | 
Get the number of continuous parameters.
Definition at line 112 of file rb_parametrized.C.
References libMesh::RBParametrized::get_n_discrete_params(), libMesh::RBParametrized::get_n_params(), libMesh::libmesh_assert(), and libMesh::RBParametrized::parameters_initialized.
Referenced by libMesh::RBDataSerialization::add_parameter_ranges_to_builder(), and libMesh::RBParametrized::write_parameter_ranges_to_file().
| 
 | inherited | 
Get the number of discrete parameters.
Definition at line 121 of file rb_parametrized.C.
References libMesh::RBParametrized::get_discrete_parameter_values(), and libMesh::RBParametrized::parameters_initialized.
Referenced by libMesh::RBDataSerialization::add_parameter_ranges_to_builder(), libMesh::RBParametrized::get_n_continuous_params(), and libMesh::RBParametrized::write_discrete_parameter_values_to_file().
| 
 | inherited | 
Get the number of parameters.
Definition at line 103 of file rb_parametrized.C.
References libMesh::RBParameters::n_parameters(), libMesh::RBParametrized::parameters_initialized, libMesh::RBParametrized::parameters_max, and libMesh::RBParametrized::parameters_min.
Referenced by libMesh::RBParametrized::check_if_valid_params(), libMesh::RBEIMConstruction::compute_max_eim_error(), compute_max_error_bound(), libMesh::RBParametrized::get_n_continuous_params(), libMesh::RBSCMConstruction::print_info(), libMesh::RBEIMConstruction::print_info(), print_info(), libMesh::RBEIMEvaluation::set_eim_error_indicator_active(), and train_reduced_basis_with_POD().
| 
 | inherited | 
Get the number of global training samples.
Definition at line 153 of file rb_construction_base.C.
Referenced by print_info(), and train_reduced_basis_with_POD().
| 
 | inline | 
Get/set Nmax, the maximum number of RB functions we are willing to compute.
Definition at line 253 of file rb_construction.h.
References Nmax.
Referenced by enrich_basis_from_rhs_terms(), libMesh::TransientRBConstruction::enrich_RB_space(), greedy_termination_test(), train_reduced_basis_with_greedy(), and train_reduced_basis_with_POD().
| SparseMatrix< Number > * libMesh::RBConstruction::get_non_dirichlet_Aq | ( | unsigned int | q | ) | 
Get a pointer to non_dirichlet_Aq.
Definition at line 2359 of file rb_construction.C.
References get_rb_theta_expansion(), non_dirichlet_Aq_vector, and store_non_dirichlet_operators.
Referenced by assemble_all_affine_operators(), get_all_matrices(), and get_non_dirichlet_Aq_if_avail().
| SparseMatrix< Number > * libMesh::RBConstruction::get_non_dirichlet_Aq_if_avail | ( | unsigned int | q | ) | 
Get a pointer to non_dirichlet_Aq if it's available, otherwise get Aq.
Definition at line 2370 of file rb_construction.C.
References get_Aq(), get_non_dirichlet_Aq(), and store_non_dirichlet_operators.
Referenced by update_RB_system_matrices().
| NumericVector< Number > * libMesh::RBConstruction::get_non_dirichlet_Fq | ( | unsigned int | q | ) | 
Get a pointer to non-Dirichlet Fq.
Definition at line 2388 of file rb_construction.C.
References get_rb_theta_expansion(), non_dirichlet_Fq_vector, and store_non_dirichlet_operators.
Referenced by assemble_all_affine_vectors(), get_all_vectors(), and get_non_dirichlet_Fq_if_avail().
| NumericVector< Number > * libMesh::RBConstruction::get_non_dirichlet_Fq_if_avail | ( | unsigned int | q | ) | 
Get a pointer to non_dirichlet_Fq if it's available, otherwise get Fq.
Definition at line 2399 of file rb_construction.C.
References get_Fq(), get_non_dirichlet_Fq(), and store_non_dirichlet_operators.
Referenced by update_RB_system_matrices().
| SparseMatrix< Number > * libMesh::RBConstruction::get_non_dirichlet_inner_product_matrix | ( | ) | 
Get the non-Dirichlet (or more generally no-constraints) version of the inner-product matrix.
This is useful for performing multiplications on vectors that already have constraints enforced.
Definition at line 2315 of file rb_construction.C.
References non_dirichlet_inner_product_matrix, and store_non_dirichlet_operators.
Referenced by get_all_matrices(), and get_non_dirichlet_inner_product_matrix_if_avail().
| const SparseMatrix< Number > * libMesh::RBConstruction::get_non_dirichlet_inner_product_matrix | ( | ) | const | 
Definition at line 2323 of file rb_construction.C.
References non_dirichlet_inner_product_matrix, and store_non_dirichlet_operators.
| SparseMatrix< Number > * libMesh::RBConstruction::get_non_dirichlet_inner_product_matrix_if_avail | ( | ) | 
Get the non-Dirichlet inner-product matrix if it's available, otherwise get the inner-product matrix with constraints.
Definition at line 2331 of file rb_construction.C.
References get_inner_product_matrix(), get_non_dirichlet_inner_product_matrix(), and store_non_dirichlet_operators.
Referenced by libMesh::TransientRBConstruction::add_IC_to_RB_space(), compute_Fq_representor_innerprods(), compute_residual_dual_norm_slow(), libMesh::TransientRBConstruction::enrich_RB_space(), enrich_RB_space(), print_basis_function_orthogonality(), libMesh::TransientRBConstruction::set_error_temporal_data(), train_reduced_basis_with_POD(), truth_solve(), update_RB_system_matrices(), libMesh::TransientRBConstruction::update_residual_terms(), and update_residual_terms().
| const SparseMatrix< Number > * libMesh::RBConstruction::get_non_dirichlet_inner_product_matrix_if_avail | ( | ) | const | 
Definition at line 2341 of file rb_construction.C.
References get_inner_product_matrix(), get_non_dirichlet_inner_product_matrix(), and store_non_dirichlet_operators.
| NumericVector< Number > * libMesh::RBConstruction::get_non_dirichlet_output_vector | ( | unsigned int | n, | 
| unsigned int | q_l | ||
| ) | 
Get a pointer to non-Dirichlet output vector.
Definition at line 2419 of file rb_construction.C.
References get_rb_theta_expansion(), and non_dirichlet_outputs_vector.
Referenced by assemble_all_output_vectors(), and get_output_vectors().
| 
 | inline | 
Definition at line 234 of file rb_construction.h.
References normalize_rb_bound_in_greedy.
Referenced by print_info().
| NumericVector< Number > * libMesh::RBConstruction::get_output_vector | ( | unsigned int | n, | 
| unsigned int | q_l | ||
| ) | 
Get a pointer to the n^th output.
Definition at line 2409 of file rb_construction.C.
References get_rb_theta_expansion(), and outputs_vector.
Referenced by assemble_all_output_vectors(), compute_output_dual_innerprods(), get_output_vectors(), libMesh::TransientRBConstruction::truth_solve(), truth_solve(), and update_RB_system_matrices().
| 
 | virtual | 
Get a map that stores pointers to all of the vectors.
Definition at line 2474 of file rb_construction.C.
References libMesh::RBThetaExpansion::get_n_output_terms(), libMesh::RBThetaExpansion::get_n_outputs(), get_non_dirichlet_output_vector(), get_output_vector(), get_rb_theta_expansion(), and store_non_dirichlet_operators.
Referenced by get_all_vectors().
| 
 | inherited | 
Get maximum allowable value of parameter param_name. 
Definition at line 185 of file rb_parametrized.C.
References libMesh::RBParameters::get_value(), libMesh::RBParametrized::parameters_initialized, and libMesh::RBParametrized::parameters_max.
Referenced by libMesh::RBParametrized::check_if_valid_params(), libMesh::RBSCMConstruction::print_info(), libMesh::RBEIMConstruction::print_info(), and print_info().
| 
 | inherited | 
Get minimum allowable value of parameter param_name. 
Definition at line 178 of file rb_parametrized.C.
References libMesh::RBParameters::get_value(), libMesh::RBParametrized::parameters_initialized, and libMesh::RBParametrized::parameters_min.
Referenced by libMesh::RBParametrized::check_if_valid_params(), libMesh::RBSCMConstruction::print_info(), libMesh::RBEIMConstruction::print_info(), and print_info().
| 
 | inherited | 
Get a set that stores the parameter names.
Definition at line 130 of file rb_parametrized.C.
References libMesh::RBParametrized::parameters_initialized, and libMesh::RBParametrized::parameters_min.
| 
 | inherited | 
Get the current parameters.
Definition at line 157 of file rb_parametrized.C.
References libMesh::RBParametrized::parameters, and libMesh::RBParametrized::parameters_initialized.
Referenced by libMesh::TransientRBConstruction::add_scaled_mass_matrix(), libMesh::TransientRBEvaluation::cache_online_residual_terms(), libMesh::RBEvaluation::compute_residual_dual_norm(), libMesh::RBSCMConstruction::compute_SCM_bounds_on_training_set(), libMesh::RBSCMConstruction::enrich_C_J(), libMesh::RBEIMConstruction::enrich_eim_approximation_on_interiors(), libMesh::RBEIMConstruction::enrich_eim_approximation_on_nodes(), libMesh::RBEIMConstruction::enrich_eim_approximation_on_sides(), libMesh::RBEvaluation::eval_output_dual_norm(), libMesh::RBSCMConstruction::evaluate_stability_constant(), get_RB_error_bound(), libMesh::RBSCMEvaluation::get_SCM_LB(), libMesh::RBSCMEvaluation::get_SCM_UB(), SimpleRBEvaluation::get_stability_lower_bound(), greedy_termination_test(), libMesh::RBEIMConstruction::initialize_parametrized_functions_in_training_set(), libMesh::RBSCMEvaluation::legacy_read_offline_data_from_files(), libMesh::TransientRBConstruction::mass_matrix_scaled_matvec(), preevaluate_thetas(), libMesh::RBSCMConstruction::print_info(), libMesh::RBEIMConstruction::print_info(), print_info(), libMesh::RBParametrized::print_parameters(), libMesh::RBSCMConstruction::process_parameters_file(), libMesh::TransientRBEvaluation::rb_solve(), libMesh::RBEvaluation::rb_solve(), libMesh::RBSCMEvaluation::save_current_parameters(), libMesh::RBEIMConstruction::train_eim_approximation_with_greedy(), libMesh::RBEIMConstruction::train_eim_approximation_with_POD(), libMesh::TransientRBConstruction::truth_assembly(), truth_assembly(), libMesh::TransientRBConstruction::truth_solve(), truth_solve(), libMesh::TransientRBEvaluation::uncached_compute_residual_dual_norm(), and update_greedy_param_list().
| 
 | inherited | 
Get an RBParameters object that specifies the maximum allowable value for each parameter.
Definition at line 171 of file rb_parametrized.C.
References libMesh::RBParametrized::parameters_initialized, and libMesh::RBParametrized::parameters_max.
Referenced by libMesh::RBDataSerialization::add_parameter_ranges_to_builder(), libMesh::RBParametrized::initialize_parameters(), libMesh::RBSCMConstruction::process_parameters_file(), libMesh::RBEIMConstruction::set_rb_construction_parameters(), set_rb_construction_parameters(), and libMesh::RBParametrized::write_parameter_ranges_to_file().
| 
 | inherited | 
Get an RBParameters object that specifies the minimum allowable value for each parameter.
Definition at line 164 of file rb_parametrized.C.
References libMesh::RBParametrized::parameters_initialized, and libMesh::RBParametrized::parameters_min.
Referenced by libMesh::RBDataSerialization::add_parameter_ranges_to_builder(), libMesh::RBParametrized::initialize_parameters(), libMesh::RBSCMConstruction::process_parameters_file(), libMesh::RBEIMConstruction::set_rb_construction_parameters(), set_rb_construction_parameters(), and libMesh::RBParametrized::write_parameter_ranges_to_file().
| 
 | protectedinherited | 
Return the RBParameters in index global_index of the global training set. 
Why do we use an index here? RBParameters supports loading the full sample set. This seems probably unnecessary now to load individually. Maybe it's a memory issue?
Definition at line 231 of file rb_construction_base.C.
| bool libMesh::RBConstruction::get_preevaluate_thetas_flag | ( | ) | const | 
Get/set flag to pre-evaluate the theta functions.
Definition at line 2723 of file rb_construction.C.
References _preevaluate_thetas_flag.
Referenced by compute_max_error_bound(), get_RB_error_bound(), and train_reduced_basis_with_greedy().
| 
 | inlineinherited | 
Setter and getter functions for project_with_constraints boolean.
Definition at line 1818 of file system.h.
References libMesh::System::project_with_constraints.
Referenced by libMesh::AdjointRefinementEstimator::estimate_error().
Definition at line 2191 of file system.C.
References libMesh::libmesh_assert(), and libMesh::System::qoi_error_estimates.
Referenced by libMesh::TwostepTimeSolver::integrate_adjoint_refinement_error_estimate(), and main().
Definition at line 2164 of file system.C.
References libMesh::libmesh_assert(), and libMesh::System::qoi.
Referenced by libMesh::Euler2Solver::integrate_qoi_timestep(), libMesh::TwostepTimeSolver::integrate_qoi_timestep(), libMesh::EulerSolver::integrate_qoi_timestep(), main(), libMesh::ImplicitSystem::qoi_parameter_hessian(), and libMesh::ImplicitSystem::qoi_parameter_hessian_vector_product().
| 
 | inherited | 
Returns a copy of qoi, not a reference.
Definition at line 2171 of file system.C.
References libMesh::System::qoi.
Referenced by libMesh::ImplicitSystem::adjoint_qoi_parameter_sensitivity(), libMesh::FEMSystem::assemble_qoi(), libMesh::ImplicitSystem::forward_qoi_parameter_sensitivity(), libMesh::ImplicitSystem::qoi_parameter_hessian(), and libMesh::ImplicitSystem::qoi_parameter_hessian_vector_product().
| RBAssemblyExpansion & libMesh::RBConstruction::get_rb_assembly_expansion | ( | ) | 
Definition at line 410 of file rb_construction.C.
References rb_assembly_expansion.
Referenced by libMesh::TransientRBConstruction::assemble_Mq_matrix(), libMesh::TransientRBConstruction::initialize_rb_construction(), and initialize_rb_construction().
| 
 | protectedvirtual | 
Used in the Greedy algorithm to select the next parameter.
Definition at line 1768 of file rb_construction.C.
References abs_training_tolerance, get_current_training_parameter_index(), libMesh::RBEvaluation::get_error_bound_normalization(), get_evaluated_thetas(), libMesh::RBParametrized::get_parameters(), get_preevaluate_thetas_flag(), get_rb_evaluation(), normalize_rb_bound_in_greedy, libMesh::RBEvaluation::rb_solve(), libMesh::Real, and libMesh::RBParametrized::set_parameters().
Referenced by compute_max_error_bound().
| RBEvaluation & libMesh::RBConstruction::get_rb_evaluation | ( | ) | 
Get a reference to the RBEvaluation object.
Definition at line 175 of file rb_construction.C.
References rb_eval.
Referenced by libMesh::TransientRBConstruction::add_IC_to_RB_space(), libMesh::TransientRBConstruction::assemble_affine_expansion(), compute_Fq_representor_innerprods(), compute_max_error_bound(), compute_output_dual_innerprods(), compute_residual_dual_norm_slow(), enrich_basis_from_rhs_terms(), libMesh::TransientRBConstruction::enrich_RB_space(), enrich_RB_space(), get_greedy_parameter(), get_RB_error_bound(), get_rb_theta_expansion(), greedy_termination_test(), load_basis_function(), libMesh::TransientRBConstruction::load_rb_solution(), load_rb_solution(), main(), preevaluate_thetas(), print_basis_function_orthogonality(), libMesh::TransientRBConstruction::process_parameters_file(), libMesh::TransientRBConstruction::read_riesz_representors_from_files(), read_riesz_representors_from_files(), recompute_all_residual_terms(), libMesh::TransientRBConstruction::set_error_temporal_data(), train_reduced_basis_with_greedy(), train_reduced_basis_with_POD(), update_greedy_param_list(), libMesh::TransientRBConstruction::update_RB_initial_condition_all_N(), libMesh::TransientRBConstruction::update_RB_system_matrices(), update_RB_system_matrices(), libMesh::TransientRBConstruction::update_residual_terms(), update_residual_terms(), libMesh::TransientRBConstruction::write_riesz_representors_to_files(), and write_riesz_representors_to_files().
| const RBEvaluation & libMesh::RBConstruction::get_rb_evaluation | ( | ) | const | 
Definition at line 182 of file rb_construction.C.
References rb_eval.
| RBThetaExpansion & libMesh::RBConstruction::get_rb_theta_expansion | ( | ) | 
Get a reference to the RBThetaExpansion object that that belongs to rb_eval.
Definition at line 194 of file rb_construction.C.
References get_rb_evaluation(), and libMesh::RBEvaluation::get_rb_theta_expansion().
Referenced by add_scaled_Aq(), libMesh::TransientRBConstruction::add_scaled_mass_matrix(), libMesh::TransientRBConstruction::allocate_data_structures(), allocate_data_structures(), libMesh::TransientRBConstruction::assemble_all_affine_operators(), assemble_all_affine_operators(), assemble_all_affine_vectors(), assemble_all_output_vectors(), assemble_Aq_matrix(), assemble_Fq_vector(), assemble_inner_product_matrix(), libMesh::TransientRBConstruction::assemble_Mq_matrix(), compute_Fq_representor_innerprods(), compute_output_dual_innerprods(), enrich_basis_from_rhs_terms(), libMesh::TransientRBConstruction::get_all_matrices(), get_all_matrices(), get_all_vectors(), get_Aq(), get_Fq(), libMesh::TransientRBConstruction::get_M_q(), get_non_dirichlet_Aq(), get_non_dirichlet_Fq(), libMesh::TransientRBConstruction::get_non_dirichlet_M_q(), get_non_dirichlet_output_vector(), get_output_vector(), get_output_vectors(), libMesh::TransientRBConstruction::initialize_rb_construction(), initialize_rb_construction(), libMesh::TransientRBConstruction::mass_matrix_scaled_matvec(), libMesh::TransientRBConstruction::print_info(), print_info(), libMesh::TransientRBConstruction::truth_assembly(), truth_assembly(), libMesh::TransientRBConstruction::truth_solve(), truth_solve(), libMesh::TransientRBConstruction::update_RB_system_matrices(), update_RB_system_matrices(), libMesh::TransientRBConstruction::update_residual_terms(), and update_residual_terms().
| const RBThetaExpansion & libMesh::RBConstruction::get_rb_theta_expansion | ( | ) | const | 
Definition at line 199 of file rb_construction.C.
References get_rb_evaluation(), and libMesh::RBEvaluation::get_rb_theta_expansion().
| const std::string & libMesh::RBConstruction::get_RB_training_type | ( | ) | const | 
Definition at line 1682 of file rb_construction.C.
References RB_training_type.
Referenced by print_info(), libMesh::TransientRBConstruction::train_reduced_basis(), and train_reduced_basis().
| 
 | inline | 
Definition at line 220 of file rb_construction.h.
References rel_training_tolerance.
Referenced by print_info().
| 
 | inherited | 
assemble_residual_derivatives() is called.When assembled, this vector should hold -(partial R / partial p_i)
Definition at line 1322 of file system.C.
References libMesh::System::get_vector().
Referenced by libMesh::ImplicitSystem::adjoint_qoi_parameter_sensitivity(), and libMesh::ImplicitSystem::sensitivity_solve().
| 
 | inherited | 
Definition at line 1332 of file system.C.
References libMesh::System::get_vector().
| 
 | inherited | 
Definition at line 1177 of file system.C.
References libMesh::System::get_vector().
Referenced by libMesh::ImplicitSystem::forward_qoi_parameter_sensitivity(), libMesh::ImplicitSystem::qoi_parameter_hessian(), and libMesh::ImplicitSystem::sensitivity_solve().
| 
 | inherited | 
Definition at line 1187 of file system.C.
References libMesh::System::get_vector().
| 
 | inlineinherited | 
nullptr. Definition at line 182 of file linear_implicit_system.h.
References libMesh::LinearImplicitSystem::_shell_matrix.
| 
 | inlineinherited | 
Definition at line 373 of file implicit_system.h.
References libMesh::ImplicitSystem::_sc_system_matrix, and libMesh::libmesh_assert().
Referenced by assemble_poisson().
| 
 | inherited | 
Definition at line 1261 of file implicit_system.C.
References libMesh::System::get_matrix(), libMesh::libmesh_assert(), and libMesh::ImplicitSystem::matrix.
Referenced by libMesh::HDGProblem::add_matrix(), assemble(), LinearElasticity::assemble(), assemble_1D(), assemble_biharmonic(), assemble_divgrad(), assemble_elasticity(), assemble_ellipticdg(), assemble_graddiv(), assemble_helmholtz(), assemble_laplace(), assemble_matrix_and_rhs(), assemble_poisson(), assemble_shell(), assemble_stokes(), assemble_wave(), assembly_with_dg_fem_context(), libMesh::HDGProblem::jacobian(), libMesh::libmesh_petsc_snes_residual(), main(), OverlappingCouplingGhostingTest::run_sparsity_pattern_test(), and libMesh::EigenTimeSolver::solve().
| 
 | inherited | 
Definition at line 1270 of file implicit_system.C.
References libMesh::System::get_matrix(), libMesh::libmesh_assert(), and libMesh::ImplicitSystem::matrix.
| 
 | inherited | 
vec_name. Access is only granted when the vector is already properly initialized. Definition at line 928 of file system.C.
References libMesh::System::_vectors.
Referenced by libMesh::UniformRefinementEstimator::_estimate_error(), add_M_C_K_helmholtz(), libMesh::AdaptiveTimeSolver::adjoint_advance_timestep(), libMesh::UnsteadySolver::adjoint_advance_timestep(), libMesh::NewmarkSolver::advance_timestep(), libMesh::AdaptiveTimeSolver::advance_timestep(), libMesh::UnsteadySolver::advance_timestep(), apply_initial(), assemble(), libMesh::System::compare(), libMesh::NewmarkSolver::compute_initial_accel(), libMesh::UnsteadySolver::du(), libMesh::AdjointRefinementEstimator::estimate_error(), libMesh::System::get_adjoint_rhs(), libMesh::System::get_adjoint_solution(), libMesh::System::get_sensitivity_rhs(), libMesh::System::get_sensitivity_solution(), libMesh::System::get_weighted_sensitivity_adjoint_solution(), libMesh::System::get_weighted_sensitivity_solution(), libMesh::NewmarkSystem::initial_conditions(), AssembleOptimization::lower_and_upper_bounds(), main(), libMesh::NewmarkSolver::project_initial_accel(), libMesh::SecondOrderUnsteadySolver::project_initial_rate(), libMesh::InterMeshProjection::project_system_vectors(), libMesh::SecondOrderUnsteadySolver::reinit(), libMesh::UnsteadySolver::reinit(), libMesh::FileSolutionHistory::retrieve(), libMesh::UnsteadySolver::retrieve_timestep(), libMesh::MemoryHistoryData::retrieve_vectors(), libMesh::TwostepTimeSolver::solve(), libMesh::FrequencySystem::solve(), libMesh::UnsteadySolver::update(), libMesh::NewmarkSystem::update_rhs(), and libMesh::NewmarkSystem::update_u_v_a().
| 
 | inherited | 
vec_name. Access is only granted when the vector is already properly initialized. Definition at line 935 of file system.C.
References libMesh::System::_vectors.
| 
 | inherited | 
vec_num (where the vectors are counted starting with 0). Definition at line 942 of file system.C.
References libMesh::System::_vectors, and libMesh::System::vectors_begin().
| 
 | inherited | 
vec_num (where the vectors are counted starting with 0). Definition at line 955 of file system.C.
References libMesh::System::_vectors, and libMesh::System::vectors_begin().
| 
 | inherited | 
Definition at line 1262 of file system.C.
References libMesh::System::get_vector().
Referenced by libMesh::ImplicitSystem::qoi_parameter_hessian_vector_product(), and libMesh::ImplicitSystem::weighted_sensitivity_adjoint_solve().
| 
 | inherited | 
Definition at line 1272 of file system.C.
References libMesh::System::get_vector().
| 
 | inherited | 
Definition at line 1204 of file system.C.
References libMesh::System::get_vector().
Referenced by libMesh::ImplicitSystem::qoi_parameter_hessian_vector_product(), and libMesh::ImplicitSystem::weighted_sensitivity_solve().
| 
 | inherited | 
Definition at line 1211 of file system.C.
References libMesh::System::get_vector().
| 
 | protectedvirtual | 
Function that indicates when to terminate the Greedy basis training.
Override in subclasses to specialize.
Reimplemented in libMesh::TransientRBConstruction.
Definition at line 1549 of file rb_construction.C.
References abs_training_tolerance, exit_on_repeated_greedy_parameters, libMesh::RBEvaluation::get_n_basis_functions(), get_Nmax(), libMesh::RBParametrized::get_parameters(), get_rb_evaluation(), libMesh::RBEvaluation::greedy_param_list, libMesh::out, libMesh::Real, and rel_training_tolerance.
Referenced by libMesh::TransientRBConstruction::greedy_termination_test(), and train_reduced_basis_with_greedy().
| 
 | inherited | 
Definition at line 1999 of file system.C.
References libMesh::System::_constrain_system_object.
| 
 | inherited | 
Definition at line 2649 of file system.C.
References libMesh::System::get_dof_map(), and libMesh::DofMap::has_static_condensation().
Referenced by libMesh::System::add_matrix(), assemble_poisson(), libMesh::ImplicitSystem::ImplicitSystem(), libMesh::LinearImplicitSystem::LinearImplicitSystem(), and libMesh::NonlinearImplicitSystem::NonlinearImplicitSystem().
| 
 | inherited | 
true if a variable named var exists in this System Definition at line 1389 of file system.C.
References libMesh::System::get_dof_map(), and libMesh::DofMap::has_variable().
Referenced by libMesh::GMVIO::copy_nodal_solution(), and main().
| 
 | inlineinherited | 
true if this System has a matrix associated with the given name, false otherwise. Definition at line 1914 of file system.h.
References libMesh::System::_matrices.
Referenced by libMesh::EigenTimeSolver::init().
| 
 | inlineinherited | 
true if this System has a vector associated with the given name, false otherwise. Definition at line 2449 of file system.h.
References libMesh::System::_vectors.
| 
 | inlineinherited | 
true, then EquationSystems::write will ignore this system. Definition at line 1833 of file system.h.
References libMesh::System::_hide_output.
| 
 | inherited | 
true when VariableGroup structures should be automatically identified, false otherwise. Definition at line 2664 of file system.C.
References libMesh::System::get_dof_map(), and libMesh::DofMap::identify_variable_groups().
| 
 | inherited | 
Toggle automatic VariableGroup identification. 
Definition at line 2669 of file system.C.
References libMesh::System::get_dof_map(), and libMesh::DofMap::identify_variable_groups().
| 
 | inlineprotectednoexceptinherited | 
Increments the construction counter.
Should be called in the constructor of any derived class that will be reference counted.
Definition at line 183 of file reference_counter.h.
References libMesh::err, libMesh::BasicOStreamProxy< charT, traits >::get(), libMesh::Quality::name(), and libMesh::Threads::spin_mtx.
Referenced by libMesh::ReferenceCountedObject< RBParametrized >::ReferenceCountedObject().
| 
 | inlineprotectednoexceptinherited | 
Increments the construction counter.
Should be called in the constructor of any derived class that will be reference counted.
Definition at line 183 of file reference_counter.h.
References libMesh::err, libMesh::BasicOStreamProxy< charT, traits >::get(), libMesh::Quality::name(), and libMesh::Threads::spin_mtx.
Referenced by libMesh::ReferenceCountedObject< RBParametrized >::ReferenceCountedObject().
| 
 | inlineprotectednoexceptinherited | 
Increments the destruction counter.
Should be called in the destructor of any derived class that will be reference counted.
Definition at line 207 of file reference_counter.h.
References libMesh::err, libMesh::BasicOStreamProxy< charT, traits >::get(), libMesh::Quality::name(), and libMesh::Threads::spin_mtx.
Referenced by libMesh::ReferenceCountedObject< RBParametrized >::~ReferenceCountedObject().
| 
 | inlineprotectednoexceptinherited | 
Increments the destruction counter.
Should be called in the destructor of any derived class that will be reference counted.
Definition at line 207 of file reference_counter.h.
References libMesh::err, libMesh::BasicOStreamProxy< charT, traits >::get(), libMesh::Quality::name(), and libMesh::Threads::spin_mtx.
Referenced by libMesh::ReferenceCountedObject< RBParametrized >::~ReferenceCountedObject().
| 
 | inherited | 
Initializes degrees of freedom on the current mesh.
Sets the
Definition at line 193 of file system.C.
References libMesh::System::is_initialized(), libMesh::libmesh_assert(), and libMesh::System::reinit_mesh().
Referenced by libMesh::StaticCondensationDofMap::reinit().
| 
 | inlineprotectedvirtual | 
Initialize the FEMContext prior to performing an element loop.
Reimplement this in derived classes in order to call FE::get_*() as the particular physics requires.
Reimplemented in SimpleRBConstruction, SimpleRBConstruction, SimpleRBConstruction, SimpleRBConstruction, SimpleRBConstruction, and ElasticityRBConstruction.
Definition at line 816 of file rb_construction.h.
Referenced by add_scaled_matrix_and_vector().
| 
 | protectedvirtualinherited | 
Initializes the member data fields associated with the system, so that, e.g., assemble() may be used. 
Reimplemented from libMesh::LinearImplicitSystem.
Reimplemented in SimpleRBConstruction, SimpleRBConstruction, SimpleRBConstruction, SimpleRBConstruction, SimpleRBConstruction, SimpleRBConstruction, and ElasticityRBConstruction.
Definition at line 123 of file rb_construction_base.C.
Referenced by SimpleRBConstruction::init_data().
| 
 | protectedvirtualinherited | 
Initializes the matrices associated with this system.
Reimplemented in libMesh::EigenSystem.
Definition at line 308 of file system.C.
References libMesh::System::_matrices, libMesh::System::_matrices_initialized, libMesh::System::_matrix_types, libMesh::System::_prefer_hash_table_matrix_assembly, libMesh::System::_require_sparsity_pattern, libMesh::DofMap::attach_matrix(), libMesh::DofMap::compute_sparsity(), libMesh::System::get_dof_map(), libMesh::System::get_mesh(), libMesh::SparseMatrix< T >::initialized(), libMesh::DofMap::is_attached(), libMesh::libmesh_assert(), and libMesh::System::name().
Referenced by libMesh::System::init_data(), and libMesh::EigenSystem::init_matrices().
| 
 | inherited | 
Accessors for qoi and qoi_error_estimates vectors.
Definition at line 2149 of file system.C.
References libMesh::System::n_qois(), libMesh::System::qoi, and libMesh::System::qoi_error_estimates.
Referenced by CoupledSystemQoI::init_qoi_count(), LaplaceQoI::init_qoi_count(), and main().
| 
 | inherited | 
Initialize the parameter ranges and set current_parameters.
Parameter ranges are inclusive. The input min/max RBParameters should have exactly 1 sample each. Vector-valued samples are not currently supported for the min/max parameters or for discrete parameters.
Definition at line 53 of file rb_parametrized.C.
References libMesh::RBParametrized::_discrete_parameter_values, libMesh::RBParameters::begin_serialized(), libMesh::RBParameters::end_serialized(), libMesh::RBParameters::n_parameters(), libMesh::RBParameters::n_samples(), libMesh::Quality::name(), libMesh::RBParametrized::parameters_initialized, libMesh::RBParametrized::parameters_max, libMesh::RBParametrized::parameters_min, libMesh::Real, libMesh::RBParametrized::set_parameters(), and libMesh::RBParameters::set_value().
Referenced by enrich_basis_from_rhs_terms(), libMesh::RBParametrized::initialize_parameters(), libMesh::RBDataDeserialization::load_parameter_ranges(), libMesh::RBSCMConstruction::perform_SCM_greedy(), libMesh::RBSCMConstruction::process_parameters_file(), libMesh::RBParametrized::read_parameter_data_from_files(), libMesh::RBEIMConstruction::set_rb_construction_parameters(), set_rb_construction_parameters(), RBParametersTest::testRBParametrized(), libMesh::RBEIMConstruction::train_eim_approximation_with_greedy(), libMesh::RBEIMConstruction::train_eim_approximation_with_POD(), train_reduced_basis_with_greedy(), and train_reduced_basis_with_POD().
| 
 | inherited | 
Initialize the parameter ranges and set current_parameters.
Definition at line 96 of file rb_parametrized.C.
References libMesh::RBParametrized::get_discrete_parameter_values(), libMesh::RBParametrized::get_parameters_max(), libMesh::RBParametrized::get_parameters_min(), and libMesh::RBParametrized::initialize_parameters().
| 
 | virtual | 
Allocate all the data structures necessary for the construction stage of the RB method.
This function also performs matrix and vector assembly of the "truth" affine expansion.
We can optionally skip the matrix or vector assembly steps by setting skip_matrix_assembly = true, or skip_vector_assembly = true, respectively.
Reimplemented in libMesh::TransientRBConstruction.
Definition at line 462 of file rb_construction.C.
References allocate_data_structures(), assemble_affine_expansion(), libMesh::LinearImplicitSystem::get_linear_solver(), libMesh::RBThetaExpansion::get_n_outputs(), get_rb_assembly_expansion(), get_rb_theta_expansion(), inner_product_solver, and libMesh::LinearSolver< T >::reuse_preconditioner().
Referenced by libMesh::TransientRBConstruction::initialize_rb_construction(), and main().
| 
 | virtualinherited | 
Initialize the parameter ranges and indicate whether deterministic or random training parameters should be used and whether or not we want the parameters to be scaled logarithmically.
n_global_training_samples is the total number of samples to generate, which will be distributed across all the processors. 
Definition at line 292 of file rb_construction_base.C.
Referenced by set_rb_construction_parameters().
| 
 | inlineinherited | 
Accessor for the adjoint_already_solved boolean.
Definition at line 410 of file system.h.
References libMesh::System::adjoint_already_solved.
Referenced by libMesh::ImplicitSystem::adjoint_qoi_parameter_sensitivity(), libMesh::AdjointRefinementEstimator::estimate_error(), libMesh::AdjointResidualErrorEstimator::estimate_error(), libMesh::ImplicitSystem::qoi_parameter_hessian(), and libMesh::ImplicitSystem::qoi_parameter_hessian_vector_product().
| 
 | inherited | 
Is parameter mu_name discrete? 
Definition at line 365 of file rb_parametrized.C.
References libMesh::RBParametrized::_discrete_parameter_values, and libMesh::RBParametrized::parameters_initialized.
Referenced by libMesh::RBDataSerialization::add_parameter_ranges_to_builder(), libMesh::RBEIMConstruction::print_info(), print_info(), and libMesh::RBParametrized::write_parameter_ranges_to_file().
| 
 | inlineinherited | 
true iff this system has been initialized. Definition at line 2415 of file system.h.
References libMesh::System::_is_initialized.
Referenced by libMesh::DofMap::add_variable(), libMesh::DofMap::add_variables(), libMesh::System::init(), and libMesh::StaticCondensationDofMap::reinit().
| 
 | inlineinherited | 
Is the system in quiet mode?
Definition at line 106 of file rb_construction_base.h.
Referenced by compute_Fq_representor_innerprods(), compute_output_dual_innerprods(), print_info(), libMesh::TransientRBConstruction::update_residual_terms(), and update_residual_terms().
| bool libMesh::RBConstruction::is_rb_eval_initialized | ( | ) | const | 
true if rb_eval is initialized. False, otherwise. Definition at line 189 of file rb_construction.C.
References rb_eval.
Referenced by libMesh::TransientRBConstruction::print_info(), and print_info().
| 
 | virtual | 
RB_training_type_in is a type of training that requires a serial training set. For example, POD training generally does require a serial training set. Definition at line 1665 of file rb_construction.C.
Referenced by set_RB_training_type().
| 
 | virtual | 
Load the i^th RB function into the RBConstruction solution vector.
Definition at line 1692 of file rb_construction.C.
References libMesh::RBEvaluation::get_basis_function(), get_rb_evaluation(), libMesh::System::solution, and libMesh::System::update().
Referenced by main().
| 
 | virtual | 
Load the RB solution from the most recent solve with rb_eval into this system's solution vector.
Reimplemented in libMesh::TransientRBConstruction.
Definition at line 2240 of file rb_construction.C.
References libMesh::RBEvaluation::get_n_basis_functions(), get_rb_evaluation(), libMesh::make_range(), libMesh::RBEvaluation::RB_solution, libMesh::DenseVector< T >::size(), libMesh::System::solution, and libMesh::System::update().
Referenced by main().
| 
 | virtualinherited | 
Overwrite the training parameters with new_training_set.
This training set is assumed to contain only the samples local to this processor.
Definition at line 379 of file rb_construction_base.C.
Referenced by set_rb_construction_parameters().
| 
 | inherited | 
Fills the std::set with the degrees of freedom on the local processor corresponding the the variable number passed in.
Definition at line 1405 of file system.C.
References libMesh::DofMap::dof_indices(), libMesh::DofMapBase::end_dof(), libMesh::DofMapBase::first_dof(), libMesh::System::get_dof_map(), libMesh::System::get_mesh(), and libMesh::libmesh_assert().
Referenced by libMesh::System::discrete_var_norm(), SystemsTest::testBlockRestrictedVarNDofs(), and libMesh::DirectSolutionTransfer::transfer().
| 
 | inlineinherited | 
Beginning of matrices container.
Definition at line 2487 of file system.h.
References libMesh::System::_matrices.
| 
 | inlineinherited | 
Beginning of matrices container.
Definition at line 2493 of file system.h.
References libMesh::System::_matrices.
| 
 | inlineinherited | 
End of matrices container.
Definition at line 2499 of file system.h.
References libMesh::System::_matrices.
| 
 | inlineinherited | 
End of matrices container.
Definition at line 2505 of file system.h.
References libMesh::System::_matrices.
| 
 | inlineinherited | 
Definition at line 2441 of file system.h.
References libMesh::System::n_constrained_dofs(), and libMesh::System::n_dofs().
| 
 | inherited | 
n_vars() in the case of all scalar-valued variables. Definition at line 2674 of file system.C.
References libMesh::System::get_dof_map(), libMesh::System::get_mesh(), and libMesh::DofMap::n_components().
| 
 | inherited | 
Definition at line 126 of file system.C.
References libMesh::System::_dof_map.
Referenced by form_functionA(), form_functionB(), form_matrixA(), libMesh::System::get_info(), libMesh::System::n_active_dofs(), libMesh::EigenSystem::solve(), and BoundaryInfoTest::testShellFaceConstraints().
| 
 | inherited | 
Definition at line 119 of file system.C.
References libMesh::System::_dof_map.
Referenced by libMesh::TransientRBConstruction::add_IC_to_RB_space(), libMesh::System::add_vector(), libMesh::TransientRBConstruction::allocate_data_structures(), allocate_data_structures(), libMesh::TransientRBConstruction::assemble_affine_expansion(), libMesh::ClawSystem::assemble_avg_coupling_matrices(), libMesh::ClawSystem::assemble_boundary_condition_matrices(), libMesh::AdvectionSystem::assemble_claw_rhs(), libMesh::ClawSystem::assemble_jump_coupling_matrix(), compute_Fq_representor_innerprods(), compute_output_dual_innerprods(), compute_residual_dual_norm_slow(), libMesh::TransientRBConstruction::enrich_RB_space(), libMesh::AdjointRefinementEstimator::estimate_error(), libMesh::System::get_info(), libMesh::SecondOrderUnsteadySolver::init_data(), libMesh::AdvectionSystem::init_data(), libMesh::UnsteadySolver::init_data(), libMesh::System::init_data(), libMesh::OptimizationSystem::initialize_equality_constraints_storage(), libMesh::OptimizationSystem::initialize_inequality_constraints_storage(), main(), libMesh::TransientRBConstruction::mass_matrix_scaled_matvec(), libMesh::System::n_active_dofs(), libMesh::CondensedEigenSystem::n_global_non_condensed_dofs(), libMesh::FEMSystem::numerical_jacobian(), libMesh::RBSCMConstruction::perform_SCM_greedy(), libMesh::RBEvaluation::read_in_vectors_from_multiple_files(), libMesh::System::read_legacy_data(), libMesh::TransientRBConstruction::read_riesz_representors_from_files(), read_riesz_representors_from_files(), MeshFunctionTest::read_variable_info_from_output_data(), libMesh::SecondOrderUnsteadySolver::reinit(), libMesh::UnsteadySolver::reinit(), libMesh::System::restrict_vectors(), OverlappingAlgebraicGhostingTest::run_ghosting_test(), OverlappingCouplingGhostingTest::run_sparsity_pattern_test(), libMesh::TransientRBConstruction::set_error_temporal_data(), libMesh::ClawSystem::solve_conservation_law(), SystemsTest::test100KVariables(), MeshfunctionDFEM::test_mesh_function_dfem(), MeshfunctionDFEM::test_mesh_function_dfem_grad(), MeshFunctionTest::test_p_level(), SystemsTest::testPostInitAddVector(), SystemsTest::testPostInitAddVectorTypeChange(), SystemsTest::testProjectCubeWithMeshFunction(), SystemsTest::testProjectMatrix1D(), SystemsTest::testProjectMatrix2D(), SystemsTest::testProjectMatrix3D(), train_reduced_basis_with_POD(), libMesh::MeshFunctionSolutionTransfer::transfer(), libMesh::TransientRBConstruction::truth_assembly(), truth_assembly(), libMesh::TransientRBConstruction::update_RB_initial_condition_all_N(), libMesh::TransientRBConstruction::update_RB_system_matrices(), update_RB_system_matrices(), libMesh::TransientRBConstruction::update_residual_terms(), and update_residual_terms().
| 
 | inlineinherited | 
Definition at line 155 of file linear_implicit_system.h.
References libMesh::LinearImplicitSystem::_n_linear_iterations.
Referenced by compute_Fq_representor_innerprods(), compute_output_dual_innerprods(), main(), libMesh::TransientRBConstruction::update_residual_terms(), and update_residual_terms().
| 
 | inherited | 
Definition at line 141 of file system.C.
References libMesh::System::_dof_map.
Referenced by libMesh::System::get_info().
| 
 | inherited | 
Definition at line 156 of file system.C.
References libMesh::System::_dof_map.
Referenced by libMesh::TransientRBConstruction::add_IC_to_RB_space(), libMesh::System::add_vector(), libMesh::TransientRBConstruction::allocate_data_structures(), allocate_data_structures(), libMesh::TransientRBConstruction::assemble_affine_expansion(), libMesh::AdvectionSystem::assemble_claw_rhs(), libMesh::PetscDMWrapper::build_section(), compute_Fq_representor_innerprods(), compute_output_dual_innerprods(), compute_residual_dual_norm_slow(), libMesh::TransientRBConstruction::enrich_RB_space(), libMesh::AdjointRefinementEstimator::estimate_error(), libMesh::System::get_info(), libMesh::SecondOrderUnsteadySolver::init_data(), libMesh::AdvectionSystem::init_data(), libMesh::UnsteadySolver::init_data(), libMesh::System::init_data(), libMesh::OptimizationSystem::initialize_equality_constraints_storage(), libMesh::OptimizationSystem::initialize_inequality_constraints_storage(), main(), libMesh::TransientRBConstruction::mass_matrix_scaled_matvec(), libMesh::RBEvaluation::read_in_vectors_from_multiple_files(), libMesh::TransientRBConstruction::read_riesz_representors_from_files(), read_riesz_representors_from_files(), libMesh::SecondOrderUnsteadySolver::reinit(), libMesh::UnsteadySolver::reinit(), libMesh::System::restrict_vectors(), OverlappingAlgebraicGhostingTest::run_ghosting_test(), OverlappingCouplingGhostingTest::run_sparsity_pattern_test(), libMesh::TransientRBConstruction::set_error_temporal_data(), libMesh::ClawSystem::solve_conservation_law(), MeshFunctionTest::test_p_level(), train_reduced_basis_with_POD(), libMesh::TransientRBConstruction::truth_assembly(), truth_assembly(), libMesh::TransientRBConstruction::update_RB_initial_condition_all_N(), libMesh::TransientRBConstruction::update_RB_system_matrices(), update_RB_system_matrices(), libMesh::TransientRBConstruction::update_residual_terms(), and update_residual_terms().
| 
 | inlineinherited | 
_matrices map Definition at line 2598 of file system.h.
References libMesh::System::_matrices.
Referenced by libMesh::ImplicitSystem::add_matrices(), and libMesh::System::get_info().
| 
 | inlinestaticinherited | 
Prints the number of outstanding (created, but not yet destroyed) objects.
Definition at line 85 of file reference_counter.h.
References libMesh::ReferenceCounter::_n_objects.
Referenced by libMesh::LibMeshInit::~LibMeshInit().
| 
 | inlinestaticinherited | 
Prints the number of outstanding (created, but not yet destroyed) objects.
Definition at line 85 of file reference_counter.h.
References libMesh::ReferenceCounter::_n_objects.
Referenced by libMesh::LibMeshInit::~LibMeshInit().
| 
 | inlineinherited | 
Definition at line 103 of file parallel_object.h.
References libMesh::ParallelObject::_communicator, libMesh::libmesh_assert(), and TIMPI::Communicator::size().
Referenced by libMesh::Partitioner::_find_global_index_by_pid_map(), libMesh::BoundaryInfo::_find_id_maps(), libMesh::DofMap::add_constraints_to_send_list(), libMesh::PetscDMWrapper::add_dofs_to_section(), libMesh::DistributedMesh::add_elem(), libMesh::DofMap::add_neighbors_to_send_list(), libMesh::DistributedMesh::add_node(), libMesh::System::add_vector(), libMesh::LaplaceMeshSmoother::allgather_graph(), libMesh::DofMap::allgather_recursive_constraints(), libMesh::FEMSystem::assembly(), libMesh::Nemesis_IO::assert_symmetric_cmaps(), libMesh::Partitioner::assign_partitioning(), libMesh::AztecLinearSolver< T >::AztecLinearSolver(), libMesh::Partitioner::build_graph(), libMesh::EquationSystems::build_parallel_elemental_solution_vector(), libMesh::DistributedMesh::clear(), libMesh::DistributedMesh::clear_elems(), libMesh::Nemesis_IO_Helper::compute_border_node_ids(), libMesh::Nemesis_IO_Helper::construct_nemesis_filename(), libMesh::UnstructuredMesh::copy_nodes_and_elements(), libMesh::ExodusII_IO::copy_scalar_solution(), libMesh::Nemesis_IO::copy_scalar_solution(), libMesh::UnstructuredMesh::create_pid_mesh(), libMesh::MeshTools::create_processor_bounding_box(), libMesh::DofMap::distribute_dofs(), libMesh::DofMap::distribute_scalar_dofs(), libMesh::DistributedMesh::DistributedMesh(), libMesh::EnsightIO::EnsightIO(), libMesh::RBEIMEvaluation::gather_bfs(), libMesh::MeshBase::get_info(), libMesh::StaticCondensation::init(), libMesh::SystemSubsetBySubdomain::init(), libMesh::PetscDMWrapper::init_petscdm(), libMesh::Nemesis_IO_Helper::initialize(), libMesh::ExodusII_IO_Helper::initialize(), libMesh::DistributedMesh::insert_elem(), libMesh::MeshTools::libmesh_assert_contiguous_dof_ids(), libMesh::MeshTools::libmesh_assert_parallel_consistent_new_node_procids(), libMesh::MeshTools::libmesh_assert_parallel_consistent_procids< Elem >(), libMesh::MeshTools::libmesh_assert_parallel_consistent_procids< Node >(), libMesh::MeshTools::libmesh_assert_topology_consistent_procids< Node >(), libMesh::MeshTools::libmesh_assert_valid_boundary_ids(), libMesh::MeshTools::libmesh_assert_valid_dof_ids(), libMesh::MeshTools::libmesh_assert_valid_neighbors(), libMesh::MeshTools::libmesh_assert_valid_refinement_flags(), libMesh::DofMap::local_variable_indices(), libMesh::MeshRefinement::make_coarsening_compatible(), libMesh::MeshBase::n_active_elem_on_proc(), libMesh::DofMap::n_dofs_per_processor(), libMesh::MeshBase::n_elem_on_proc(), libMesh::MeshBase::n_nodes_on_proc(), libMesh::RBEIMEvaluation::node_gather_bfs(), libMesh::Partitioner::partition(), libMesh::MeshBase::partition(), libMesh::Partitioner::partition_unpartitioned_elements(), libMesh::System::point_gradient(), libMesh::System::point_hessian(), libMesh::System::point_value(), libMesh::DofMap::prepare_send_list(), libMesh::MeshBase::print_constraint_rows(), libMesh::DofMap::print_dof_constraints(), libMesh::NameBasedIO::read(), libMesh::Nemesis_IO::read(), libMesh::CheckpointIO::read(), libMesh::CheckpointIO::read_connectivity(), libMesh::XdrIO::read_header(), libMesh::CheckpointIO::read_nodes(), libMesh::System::read_parallel_data(), libMesh::System::read_SCALAR_dofs(), libMesh::System::read_serialized_blocked_dof_objects(), libMesh::System::read_serialized_vector(), libMesh::DistributedMesh::renumber_dof_objects(), libMesh::Partitioner::repartition(), OverlappingFunctorTest::run_partitioner_test(), libMesh::DofMap::scatter_constraints(), libMesh::DistributedMesh::set_next_unique_id(), libMesh::DofMap::set_nonlocal_dof_objects(), libMesh::PetscDMWrapper::set_point_range_in_section(), WriteVecAndScalar::setupTests(), libMesh::RBEIMEvaluation::side_gather_bfs(), DistributedMeshTest::testRemoteElemError(), CheckpointIOTest::testSplitter(), libMesh::MeshRefinement::uniformly_coarsen(), libMesh::DistributedMesh::update_parallel_id_counts(), libMesh::GMVIO::write_binary(), libMesh::GMVIO::write_discontinuous_gmv(), libMesh::ExodusII_IO_Helper::write_nodal_coordinates(), libMesh::VTKIO::write_nodal_data(), libMesh::ExodusII_IO::write_nodal_data(), libMesh::System::write_parallel_data(), libMesh::System::write_SCALAR_dofs(), libMesh::XdrIO::write_serialized_bcs_helper(), libMesh::System::write_serialized_blocked_dof_objects(), libMesh::XdrIO::write_serialized_connectivity(), libMesh::XdrIO::write_serialized_nodes(), and libMesh::XdrIO::write_serialized_nodesets().
| 
 | inlineinherited | 
Number of currently active quantities of interest.
Definition at line 2520 of file system.h.
References libMesh::System::qoi, and libMesh::System::qoi_error_estimates.
Referenced by libMesh::UniformRefinementEstimator::_estimate_error(), libMesh::AdaptiveTimeSolver::adjoint_advance_timestep(), libMesh::UnsteadySolver::adjoint_advance_timestep(), libMesh::ImplicitSystem::adjoint_qoi_parameter_sensitivity(), libMesh::TwostepTimeSolver::adjoint_solve(), libMesh::ImplicitSystem::adjoint_solve(), libMesh::SensitivityData::allocate_data(), libMesh::SensitivityData::allocate_hessian_data(), libMesh::ExplicitSystem::assemble_qoi(), libMesh::FEMSystem::assemble_qoi(), libMesh::ExplicitSystem::assemble_qoi_derivative(), libMesh::FEMSystem::assemble_qoi_derivative(), libMesh::DiffContext::DiffContext(), libMesh::AdjointRefinementEstimator::estimate_error(), libMesh::AdjointResidualErrorEstimator::estimate_error(), libMesh::FileSolutionHistory::FileSolutionHistory(), libMesh::ImplicitSystem::forward_qoi_parameter_sensitivity(), libMesh::UnsteadySolver::init_adjoints(), libMesh::TimeSolver::init_adjoints(), libMesh::System::init_qois(), libMesh::Euler2Solver::integrate_adjoint_refinement_error_estimate(), libMesh::TwostepTimeSolver::integrate_adjoint_refinement_error_estimate(), libMesh::EulerSolver::integrate_adjoint_refinement_error_estimate(), libMesh::Euler2Solver::integrate_qoi_timestep(), libMesh::TwostepTimeSolver::integrate_qoi_timestep(), libMesh::EulerSolver::integrate_qoi_timestep(), main(), libMesh::FEMContext::pre_fe_reinit(), libMesh::ImplicitSystem::qoi_parameter_hessian(), libMesh::ImplicitSystem::qoi_parameter_hessian_vector_product(), libMesh::FileSolutionHistory::retrieve(), libMesh::QoISet::size(), libMesh::UnsteadySolver::UnsteadySolver(), and libMesh::ImplicitSystem::weighted_sensitivity_adjoint_solve().
| 
 | inherited | 
VariableGroup variable groups in the system Definition at line 2679 of file system.C.
References libMesh::System::get_dof_map(), and libMesh::DofMap::n_variable_groups().
Referenced by libMesh::FEMSystem::assembly(), and libMesh::System::get_info().
| 
 | inherited | 
Definition at line 2654 of file system.C.
References libMesh::System::get_dof_map(), and libMesh::DofMap::n_vars().
Referenced by libMesh::ExactSolution::_compute_error(), libMesh::UniformRefinementEstimator::_estimate_error(), libMesh::PetscDMWrapper::add_dofs_helper(), libMesh::DiffContext::add_localized_vector(), add_scaled_matrix_and_vector(), libMesh::TwostepTimeSolver::adjoint_solve(), libMesh::FEMContext::attach_quadrature_rules(), libMesh::EquationSystems::build_parallel_solution_vector(), libMesh::PetscDMWrapper::build_section(), libMesh::System::calculate_norm(), compute_stresses(), LinearElasticityWithContact::compute_stresses(), LinearElasticity::compute_stresses(), LargeDeformationElasticity::compute_stresses(), libMesh::DGFEMContext::DGFEMContext(), libMesh::DiffContext::DiffContext(), libMesh::JumpErrorEstimator::estimate_error(), libMesh::AdjointResidualErrorEstimator::estimate_error(), libMesh::ExactErrorEstimator::estimate_error(), libMesh::ErrorEstimator::estimate_errors(), libMesh::ExactSolution::ExactSolution(), libMesh::FEMContext::find_hardest_fe_type(), libMesh::EquationSystems::find_variable_numbers(), libMesh::FEMSystem::init_context(), libMesh::RBEIMConstruction::init_context(), libMesh::FEMContext::init_internal_data(), libMesh::PetscDMWrapper::init_petscdm(), libMesh::DifferentiablePhysics::init_physics(), AssemblyA0::interior_assembly(), AssemblyA1::interior_assembly(), AssemblyA2::interior_assembly(), InnerProductAssembly::interior_assembly(), main(), libMesh::WeightedPatchRecoveryErrorEstimator::EstimateError::operator()(), libMesh::SmoothnessEstimator::EstimateSmoothness::operator()(), libMesh::PatchRecoveryErrorEstimator::EstimateError::operator()(), output_norms(), libMesh::petsc_auto_fieldsplit(), libMesh::FEMContext::pre_fe_reinit(), libMesh::InterMeshProjection::project_system_vectors(), libMesh::System::re_update(), libMesh::System::read_legacy_data(), libMesh::System::read_parallel_data(), libMesh::System::read_serialized_blocked_dof_objects(), libMesh::System::read_serialized_vector(), libMesh::System::read_serialized_vectors(), libMesh::System::reinit_mesh(), libMesh::HPCoarsenTest::select_refinement(), libMesh::PetscDMWrapper::set_point_range_in_section(), libMesh::SystemSubsetBySubdomain::set_var_nums(), OverlappingTestBase::setup_coupling_matrix(), SystemsTest::testDofCouplingWithVarGroups(), SlitMeshRefinedSystemTest::testRestart(), SlitMeshRefinedSystemTest::testSystem(), libMesh::System::write_header(), libMesh::System::write_parallel_data(), libMesh::System::write_serialized_blocked_dof_objects(), libMesh::System::write_serialized_vector(), libMesh::System::write_serialized_vectors(), and libMesh::System::zero_variable().
| 
 | inlineinherited | 
_vectors map Definition at line 2457 of file system.h.
References libMesh::System::_vectors.
Referenced by libMesh::ExplicitSystem::add_system_rhs(), libMesh::System::compare(), libMesh::System::get_info(), main(), libMesh::InterMeshProjection::project_system_vectors(), and libMesh::System::write_header().
| 
 | inlineinherited | 
Definition at line 2343 of file system.h.
References libMesh::System::_sys_name.
Referenced by libMesh::System::compare(), compute_jacobian(), compute_residual(), DMlibMeshSetUpName_Private(), enrich_basis_from_rhs_terms(), libMesh::ExactErrorEstimator::estimate_error(), libMesh::ExactSolution::ExactSolution(), libMesh::ExactErrorEstimator::find_squared_element_error(), libMesh::System::get_info(), libMesh::NewtonSolver::init(), libMesh::StaticCondensation::init(), libMesh::TimeSolver::init_data(), libMesh::System::init_matrices(), main(), output_norms(), libMesh::petsc_auto_fieldsplit(), libMesh::System::prefix(), libMesh::RBSCMConstruction::print_info(), libMesh::ClawSystem::print_info(), libMesh::RBEIMConstruction::print_info(), print_info(), libMesh::TimeSolver::reinit(), libMesh::PetscDiffSolver::setup_petsc_data(), libMesh::FrequencySystem::solve(), truth_solve(), libMesh::System::user_assembly(), libMesh::System::user_constrain(), libMesh::System::user_initialization(), libMesh::System::user_QOI(), libMesh::System::user_QOI_derivative(), libMesh::System::write_header(), libMesh::System::write_parallel_data(), and libMesh::System::write_serialized_data().
| 
 | inlineinherited | 
Definition at line 2351 of file system.h.
References libMesh::System::_sys_number.
Referenced by libMesh::ExactSolution::_compute_error(), libMesh::PetscDMWrapper::add_dofs_helper(), assemble_matrix_and_rhs(), assemble_shell(), libMesh::VariationalSmootherSystem::assembly(), libMesh::EquationSystems::build_parallel_solution_vector(), libMesh::VariationalSmootherConstraint::constrain_node_to_line(), libMesh::VariationalSmootherConstraint::constrain_node_to_plane(), libMesh::ExodusII_IO::copy_elemental_solution(), libMesh::Nemesis_IO::copy_elemental_solution(), libMesh::ExodusII_IO::copy_nodal_solution(), libMesh::Nemesis_IO::copy_nodal_solution(), libMesh::AdjointRefinementEstimator::estimate_error(), libMesh::ExactErrorEstimator::find_squared_element_error(), libMesh::EquationSystems::find_variable_numbers(), libMesh::VariationalSmootherConstraint::fix_node(), libMesh::System::get_info(), libMesh::VariationalSmootherSystem::init_data(), main(), libMesh::GenericProjector< FFunctor, GFunctor, FValue, ProjectionAction >::SortAndCopy::operator()(), libMesh::GenericProjector< FFunctor, GFunctor, FValue, ProjectionAction >::ProjectVertices::operator()(), libMesh::GenericProjector< FFunctor, GFunctor, FValue, ProjectionAction >::ProjectEdges::operator()(), libMesh::GenericProjector< FFunctor, GFunctor, FValue, ProjectionAction >::ProjectSides::operator()(), libMesh::GenericProjector< FFunctor, GFunctor, FValue, ProjectionAction >::ProjectInteriors::operator()(), libMesh::System::read_legacy_data(), libMesh::System::read_parallel_data(), libMesh::System::read_serialized_blocked_dof_objects(), libMesh::StaticCondensationDofMap::reinit(), LinearElasticityWithContact::residual_and_jacobian(), SolidSystem::save_initial_mesh(), libMesh::HPCoarsenTest::select_refinement(), libMesh::PetscDMWrapper::set_point_range_in_section(), MeshInputTest::testCopyElementVectorImpl(), libMesh::MeshFunctionSolutionTransfer::transfer(), libMesh::MeshfreeSolutionTransfer::transfer(), libMesh::BoundaryVolumeSolutionTransfer::transfer_boundary_volume(), libMesh::BoundaryVolumeSolutionTransfer::transfer_volume_boundary(), libMesh::DTKAdapter::update_variable_values(), libMesh::System::write_parallel_data(), libMesh::System::write_serialized_blocked_dof_objects(), and libMesh::System::zero_variable().
| 
 | delete | 
| 
 | delete | 
| 
 | inherited | 
var at the physical point p in the mesh, similarly to point_value. Definition at line 2328 of file system.C.
References libMesh::Variable::active_subdomains(), TIMPI::Communicator::broadcast(), libMesh::ParallelObject::comm(), libMesh::PointLocatorBase::enable_out_of_mesh_mode(), libMesh::System::get_dof_map(), libMesh::System::get_mesh(), libMesh::libmesh_assert(), mesh, TIMPI::Communicator::min(), libMesh::ParallelObject::n_processors(), libMesh::ParallelObject::processor_id(), libMesh::DofObject::processor_id(), and libMesh::System::variable().
Referenced by line_print(), and libMesh::System::point_gradient().
| 
 | inherited | 
var at the physical point p in local Elem e in the mesh, similarly to point_value. Definition at line 2390 of file system.C.
References libMesh::FEInterface::compute_data(), libMesh::Elem::contains_point(), libMesh::System::current_local_solution, dim, libMesh::Elem::dim(), libMesh::DofMap::dof_indices(), libMesh::FEComputeData::dshape, libMesh::FEComputeData::enable_derivative(), libMesh::System::get_dof_map(), libMesh::System::get_equation_systems(), libMesh::FEMap::inverse_map(), libMesh::DofMap::is_evaluable(), libMesh::libmesh_assert(), libMesh::FEComputeData::local_transform, and libMesh::DofMap::variable_type().
| 
 | inherited | 
Calls the version of point_gradient() which takes a reference.
This function exists only to prevent people from calling the version of point_gradient() that has a boolean third argument, which would result in unnecessary PointLocator calls.
Definition at line 2455 of file system.C.
References libMesh::libmesh_assert(), and libMesh::System::point_gradient().
| 
 | inherited | 
Calls the parallel version of point_gradient().
This function exists only to prevent people from accidentally calling the version of point_gradient() that has a boolean third argument, which would result in incorrect output.
Definition at line 2463 of file system.C.
References libMesh::System::point_gradient().
| 
 | inherited | 
var at the physical point p in the mesh, similarly to point_value. Definition at line 2472 of file system.C.
References libMesh::Variable::active_subdomains(), TIMPI::Communicator::broadcast(), libMesh::ParallelObject::comm(), libMesh::PointLocatorBase::enable_out_of_mesh_mode(), libMesh::System::get_dof_map(), libMesh::System::get_mesh(), libMesh::libmesh_assert(), mesh, TIMPI::Communicator::min(), libMesh::ParallelObject::n_processors(), libMesh::ParallelObject::processor_id(), libMesh::DofObject::processor_id(), and libMesh::System::variable().
Referenced by libMesh::System::point_hessian().
| 
 | inherited | 
var at the physical point p in local Elem e in the mesh, similarly to point_value. Definition at line 2533 of file system.C.
References libMesh::TypeTensor< T >::add_scaled(), libMesh::FEGenericBase< OutputType >::build(), libMesh::Elem::contains_point(), libMesh::System::current_local_solution, libMesh::Elem::dim(), libMesh::DofMap::dof_indices(), libMesh::System::get_dof_map(), libMesh::Elem::infinite(), libMesh::FEMap::inverse_map(), libMesh::DofMap::is_evaluable(), libMesh::libmesh_assert(), and libMesh::DofMap::variable_type().
| 
 | inherited | 
Calls the version of point_hessian() which takes a reference.
This function exists only to prevent people from calling the version of point_hessian() that has a boolean third argument, which would result in unnecessary PointLocator calls.
Definition at line 2593 of file system.C.
References libMesh::libmesh_assert(), and libMesh::System::point_hessian().
| 
 | inherited | 
Calls the parallel version of point_hessian().
This function exists only to prevent people from accidentally calling the version of point_hessian() that has a boolean third argument, which would result in incorrect output.
Definition at line 2601 of file system.C.
References libMesh::System::point_hessian().
| 
 | inherited | 
var at the physical point p in the mesh, without knowing a priori which element contains p, using the degree of freedom coefficients in sol (or in current_local_solution if sol is left null).MeshBase::sub_point_locator(); users may or may not want to call MeshBase::clear_point_locator() afterward. Also, point_locator() is expensive (N log N for initial construction, log N for evaluations). Avoid using this function in any context where you are already looping over elements.Because the element containing p may lie on any processor, this function is parallel-only.
By default this method expects the point to reside inside the domain and will abort if no element can be found which contains p. The optional parameter insist_on_success can be set to false to allow the method to return 0 when the point is not located. 
Definition at line 2199 of file system.C.
References libMesh::Variable::active_subdomains(), TIMPI::Communicator::broadcast(), libMesh::ParallelObject::comm(), libMesh::PointLocatorBase::enable_out_of_mesh_mode(), libMesh::System::get_dof_map(), libMesh::System::get_mesh(), libMesh::libmesh_assert(), mesh, TIMPI::Communicator::min(), libMesh::ParallelObject::n_processors(), libMesh::ParallelObject::processor_id(), libMesh::DofObject::processor_id(), and libMesh::System::variable().
Referenced by line_print(), main(), libMesh::System::point_value(), MeshInputTest::testCopyElementSolutionImpl(), MeshInputTest::testCopyElementVectorImpl(), MeshInputTest::testCopyNodalSolutionImpl(), DefaultCouplingTest::testCoupling(), PointNeighborCouplingTest::testCoupling(), MeshInputTest::testExodusWriteElementDataFromDiscontinuousNodalData(), PeriodicBCTest::testPeriodicBC(), SystemsTest::testProjectCubeWithMeshFunction(), and EquationSystemsTest::testRepartitionThenReinit().
| 
 | inherited | 
var at the physical point p contained in local Elem e, using the degree of freedom coefficients in sol (or in current_local_solution if sol is left null).This version of point_value can be run in serial, but assumes e is in the local mesh partition or is algebraically ghosted. 
Definition at line 2260 of file system.C.
References libMesh::FEInterface::compute_data(), libMesh::Elem::contains_point(), libMesh::System::current_local_solution, libMesh::Elem::dim(), libMesh::DofMap::dof_indices(), libMesh::System::get_dof_map(), libMesh::System::get_equation_systems(), libMesh::FEMap::inverse_map(), libMesh::DofMap::is_evaluable(), libMesh::libmesh_assert(), and libMesh::DofMap::variable_type().
| 
 | inherited | 
Calls the version of point_value() which takes a reference.
This function exists only to prevent people from calling the version of point_value() that has a boolean third argument, which would result in unnecessary PointLocator calls.
Definition at line 2312 of file system.C.
References libMesh::libmesh_assert(), and libMesh::System::point_value().
| 
 | inherited | 
Calls the parallel version of point_value().
This function exists only to prevent people from accidentally calling the version of point_value() that has a boolean third argument, which would result in incorrect output.
Definition at line 2320 of file system.C.
References libMesh::System::point_value().
| 
 | inlineprotectedvirtual | 
This function is called from add_scaled_matrix_and_vector() before each element matrix and vector are assembled into their global counterparts.
By default it is a no-op, but it could be used to apply any user-defined transformations immediately prior to assembly. We use DGFEMContext since it allows for both DG and continuous Galerkin formulations.
Definition at line 715 of file rb_construction.h.
Referenced by add_scaled_matrix_and_vector().
| 
 | inlineprotectedvirtual | 
Similarly, provide an opportunity to post-process the truth solution after the solve is complete.
By default this is a no-op, but it could be used to apply any required user-defined post processing to the solution vector. Note: the truth solution is stored in the "solution" member of this class, which is inherited from the parent System class several levels up.
Definition at line 725 of file rb_construction.h.
Referenced by enrich_basis_from_rhs_terms(), and truth_solve().
| 
 | protectedvirtual | 
Definition at line 2755 of file rb_construction.C.
References _evaluated_thetas, _preevaluate_thetas_completed, libMesh::RBConstructionBase< LinearImplicitSystem >::get_first_local_training_index(), libMesh::RBConstructionBase< LinearImplicitSystem >::get_local_n_training_samples(), libMesh::RBThetaExpansion::get_n_A_terms(), libMesh::RBParametrized::get_parameters(), get_rb_evaluation(), libMesh::RBEvaluation::get_rb_theta_expansion(), libMesh::index_range(), libMesh::make_range(), and libMesh::RBConstructionBase< LinearImplicitSystem >::set_params_from_training_set().
Referenced by train_reduced_basis_with_greedy().
| 
 | inlineinherited | 
Sets whether to use hash table matrix assembly if the matrix sub-classes support it.
Definition at line 2627 of file system.h.
References libMesh::System::_matrices_initialized, and libMesh::System::_prefer_hash_table_matrix_assembly.
Referenced by main().
| 
 | inlineinherited | 
prefix_with_name() Definition at line 1961 of file system.h.
References libMesh::System::name().
Referenced by libMesh::ImplicitSystem::get_linear_solver(), libMesh::LinearImplicitSystem::solve(), and libMesh::NonlinearImplicitSystem::solve().
| 
 | inlineinherited | 
Instructs this system to prefix solve options with its name for solvers that leverage prefixes.
Definition at line 1950 of file system.h.
References libMesh::System::_prefix_with_name, and value.
| 
 | inlineinherited | 
Definition at line 1955 of file system.h.
References libMesh::System::_prefix_with_name.
Referenced by libMesh::ContinuationSystem::ContinuationSystem(), libMesh::ImplicitSystem::get_linear_solver(), libMesh::LinearImplicitSystem::solve(), libMesh::NonlinearImplicitSystem::solve(), and libMesh::System::System().
| void libMesh::RBConstruction::print_basis_function_orthogonality | ( | ) | const | 
Print out a matrix that shows the orthogonality of the RB basis functions.
This is a helpful debugging tool, e.g. orthogonality can be degraded due to finite precision arithmetic.
Definition at line 387 of file rb_construction.C.
References libMesh::RBEvaluation::get_n_basis_functions(), get_non_dirichlet_inner_product_matrix_if_avail(), get_rb_evaluation(), libMesh::out, libMesh::System::solution, value, and libMesh::SparseMatrix< T >::vector_mult().
Referenced by main().
| 
 | inherited | 
Print out all the discrete parameter values.
Definition at line 380 of file rb_parametrized.C.
References libMesh::RBParametrized::get_discrete_parameter_values(), libMesh::Quality::name(), libMesh::out, and value.
Referenced by libMesh::RBSCMConstruction::print_info(), libMesh::RBEIMConstruction::print_info(), and print_info().
| 
 | staticinherited | 
Prints the reference information, by default to libMesh::out. 
Definition at line 81 of file reference_counter.C.
References libMesh::ReferenceCounter::_enable_print_counter, and libMesh::ReferenceCounter::get_info().
Referenced by libMesh::LibMeshInit::~LibMeshInit().
| 
 | staticinherited | 
Prints the reference information, by default to libMesh::out. 
Definition at line 81 of file reference_counter.C.
References libMesh::ReferenceCounter::_enable_print_counter, and libMesh::ReferenceCounter::get_info().
Referenced by libMesh::LibMeshInit::~LibMeshInit().
| 
 | virtual | 
Print out info that describes the current setup of this RBConstruction.
Reimplemented in libMesh::TransientRBConstruction.
Definition at line 350 of file rb_construction.C.
References get_abs_training_tolerance(), libMesh::RBThetaExpansion::get_n_A_terms(), libMesh::RBThetaExpansion::get_n_F_terms(), libMesh::RBThetaExpansion::get_n_output_terms(), libMesh::RBThetaExpansion::get_n_outputs(), libMesh::RBParametrized::get_n_params(), libMesh::RBConstructionBase< LinearImplicitSystem >::get_n_training_samples(), get_normalize_rb_bound_in_greedy(), libMesh::RBParametrized::get_parameter_max(), libMesh::RBParametrized::get_parameter_min(), libMesh::RBParametrized::get_parameters(), get_rb_theta_expansion(), get_RB_training_type(), get_rel_training_tolerance(), libMesh::RBParametrized::is_discrete_parameter(), libMesh::RBConstructionBase< LinearImplicitSystem >::is_quiet(), is_rb_eval_initialized(), libMesh::System::name(), Nmax, libMesh::out, and libMesh::RBParametrized::print_discrete_parameter_values().
Referenced by main(), and libMesh::TransientRBConstruction::print_info().
| 
 | inherited | 
Print the current parameters.
Definition at line 192 of file rb_parametrized.C.
References libMesh::RBParametrized::get_parameters(), libMesh::RBParametrized::parameters_initialized, and libMesh::RBParameters::print().
Referenced by libMesh::RBEIMConstruction::train_eim_approximation_with_greedy(), and train_reduced_basis_with_greedy().
| 
 | virtual | 
Read in from the file specified by parameters_filename and set the this system's member variables accordingly. 
Reimplemented in libMesh::TransientRBConstruction.
Definition at line 204 of file rb_construction.C.
References abs_training_tolerance, libMesh::make_range(), Nmax, libMesh::RBConstructionBase< LinearImplicitSystem >::quiet_mode, libMesh::Real, rel_training_tolerance, set_rb_construction_parameters(), and libMesh::RBParameters::set_value().
Referenced by main(), and libMesh::TransientRBConstruction::process_parameters_file().
| 
 | inlineinherited | 
Definition at line 114 of file parallel_object.h.
References libMesh::ParallelObject::_communicator, and TIMPI::Communicator::rank().
Referenced by libMesh::BoundaryInfo::_find_id_maps(), libMesh::PetscDMWrapper::add_dofs_to_section(), libMesh::DistributedMesh::add_elem(), libMesh::BoundaryInfo::add_elements(), libMesh::DofMap::add_neighbors_to_send_list(), libMesh::DistributedMesh::add_node(), libMesh::MeshTools::Modification::all_tri(), libMesh::DofMap::allgather_recursive_constraints(), libMesh::FEMSystem::assembly(), libMesh::Nemesis_IO::assert_symmetric_cmaps(), libMesh::Partitioner::assign_partitioning(), libMesh::Nemesis_IO_Helper::build_element_and_node_maps(), libMesh::Partitioner::build_graph(), libMesh::InfElemBuilder::build_inf_elem(), libMesh::BoundaryInfo::build_node_list_from_side_list(), libMesh::EquationSystems::build_parallel_elemental_solution_vector(), libMesh::EquationSystems::build_parallel_solution_vector(), libMesh::MeshFunction::check_found_elem(), libMesh::DistributedMesh::clear(), libMesh::DistributedMesh::clear_elems(), libMesh::ExodusII_IO_Helper::close(), libMesh::Nemesis_IO_Helper::compute_border_node_ids(), libMesh::Nemesis_IO_Helper::compute_communication_map_parameters(), libMesh::Nemesis_IO_Helper::compute_internal_and_border_elems_and_internal_nodes(), compute_max_error_bound(), libMesh::Nemesis_IO_Helper::compute_node_communication_maps(), libMesh::Nemesis_IO_Helper::compute_num_global_elem_blocks(), libMesh::Nemesis_IO_Helper::compute_num_global_nodesets(), libMesh::Nemesis_IO_Helper::compute_num_global_sidesets(), libMesh::Nemesis_IO_Helper::construct_nemesis_filename(), libMesh::ExodusII_IO::copy_elemental_solution(), libMesh::ExodusII_IO::copy_nodal_solution(), libMesh::ExodusII_IO::copy_scalar_solution(), libMesh::Nemesis_IO::copy_scalar_solution(), libMesh::MeshTools::correct_node_proc_ids(), libMesh::ExodusII_IO_Helper::create(), libMesh::DistributedMesh::delete_elem(), libMesh::MeshCommunication::delete_remote_elements(), libMesh::DofMap::distribute_dofs(), libMesh::DofMap::distribute_scalar_dofs(), libMesh::DistributedMesh::DistributedMesh(), libMesh::DofMapBase::end_dof(), libMesh::DofMapBase::end_old_dof(), libMesh::EnsightIO::EnsightIO(), libMesh::GenericProjector< FFunctor, GFunctor, FValue, ProjectionAction >::SubFunctor::find_dofs_to_send(), libMesh::UnstructuredMesh::find_neighbors(), libMesh::DofMapBase::first_dof(), libMesh::DofMapBase::first_old_dof(), libMesh::RBEIMEvaluation::gather_bfs(), libMesh::Nemesis_IO_Helper::get_cmap_params(), libMesh::Nemesis_IO_Helper::get_eb_info_global(), libMesh::Nemesis_IO_Helper::get_elem_cmap(), libMesh::Nemesis_IO_Helper::get_elem_map(), libMesh::MeshBase::get_info(), libMesh::DofMap::get_info(), libMesh::Nemesis_IO_Helper::get_init_global(), libMesh::Nemesis_IO_Helper::get_init_info(), libMesh::RBEIMEvaluation::get_interior_basis_functions_as_vecs(), libMesh::Nemesis_IO_Helper::get_loadbal_param(), libMesh::DofMap::get_local_constraints(), libMesh::MeshBase::get_local_constraints(), libMesh::Nemesis_IO_Helper::get_node_cmap(), libMesh::Nemesis_IO_Helper::get_node_map(), libMesh::Nemesis_IO_Helper::get_ns_param_global(), libMesh::Nemesis_IO_Helper::get_ss_param_global(), libMesh::SparsityPattern::Build::handle_vi_vj(), libMesh::LaplaceMeshSmoother::init(), libMesh::SystemSubsetBySubdomain::init(), HeatSystem::init_data(), libMesh::ExodusII_IO_Helper::initialize(), libMesh::ExodusII_IO_Helper::initialize_element_variables(), libMesh::ExodusII_IO_Helper::initialize_global_variables(), libMesh::ExodusII_IO_Helper::initialize_nodal_variables(), libMesh::DistributedMesh::insert_elem(), libMesh::DofMap::is_evaluable(), libMesh::SparsityPattern::Build::join(), libMesh::TransientRBEvaluation::legacy_write_offline_data_to_files(), libMesh::RBSCMEvaluation::legacy_write_offline_data_to_files(), libMesh::RBEvaluation::legacy_write_offline_data_to_files(), libMesh::MeshTools::libmesh_assert_consistent_distributed(), libMesh::MeshTools::libmesh_assert_consistent_distributed_nodes(), libMesh::MeshTools::libmesh_assert_contiguous_dof_ids(), libMesh::MeshTools::libmesh_assert_parallel_consistent_procids< Elem >(), libMesh::MeshTools::libmesh_assert_valid_neighbors(), libMesh::DistributedMesh::libmesh_assert_valid_parallel_object_ids(), libMesh::DofMap::local_variable_indices(), main(), libMesh::MeshRefinement::make_coarsening_compatible(), AugmentSparsityOnInterface::mesh_reinit(), libMesh::TriangulatorInterface::MeshedHole::MeshedHole(), libMesh::MeshBase::n_active_local_elem(), libMesh::BoundaryInfo::n_boundary_conds(), libMesh::MeshTools::n_connected_components(), libMesh::MeshBase::n_constraint_rows(), libMesh::BoundaryInfo::n_edge_conds(), libMesh::DofMapBase::n_local_dofs(), libMesh::MeshBase::n_local_elem(), libMesh::MeshBase::n_local_nodes(), libMesh::BoundaryInfo::n_nodeset_conds(), libMesh::BoundaryInfo::n_shellface_conds(), libMesh::RBEIMEvaluation::node_gather_bfs(), libMesh::DistributedMesh::own_node(), libMesh::BoundaryInfo::parallel_sync_node_ids(), libMesh::BoundaryInfo::parallel_sync_side_ids(), libMesh::System::point_gradient(), libMesh::System::point_hessian(), libMesh::System::point_value(), libMesh::MeshBase::print_constraint_rows(), libMesh::DofMap::print_dof_constraints(), libMesh::DofMap::process_mesh_constraint_rows(), libMesh::Nemesis_IO_Helper::put_cmap_params(), libMesh::Nemesis_IO_Helper::put_elem_cmap(), libMesh::Nemesis_IO_Helper::put_elem_map(), libMesh::Nemesis_IO_Helper::put_loadbal_param(), libMesh::Nemesis_IO_Helper::put_node_cmap(), libMesh::Nemesis_IO_Helper::put_node_map(), libMesh::NameBasedIO::read(), libMesh::Nemesis_IO::read(), libMesh::XdrIO::read(), libMesh::CheckpointIO::read(), libMesh::EquationSystems::read(), libMesh::ExodusII_IO_Helper::read_elem_num_map(), libMesh::ExodusII_IO_Helper::read_global_values(), libMesh::ExodusII_IO::read_header(), libMesh::CheckpointIO::read_header(), libMesh::XdrIO::read_header(), libMesh::System::read_header(), libMesh::System::read_legacy_data(), libMesh::DynaIO::read_mesh(), libMesh::ExodusII_IO_Helper::read_node_num_map(), libMesh::System::read_parallel_data(), libMesh::TransientRBConstruction::read_riesz_representors_from_files(), read_riesz_representors_from_files(), libMesh::System::read_SCALAR_dofs(), libMesh::XdrIO::read_serialized_bc_names(), libMesh::XdrIO::read_serialized_bcs_helper(), libMesh::System::read_serialized_blocked_dof_objects(), libMesh::XdrIO::read_serialized_connectivity(), libMesh::System::read_serialized_data(), libMesh::XdrIO::read_serialized_nodes(), libMesh::XdrIO::read_serialized_nodesets(), libMesh::XdrIO::read_serialized_subdomain_names(), libMesh::System::read_serialized_vector(), libMesh::System::read_serialized_vectors(), libMesh::Nemesis_IO_Helper::read_var_names_impl(), libMesh::SimplexRefiner::refine_via_edges(), libMesh::StaticCondensationDofMap::reinit(), libMesh::DistributedMesh::renumber_dof_objects(), libMesh::DistributedMesh::renumber_nodes_and_elements(), libMesh::DofMap::scatter_constraints(), libMesh::CheckpointIO::select_split_config(), libMesh::DistributedMesh::set_next_unique_id(), libMesh::DofMap::set_nonlocal_dof_objects(), libMesh::PetscDMWrapper::set_point_range_in_section(), libMesh::RBEIMEvaluation::side_gather_bfs(), ExodusTest< elem_type >::test_read_gold(), ExodusTest< elem_type >::test_write(), MeshInputTest::testAbaqusRead(), MeshInputTest::testBadGmsh(), BoundaryInfoTest::testBoundaryIDs(), MeshInputTest::testCopyElementSolutionImpl(), MeshInputTest::testCopyElementVectorImpl(), MeshInputTest::testCopyNodalSolutionImpl(), DefaultCouplingTest::testCoupling(), PointNeighborCouplingTest::testCoupling(), MeshInputTest::testDynaFileMappings(), MeshInputTest::testDynaNoSplines(), MeshInputTest::testDynaReadElem(), MeshInputTest::testDynaReadPatch(), MeshInputTest::testExodusFileMappings(), MeshInputTest::testExodusIGASidesets(), MeshInputTest::testExodusWriteElementDataFromDiscontinuousNodalData(), MeshInputTest::testGmshBCIDOverlap(), MeshInputTest::testGoodGmsh(), MeshInputTest::testGoodSTL(), MeshInputTest::testGoodSTLBinary(), MeshInputTest::testLowOrderEdgeBlocks(), SystemsTest::testProjectMatrix3D(), BoundaryInfoTest::testShellFaceConstraints(), MeshInputTest::testSingleElementImpl(), WriteVecAndScalar::testSolution(), CheckpointIOTest::testSplitter(), MeshInputTest::testTetgenIO(), libMesh::MeshTools::total_weight(), libMesh::NetGenMeshInterface::triangulate(), libMesh::MeshRefinement::uniformly_coarsen(), libMesh::DistributedMesh::update_parallel_id_counts(), libMesh::DTKAdapter::update_variable_values(), libMesh::MeshTools::volume(), libMesh::STLIO::write(), libMesh::NameBasedIO::write(), libMesh::XdrIO::write(), libMesh::CheckpointIO::write(), libMesh::EquationSystems::write(), libMesh::GMVIO::write_discontinuous_gmv(), libMesh::ExodusII_IO::write_element_data(), libMesh::ExodusII_IO_Helper::write_element_values(), libMesh::ExodusII_IO_Helper::write_element_values_element_major(), libMesh::ExodusII_IO_Helper::write_elements(), libMesh::ExodusII_IO_Helper::write_elemset_data(), libMesh::ExodusII_IO_Helper::write_elemsets(), libMesh::ExodusII_IO::write_global_data(), libMesh::ExodusII_IO_Helper::write_global_values(), libMesh::System::write_header(), libMesh::ExodusII_IO::write_information_records(), libMesh::ExodusII_IO_Helper::write_information_records(), libMesh::ExodusII_IO_Helper::write_nodal_coordinates(), libMesh::UCDIO::write_nodal_data(), libMesh::VTKIO::write_nodal_data(), libMesh::ExodusII_IO::write_nodal_data(), libMesh::ExodusII_IO::write_nodal_data_common(), libMesh::ExodusII_IO::write_nodal_data_discontinuous(), libMesh::ExodusII_IO_Helper::write_nodal_values(), libMesh::ExodusII_IO_Helper::write_nodeset_data(), libMesh::Nemesis_IO_Helper::write_nodesets(), libMesh::ExodusII_IO_Helper::write_nodesets(), libMesh::RBEIMEvaluation::write_out_interior_basis_functions(), libMesh::RBEIMEvaluation::write_out_node_basis_functions(), libMesh::RBEIMEvaluation::write_out_side_basis_functions(), write_output_solvedata(), libMesh::System::write_parallel_data(), write_riesz_representors_to_files(), libMesh::System::write_SCALAR_dofs(), libMesh::XdrIO::write_serialized_bc_names(), libMesh::XdrIO::write_serialized_bcs_helper(), libMesh::System::write_serialized_blocked_dof_objects(), libMesh::XdrIO::write_serialized_connectivity(), libMesh::System::write_serialized_data(), libMesh::XdrIO::write_serialized_nodes(), libMesh::XdrIO::write_serialized_nodesets(), libMesh::XdrIO::write_serialized_subdomain_names(), libMesh::System::write_serialized_vector(), libMesh::System::write_serialized_vectors(), libMesh::ExodusII_IO_Helper::write_sideset_data(), libMesh::Nemesis_IO_Helper::write_sidesets(), libMesh::ExodusII_IO_Helper::write_sidesets(), libMesh::ExodusII_IO::write_timestep(), libMesh::ExodusII_IO_Helper::write_timestep(), and libMesh::ExodusII_IO::write_timestep_discontinuous().
| 
 | inherited | 
Projects arbitrary functions onto the current solution.
This method projects an arbitrary function onto the solution via L2 projections and nodal interpolations on each element.
The function value f and its gradient g are user-provided cloneable functors. A gradient g is only required/used for projecting onto finite element spaces with continuous derivatives. 
Definition at line 1041 of file system_projection.C.
Referenced by init_sys(), initialize(), main(), set_initial_condition(), SlitMeshRefinedSystemTest::setUp(), FETestBase< order, family, elem_type, 1 >::setUp(), MeshfunctionDFEM::test_mesh_function_dfem(), MeshfunctionDFEM::test_mesh_function_dfem_grad(), MeshFunctionTest::test_p_level(), MeshFunctionTest::test_subdomain_id_sets(), MeshInputTest::testCopyElementSolutionImpl(), MeshInputTest::testCopyNodalSolutionImpl(), DefaultCouplingTest::testCoupling(), PointNeighborCouplingTest::testCoupling(), SystemsTest::testProjectCubeWithMeshFunction(), MeshInputTest::testProjectionRegression(), EquationSystemsTest::testRepartitionThenReinit(), and libMesh::MeshfreeSolutionTransfer::transfer().
| 
 | inherited | 
Projects arbitrary functions onto the current solution.
This method projects an arbitrary function onto the solution via L2 projections and nodal interpolations on each element.
The function value f and its gradient g are user-provided cloneable functors. A gradient g is only required/used for projecting onto finite element spaces with continuous derivatives. 
Definition at line 1054 of file system_projection.C.
| 
 | inherited | 
This method projects an arbitrary function onto the solution via L2 projections and nodal interpolations on each element.
Definition at line 1027 of file system_projection.C.
References fptr(), and gptr().
| 
 | inlineinherited | 
Tells the System whether or not to project the solution vector onto new grids when the system is reinitialized.
The solution will be projected unless project_solution_on_reinit() = false is called.
Definition at line 839 of file system.h.
References libMesh::System::_solution_projection.
Referenced by libMesh::UniformRefinementEstimator::_estimate_error(), libMesh::AdjointRefinementEstimator::estimate_error(), and libMesh::MemoryHistoryData::store_vectors().
| 
 | inherited | 
Projects arbitrary functions onto a vector of degree of freedom values for the current system.
This method projects an arbitrary function via L2 projections and nodal interpolations on each element.
The function value f and its gradient g are user-provided cloneable functors. A gradient g is only required/used for projecting onto finite element spaces with continuous derivatives.
Constrain the new vector using the requested adjoint rather than primal constraints if is_adjoint is non-negative.
Definition at line 1082 of file system_projection.C.
References libMesh::libmesh_assert().
Referenced by main(), libMesh::NewmarkSolver::project_initial_accel(), libMesh::SecondOrderUnsteadySolver::project_initial_rate(), libMesh::InterMeshProjection::project_system_vectors(), and libMesh::System::restrict_vectors().
| 
 | inherited | 
Projects arbitrary functions onto a vector of degree of freedom values for the current system.
This method projects an arbitrary function via L2 projections and nodal interpolations on each element.
The function value f and its gradient g are user-provided cloneable functors. A gradient g is only required/used for projecting onto finite element spaces with continuous derivatives.
Constrain the new vector using the requested adjoint rather than primal constraints if is_adjoint is non-negative.
Definition at line 1108 of file system_projection.C.
References libMesh::NumericVector< T >::close(), libMesh::FEMFunctionBase< Output >::component(), libMesh::FEType::family, libMesh::Utility::iota(), libMesh::libmesh_assert(), libMesh::libmesh_ignore(), libMesh::make_range(), n_vars, libMesh::NODEELEM, libMesh::FEMContext::pre_fe_reinit(), libMesh::RATIONAL_BERNSTEIN, libMesh::SCALAR, libMesh::DofMap::SCALAR_dof_indices(), libMesh::NumericVector< T >::set(), and libMesh::Variable::type().
| 
 | inherited | 
Projects arbitrary functions onto a vector of degree of freedom values for the current system.
This method projects an arbitrary function via L2 projections and nodal interpolations on each element.
The function value fptr and its gradient gptr are represented by function pointers. A gradient gptr is only required/used for projecting onto finite element spaces with continuous derivatives.
Constrain the new vector using the requested adjoint rather than primal constraints if is_adjoint is non-negative.
Definition at line 1067 of file system_projection.C.
References fptr(), and gptr().
| 
 | protectedinherited | 
Projects the vector defined on the old mesh onto the new mesh.
Constrain the new vector using the requested adjoint rather than primal constraints if is_adjoint is non-negative.
Definition at line 247 of file system_projection.C.
References libMesh::NumericVector< T >::clone().
| 
 | protectedinherited | 
Projects the vector defined on the old mesh onto the new mesh.
This method projects the vector via L2 projections or nodal interpolations on each element.
The original vector is unchanged and the new vector is passed through the second argument.
Constrain the new vector using the requested adjoint rather than primal constraints if is_adjoint is non-negative.
This method projects a solution from an old mesh to a current, refined mesh. The input vector old_v gives the solution on the old mesh, while the new_v gives the solution (to be computed) on the new mesh.
Definition at line 265 of file system_projection.C.
References libMesh::NumericVector< T >::clear(), libMesh::NumericVector< T >::close(), libMesh::NumericVector< T >::get(), libMesh::GHOSTED, libMesh::index_range(), libMesh::NumericVector< T >::init(), libMesh::Utility::iota(), libMesh::libmesh_assert(), libMesh::libmesh_ignore(), libMesh::NumericVector< T >::local_size(), libMesh::NumericVector< T >::localize(), libMesh::make_range(), n_vars, libMesh::PARALLEL, libMesh::Threads::parallel_reduce(), libMesh::SCALAR, libMesh::DofMap::SCALAR_dof_indices(), libMesh::BuildProjectionList::send_list, libMesh::SERIAL, libMesh::NumericVector< T >::set(), libMesh::NumericVector< T >::size(), libMesh::NumericVector< T >::type(), libMesh::TYPE_SCALAR, and libMesh::BuildProjectionList::unique().
| 
 | inherited | 
This method creates a projection matrix which corresponds to the operation of project_vector between old and new solution spaces.
Heterogeneous Dirichlet boundary conditions are not taken into account here; if this matrix is used for prolongation (mesh refinement) on a side with a heterogeneous BC, the newly created degrees of freedom on that side will still match the coarse grid approximation of the BC, not the fine grid approximation.
Definition at line 961 of file system_projection.C.
References libMesh::Utility::iota(), libMesh::make_range(), n_vars, libMesh::SCALAR, libMesh::DofMap::SCALAR_dof_indices(), and libMesh::SparseMatrix< T >::set().
Referenced by libMesh::PetscDMWrapper::init_petscdm(), SystemsTest::testProjectMatrix1D(), SystemsTest::testProjectMatrix2D(), and SystemsTest::testProjectMatrix3D().
| 
 | virtualinherited | 
Prolong vectors after the mesh has refined.
Definition at line 429 of file system.C.
References libMesh::System::restrict_vectors().
Referenced by libMesh::EquationSystems::reinit_solutions().
| 
 | overridevirtualinherited | 
For each of the system's quantities of interest q in qoi[qoi_indices], and for a vector of parameters p, the parameter sensitivity Hessian H_ij is defined as H_ij = (d^2 q)/(d p_i d p_j) This Hessian is the output of this method, where for each q_i, H_jk is stored in hessian.second_derivative(i,j,k). 
Note that in some cases only current_local_solution is used during assembly, and, therefore, if solution has been altered without update() being called, then the user must call update() before calling this function.
Reimplemented from libMesh::System.
Definition at line 918 of file implicit_system.C.
References libMesh::ImplicitSystem::adjoint_solve(), libMesh::SensitivityData::allocate_hessian_data(), libMesh::ExplicitSystem::assemble_qoi(), libMesh::ExplicitSystem::assemble_qoi_derivative(), libMesh::ImplicitSystem::assembly(), libMesh::NumericVector< T >::close(), libMesh::SparseMatrix< T >::close(), libMesh::NumericVector< T >::dot(), libMesh::System::get_adjoint_rhs(), libMesh::System::get_adjoint_solution(), libMesh::System::get_qoi_value(), libMesh::System::get_qoi_values(), libMesh::System::get_sensitivity_solution(), libMesh::QoISet::has_index(), libMesh::System::is_adjoint_already_solved(), libMesh::ImplicitSystem::matrix, libMesh::System::n_qois(), libMesh::Real, libMesh::ExplicitSystem::rhs, libMesh::SensitivityData::second_derivative(), libMesh::ImplicitSystem::sensitivity_solve(), libMesh::ParameterVector::size(), libMesh::System::solution, libMesh::TOLERANCE, libMesh::System::update(), and libMesh::SparseMatrix< T >::vector_mult().
| 
 | overridevirtualinherited | 
For each of the system's quantities of interest q in qoi[qoi_indices], and for a vector of parameters p, the parameter sensitivity Hessian H_ij is defined as H_ij = (d^2 q)/(d p_i d p_j) The Hessian-vector product, for a vector v_k in parameter space, is S_j = H_jk v_k This product is the output of this method, where for each q_i, S_j is stored in sensitivities[i][j]. 
Reimplemented from libMesh::System.
Definition at line 713 of file implicit_system.C.
References libMesh::ImplicitSystem::adjoint_solve(), libMesh::SensitivityData::allocate_data(), libMesh::ExplicitSystem::assemble_qoi(), libMesh::ExplicitSystem::assemble_qoi_derivative(), libMesh::ImplicitSystem::assembly(), libMesh::NumericVector< T >::close(), libMesh::SparseMatrix< T >::close(), libMesh::ParameterVector::deep_copy(), libMesh::NumericVector< T >::dot(), libMesh::System::get_adjoint_rhs(), libMesh::System::get_adjoint_solution(), libMesh::System::get_qoi_value(), libMesh::System::get_qoi_values(), libMesh::System::get_weighted_sensitivity_adjoint_solution(), libMesh::System::get_weighted_sensitivity_solution(), libMesh::QoISet::has_index(), libMesh::System::is_adjoint_already_solved(), libMesh::ImplicitSystem::matrix, libMesh::System::n_qois(), libMesh::Real, libMesh::ExplicitSystem::rhs, libMesh::ParameterVector::size(), libMesh::System::solution, libMesh::TOLERANCE, libMesh::ParameterVector::value_copy(), libMesh::SparseMatrix< T >::vector_mult(), libMesh::ImplicitSystem::weighted_sensitivity_adjoint_solve(), and libMesh::ImplicitSystem::weighted_sensitivity_solve().
| 
 | virtualinherited | 
Solves for the derivative of each of the system's quantities of interest q in qoi[qoi_indices] with respect to each parameter in parameters, placing the result for qoi i and parameter j into sensitivities[i][j]. 
parameters is a const vector, not a vector-of-const; parameter values in this vector need to be mutable for finite differencing to work.Automatically chooses the forward method for problems with more quantities of interest than parameters, or the adjoint method otherwise.
This method is only usable in derived classes which override an implementation.
Definition at line 587 of file system.C.
References libMesh::System::adjoint_qoi_parameter_sensitivity(), libMesh::System::forward_qoi_parameter_sensitivity(), libMesh::ParameterVector::size(), and libMesh::QoISet::size().
| 
 | virtualinherited | 
Re-update the local values when the mesh has changed.
This method takes the data updated by update() and makes it up-to-date on the current mesh. 
Reimplemented in libMesh::TransientSystem< RBConstruction >.
Definition at line 518 of file system.C.
References libMesh::System::current_local_solution, libMesh::System::get_dof_map(), libMesh::DofMap::get_send_list(), libMesh::System::n_vars(), and libMesh::System::solution.
| 
 | inherited | 
Reads the basic data header for this System.
Definition at line 97 of file system_io.C.
References libMesh::System::_additional_data_written, libMesh::System::_written_var_indices, libMesh::System::add_variable(), libMesh::System::add_vector(), TIMPI::Communicator::broadcast(), libMesh::System::clear(), libMesh::ParallelObject::comm(), libMesh::Utility::contains(), libMesh::Xdr::data(), libMesh::FEType::family, libMesh::System::get_mesh(), libMesh::OrderWrapper::get_order(), libMesh::FEType::inf_map, libMesh::libmesh_assert(), libMesh::MeshBase::mesh_dimension(), libMesh::MONOMIAL, libMesh::on_command_line(), libMesh::FEType::order, libMesh::out, libMesh::ParallelObject::processor_id(), libMesh::FEType::radial_family, libMesh::FEType::radial_order, libMesh::Xdr::reading(), libMesh::System::variable_number(), libMesh::Xdr::version(), and libMesh::XYZ.
Referenced by libMesh::EquationSystems::read(), and libMesh::RBEvaluation::read_in_vectors_from_multiple_files().
| 
 | inherited | 
Reads additional data, namely vectors, for this System.
Definition at line 302 of file system_io.C.
References libMesh::System::_additional_data_written, libMesh::System::_vectors, libMesh::System::_written_var_indices, TIMPI::Communicator::broadcast(), libMesh::ParallelObject::comm(), libMesh::Xdr::data(), libMesh::System::get_mesh(), libMesh::DofObject::invalid_id, libMesh::libmesh_assert(), libMesh::make_range(), libMesh::System::n_dofs(), libMesh::System::n_vars(), libMesh::System::number(), libMesh::ParallelObject::processor_id(), libMesh::Xdr::reading(), libMesh::System::solution, and libMesh::zero.
| 
 | inherited | 
Reads additional data, namely vectors, for this System.
This method may safely be called on a distributed-memory mesh. This method will read an individual file for each processor in the simulation where the local solution components for that processor are stored.
This method implements the output of the vectors contained in this System object, embedded in the output of an EquationSystems<T_sys>.
9.) The global solution vector, re-ordered to be node-major (More on this later.)
for each additional vector in the object
10.) The global additional vector, re-ordered to be node-major (More on this later.)
Note that the actual IO is handled through the Xdr class (to be renamed later?) which provides a uniform interface to both the XDR (eXternal Data Representation) interface and standard ASCII output. Thus this one section of code will read XDR or ASCII files with no changes.
Definition at line 449 of file system_io.C.
References libMesh::System::_additional_data_written, libMesh::System::_vectors, libMesh::System::_written_var_indices, libMesh::Xdr::data(), libMesh::FEType::family, libMesh::System::get_dof_map(), libMesh::System::get_mesh(), libMesh::DofObject::invalid_id, libMesh::Xdr::is_open(), libMesh::libmesh_assert(), libMesh::make_range(), libMesh::ParallelObject::n_processors(), libMesh::System::n_vars(), libMesh::System::number(), libMesh::ParallelObject::processor_id(), libMesh::Xdr::reading(), libMesh::SCALAR, libMesh::DofMap::SCALAR_dof_indices(), libMesh::System::solution, libMesh::Variable::type(), and libMesh::System::variable().
| 
 | inlineinherited | 
Non-templated version for backward compatibility.
Reads additional data, namely vectors, for this System. This method may safely be called on a distributed-memory mesh. This method will read an individual file for each processor in the simulation where the local solution components for that processor are stored.
| 
 | inherited | 
Read in the parameter ranges from files.
Definition at line 276 of file rb_parametrized.C.
References libMesh::RBParametrized::initialize_parameters(), libMesh::RBParametrized::read_discrete_parameter_values_from_file(), and libMesh::RBParametrized::read_parameter_ranges_from_file().
Referenced by libMesh::RBSCMEvaluation::legacy_read_offline_data_from_files(), and libMesh::RBEvaluation::legacy_read_offline_data_from_files().
| 
 | virtual | 
Read in all the Riesz representor data from files.
directory_name specifies which directory to read from. io_flag specifies whether we read in all data, or only a basis (in)dependent subset. 
Reimplemented in libMesh::TransientRBConstruction.
Definition at line 2617 of file rb_construction.C.
References libMesh::RBEvaluation::Aq_representor, libMesh::NumericVector< T >::build(), libMesh::ParallelObject::comm(), libMesh::DECODE, Fq_representor, Fq_representor_innerprods_computed, libMesh::RBEvaluation::get_n_basis_functions(), get_rb_evaluation(), libMesh::index_range(), libMesh::System::n_dofs(), libMesh::System::n_local_dofs(), libMesh::out, libMesh::PARALLEL, libMesh::ParallelObject::processor_id(), libMesh::READ, libMesh::System::read_serialized_data(), and libMesh::System::solution.
| 
 | inherited | 
Reads additional data, namely vectors, for this System.
This method may safely be called on a distributed-memory mesh.
Definition at line 680 of file system_io.C.
References libMesh::System::_additional_data_written, libMesh::System::_vectors, libMesh::ParallelObject::processor_id(), and libMesh::System::solution.
Referenced by libMesh::TransientRBConstruction::initialize_truth(), libMesh::TransientRBConstruction::read_riesz_representors_from_files(), and read_riesz_representors_from_files().
| 
 | inherited | 
Read a number of identically distributed vectors.
This method allows for optimization for the multiple vector case by only communicating the metadata once.
Definition at line 2165 of file system_io.C.
References libMesh::Xdr::data(), libMesh::System::get_mesh(), libMesh::libmesh_assert(), libMesh::make_range(), libMesh::MeshTools::n_elem(), libMesh::MeshBase::n_elem(), n_nodes, libMesh::MeshBase::n_nodes(), libMesh::System::n_vars(), libMesh::ParallelObject::processor_id(), libMesh::System::read_SCALAR_dofs(), libMesh::System::read_serialized_blocked_dof_objects(), libMesh::Xdr::reading(), libMesh::SCALAR, and libMesh::System::variable().
Referenced by libMesh::RBEvaluation::read_in_vectors_from_multiple_files().
| 
 | inlineinherited | 
Non-templated version for backward compatibility.
Read a number of identically distributed vectors. This method allows for optimization for the multiple vector case by only communicating the metadata once.
| 
 | virtual | 
This function computes all of the residual representors, can be useful when restarting a basis training computation.
If compute_inner_products is false, we just compute the residual Riesz representors, whereas if true, we also compute all the corresponding inner product terms. 
Definition at line 1802 of file rb_construction.C.
References compute_Fq_representor_innerprods(), delta_N, Fq_representor_innerprods_computed, libMesh::RBEvaluation::get_n_basis_functions(), get_rb_evaluation(), and update_residual_terms().
Referenced by train_reduced_basis_with_POD().
| 
 | overridevirtualinherited | 
Reinitializes the member data fields associated with the system, so that, e.g., assemble() may be used. 
Reimplemented from libMesh::System.
Reimplemented in libMesh::NewmarkSystem.
Definition at line 95 of file linear_implicit_system.C.
References libMesh::ImplicitSystem::linear_solver, and libMesh::System::reinit().
Referenced by fe_assembly().
| 
 | virtualinherited | 
Reinitializes the constraints for this system.
Also prepares the send_list, whether or not constraints have changed.
Definition at line 480 of file system.C.
References libMesh::System::_mesh, libMesh::DofMap::create_dof_constraints(), libMesh::System::get_dof_map(), libMesh::on_command_line(), libMesh::out, libMesh::DofMap::prepare_send_list(), libMesh::DofMap::print_dof_constraints(), libMesh::DofMap::process_constraints(), libMesh::System::time, and libMesh::System::user_constrain().
Referenced by libMesh::EquationSystems::allgather(), libMesh::System::init_data(), libMesh::PetscDMWrapper::init_petscdm(), and libMesh::EquationSystems::reinit_solutions().
| 
 | virtualinherited | 
Reinitializes the system with a new mesh.
Definition at line 286 of file system.C.
References libMesh::System::_basic_system_only, libMesh::System::init_data(), libMesh::System::n_vars(), and libMesh::System::user_initialization().
Referenced by libMesh::System::init().
| 
 | virtualinherited | 
Currently a no-op.
Definition at line 1248 of file implicit_system.C.
| 
 | inherited | 
Removes the additional matrix mat_name from this system. 
Definition at line 1074 of file system.C.
References libMesh::System::_matrices.
| 
 | inherited | 
Removes the additional vector vec_name from this system. 
Definition at line 858 of file system.C.
References libMesh::System::_vector_is_adjoint, libMesh::System::_vector_projections, libMesh::System::_vectors, and libMesh::libmesh_assert().
Referenced by libMesh::AdjointRefinementEstimator::estimate_error(), and libMesh::UnsteadySolver::integrate_adjoint_sensitivity().
| 
 | inherited | 
mat_name, or nullptr if no matrix by that name exists. Definition at line 1085 of file system.C.
References libMesh::System::_matrices.
Referenced by libMesh::EigenSystem::has_matrix_A(), libMesh::EigenSystem::has_matrix_B(), libMesh::EigenSystem::has_precond_matrix(), libMesh::ImplicitSystem::sensitivity_solve(), libMesh::NewtonSolver::solve(), and libMesh::LinearImplicitSystem::solve().
| 
 | inherited | 
mat_name, or nullptr if no matrix by that name exists. Definition at line 1097 of file system.C.
References libMesh::System::_matrices.
| 
 | inherited | 
System has a vector associated with the given name, nullptr otherwise. Definition at line 876 of file system.C.
References libMesh::System::_vectors, and libMesh::NumericVector< T >::get().
Referenced by libMesh::UniformRefinementEstimator::_estimate_error().
| 
 | inherited | 
System has a vector associated with the given name, nullptr otherwise. Definition at line 888 of file system.C.
References libMesh::System::_vectors, and libMesh::NumericVector< T >::get().
| 
 | inherited | 
vec_num (where the vectors are counted starting with 0), or nullptr if the system has no such vector. Definition at line 900 of file system.C.
References libMesh::System::_vectors, and libMesh::System::vectors_begin().
| 
 | inherited | 
vec_num (where the vectors are counted starting with 0), or nullptr if the system has no such vector. Definition at line 914 of file system.C.
References libMesh::System::_vectors, and libMesh::System::vectors_begin().
| 
 | protected | 
Reset the _preevaluate_thetas_completed flag to false.
We can use this to force us to recalculate preevaluate thetas, in cases where that is necessary.
Definition at line 2833 of file rb_construction.C.
References _preevaluate_thetas_completed.
| 
 | overridevirtualinherited | 
After calling this method, any solve will be limited to the given subset.
To disable this mode, call this method with subset being a nullptr. 
Reimplemented from libMesh::System.
Definition at line 106 of file linear_implicit_system.C.
References libMesh::LinearImplicitSystem::_subset, libMesh::LinearImplicitSystem::_subset_solve_mode, and libMesh::SystemSubset::get_system().
Referenced by libMesh::LinearImplicitSystem::clear(), and main().
| 
 | virtualinherited | 
Restrict vectors after the mesh has coarsened.
Definition at line 371 of file system.C.
References libMesh::System::_dof_map, libMesh::System::_solution_projection, libMesh::System::_vector_projections, libMesh::System::_vectors, libMesh::System::current_local_solution, libMesh::NumericVector< T >::get(), libMesh::GHOSTED, libMesh::System::n_dofs(), libMesh::System::n_local_dofs(), libMesh::PARALLEL, libMesh::System::project_vector(), libMesh::System::solution, and libMesh::System::vector_is_adjoint().
Referenced by libMesh::System::prolong_vectors(), and libMesh::EquationSystems::reinit_solutions().
| 
 | overridevirtualinherited | 
Assembles & solves the linear system(s) (dR/du)*u_p = -dR/dp, for those parameters contained within parameters. 
Reimplemented from libMesh::System.
Definition at line 136 of file implicit_system.C.
References libMesh::System::add_sensitivity_solution(), libMesh::System::assemble_before_solve, libMesh::ImplicitSystem::assemble_residual_derivatives(), libMesh::ImplicitSystem::assembly(), libMesh::SparseMatrix< T >::close(), libMesh::DofMap::enforce_constraints_exactly(), libMesh::System::get_dof_map(), libMesh::ImplicitSystem::get_linear_solve_parameters(), libMesh::ImplicitSystem::get_linear_solver(), libMesh::System::get_sensitivity_rhs(), libMesh::System::get_sensitivity_solution(), libMesh::make_range(), libMesh::ImplicitSystem::matrix, libMesh::System::request_matrix(), libMesh::ParameterVector::size(), and libMesh::LinearSolver< T >::solve().
Referenced by libMesh::ImplicitSystem::forward_qoi_parameter_sensitivity(), and libMesh::ImplicitSystem::qoi_parameter_hessian().
| 
 | inline | 
Get/set the absolute tolerance for the basis training.
Definition at line 225 of file rb_construction.h.
References abs_training_tolerance.
Referenced by set_rb_construction_parameters().
| 
 | inlineinherited | 
Setter for the adjoint_already_solved boolean.
Definition at line 416 of file system.h.
References libMesh::System::adjoint_already_solved.
Referenced by main().
| 
 | inlineinherited | 
Sets the system to be "basic only": i.e.
advanced system components such as ImplicitSystem matrices may not be initialized. This is useful for efficiency in certain utility programs that never use System::solve(). This method must be called after the System or derived class is created but before it is initialized; e.g. from within EquationSystems::read()
Definition at line 2423 of file system.h.
References libMesh::System::_basic_system_only.
Referenced by libMesh::EquationSystems::read().
| 
 | protectedvirtual | 
Set current_local_solution = vec so that we can access vec from FEMContext during assembly.
Override in subclasses if different behavior is required.
Definition at line 952 of file rb_construction.C.
References libMesh::System::current_local_solution, libMesh::System::get_dof_map(), and libMesh::NumericVector< T >::localize().
| void libMesh::RBConstruction::set_convergence_assertion_flag | ( | bool | flag | ) | 
Setter for the flag determining if convergence should be checked after each solve.
Definition at line 2718 of file rb_construction.C.
References assert_convergence.
| 
 | protected | 
Definition at line 2738 of file rb_construction.C.
References _current_training_parameter_index.
Referenced by compute_max_error_bound().
| 
 | inherited | 
In some cases we only want to allow discrete parameter values, instead of parameters that may take any value in a specified interval.
Here we provide a method to set the d Set the discrete values for parameter mu that are allowed in the training set. This must be called before the training set is generated. Set the name of the parameter that we will generate deterministic training parameters for. Defaults to "NONE". 
| void libMesh::RBConstruction::set_energy_inner_product | ( | const std::vector< Number > & | energy_inner_product_coeffs_in | ) | 
Specify the coefficients of the A_q operators to be used in the energy inner-product.
Definition at line 434 of file rb_construction.C.
References energy_inner_product_coeffs, and use_energy_inner_product.
| void libMesh::RBConstruction::set_inner_product_assembly | ( | ElemAssembly & | inner_product_assembly_in | ) | 
Set the rb_assembly_expansion object.
Definition at line 417 of file rb_construction.C.
References inner_product_assembly, and use_energy_inner_product.
Referenced by SimpleRBConstruction::init_data().
| 
 | virtual | 
Definition at line 1687 of file rb_construction.C.
References Nmax.
Referenced by set_rb_construction_parameters().
| 
 | inline | 
Get/set the boolean to indicate if we normalize the RB error in the greedy.
Definition at line 232 of file rb_construction.h.
References normalize_rb_bound_in_greedy.
Referenced by set_rb_construction_parameters().
| 
 | inherited | 
Set the boolean option that indicates if we normalization solution snapshots or not.
Definition at line 147 of file rb_construction_base.C.
| 
 | inherited | 
Set the current parameters to params The parameters are checked for validity; an error is thrown if the number of parameters or samples is different than expected. 
We
Definition at line 143 of file rb_parametrized.C.
References libMesh::RBParametrized::check_if_valid_params(), libMesh::RBParametrized::parameters, and libMesh::RBParametrized::parameters_initialized.
Referenced by libMesh::RBSCMConstruction::compute_SCM_bounds_on_training_set(), libMesh::RBEIMConstruction::enrich_eim_approximation_on_interiors(), libMesh::RBEIMConstruction::enrich_eim_approximation_on_nodes(), libMesh::RBEIMConstruction::enrich_eim_approximation_on_sides(), get_RB_error_bound(), SimpleRBEvaluation::get_stability_lower_bound(), libMesh::RBParametrized::initialize_parameters(), libMesh::RBSCMEvaluation::reload_current_parameters(), libMesh::RBSCMEvaluation::set_current_parameters_from_C_J(), and RBParametersTest::testRBParametrized().
| 
 | protectedinherited | 
Set parameters to the RBParameters stored in index global_index of the global training set. 
Definition at line 225 of file rb_construction_base.C.
Referenced by compute_max_error_bound(), preevaluate_thetas(), and train_reduced_basis_with_POD().
| 
 | protectedvirtualinherited | 
Load the specified training parameter and then broadcast to all processors.
Definition at line 270 of file rb_construction_base.C.
| void libMesh::RBConstruction::set_preevaluate_thetas_flag | ( | bool | flag | ) | 
Definition at line 2728 of file rb_construction.C.
References _preevaluate_thetas_flag.
| 
 | inlineinherited | 
Definition at line 1823 of file system.h.
References libMesh::System::project_with_constraints.
Referenced by libMesh::AdjointRefinementEstimator::estimate_error().
Definition at line 2156 of file system.C.
References libMesh::libmesh_assert(), and libMesh::System::qoi.
Referenced by libMesh::ExplicitSystem::assemble_qoi(), libMesh::FEMSystem::assemble_qoi(), libMesh::Euler2Solver::integrate_qoi_timestep(), libMesh::TwostepTimeSolver::integrate_qoi_timestep(), and libMesh::EulerSolver::integrate_qoi_timestep().
| 
 | inherited | 
Definition at line 2177 of file system.C.
References libMesh::System::qoi.
| 
 | inherited | 
Definition at line 2184 of file system.C.
References libMesh::libmesh_assert(), and libMesh::System::qoi_error_estimates.
Referenced by libMesh::Euler2Solver::integrate_adjoint_refinement_error_estimate(), libMesh::TwostepTimeSolver::integrate_adjoint_refinement_error_estimate(), and libMesh::EulerSolver::integrate_adjoint_refinement_error_estimate().
| 
 | inlineinherited | 
Set the quiet_mode flag.
If quiet == false then we print out a lot of extra information during the Offline stage.
Definition at line 100 of file rb_construction_base.h.
Referenced by set_rb_construction_parameters().
| void libMesh::RBConstruction::set_rb_assembly_expansion | ( | RBAssemblyExpansion & | rb_assembly_expansion_in | ) | 
Set the rb_assembly_expansion object.
Definition at line 405 of file rb_construction.C.
References rb_assembly_expansion.
Referenced by SimpleRBConstruction::init_data().
| void libMesh::RBConstruction::set_rb_construction_parameters | ( | unsigned int | n_training_samples_in, | 
| bool | deterministic_training_in, | ||
| int | training_parameters_random_seed_in, | ||
| bool | quiet_mode_in, | ||
| unsigned int | Nmax_in, | ||
| Real | rel_training_tolerance_in, | ||
| Real | abs_training_tolerance_in, | ||
| bool | normalize_rb_error_bound_in_greedy_in, | ||
| const std::string & | RB_training_type_in, | ||
| const RBParameters & | mu_min_in, | ||
| const RBParameters & | mu_max_in, | ||
| const std::map< std::string, std::vector< Real >> & | discrete_parameter_values_in, | ||
| const std::map< std::string, bool > & | log_scaling, | ||
| std::map< std::string, std::vector< RBParameter >> * | training_sample_list = nullptr | ||
| ) | 
Set the state of this RBConstruction object based on the arguments to this function.
Definition at line 286 of file rb_construction.C.
References libMesh::RBParametrized::get_parameters_max(), libMesh::RBParametrized::get_parameters_min(), libMesh::RBParametrized::initialize_parameters(), libMesh::RBConstructionBase< LinearImplicitSystem >::initialize_training_parameters(), libMesh::RBConstructionBase< LinearImplicitSystem >::load_training_set(), set_abs_training_tolerance(), set_Nmax(), set_normalize_rb_bound_in_greedy(), libMesh::RBConstructionBase< LinearImplicitSystem >::set_quiet_mode(), set_RB_training_type(), set_rel_training_tolerance(), and libMesh::RBConstructionBase< LinearImplicitSystem >::set_training_random_seed().
Referenced by process_parameters_file().
| void libMesh::RBConstruction::set_rb_evaluation | ( | RBEvaluation & | rb_eval_in | ) | 
Set the RBEvaluation object.
Definition at line 170 of file rb_construction.C.
References rb_eval.
Referenced by main().
| void libMesh::RBConstruction::set_RB_training_type | ( | const std::string & | RB_training_type_in | ) | 
Get/set the string that determines the training type.
Definition at line 1670 of file rb_construction.C.
References is_serial_training_type(), RB_training_type, and libMesh::RBConstructionBase< LinearImplicitSystem >::serial_training_set.
Referenced by set_rb_construction_parameters().
| 
 | inline | 
Get/set the relative tolerance for the basis training.
Definition at line 218 of file rb_construction.h.
References rel_training_tolerance.
Referenced by set_rb_construction_parameters().
| 
 | inherited | 
Overwrite the local training samples for param_name using values. 
This assumes that values.size() matches get_local_n_training_samples().
Definition at line 456 of file rb_construction_base.C.
| 
 | inherited | 
Set the seed that is used to randomly generate training parameters.
Definition at line 780 of file rb_construction_base.C.
Referenced by set_rb_construction_parameters().
| 
 | inherited | 
Allows one to set the QoI index controlling whether the vector identified by vec_name represents a solution from the adjoint (qoi_num >= 0) or primal (qoi_num == -1) space.
This becomes significant if those spaces have differing heterogeneous Dirichlet constraints.
qoi_num == -2 can be used to indicate a vector which should not be affected by constraints during projection operations.
Definition at line 1145 of file system.C.
References libMesh::System::_vector_is_adjoint.
Referenced by libMesh::System::add_adjoint_solution(), and libMesh::System::add_weighted_sensitivity_adjoint_solution().
| 
 | inherited | 
Allows one to set the boolean controlling whether the vector identified by vec_name should be "preserved": projected to new meshes, saved, etc.
Definition at line 1123 of file system.C.
References libMesh::System::_vector_projections.
Referenced by libMesh::AdjointRefinementEstimator::estimate_error(), and main().
| 
 | protectedinherited | 
Sets up the static condensation preconditioner for the supplied solver. 
Definition at line 71 of file implicit_system.C.
References libMesh::ImplicitSystem::_sc_system_matrix, libMesh::StaticCondensation::get_preconditioner(), and libMesh::libmesh_assert().
Referenced by libMesh::LinearImplicitSystem::create_static_condensation(), libMesh::NonlinearImplicitSystem::create_static_condensation(), libMesh::LinearImplicitSystem::LinearImplicitSystem(), and libMesh::NonlinearImplicitSystem::NonlinearImplicitSystem().
| 
 | overridevirtualinherited | 
Assembles & solves the linear system A*x=b.
Reimplemented from libMesh::ImplicitSystem.
Reimplemented in libMesh::FrequencySystem.
Definition at line 118 of file linear_implicit_system.C.
References libMesh::LinearImplicitSystem::_final_linear_residual, libMesh::LinearImplicitSystem::_n_linear_iterations, libMesh::LinearImplicitSystem::_shell_matrix, libMesh::LinearImplicitSystem::_subset, libMesh::LinearImplicitSystem::_subset_solve_mode, libMesh::LinearImplicitSystem::assemble(), libMesh::System::assemble_before_solve, libMesh::SystemSubset::dof_ids(), libMesh::ImplicitSystem::get_linear_solve_parameters(), libMesh::ImplicitSystem::linear_solver, libMesh::ImplicitSystem::matrix, libMesh::System::prefix(), libMesh::System::prefix_with_name(), libMesh::System::request_matrix(), libMesh::ExplicitSystem::rhs, libMesh::System::solution, and libMesh::System::update().
Referenced by assemble_and_solve(), main(), libMesh::ClawSystem::solve_conservation_law(), SystemsTest::testDofCouplingWithVarGroups(), and PeriodicBCTest::testPeriodicBC().
| 
 | virtual | 
Assembles & solves the linear system A*x=b for the specified matrix input_matrix and right-hand side rhs. 
Definition at line 133 of file rb_construction.C.
References libMesh::LinearImplicitSystem::_final_linear_residual, libMesh::LinearImplicitSystem::_n_linear_iterations, libMesh::DofMap::enforce_constraints_exactly(), libMesh::Parameters::get(), libMesh::System::get_dof_map(), libMesh::System::get_equation_systems(), libMesh::LinearSolver< T >::init(), libMesh::EquationSystems::parameters, libMesh::Real, libMesh::System::solution, libMesh::LinearSolver< T >::solve(), and libMesh::System::update().
Referenced by compute_Fq_representor_innerprods(), compute_output_dual_innerprods(), compute_residual_dual_norm_slow(), enrich_basis_from_rhs_terms(), libMesh::TransientRBConstruction::truth_solve(), truth_solve(), libMesh::TransientRBConstruction::update_residual_terms(), and update_residual_terms().
| 
 | protectedinherited | 
Definition at line 2041 of file system_projection.C.
References libMesh::DofMap::build_sparsity(), libMesh::DofMap::computed_sparsity_already(), libMesh::DofMapBase::end_dof(), libMesh::DofMapBase::first_dof(), libMesh::NumericVector< T >::get(), libMesh::DofMap::heterogenously_constrain_element_matrix_and_vector(), libMesh::DofMap::is_constrained_dof(), libMesh::NumericVector< T >::local_size(), libMesh::DofMap::n_dofs(), libMesh::DofMap::n_local_dofs(), libMesh::PARALLEL, libMesh::Real, libMesh::NumericVector< T >::size(), and libMesh::DofMap::update_sparsity_pattern().
| 
 | inline | 
Definition at line 125 of file rb_construction.h.
| 
 | overridevirtual | 
Reimplemented from libMesh::LinearImplicitSystem.
Reimplemented in libMesh::TransientSystem< RBConstruction >.
Definition at line 128 of file rb_construction.C.
| 
 | virtual | 
Train the reduced basis.
This can use different approaches, e.g. Greedy or POD, which are chosen using the RB_training_type member variable.
In the case that we use Greedy training, this function returns the final maximum a posteriori error bound on the training set.
Reimplemented in libMesh::TransientRBConstruction.
Definition at line 1177 of file rb_construction.C.
References get_RB_training_type(), train_reduced_basis_with_greedy(), and train_reduced_basis_with_POD().
Referenced by main(), and libMesh::TransientRBConstruction::train_reduced_basis().
| Real libMesh::RBConstruction::train_reduced_basis_with_greedy | ( | const bool | resize_rb_eval_data | ) | 
Train the reduced basis using the "Greedy algorithm.".
Each stage of the Greedy algorithm involves solving the reduced basis over a large training set and selecting the parameter at which the reduced basis error bound is largest, then performing a truth_solve at that parameter and enriching the reduced basis with the corresponding snapshot.
resize_rb_eval_data is a boolean flag to indicate whether or not we call rb_eval->resize_data_structures(Nmax). True by default, but we may set it to false if, for example, we are continuing from a previous training run and don't want to clobber the existing rb_eval data.
Definition at line 1196 of file rb_construction.C.
References check_if_zero_truth_solve(), compute_Fq_representor_innerprods(), compute_max_error_bound(), compute_output_dual_innerprods(), enrich_RB_space(), libMesh::RBEvaluation::get_n_basis_functions(), get_Nmax(), get_preevaluate_thetas_flag(), get_rb_evaluation(), libMesh::RBEvaluation::greedy_param_list, greedy_termination_test(), libMesh::RBParametrized::initialize_parameters(), libMesh::out, preevaluate_thetas(), libMesh::RBParametrized::print_parameters(), libMesh::Real, libMesh::RBEvaluation::resize_data_structures(), skip_residual_in_train_reduced_basis, truth_solve(), update_greedy_param_list(), update_residual_terms(), update_system(), and use_empty_rb_solve_in_greedy.
Referenced by train_reduced_basis().
| void libMesh::RBConstruction::train_reduced_basis_with_POD | ( | ) | 
Train the reduced basis using Proper Orthogonal Decomposition (POD).
This is an alternative to train_reduced_basis(), which uses the RB greedy algorithm. In contrast to the RB greedy algorithm, POD requires us to perform truth solves at all training samples, which can be computationally intensive.
The main advantage of using POD is that it does not rely on the RB error indicator. The RB error indicator typically stagnates due to rounding error at approximately square-root of machine precision, since it involves taking the square-root of a sum of terms that cancel. This error indicator stagnation puts a limit on the accuracy level that can be achieved with the RB greedy algorithm, so for cases where we need higher accuracy, the POD approach is a good alternative.
Definition at line 1409 of file rb_construction.C.
References libMesh::RBConstructionBase< LinearImplicitSystem >::_normalize_solution_snapshots, libMesh::RBEvaluation::basis_functions, libMesh::NumericVector< T >::build(), libMesh::ParallelObject::comm(), delta_N, libMesh::DenseMatrix< T >::el(), libMesh::RBEvaluation::get_n_basis_functions(), libMesh::RBParametrized::get_n_params(), libMesh::RBConstructionBase< LinearImplicitSystem >::get_n_training_samples(), get_Nmax(), get_non_dirichlet_inner_product_matrix_if_avail(), get_rb_evaluation(), libMesh::RBParametrized::initialize_parameters(), libMesh::RBConstructionBase< LinearImplicitSystem >::inner_product_storage_vector, libMesh::libmesh_assert(), libMesh::libmesh_conj(), libMesh::System::n_dofs(), libMesh::System::n_local_dofs(), libMesh::TensorTools::norm(), libMesh::out, libMesh::PARALLEL, std::real(), libMesh::Real, recompute_all_residual_terms(), rel_training_tolerance, libMesh::RBEvaluation::resize_data_structures(), libMesh::RBConstructionBase< LinearImplicitSystem >::serial_training_set, libMesh::RBConstructionBase< LinearImplicitSystem >::set_params_from_training_set(), libMesh::System::solution, libMesh::DenseMatrix< T >::svd(), truth_solve(), update_system(), and libMesh::SparseMatrix< T >::vector_mult().
Referenced by train_reduced_basis().
| 
 | protectedvirtual | 
Assemble the truth matrix and right-hand side for current_parameters.
Reimplemented in libMesh::TransientRBConstruction.
Definition at line 960 of file rb_construction.C.
References libMesh::SparseMatrix< T >::add(), libMesh::NumericVector< T >::add(), libMesh::NumericVector< T >::build(), libMesh::NumericVector< T >::close(), libMesh::SparseMatrix< T >::close(), libMesh::ParallelObject::comm(), get_Aq(), get_Fq(), libMesh::RBThetaExpansion::get_n_A_terms(), libMesh::RBThetaExpansion::get_n_F_terms(), libMesh::RBParametrized::get_parameters(), get_rb_theta_expansion(), libMesh::ImplicitSystem::matrix, libMesh::System::n_dofs(), libMesh::System::n_local_dofs(), libMesh::PARALLEL, libMesh::ExplicitSystem::rhs, libMesh::NumericVector< T >::zero(), and libMesh::SparseMatrix< T >::zero().
Referenced by compute_residual_dual_norm_slow(), enrich_basis_from_rhs_terms(), and truth_solve().
Perform a "truth" solve, i.e.
solve the finite element system at at the parameters currently set in the system. This is used extensively in training the reduced basis, since "truth snapshots" are employed as basis functions.
Reimplemented in libMesh::TransientRBConstruction.
Definition at line 1599 of file rb_construction.C.
References _untransformed_solution, assert_convergence, check_convergence(), libMesh::NumericVector< T >::dot(), libMesh::RBThetaExpansion::eval_output_theta(), extra_linear_solver, libMesh::System::get_equation_systems(), libMesh::LinearImplicitSystem::get_linear_solver(), libMesh::System::get_mesh(), libMesh::RBThetaExpansion::get_n_output_terms(), libMesh::RBThetaExpansion::get_n_outputs(), get_non_dirichlet_inner_product_matrix_if_avail(), get_output_vector(), libMesh::RBParametrized::get_parameters(), get_rb_theta_expansion(), libMesh::RBConstructionBase< LinearImplicitSystem >::inner_product_storage_vector, libMesh::libmesh_ignore(), libMesh::libmesh_real(), libMesh::ImplicitSystem::matrix, libMesh::System::name(), post_process_truth_solution(), libMesh::ExplicitSystem::rhs, libMesh::System::solution, solve_for_matrix_and_rhs(), store_untransformed_basis, truth_assembly(), truth_outputs, libMesh::SparseMatrix< T >::vector_mult(), and libMesh::ExodusII_IO::write_equation_systems().
Referenced by train_reduced_basis_with_greedy(), and train_reduced_basis_with_POD().
| 
 | virtualinherited | 
Update the local values to reflect the solution on neighboring processors.
Reimplemented in SolidSystem.
Definition at line 495 of file system.C.
References libMesh::System::_dof_map, libMesh::System::current_local_solution, libMesh::libmesh_assert(), and libMesh::System::solution.
Referenced by libMesh::__libmesh_petsc_diff_solver_jacobian(), libMesh::__libmesh_petsc_diff_solver_residual(), libMesh::UniformRefinementEstimator::_estimate_error(), libMesh::FEMSystem::assemble_qoi(), libMesh::FEMSystem::assemble_qoi_derivative(), libMesh::NonlinearImplicitSystem::assembly(), libMesh::EquationSystems::build_parallel_elemental_solution_vector(), libMesh::EquationSystems::build_parallel_solution_vector(), libMesh::NewmarkSolver::compute_initial_accel(), compute_stresses(), LinearElasticityWithContact::compute_stresses(), LinearElasticity::compute_stresses(), LargeDeformationElasticity::compute_stresses(), libMesh::Problem_Interface::computeF(), libMesh::Problem_Interface::computeJacobian(), libMesh::Problem_Interface::computePreconditioner(), libMesh::ExodusII_IO::copy_elemental_solution(), libMesh::Nemesis_IO::copy_elemental_solution(), libMesh::GMVIO::copy_nodal_solution(), libMesh::ExodusII_IO::copy_nodal_solution(), libMesh::Nemesis_IO::copy_nodal_solution(), libMesh::ExodusII_IO::copy_scalar_solution(), libMesh::Nemesis_IO::copy_scalar_solution(), DMlibMeshFunction(), DMlibMeshJacobian(), libMesh::AdjointRefinementEstimator::estimate_error(), libMesh::CondensedEigenSystem::get_eigenpair(), libMesh::TransientRBConstruction::initialize_truth(), libMesh::Euler2Solver::integrate_adjoint_refinement_error_estimate(), libMesh::EulerSolver::integrate_adjoint_refinement_error_estimate(), libMesh::libmesh_petsc_snes_fd_residual(), libMesh::libmesh_petsc_snes_jacobian(), libMesh::libmesh_petsc_snes_mffd_residual(), libMesh::libmesh_petsc_snes_residual(), libMesh::libmesh_petsc_snes_residual_helper(), libMesh::NewtonSolver::line_search(), load_basis_function(), libMesh::TransientRBConstruction::load_rb_solution(), load_rb_solution(), main(), libMesh::FEMSystem::mesh_position_get(), HeatSystem::perturb_accumulate_residuals(), libMesh::ErrorVector::plot_error(), libMesh::FEMSystem::postprocess(), libMesh::ImplicitSystem::qoi_parameter_hessian(), libMesh::MemorySolutionHistory::retrieve(), libMesh::FileSolutionHistory::retrieve(), libMesh::NewtonSolver::solve(), libMesh::ExplicitSystem::solve(), libMesh::LinearImplicitSystem::solve(), libMesh::OptimizationSystem::solve(), libMesh::NonlinearImplicitSystem::solve(), libMesh::ClawSystem::solve_conservation_law(), solve_for_matrix_and_rhs(), libMesh::MeshFunctionSolutionTransfer::transfer(), libMesh::DirectSolutionTransfer::transfer(), and update_current_local_solution().
| 
 | inherited | 
Fill the input vector global_soln so that it contains the global solution on all processors. 
Requires communication with all other processors.
Definition at line 730 of file system.C.
References libMesh::System::solution.
Referenced by libMesh::ExactSolution::_compute_error(), libMesh::ExactErrorEstimator::estimate_error(), main(), and libMesh::InterMeshProjection::project_system_vectors().
| 
 | inherited | 
Fill the input vector global_soln so that it contains the global solution on processor dest_proc. 
Requires communication with all other processors.
Definition at line 741 of file system.C.
References libMesh::System::solution.
| 
 | protected | 
Update the list of Greedily chosen parameters with current_parameters.
Definition at line 1586 of file rb_construction.C.
References libMesh::RBParametrized::get_parameters(), get_rb_evaluation(), and libMesh::RBEvaluation::greedy_param_list.
Referenced by train_reduced_basis_with_greedy().
| 
 | protectedvirtual | 
Compute the reduced basis matrices for the current basis.
Reimplemented in libMesh::TransientRBConstruction.
Definition at line 1894 of file rb_construction.C.
References libMesh::NumericVector< T >::build(), libMesh::ParallelObject::comm(), compute_RB_inner_product, delta_N, libMesh::NumericVector< T >::dot(), libMesh::RBThetaExpansion::get_n_A_terms(), libMesh::RBEvaluation::get_n_basis_functions(), libMesh::RBThetaExpansion::get_n_F_terms(), libMesh::RBThetaExpansion::get_n_output_terms(), libMesh::RBThetaExpansion::get_n_outputs(), get_non_dirichlet_Aq_if_avail(), get_non_dirichlet_Fq_if_avail(), get_non_dirichlet_inner_product_matrix_if_avail(), get_output_vector(), get_rb_evaluation(), get_rb_theta_expansion(), libMesh::libmesh_conj(), libMesh::System::n_dofs(), libMesh::System::n_local_dofs(), libMesh::PARALLEL, libMesh::RBEvaluation::RB_Aq_vector, libMesh::RBEvaluation::RB_Fq_vector, libMesh::RBEvaluation::RB_inner_product_matrix, libMesh::RBEvaluation::RB_output_vectors, value, and libMesh::SparseMatrix< T >::vector_mult().
Referenced by libMesh::TransientRBConstruction::update_RB_system_matrices(), and update_system().
| 
 | protectedvirtual | 
Compute the terms that are combined ‘online’ to determine the dual norm of the residual.
By default, inner product terms are also computed, but you can turn this feature off e.g. if you are already reading in that data from files.
Reimplemented in libMesh::TransientRBConstruction.
Definition at line 1963 of file rb_construction.C.
References _untransformed_basis_functions, libMesh::RBEvaluation::Aq_Aq_representor_innerprods, libMesh::RBEvaluation::Aq_representor, assert_convergence, libMesh::NumericVector< T >::build(), check_convergence(), libMesh::ParallelObject::comm(), delta_N, libMesh::LinearImplicitSystem::final_linear_residual(), libMesh::RBEvaluation::Fq_Aq_representor_innerprods, Fq_representor, get_Aq(), libMesh::RBThetaExpansion::get_n_A_terms(), libMesh::RBEvaluation::get_n_basis_functions(), libMesh::RBThetaExpansion::get_n_F_terms(), get_non_dirichlet_inner_product_matrix_if_avail(), get_rb_evaluation(), get_rb_theta_expansion(), libMesh::Utility::get_timestamp(), inner_product_matrix, inner_product_solver, libMesh::RBConstructionBase< LinearImplicitSystem >::inner_product_storage_vector, libMesh::RBConstructionBase< LinearImplicitSystem >::is_quiet(), libMesh::libmesh_assert(), libMesh::System::n_dofs(), libMesh::LinearImplicitSystem::n_linear_iterations(), libMesh::System::n_local_dofs(), libMesh::out, libMesh::PARALLEL, libMesh::ExplicitSystem::rhs, libMesh::NumericVector< T >::scale(), libMesh::System::solution, solve_for_matrix_and_rhs(), store_untransformed_basis, libMesh::SparseMatrix< T >::vector_mult(), and libMesh::NumericVector< T >::zero().
Referenced by recompute_all_residual_terms(), train_reduced_basis_with_greedy(), and libMesh::TransientRBConstruction::update_residual_terms().
| 
 | protectedvirtual | 
Update the system after enriching the RB space; this calls a series of functions to update the system properly.
Reimplemented in libMesh::TransientRBConstruction.
Definition at line 1762 of file rb_construction.C.
References libMesh::out, and update_RB_system_matrices().
Referenced by enrich_basis_from_rhs_terms(), train_reduced_basis_with_greedy(), train_reduced_basis_with_POD(), and libMesh::TransientRBConstruction::update_system().
| 
 | virtualinherited | 
Calls user's attached assembly function, or is overridden by the user in derived classes.
Definition at line 2089 of file system.C.
References libMesh::System::_assemble_system_function, libMesh::System::_assemble_system_object, libMesh::System::_equation_systems, libMesh::System::Assembly::assemble(), and libMesh::System::name().
Referenced by libMesh::System::assemble().
| 
 | virtualinherited | 
Calls user's attached constraint function, or is overridden by the user in derived classes.
Definition at line 2103 of file system.C.
References libMesh::System::_constrain_system_function, libMesh::System::_constrain_system_object, libMesh::System::_equation_systems, libMesh::System::Constraint::constrain(), and libMesh::System::name().
Referenced by libMesh::System::reinit_constraints().
| 
 | virtualinherited | 
Calls user's attached initialization function, or is overridden by the user in derived classes.
Definition at line 2075 of file system.C.
References libMesh::System::_equation_systems, libMesh::System::_init_system_function, libMesh::System::_init_system_object, libMesh::System::Initialization::initialize(), and libMesh::System::name().
Referenced by libMesh::NewmarkSystem::initial_conditions(), and libMesh::System::reinit_mesh().
| 
 | virtualinherited | 
Calls user's attached quantity of interest function, or is overridden by the user in derived classes.
Definition at line 2117 of file system.C.
References libMesh::System::_equation_systems, libMesh::System::_qoi_evaluate_function, libMesh::System::_qoi_evaluate_object, libMesh::System::name(), and libMesh::System::QOI::qoi().
Referenced by libMesh::System::assemble_qoi().
| 
 | virtualinherited | 
Calls user's attached quantity of interest derivative function, or is overridden by the user in derived classes.
Definition at line 2131 of file system.C.
References libMesh::System::_equation_systems, libMesh::System::_qoi_evaluate_derivative_function, libMesh::System::_qoi_evaluate_derivative_object, libMesh::System::name(), and libMesh::System::QOIDerivative::qoi_derivative().
Referenced by libMesh::System::assemble_qoi_derivative().
Return a constant reference to Variable var. 
Definition at line 2684 of file system.C.
References libMesh::System::get_dof_map(), and libMesh::DofMap::variable().
Referenced by libMesh::ExactSolution::_compute_error(), libMesh::PetscDMWrapper::add_dofs_to_section(), libMesh::DifferentiableSystem::add_second_order_dot_vars(), libMesh::EquationSystems::build_parallel_elemental_solution_vector(), libMesh::EquationSystems::build_parallel_solution_vector(), libMesh::FirstOrderUnsteadySolver::compute_second_order_eqns(), libMesh::GenericProjector< FFunctor, GFunctor, FValue, ProjectionAction >::SubFunctor::find_dofs_to_send(), libMesh::DifferentiableSystem::have_first_order_scalar_vars(), libMesh::DifferentiableSystem::have_second_order_scalar_vars(), main(), libMesh::DifferentiablePhysics::nonlocal_mass_residual(), libMesh::GenericProjector< FFunctor, GFunctor, FValue, ProjectionAction >::SortAndCopy::operator()(), libMesh::GenericProjector< FFunctor, GFunctor, FValue, ProjectionAction >::ProjectVertices::operator()(), libMesh::GenericProjector< FFunctor, GFunctor, FValue, ProjectionAction >::ProjectEdges::operator()(), libMesh::GenericProjector< FFunctor, GFunctor, FValue, ProjectionAction >::ProjectSides::operator()(), libMesh::GenericProjector< FFunctor, GFunctor, FValue, ProjectionAction >::ProjectInteriors::operator()(), libMesh::System::point_gradient(), libMesh::System::point_hessian(), libMesh::System::point_value(), libMesh::System::read_parallel_data(), libMesh::System::read_SCALAR_dofs(), libMesh::System::read_serialized_vector(), libMesh::System::read_serialized_vectors(), libMesh::PetscDMWrapper::set_point_range_in_section(), libMesh::System::write_header(), libMesh::Nemesis_IO_Helper::write_nodal_solution(), libMesh::System::write_parallel_data(), libMesh::System::write_serialized_vector(), and libMesh::System::write_serialized_vectors().
| 
 | inherited | 
Return a constant reference to VariableGroup vg. 
Definition at line 2689 of file system.C.
References libMesh::System::get_dof_map(), and libMesh::DofMap::variable_group().
Referenced by libMesh::FEMSystem::assembly(), and libMesh::System::get_info().
| 
 | inherited | 
i. Definition at line 2659 of file system.C.
References libMesh::System::get_dof_map(), and libMesh::DofMap::variable_name().
Referenced by libMesh::PetscDMWrapper::build_section(), libMesh::ExactErrorEstimator::estimate_error(), libMesh::ExactSolution::ExactSolution(), libMesh::EquationSystems::find_variable_numbers(), main(), output_norms(), libMesh::petsc_auto_fieldsplit(), libMesh::InterMeshProjection::project_system_vectors(), MeshInputTest::testExodusWriteElementDataFromDiscontinuousNodalData(), libMesh::System::write_header(), and libMesh::Nemesis_IO_Helper::write_nodal_solution().
| 
 | inherited | 
var. Definition at line 1394 of file system.C.
References libMesh::System::get_dof_map(), and libMesh::DofMap::variable_number().
Referenced by libMesh::ExactSolution::_compute_error(), alternative_fe_assembly(), LinearElasticity::assemble(), AssembleOptimization::assemble_A_and_F(), assemble_divgrad(), assemble_elasticity(), assemble_graddiv(), assemble_matrix_and_rhs(), assemble_shell(), assemble_stokes(), compute_enriched_soln(), compute_stresses(), LinearElasticityWithContact::compute_stresses(), LinearElasticity::compute_stresses(), LargeDeformationElasticity::compute_stresses(), libMesh::ExodusII_IO::copy_elemental_solution(), libMesh::Nemesis_IO::copy_elemental_solution(), libMesh::GMVIO::copy_nodal_solution(), libMesh::ExodusII_IO::copy_nodal_solution(), libMesh::Nemesis_IO::copy_nodal_solution(), libMesh::ExactErrorEstimator::estimate_error(), fe_assembly(), libMesh::ExactErrorEstimator::find_squared_element_error(), CoupledSystemQoI::init_context(), libMesh::HDGProblem::jacobian(), LargeDeformationElasticity::jacobian(), line_print(), main(), LinearElasticityWithContact::move_mesh(), libMesh::System::read_header(), libMesh::HDGProblem::residual(), LargeDeformationElasticity::residual(), LinearElasticityWithContact::residual_and_jacobian(), OverlappingAlgebraicGhostingTest::run_ghosting_test(), OverlappingCouplingGhostingTest::run_sparsity_pattern_test(), OverlappingTestBase::setup_coupling_matrix(), libMesh::DTKAdapter::update_variable_values(), libMesh::System::variable_scalar_number(), libMesh::EnsightIO::write_scalar_ascii(), and libMesh::EnsightIO::write_vector_ascii().
| 
 | inlineinherited | 
variable_number(var) Irony: currently our only non-scalar-valued variable type is SCALAR.
Definition at line 2432 of file system.h.
References libMesh::System::variable_number().
Referenced by libMesh::ExodusII_IO::copy_scalar_solution(), libMesh::Nemesis_IO::copy_scalar_solution(), libMesh::ExactErrorEstimator::find_squared_element_error(), libMesh::GenericProjector< FFunctor, GFunctor, FValue, ProjectionAction >::ProjectVertices::operator()(), libMesh::GenericProjector< FFunctor, GFunctor, FValue, ProjectionAction >::ProjectEdges::operator()(), libMesh::GenericProjector< FFunctor, GFunctor, FValue, ProjectionAction >::ProjectSides::operator()(), and libMesh::GenericProjector< FFunctor, GFunctor, FValue, ProjectionAction >::ProjectInteriors::operator()().
| 
 | inherited | 
var_num Irony: currently our only non-scalar-valued variable type is SCALAR.
Definition at line 2695 of file system.C.
References libMesh::System::get_dof_map(), and libMesh::DofMap::variable_scalar_number().
i. Definition at line 2701 of file system.C.
References libMesh::System::get_dof_map(), and libMesh::DofMap::variable_type().
Referenced by libMesh::ExactSolution::_compute_error(), alternative_fe_assembly(), assemble(), libMesh::ClawSystem::assemble_advection_matrices(), libMesh::ClawSystem::assemble_avg_coupling_matrices(), libMesh::ClawSystem::assemble_boundary_condition_matrices(), assemble_ellipticdg(), libMesh::ClawSystem::assemble_jump_coupling_matrix(), libMesh::ClawSystem::assemble_mass_matrix(), assemble_shell(), assemble_stokes(), libMesh::FEMContext::attach_quadrature_rules(), libMesh::EquationSystems::build_parallel_elemental_solution_vector(), libMesh::EquationSystems::build_parallel_solution_vector(), libMesh::ExodusII_IO::copy_elemental_solution(), libMesh::Nemesis_IO::copy_elemental_solution(), libMesh::GMVIO::copy_nodal_solution(), libMesh::DGFEMContext::DGFEMContext(), fe_assembly(), libMesh::FEMContext::find_hardest_fe_type(), libMesh::EquationSystems::find_variable_numbers(), form_functionA(), form_functionB(), form_matrixA(), libMesh::FEMSystem::init_context(), libMesh::FEMContext::init_internal_data(), RationalMapTest< elem_type >::setUp(), FETestBase< order, family, elem_type, 1 >::setUp(), EquationSystemsTest::testBadVarNames(), libMesh::Nemesis_IO_Helper::write_element_values(), libMesh::System::write_header(), libMesh::Nemesis_IO_Helper::write_nodal_solution(), libMesh::EnsightIO::write_scalar_ascii(), and libMesh::EnsightIO::write_vector_ascii().
| 
 | inherited | 
var. Definition at line 2706 of file system.C.
References libMesh::System::get_dof_map(), and libMesh::DofMap::variable_type().
| 
 | inherited | 
Definition at line 1158 of file system.C.
References libMesh::System::_vector_is_adjoint, and libMesh::libmesh_assert().
Referenced by libMesh::InterMeshProjection::project_system_vectors(), and libMesh::System::restrict_vectors().
| 
 | inherited | 
vec_num (where the vectors are counted starting with 0). Definition at line 968 of file system.C.
References libMesh::System::_vectors, and libMesh::System::vectors_begin().
Referenced by libMesh::AdjointRefinementEstimator::estimate_error(), and main().
| 
 | inherited | 
Definition at line 979 of file system.C.
References libMesh::System::_vectors, libMesh::NumericVector< T >::get(), libMesh::libmesh_assert(), libMesh::System::vectors_begin(), and libMesh::System::vectors_end().
| 
 | inherited | 
Definition at line 1133 of file system.C.
References libMesh::System::_vector_projections.
Referenced by libMesh::AdjointRefinementEstimator::estimate_error(), libMesh::MemoryHistoryData::store_vectors(), SystemsTest::testAddVectorProjChange(), SystemsTest::testAddVectorTypeChange(), and SystemsTest::testPostInitAddVectorTypeChange().
| 
 | inlineinherited | 
Beginning of vectors container.
Definition at line 2463 of file system.h.
References libMesh::System::_vectors.
Referenced by libMesh::UniformRefinementEstimator::_estimate_error(), libMesh::AdjointRefinementEstimator::estimate_error(), libMesh::System::get_vector(), libMesh::InterMeshProjection::project_system_vectors(), libMesh::System::request_vector(), libMesh::MemoryHistoryData::store_vectors(), and libMesh::System::vector_name().
| 
 | inlineinherited | 
Beginning of vectors container.
Definition at line 2469 of file system.h.
References libMesh::System::_vectors.
| 
 | inlineinherited | 
End of vectors container.
Definition at line 2475 of file system.h.
References libMesh::System::_vectors.
Referenced by libMesh::UniformRefinementEstimator::_estimate_error(), libMesh::AdjointRefinementEstimator::estimate_error(), libMesh::InterMeshProjection::project_system_vectors(), libMesh::MemoryHistoryData::store_vectors(), and libMesh::System::vector_name().
| 
 | inlineinherited | 
End of vectors container.
Definition at line 2481 of file system.h.
References libMesh::System::_vectors.
| 
 | overridevirtualinherited | 
Assembles & solves the linear system(s) (dR/du)^T*z_w = sum(w_p*(d^2q/dudp - d^2R/dudp*z)), for those parameters p contained within parameters, weighted by the values w_p found within weights. 
Assumes that adjoint_solve has already calculated z for each qoi in qoi_indices.
Reimplemented from libMesh::System.
Definition at line 243 of file implicit_system.C.
References libMesh::System::add_weighted_sensitivity_adjoint_solution(), libMesh::ExplicitSystem::assemble_qoi_derivative(), libMesh::ImplicitSystem::assembly(), libMesh::NumericVector< T >::close(), libMesh::SparseMatrix< T >::close(), libMesh::ParameterVector::deep_copy(), libMesh::DofMap::enforce_constraints_exactly(), libMesh::System::get_adjoint_rhs(), libMesh::System::get_adjoint_solution(), libMesh::System::get_dof_map(), libMesh::ImplicitSystem::get_linear_solve_parameters(), libMesh::ImplicitSystem::get_linear_solver(), libMesh::SparseMatrix< T >::get_transpose(), libMesh::System::get_weighted_sensitivity_adjoint_solution(), libMesh::DofMap::has_adjoint_dirichlet_boundaries(), libMesh::QoISet::has_index(), libMesh::libmesh_assert(), libMesh::make_range(), libMesh::ImplicitSystem::matrix, libMesh::System::n_qois(), libMesh::Real, libMesh::ExplicitSystem::rhs, libMesh::LinearSolver< T >::solve(), libMesh::TOLERANCE, libMesh::ParameterVector::value_copy(), libMesh::SparseMatrix< T >::vector_mult_add(), and libMesh::NumericVector< T >::zero_clone().
Referenced by libMesh::ImplicitSystem::qoi_parameter_hessian_vector_product().
| 
 | overridevirtualinherited | 
Assembles & solves the linear system(s) (dR/du)*u_w = sum(w_p*-dR/dp), for those parameters p contained within parameters weighted by the values w_p found within weights. 
Reimplemented from libMesh::System.
Definition at line 389 of file implicit_system.C.
References libMesh::System::add_weighted_sensitivity_solution(), libMesh::ImplicitSystem::assembly(), libMesh::NumericVector< T >::clone(), libMesh::NumericVector< T >::close(), libMesh::SparseMatrix< T >::close(), libMesh::ParameterVector::deep_copy(), libMesh::DofMap::enforce_constraints_exactly(), libMesh::System::get_dof_map(), libMesh::ImplicitSystem::get_linear_solve_parameters(), libMesh::ImplicitSystem::get_linear_solver(), libMesh::System::get_weighted_sensitivity_solution(), libMesh::ImplicitSystem::matrix, libMesh::Real, libMesh::ExplicitSystem::rhs, libMesh::LinearSolver< T >::solve(), libMesh::TOLERANCE, and libMesh::ParameterVector::value_copy().
Referenced by libMesh::ImplicitSystem::qoi_parameter_hessian_vector_product().
| 
 | inherited | 
Writes the basic data header for this System.
This method implements the output of a System object, embedded in the output of an EquationSystems<T_sys>. This warrants some documentation. The output of this part consists of 5 sections:
for this system
5.) The number of variables in the system (unsigned int)
for each variable in the system
6.) The name of the variable (string)
6.1.) subdomain where the variable lives
7.) Combined in an FEType:
end variable loop
8.) The number of additional vectors (unsigned int),
for each additional vector in the system object
9.) the name of the additional vector (string)
end system
Definition at line 1267 of file system_io.C.
References libMesh::System::_vector_projections, libMesh::System::_vectors, libMesh::Variable::active_subdomains(), libMesh::Xdr::data(), libMesh::FEType::family, libMesh::System::get_mesh(), libMesh::FEType::inf_map, libMesh::libmesh_assert(), libMesh::make_range(), libMesh::System::n_vars(), libMesh::System::n_vectors(), libMesh::System::name(), libMesh::FEType::order, libMesh::ParallelObject::processor_id(), libMesh::FEType::radial_family, libMesh::FEType::radial_order, libMesh::System::variable(), libMesh::System::variable_name(), libMesh::System::variable_type(), and libMesh::Xdr::writing().
Referenced by libMesh::RBEvaluation::write_out_vectors().
| 
 | inherited | 
Writes additional data, namely vectors, for this System.
This method may safely be called on a distributed-memory mesh. This method will create an individual file for each processor in the simulation where the local solution components for that processor will be stored.
This method implements the output of the vectors contained in this System object, embedded in the output of an EquationSystems<T_sys>.
9.) The global solution vector, re-ordered to be node-major (More on this later.)
for each additional vector in the object
10.) The global additional vector, re-ordered to be node-major (More on this later.)
Note that the actual IO is handled through the Xdr class (to be renamed later?) which provides a uniform interface to both the XDR (eXternal Data Representation) interface and standard ASCII output. Thus this one section of code will read XDR or ASCII files with no changes.
Definition at line 1468 of file system_io.C.
References libMesh::System::_vectors, libMesh::Xdr::data(), libMesh::FEType::family, libMesh::System::get_dof_map(), libMesh::System::get_mesh(), libMesh::DofObject::invalid_id, libMesh::libmesh_assert(), libMesh::make_range(), libMesh::ParallelObject::n_processors(), libMesh::System::n_vars(), libMesh::System::name(), libMesh::System::number(), libMesh::ParallelObject::processor_id(), libMesh::SCALAR, libMesh::DofMap::SCALAR_dof_indices(), libMesh::System::solution, libMesh::Variable::type(), libMesh::System::variable(), and libMesh::Xdr::writing().
| 
 | inherited | 
Write out the parameter ranges to files.
Definition at line 199 of file rb_parametrized.C.
References libMesh::RBParametrized::write_discrete_parameter_values_to_file(), and libMesh::RBParametrized::write_parameter_ranges_to_file().
Referenced by libMesh::RBSCMEvaluation::legacy_write_offline_data_to_files(), and libMesh::RBEvaluation::legacy_write_offline_data_to_files().
| 
 | virtual | 
Write out all the Riesz representor data to files.
residual_representors_dir specifies which directory to write to. write_binary_residual_representors specifies whether we write binary or ASCII data. 
Reimplemented in libMesh::TransientRBConstruction.
Definition at line 2508 of file rb_construction.C.
References libMesh::RBEvaluation::Aq_representor, TIMPI::Communicator::barrier(), libMesh::ParallelObject::comm(), libMesh::ENCODE, Fq_representor, get_delta_N(), libMesh::RBEvaluation::get_n_basis_functions(), get_rb_evaluation(), libMesh::index_range(), libMesh::libmesh_assert(), libMesh::Utility::mkdir(), libMesh::out, libMesh::ParallelObject::processor_id(), libMesh::System::solution, libMesh::WRITE, and libMesh::System::write_serialized_data().
| 
 | inherited | 
Writes additional data, namely vectors, for this System.
This method may safely be called on a distributed-memory mesh.
This method implements the output of the vectors contained in this System object, embedded in the output of an EquationSystems<T_sys>.
9.) The global solution vector, re-ordered to be node-major (More on this later.)
for each additional vector in the object
10.) The global additional vector, re-ordered to be node-major (More on this later.)
Definition at line 1668 of file system_io.C.
References libMesh::System::_vectors, libMesh::Xdr::comment(), libMesh::System::name(), libMesh::ParallelObject::processor_id(), libMesh::System::solution, and libMesh::System::write_serialized_vector().
Referenced by libMesh::TransientRBConstruction::write_riesz_representors_to_files(), and write_riesz_representors_to_files().
| 
 | inherited | 
Serialize & write a number of identically distributed vectors.
This method allows for optimization for the multiple vector case by only communicating the metadata once.
Definition at line 2261 of file system_io.C.
References libMesh::Xdr::data(), libMesh::System::get_mesh(), libMesh::libmesh_assert(), libMesh::make_range(), libMesh::MeshTools::n_elem(), libMesh::MeshBase::n_elem(), n_nodes, libMesh::MeshBase::n_nodes(), libMesh::System::n_vars(), libMesh::ParallelObject::processor_id(), libMesh::SCALAR, libMesh::System::variable(), libMesh::System::write_SCALAR_dofs(), libMesh::System::write_serialized_blocked_dof_objects(), and libMesh::Xdr::writing().
Referenced by libMesh::RBEvaluation::write_out_vectors().
| void libMesh::RBConstruction::zero_constrained_dofs_on_vector | ( | NumericVector< Number > & | vector | ) | const | 
It is sometimes useful to be able to zero vector entries that correspond to constrained dofs.
Definition at line 440 of file rb_construction.C.
References libMesh::NumericVector< T >::close(), libMesh::DofMapBase::end_dof(), libMesh::DofMapBase::first_dof(), libMesh::System::get_dof_map(), libMesh::DofMap::is_constrained_dof(), and libMesh::NumericVector< T >::set().
| 
 | inherited | 
Zeroes all dofs in v that correspond to variable number var_num. 
Definition at line 1446 of file system.C.
References libMesh::System::get_mesh(), mesh, libMesh::System::n_vars(), libMesh::System::number(), and libMesh::NumericVector< T >::set().
| 
 | protectedinherited | 
Definition at line 120 of file parallel_object.h.
Referenced by libMesh::EquationSystems::build_parallel_elemental_solution_vector(), libMesh::EquationSystems::build_parallel_solution_vector(), libMesh::StaticCondensation::close(), libMesh::ParallelObject::comm(), libMesh::CondensedEigenSystem::initialize_condensed_matrices(), libMesh::ParallelObject::n_processors(), libMesh::ParallelObject::operator=(), libMesh::ParallelObject::processor_id(), libMesh::BoundaryInfo::regenerate_id_sets(), libMesh::StaticCondensationDofMap::reinit(), and libMesh::BoundaryInfo::synchronize_global_id_set().
| 
 | staticprotectedinherited | 
Actually holds the data.
Definition at line 124 of file reference_counter.h.
Referenced by libMesh::ReferenceCounter::get_info().
| 
 | staticprotectedinherited | 
Actually holds the data.
Definition at line 124 of file reference_counter.h.
Referenced by libMesh::ReferenceCounter::get_info().
| 
 | private | 
The current training parameter index during reduced basis training.
Definition at line 1002 of file rb_construction.h.
Referenced by get_current_training_parameter_index(), and set_current_training_parameter_index().
| 
 | staticprotectedinherited | 
Flag to control whether reference count information is printed when print_info is called.
Definition at line 143 of file reference_counter.h.
Referenced by libMesh::ReferenceCounter::disable_print_counter_info(), libMesh::ReferenceCounter::enable_print_counter_info(), and libMesh::ReferenceCounter::print_info().
| 
 | staticprotectedinherited | 
Flag to control whether reference count information is printed when print_info is called.
Definition at line 143 of file reference_counter.h.
Referenced by libMesh::ReferenceCounter::disable_print_counter_info(), libMesh::ReferenceCounter::enable_print_counter_info(), and libMesh::ReferenceCounter::print_info().
| 
 | private | 
Storage of evaluated theta functions at a set of parameters.
This can be used to store all of our theta functions at training samples instead of re-evaluating the same values repeatedly during training.
Definition at line 1009 of file rb_construction.h.
Referenced by get_evaluated_thetas(), and preevaluate_thetas().
| 
 | protectedinherited | 
The final residual for the linear system Ax=b.
Definition at line 197 of file linear_implicit_system.h.
Referenced by libMesh::LinearImplicitSystem::final_linear_residual(), libMesh::FrequencySystem::solve(), libMesh::LinearImplicitSystem::solve(), and solve_for_matrix_and_rhs().
| 
 | staticprotectedinherited | 
Mutual exclusion object to enable thread-safe reference counting.
Definition at line 137 of file reference_counter.h.
| 
 | staticprotectedinherited | 
Mutual exclusion object to enable thread-safe reference counting.
Definition at line 137 of file reference_counter.h.
| 
 | protectedinherited | 
The number of linear iterations required to solve the linear system Ax=b.
Definition at line 192 of file linear_implicit_system.h.
Referenced by libMesh::LinearImplicitSystem::n_linear_iterations(), libMesh::FrequencySystem::solve(), libMesh::LinearImplicitSystem::solve(), and solve_for_matrix_and_rhs().
| 
 | staticprotectedinherited | 
The number of objects.
Print the reference count information when the number returns to 0.
Definition at line 132 of file reference_counter.h.
Referenced by libMesh::ReferenceCounter::n_objects(), libMesh::ReferenceCounter::ReferenceCounter(), and libMesh::ReferenceCounter::~ReferenceCounter().
| 
 | staticprotectedinherited | 
The number of objects.
Print the reference count information when the number returns to 0.
Definition at line 132 of file reference_counter.h.
Referenced by libMesh::ReferenceCounter::n_objects(), libMesh::ReferenceCounter::ReferenceCounter(), and libMesh::ReferenceCounter::~ReferenceCounter().
| 
 | protectedinherited | 
Set this boolean to true if we want to normalize solution snapshots used in training to have norm of 1.
This is relevant if snapshots have differing magnitudes and we want to approximate them all with equal accuracy.
Definition at line 281 of file rb_construction_base.h.
Referenced by train_reduced_basis_with_POD().
| 
 | private | 
Flag to indicate if the preevaluate_thetas function has been called, since this allows us to avoid calling preevaluate_thetas more than once, which is typically unnecessary.
Definition at line 997 of file rb_construction.h.
Referenced by preevaluate_thetas(), and reset_preevaluate_thetas_completed().
| 
 | private | 
Flag to indicate if we preevaluate the theta functions.
Definition at line 990 of file rb_construction.h.
Referenced by get_preevaluate_thetas_flag(), and set_preevaluate_thetas_flag().
| 
 | protectedinherited | 
User supplies shell matrix or nullptr if no shell matrix is used. 
Definition at line 202 of file linear_implicit_system.h.
Referenced by libMesh::LinearImplicitSystem::attach_shell_matrix(), libMesh::LinearImplicitSystem::get_shell_matrix(), and libMesh::LinearImplicitSystem::solve().
| 
 | protectedinherited | 
The current subset on which to solve (or nullptr if none). 
Definition at line 207 of file linear_implicit_system.h.
Referenced by libMesh::LinearImplicitSystem::restrict_solve_to(), and libMesh::LinearImplicitSystem::solve().
| 
 | protectedinherited | 
If restrict-solve-to-subset mode is active, this member decides what happens with the dofs outside the subset.
Definition at line 213 of file linear_implicit_system.h.
Referenced by libMesh::LinearImplicitSystem::restrict_solve_to(), and libMesh::LinearImplicitSystem::solve().
| 
 | private | 
In cases where we have dof transformations such as a change of coordinates at some nodes we need to store an extra set of basis functions which have not had dof transformations applied to them.
These vectors are required in order to compute the residual in the error indicator.
Definition at line 979 of file rb_construction.h.
Referenced by compute_residual_dual_norm_slow(), enrich_RB_space(), and update_residual_terms().
| 
 | private | 
We also store a copy of the untransformed solution in order to create _untransformed_basis_functions.
Definition at line 985 of file rb_construction.h.
Referenced by enrich_RB_space(), and truth_solve().
| 
 | private | 
Definition at line 956 of file rb_construction.h.
Referenced by get_abs_training_tolerance(), get_RB_error_bound(), greedy_termination_test(), process_parameters_file(), and set_abs_training_tolerance().
| 
 | private | 
Vector storing the Q_a matrices from the affine expansion.
Definition at line 927 of file rb_construction.h.
Referenced by allocate_data_structures(), clear(), and get_Aq().
| 
 | inherited | 
Flag which tells the system to whether or not to call the user assembly function during each call to solve().
By default, every call to solve() begins with a call to the user assemble, so this flag is true. (For explicit systems, "solving" the system occurs during the assembly step, so this flag is always true for explicit systems.)
You will only want to set this to false if you need direct control over when the system is assembled, and are willing to track the state of its assembly yourself. An example of such a case is an implicit system with multiple right hand sides. In this instance, a single assembly would likely be followed with multiple calls to solve.
The frequency system and Newmark system have their own versions of this flag, called _finished_assemble, which might be able to be replaced with this more general concept.
Definition at line 1570 of file system.h.
Referenced by libMesh::ImplicitSystem::adjoint_solve(), libMesh::ClawSystem::ClawSystem(), libMesh::ImplicitSystem::disable_cache(), libMesh::System::disable_cache(), main(), RBConstruction(), libMesh::RBSCMConstruction::RBSCMConstruction(), libMesh::ImplicitSystem::sensitivity_solve(), libMesh::EigenSystem::solve(), libMesh::CondensedEigenSystem::solve(), and libMesh::LinearImplicitSystem::solve().
| 
 | protected | 
A boolean flag to indicate whether to check for proper convergence after each solve.
Definition at line 882 of file rb_construction.h.
Referenced by compute_Fq_representor_innerprods(), compute_output_dual_innerprods(), enrich_basis_from_rhs_terms(), get_convergence_assertion_flag(), set_convergence_assertion_flag(), libMesh::TransientRBConstruction::truth_solve(), truth_solve(), libMesh::TransientRBConstruction::update_residual_terms(), and update_residual_terms().
| bool libMesh::RBConstruction::compute_RB_inner_product | 
Boolean flag to indicate whether we compute the RB_inner_product_matrix.
This is false by default in RBConstruction since (in the default implementation) the RB inner-product matrix will just be the identity. But we may need the inner-product matrix subclasses.
Definition at line 617 of file rb_construction.h.
Referenced by libMesh::TransientRBConstruction::TransientRBConstruction(), and update_RB_system_matrices().
| 
 | inherited | 
All the values I need to compute my contribution to the simulation at hand.
Think of this as the current solution with any ghost values needed from other processors. This vector is necessarily larger than the solution vector in the case of a parallel simulation. The update() member is used to synchronize the contents of the solution and current_local_solution vectors. 
Definition at line 1628 of file system.h.
Referenced by libMesh::__libmesh_petsc_diff_solver_jacobian(), libMesh::__libmesh_petsc_diff_solver_residual(), libMesh::UniformRefinementEstimator::_estimate_error(), alternative_fe_assembly(), libMesh::VariationalSmootherSystem::assembly(), libMesh::NonlinearImplicitSystem::assembly(), libMesh::EquationSystems::build_parallel_elemental_solution_vector(), libMesh::EquationSystems::build_parallel_solution_vector(), libMesh::System::clear(), libMesh::Problem_Interface::computeF(), libMesh::Problem_Interface::computeJacobian(), libMesh::Problem_Interface::computePreconditioner(), libMesh::System::current_solution(), DMlibMeshFunction(), DMlibMeshJacobian(), libMesh::AdjointRefinementEstimator::estimate_error(), libMesh::ExactErrorEstimator::estimate_error(), fe_assembly(), libMesh::StaticCondensation::init(), libMesh::System::init_data(), libMesh::libmesh_petsc_snes_fd_residual(), libMesh::libmesh_petsc_snes_jacobian(), libMesh::libmesh_petsc_snes_mffd_residual(), libMesh::libmesh_petsc_snes_residual(), libMesh::libmesh_petsc_snes_residual_helper(), libMesh::System::point_gradient(), libMesh::System::point_hessian(), libMesh::System::point_value(), libMesh::FEMContext::pre_fe_reinit(), libMesh::System::re_update(), libMesh::System::reinit(), libMesh::System::restrict_vectors(), OverlappingAlgebraicGhostingTest::run_ghosting_test(), OverlappingCouplingGhostingTest::run_sparsity_pattern_test(), SolidSystem::save_initial_mesh(), set_context_solution_vec(), setup(), MeshFunctionTest::test_subdomain_id_sets(), MeshInputTest::testCopyElementVectorImpl(), libMesh::BoundaryVolumeSolutionTransfer::transfer_boundary_volume(), libMesh::TransientRBConstruction::truth_assembly(), libMesh::TransientRBConstruction::truth_solve(), libMesh::System::update(), libMesh::Nemesis_IO_Helper::write_element_values(), and libMesh::Nemesis_IO_Helper::write_nodal_solution().
| 
 | protected | 
The number of basis functions that we add at each greedy step.
This defaults to 1 in the steady case.
Definition at line 869 of file rb_construction.h.
Referenced by get_delta_N(), libMesh::TransientRBConstruction::process_parameters_file(), recompute_all_residual_terms(), libMesh::TransientRBConstruction::set_delta_N(), train_reduced_basis_with_POD(), libMesh::TransientRBConstruction::update_RB_initial_condition_all_N(), libMesh::TransientRBConstruction::update_RB_system_matrices(), update_RB_system_matrices(), libMesh::TransientRBConstruction::update_residual_terms(), and update_residual_terms().
| 
 | private | 
We may optionally want to use the "energy inner-product" rather than the inner-product assembly specified in inner_product_assembly.
In this case the inner-product will be defined by sum_q^Q k_q * A_q. Here we provide the k_q values that will be used. (Note that a true "energy-inner product" would obtain the k_q from the theta_q's, but this is different for each parameter choice so we just provide a fixed set of k_q's here to ensure that the inner-product is parameter independent)
Definition at line 922 of file rb_construction.h.
Referenced by assemble_inner_product_matrix(), and set_energy_inner_product().
| bool libMesh::RBConstruction::exit_on_repeated_greedy_parameters | 
Boolean flag to indicate whether we exit the greedy if we select the same parameters twice in a row.
In some problems this indicates that the greedy has "saturated" typically due to numerical rounding effects.
Definition at line 594 of file rb_construction.h.
Referenced by greedy_termination_test(), and libMesh::TransientRBConstruction::TransientRBConstruction().
| LinearSolver<Number>* libMesh::RBConstruction::extra_linear_solver | 
Also, we store a pointer to an extra linear solver.
This can be useful if we want to pass in the linear solver from somewhere else. For example, if a solver is already primed elsewhere then it can be more efficient to use that solver.
Definition at line 543 of file rb_construction.h.
Referenced by enrich_basis_from_rhs_terms(), and truth_solve().
| 
 | inherited | 
A member int that can be employed to indicate increased or reduced quadrature order.
Definition at line 1601 of file system.h.
Referenced by CurlCurlSystem::init_data(), and set_system_parameters().
| std::vector<std::unique_ptr<NumericVector<Number> > > libMesh::RBConstruction::Fq_representor | 
Vector storing the residual representors associated with the right-hand side.
These are basis independent and hence stored here, whereas the Aq_representors are stored in RBEvaluation
Definition at line 568 of file rb_construction.h.
Referenced by allocate_data_structures(), clear(), compute_Fq_representor_innerprods(), read_riesz_representors_from_files(), libMesh::TransientRBConstruction::update_residual_terms(), update_residual_terms(), and write_riesz_representors_to_files().
| std::vector<Number> libMesh::RBConstruction::Fq_representor_innerprods | 
Vectors storing the residual representor inner products to be used in computing the residuals online.
We store the Fq representor norms here because they are independent of a reduced basis space. The basis dependent representors are stored in RBEvaluation.
Definition at line 577 of file rb_construction.h.
Referenced by allocate_data_structures(), and compute_Fq_representor_innerprods().
| bool libMesh::RBConstruction::Fq_representor_innerprods_computed | 
A boolean flag to indicate whether or not the Fq representor norms have already been computed — used to make sure that we don't recompute them unnecessarily.
Definition at line 648 of file rb_construction.h.
Referenced by clear(), compute_Fq_representor_innerprods(), read_riesz_representors_from_files(), and recompute_all_residual_terms().
| 
 | private | 
Vector storing the Q_f vectors in the affine decomposition of the right-hand side.
Definition at line 933 of file rb_construction.h.
Referenced by allocate_data_structures(), clear(), and get_Fq().
| bool libMesh::RBConstruction::impose_internal_fluxes | 
Boolean flag to indicate whether we impose "fluxes" (i.e.
element boundary contributions to the weak form) on internal element boundaries in the assembly routines.
Definition at line 601 of file rb_construction.h.
Referenced by add_scaled_matrix_and_vector().
| 
 | private | 
Pointer to inner product assembly.
Definition at line 904 of file rb_construction.h.
Referenced by assemble_inner_product_matrix(), get_inner_product_assembly(), and set_inner_product_assembly().
| std::unique_ptr<SparseMatrix<Number> > libMesh::RBConstruction::inner_product_matrix | 
The inner product matrix.
Definition at line 548 of file rb_construction.h.
Referenced by allocate_data_structures(), assemble_misc_matrices(), compute_Fq_representor_innerprods(), compute_residual_dual_norm_slow(), get_inner_product_matrix(), get_matrix_for_output_dual_solves(), libMesh::TransientRBConstruction::update_residual_terms(), and update_residual_terms().
| std::unique_ptr<LinearSolver<Number> > libMesh::RBConstruction::inner_product_solver | 
We store an extra linear solver object which we can optionally use for solving all systems in which the system matrix is set to inner_product_matrix.
Definition at line 535 of file rb_construction.h.
Referenced by compute_Fq_representor_innerprods(), compute_residual_dual_norm_slow(), initialize_rb_construction(), libMesh::TransientRBConstruction::update_residual_terms(), and update_residual_terms().
| 
 | protectedinherited | 
We keep an extra temporary vector that is useful for performing inner products (avoids unnecessary memory allocation/deallocation).
Definition at line 288 of file rb_construction_base.h.
Referenced by libMesh::TransientRBConstruction::add_IC_to_RB_space(), compute_Fq_representor_innerprods(), compute_output_dual_innerprods(), compute_residual_dual_norm_slow(), libMesh::TransientRBConstruction::enrich_RB_space(), enrich_RB_space(), libMesh::TransientRBConstruction::set_error_temporal_data(), train_reduced_basis_with_POD(), libMesh::TransientRBConstruction::truth_solve(), truth_solve(), libMesh::TransientRBConstruction::update_residual_terms(), and update_residual_terms().
| 
 | mutableinherited | 
This class handles all the details of interfacing with various linear algebra packages like PETSc or LASPACK.
This is a public member for backwards compatibility reasons, but in general it's better to use get_linear_solver() to access this member, since that function will also handle initialization if it hasn't already been taken care of.
Definition at line 339 of file implicit_system.h.
Referenced by libMesh::LinearImplicitSystem::clear(), compute_output_dual_innerprods(), libMesh::ContinuationSystem::continuation_solve(), libMesh::ContinuationSystem::ContinuationSystem(), libMesh::LinearImplicitSystem::create_static_condensation(), libMesh::ImplicitSystem::get_linear_solver(), libMesh::LinearImplicitSystem::get_linear_solver(), libMesh::LinearImplicitSystem::init_data(), libMesh::LinearImplicitSystem::LinearImplicitSystem(), libMesh::LinearImplicitSystem::reinit(), libMesh::FrequencySystem::solve(), libMesh::LinearImplicitSystem::solve(), libMesh::ClawSystem::solve_conservation_law(), libMesh::ContinuationSystem::solve_tangent(), and libMesh::TransientRBConstruction::truth_solve().
| 
 | inherited | 
The system matrix.
Implicit systems are characterized by the need to solve the linear system Ax=b. This is the system matrix A.
Public access to this member variable will be deprecated in the future! Use get_system_matrix() instead.
Definition at line 322 of file implicit_system.h.
Referenced by libMesh::__libmesh_petsc_diff_solver_jacobian(), add_M_C_K_helmholtz(), libMesh::ImplicitSystem::add_matrices(), libMesh::ImplicitSystem::adjoint_solve(), libMesh::ImplicitSystem::assemble(), assemble_func(), libMesh::FEMSystem::assembly(), libMesh::LinearImplicitSystem::assembly(), libMesh::NonlinearImplicitSystem::assembly(), libMesh::ImplicitSystem::clear(), libMesh::NewmarkSystem::compute_matrix(), compute_residual_dual_norm_slow(), libMesh::ContinuationSystem::continuation_solve(), libMesh::ImplicitSystem::create_static_condensation_system_matrix(), DMCreateMatrix_libMesh(), DMlibMeshJacobian(), enrich_basis_from_rhs_terms(), fill_dirichlet_bc(), libMesh::ImplicitSystem::forward_qoi_parameter_sensitivity(), libMesh::ImplicitSystem::get_system_matrix(), main(), periodic_bc_test_poisson(), libMesh::ImplicitSystem::qoi_parameter_hessian(), libMesh::ImplicitSystem::qoi_parameter_hessian_vector_product(), libMesh::ImplicitSystem::sensitivity_solve(), libMesh::NewtonSolver::solve(), libMesh::PetscDiffSolver::solve(), libMesh::NoxNonlinearSolver< Number >::solve(), libMesh::EigenTimeSolver::solve(), libMesh::FrequencySystem::solve(), libMesh::LinearImplicitSystem::solve(), libMesh::NonlinearImplicitSystem::solve(), libMesh::ClawSystem::solve_conservation_law(), libMesh::ContinuationSystem::solve_tangent(), libMesh::TransientRBConstruction::truth_assembly(), truth_assembly(), libMesh::TransientRBConstruction::truth_solve(), truth_solve(), libMesh::ImplicitSystem::weighted_sensitivity_adjoint_solve(), and libMesh::ImplicitSystem::weighted_sensitivity_solve().
| 
 | protected | 
Maximum number of reduced basis functions we are willing to use.
Definition at line 863 of file rb_construction.h.
Referenced by libMesh::TransientRBConstruction::allocate_data_structures(), get_Nmax(), print_info(), process_parameters_file(), and set_Nmax().
| 
 | private | 
We may also need a second set of matrices/vectors that do not have the Dirichlet boundary conditions enforced.
Definition at line 946 of file rb_construction.h.
Referenced by allocate_data_structures(), clear(), and get_non_dirichlet_Aq().
| 
 | private | 
Definition at line 947 of file rb_construction.h.
Referenced by allocate_data_structures(), clear(), and get_non_dirichlet_Fq().
| 
 | private | 
Definition at line 949 of file rb_construction.h.
Referenced by allocate_data_structures(), assemble_misc_matrices(), and get_non_dirichlet_inner_product_matrix().
| 
 | private | 
Definition at line 948 of file rb_construction.h.
Referenced by allocate_data_structures(), clear(), and get_non_dirichlet_output_vector().
| 
 | private | 
This boolean indicates if we normalize the RB error in the greedy using RBEvaluation::get_error_bound_normalization().
Definition at line 962 of file rb_construction.h.
Referenced by get_normalize_rb_bound_in_greedy(), get_RB_error_bound(), and set_normalize_rb_bound_in_greedy().
| std::vector<std::vector<Number > > libMesh::RBConstruction::output_dual_innerprods | 
The vector storing the dual norm inner product terms for each output.
Definition at line 560 of file rb_construction.h.
Referenced by allocate_data_structures(), and compute_output_dual_innerprods().
| 
 | protected | 
A boolean flag to indicate whether or not the output dual norms have already been computed — used to make sure that we don't recompute them unnecessarily.
Definition at line 876 of file rb_construction.h.
Referenced by compute_output_dual_innerprods().
| 
 | private | 
The libMesh vectors that define the output functionals.
Each row corresponds to the affine expansion of an output.
Definition at line 939 of file rb_construction.h.
Referenced by allocate_data_structures(), clear(), and get_output_vector().
| 
 | inherited | 
Parameters for the system. If a parameter is not provided, it should be retrieved from the EquationSystems.
Definition at line 1549 of file system.h.
Referenced by libMesh::ImplicitSystem::get_linear_solve_parameters(), libMesh::FrequencySystem::init_data(), libMesh::NonlinearImplicitSystem::set_solver_parameters(), libMesh::EigenSystem::solve(), libMesh::CondensedEigenSystem::solve(), and libMesh::EigenSystem::solve_helper().
| 
 | protectedinherited | 
Flag to indicate whether we print out extra information during the Offline stage.
Definition at line 265 of file rb_construction_base.h.
Referenced by process_parameters_file().
| 
 | private | 
This member holds the (parameter independent) assembly functors that define the "affine expansion" of the PDE that we are solving.
Definition at line 899 of file rb_construction.h.
Referenced by add_scaled_Aq(), assemble_all_output_vectors(), assemble_Aq_matrix(), assemble_Fq_vector(), assemble_inner_product_matrix(), get_rb_assembly_expansion(), and set_rb_assembly_expansion().
| 
 | private | 
The current RBEvaluation object we are using to perform the Evaluation stage of the reduced basis method.
Definition at line 893 of file rb_construction.h.
Referenced by get_rb_evaluation(), is_rb_eval_initialized(), and set_rb_evaluation().
| 
 | private | 
This string indicates the type of training that we will use.
Options are:
Definition at line 970 of file rb_construction.h.
Referenced by get_RB_training_type(), and set_RB_training_type().
| 
 | private | 
Relative and absolute tolerances for training reduced basis using the Greedy scheme.
Definition at line 955 of file rb_construction.h.
Referenced by get_rel_training_tolerance(), greedy_termination_test(), process_parameters_file(), set_rel_training_tolerance(), and train_reduced_basis_with_POD().
| 
 | inherited | 
The system matrix.
Implicit systems are characterized by the need to solve the linear system Ax=b. This is the right-hand-side vector b.
Definition at line 124 of file explicit_system.h.
Referenced by libMesh::__libmesh_petsc_diff_solver_residual(), add_M_C_K_helmholtz(), libMesh::ExplicitSystem::add_system_rhs(), assemble(), libMesh::ImplicitSystem::assemble(), LinearElasticity::assemble(), assemble_1D(), assemble_biharmonic(), libMesh::AdvectionSystem::assemble_claw_rhs(), assemble_divgrad(), assemble_elasticity(), assemble_ellipticdg(), assemble_func(), assemble_graddiv(), assemble_laplace(), assemble_matrix_and_rhs(), assemble_poisson(), libMesh::ImplicitSystem::assemble_residual_derivatives(), assemble_shell(), assemble_stokes(), assemble_wave(), libMesh::FEMSystem::assembly(), libMesh::VariationalSmootherSystem::assembly(), libMesh::LinearImplicitSystem::assembly(), libMesh::NonlinearImplicitSystem::assembly(), assembly_with_dg_fem_context(), compute_Fq_representor_innerprods(), compute_output_dual_innerprods(), compute_residual_dual_norm_slow(), libMesh::Problem_Interface::computeF(), libMesh::ContinuationSystem::continuation_solve(), DMlibMeshFunction(), enrich_basis_from_rhs_terms(), fill_dirichlet_bc(), libMesh::ImplicitSystem::forward_qoi_parameter_sensitivity(), libMesh::NewtonSolver::line_search(), periodic_bc_test_poisson(), HeatSystem::perturb_accumulate_residuals(), libMesh::ImplicitSystem::qoi_parameter_hessian(), libMesh::ImplicitSystem::qoi_parameter_hessian_vector_product(), libMesh::NewtonSolver::solve(), libMesh::PetscDiffSolver::solve(), libMesh::FrequencySystem::solve(), libMesh::LinearImplicitSystem::solve(), libMesh::NonlinearImplicitSystem::solve(), libMesh::ContinuationSystem::solve_tangent(), libMesh::TransientRBConstruction::truth_assembly(), truth_assembly(), libMesh::TransientRBConstruction::truth_solve(), truth_solve(), libMesh::TransientRBConstruction::update_residual_terms(), update_residual_terms(), libMesh::NewmarkSystem::update_rhs(), libMesh::ImplicitSystem::weighted_sensitivity_adjoint_solve(), and libMesh::ImplicitSystem::weighted_sensitivity_solve().
| 
 | protectedinherited | 
This boolean flag indicates whether or not the training set should be the same on all processors.
By default it is false, but in the case of the Empirical Interpolation Method (RBEIMConstruction), for example, we need the training set to be identical on all processors.
Definition at line 273 of file rb_construction_base.h.
Referenced by compute_max_error_bound(), set_RB_training_type(), and train_reduced_basis_with_POD().
| bool libMesh::RBConstruction::skip_degenerate_sides | 
In some cases meshes are intentionally created with degenerate sides as a way to represent, say, triangles using a hex-only mesh.
In this situation we should detect and skip any degenerate sides in order to prevent zero or negative element Jacobian errors.
Definition at line 609 of file rb_construction.h.
Referenced by add_scaled_matrix_and_vector().
| bool libMesh::RBConstruction::skip_residual_in_train_reduced_basis | 
Boolean flag to indicate if we skip residual calculations in train_reduced_basis.
This should only be used in special cases, e.g. when we know a priori that we want exactly one basis function and hence we do not need the residual based error indicator.
Definition at line 586 of file rb_construction.h.
Referenced by train_reduced_basis_with_greedy().
| 
 | inherited | 
Data structure to hold solution values.
Definition at line 1616 of file system.h.
Referenced by libMesh::__libmesh_petsc_diff_solver_jacobian(), libMesh::__libmesh_petsc_diff_solver_residual(), libMesh::ExactSolution::_compute_error(), libMesh::UniformRefinementEstimator::_estimate_error(), libMesh::TransientRBConstruction::add_IC_to_RB_space(), libMesh::NewmarkSolver::advance_timestep(), libMesh::AdaptiveTimeSolver::advance_timestep(), libMesh::UnsteadySolver::advance_timestep(), libMesh::ContinuationSystem::apply_predictor(), libMesh::TransientRBConstruction::assemble_affine_expansion(), libMesh::FEMSystem::assembly(), libMesh::VariationalSmootherSystem::assembly(), libMesh::LinearImplicitSystem::assembly(), libMesh::EquationSystems::build_parallel_elemental_solution_vector(), libMesh::EquationSystems::build_parallel_solution_vector(), check_if_zero_truth_solve(), libMesh::System::clear(), libMesh::System::compare(), compute_enriched_soln(), compute_Fq_representor_innerprods(), libMesh::NewmarkSolver::compute_initial_accel(), compute_output_dual_innerprods(), compute_residual_dual_norm_slow(), compute_stresses(), LinearElasticityWithContact::compute_stresses(), LinearElasticity::compute_stresses(), LargeDeformationElasticity::compute_stresses(), libMesh::Problem_Interface::computeF(), libMesh::Problem_Interface::computeJacobian(), libMesh::Problem_Interface::computePreconditioner(), libMesh::ContinuationSystem::continuation_solve(), libMesh::ExodusII_IO::copy_elemental_solution(), libMesh::Nemesis_IO::copy_elemental_solution(), libMesh::GMVIO::copy_nodal_solution(), libMesh::ExodusII_IO::copy_nodal_solution(), libMesh::Nemesis_IO::copy_nodal_solution(), libMesh::ExodusII_IO::copy_scalar_solution(), libMesh::Nemesis_IO::copy_scalar_solution(), create_wrapped_function(), DMCreateGlobalVector_libMesh(), DMlibMeshFunction(), DMlibMeshJacobian(), libMesh::UnsteadySolver::du(), enrich_RB_space(), libMesh::PatchRecoveryErrorEstimator::estimate_error(), libMesh::WeightedPatchRecoveryErrorEstimator::estimate_error(), libMesh::JumpErrorEstimator::estimate_error(), libMesh::AdjointRefinementEstimator::estimate_error(), libMesh::AdjointResidualErrorEstimator::estimate_error(), libMesh::ExactErrorEstimator::estimate_error(), libMesh::SmoothnessEstimator::estimate_smoothness(), libMesh::RBSCMConstruction::evaluate_stability_constant(), libMesh::EigenSystem::get_eigenpair(), libMesh::CondensedEigenSystem::get_eigenpair(), LinearElasticityWithContact::get_least_and_max_gap_function(), libMesh::VariationalSmootherSystem::init_data(), libMesh::System::init_data(), libMesh::ContinuationSystem::initialize_tangent(), libMesh::TransientRBConstruction::initialize_truth(), libMesh::libmesh_petsc_snes_fd_residual(), libMesh::libmesh_petsc_snes_jacobian(), libMesh::libmesh_petsc_snes_mffd_residual(), libMesh::libmesh_petsc_snes_residual(), libMesh::libmesh_petsc_snes_residual_helper(), load_basis_function(), libMesh::TransientRBConstruction::load_rb_solution(), load_rb_solution(), main(), libMesh::DofMap::max_constraint_error(), libMesh::FEMSystem::mesh_position_get(), libMesh::ErrorVector::plot_error(), print_basis_function_orthogonality(), libMesh::InterMeshProjection::project_system_vectors(), libMesh::ImplicitSystem::qoi_parameter_hessian(), libMesh::ImplicitSystem::qoi_parameter_hessian_vector_product(), libMesh::System::re_update(), libMesh::System::read_legacy_data(), libMesh::System::read_parallel_data(), libMesh::TransientRBConstruction::read_riesz_representors_from_files(), read_riesz_representors_from_files(), libMesh::System::read_serialized_data(), MeshFunctionTest::read_variable_info_from_output_data(), libMesh::System::reinit(), libMesh::System::restrict_vectors(), libMesh::MemoryHistoryData::retrieve_vectors(), OverlappingAlgebraicGhostingTest::run_ghosting_test(), OverlappingCouplingGhostingTest::run_sparsity_pattern_test(), libMesh::ContinuationSystem::save_current_solution(), libMesh::TransientRBConstruction::set_error_temporal_data(), setup(), WriteVecAndScalar::setupTests(), libMesh::TwostepTimeSolver::solve(), libMesh::NewtonSolver::solve(), libMesh::PetscDiffSolver::solve(), libMesh::FrequencySystem::solve(), libMesh::LinearImplicitSystem::solve(), libMesh::NonlinearImplicitSystem::solve(), libMesh::ClawSystem::solve_conservation_law(), solve_for_matrix_and_rhs(), libMesh::ContinuationSystem::solve_tangent(), libMesh::MemoryHistoryData::store_vectors(), ConstraintOperatorTest::test1DCoarseningOperator(), MeshfunctionDFEM::test_mesh_function_dfem(), MeshfunctionDFEM::test_mesh_function_dfem_grad(), MeshFunctionTest::test_p_level(), SystemsTest::testBoundaryProjectCube(), ConstraintOperatorTest::testCoreform(), SystemsTest::testDofCouplingWithVarGroups(), MeshInputTest::testExodusWriteElementDataFromDiscontinuousNodalData(), SystemsTest::testPostInitAddVector(), SystemsTest::testProjectCubeWithMeshFunction(), MeshInputTest::testProjectionRegression(), WriteVecAndScalar::testSolution(), train_reduced_basis_with_POD(), libMesh::MeshFunctionSolutionTransfer::transfer(), libMesh::DirectSolutionTransfer::transfer(), libMesh::MeshfreeSolutionTransfer::transfer(), libMesh::BoundaryVolumeSolutionTransfer::transfer_boundary_volume(), libMesh::BoundaryVolumeSolutionTransfer::transfer_volume_boundary(), libMesh::TransientRBConstruction::truth_solve(), truth_solve(), libMesh::System::update(), update_current_local_solution(), libMesh::System::update_global_solution(), libMesh::TransientRBConstruction::update_RB_initial_condition_all_N(), libMesh::TransientRBConstruction::update_residual_terms(), update_residual_terms(), libMesh::ContinuationSystem::update_solution(), libMesh::NewmarkSystem::update_u_v_a(), libMesh::DTKAdapter::update_variable_values(), libMesh::System::write_parallel_data(), libMesh::TransientRBConstruction::write_riesz_representors_to_files(), write_riesz_representors_to_files(), and libMesh::System::write_serialized_data().
| bool libMesh::RBConstruction::store_non_dirichlet_operators | 
Boolean flag to indicate whether we store a second copy of each affine operator and vector which does not have Dirichlet bcs enforced.
Definition at line 624 of file rb_construction.h.
Referenced by libMesh::TransientRBConstruction::allocate_data_structures(), allocate_data_structures(), libMesh::TransientRBConstruction::assemble_all_affine_operators(), assemble_all_affine_operators(), assemble_all_affine_vectors(), assemble_all_output_vectors(), libMesh::TransientRBConstruction::assemble_misc_matrices(), assemble_misc_matrices(), libMesh::TransientRBConstruction::clear(), clear(), libMesh::TransientRBConstruction::get_all_matrices(), get_all_matrices(), get_all_vectors(), get_non_dirichlet_Aq(), get_non_dirichlet_Aq_if_avail(), get_non_dirichlet_Fq(), get_non_dirichlet_Fq_if_avail(), get_non_dirichlet_inner_product_matrix(), get_non_dirichlet_inner_product_matrix_if_avail(), libMesh::TransientRBConstruction::get_non_dirichlet_M_q(), and get_output_vectors().
| bool libMesh::RBConstruction::store_untransformed_basis | 
Boolean flag to indicate whether we store a second copy of the basis without constraints or dof transformations applied to it.
This is necessary when we have dof transformations and need to calculate the residual R(U) = C^T F - C^T A C U, since we need to evaluate R(U) using the untransformed basis U rather than C U to avoid "double applying" dof transformations in C.
Definition at line 634 of file rb_construction.h.
Referenced by compute_residual_dual_norm_slow(), enrich_RB_space(), truth_solve(), and update_residual_terms().
| 
 | inherited | 
For time-dependent problems, this is the time t at the beginning of the current timestep.
Definition at line 1638 of file system.h.
Referenced by libMesh::AdaptiveTimeSolver::adjoint_advance_timestep(), libMesh::UnsteadySolver::adjoint_advance_timestep(), libMesh::TwostepTimeSolver::adjoint_solve(), libMesh::AdaptiveTimeSolver::advance_timestep(), libMesh::UnsteadySolver::advance_timestep(), libMesh::GenericProjector< FFunctor, GFunctor, FValue, ProjectionAction >::SubProjector::construct_projection(), HeatSystem::element_qoi(), fill_dirichlet_bc(), libMesh::ExactErrorEstimator::find_squared_element_error(), initialize(), libMesh::Euler2Solver::integrate_adjoint_refinement_error_estimate(), libMesh::EulerSolver::integrate_adjoint_refinement_error_estimate(), libMesh::UnsteadySolver::integrate_adjoint_sensitivity(), libMesh::Euler2Solver::integrate_qoi_timestep(), libMesh::EulerSolver::integrate_qoi_timestep(), main(), libMesh::WeightedPatchRecoveryErrorEstimator::EstimateError::operator()(), libMesh::GenericProjector< FFunctor, GFunctor, FValue, ProjectionAction >::ProjectVertices::operator()(), libMesh::GenericProjector< FFunctor, GFunctor, FValue, ProjectionAction >::ProjectEdges::operator()(), libMesh::GenericProjector< FFunctor, GFunctor, FValue, ProjectionAction >::ProjectSides::operator()(), libMesh::GenericProjector< FFunctor, GFunctor, FValue, ProjectionAction >::ProjectInteriors::operator()(), libMesh::System::reinit_constraints(), libMesh::UnsteadySolver::retrieve_timestep(), and libMesh::TwostepTimeSolver::solve().
| std::vector<Real> libMesh::RBConstruction::training_error_bounds | 
Vector storing the values of the error bound for each parameter in the training set — the parameter giving the largest error bound is chosen for the next snapshot in the Greedy basis training.
Definition at line 528 of file rb_construction.h.
Referenced by compute_max_error_bound().
| std::vector<Number > libMesh::RBConstruction::truth_outputs | 
Vector storing the truth output values from the most recent truth solve.
Definition at line 554 of file rb_construction.h.
Referenced by allocate_data_structures(), and truth_solve().
| bool libMesh::RBConstruction::use_empty_rb_solve_in_greedy | 
A boolean flag to indicate whether or not we initialize the Greedy algorithm by performing rb_solves on the training set with an "empty" (i.e.
N=0) reduced basis space.
Definition at line 641 of file rb_construction.h.
Referenced by train_reduced_basis_with_greedy().
| 
 | private | 
Boolean to indicate whether we're using the energy inner-product.
If this is false then we use inner_product_assembly instead.
Definition at line 910 of file rb_construction.h.
Referenced by assemble_inner_product_matrix(), get_inner_product_assembly(), set_energy_inner_product(), and set_inner_product_assembly().
| 
 | inherited | 
A boolean to be set to true by systems using elem_fixed_solution, for optional use by e.g.
stabilized methods. False by default.
Definition at line 1586 of file system.h.
Referenced by libMesh::EulerSolver::_general_residual(), libMesh::Euler2Solver::_general_residual(), libMesh::SteadySolver::_general_residual(), libMesh::NewmarkSolver::_general_residual(), libMesh::DifferentiableSystem::clear(), libMesh::DiffContext::DiffContext(), and libMesh::FEMContext::pre_fe_reinit().
| 
 | inherited | 
Public boolean to toggle verbose mode.
Definition at line 193 of file rb_parametrized.h.
Referenced by libMesh::RBParametrized::check_if_valid_params().
| 
 | inherited | 
By default, the system will zero out the matrix and the right hand side.
If this flag is false, it is the responsibility of the client code to take care of setting these to zero before assembly begins
Definition at line 329 of file implicit_system.h.
Referenced by libMesh::ImplicitSystem::assemble().
 1.8.14
 1.8.14