| libMesh
    | 
Define a class that encapsulates the details of a "generalized Euler" temporal discretization to be used in the rbOOmit framework. More...
#include <rb_temporal_discretization.h>
| Public Member Functions | |
| RBTemporalDiscretization () | |
| Constructor.  More... | |
| RBTemporalDiscretization (RBTemporalDiscretization &&)=default | |
| Special functions can all be defaulted for this simple class.  More... | |
| RBTemporalDiscretization (const RBTemporalDiscretization &)=default | |
| RBTemporalDiscretization & | operator= (const RBTemporalDiscretization &)=default | 
| RBTemporalDiscretization & | operator= (RBTemporalDiscretization &&)=default | 
| virtual | ~RBTemporalDiscretization ()=default | 
| Real | get_delta_t () const | 
| Get/set delta_t, the time-step size.  More... | |
| void | set_delta_t (const Real delta_t_in) | 
| Real | get_euler_theta () const | 
| Get/set euler_theta, parameter that determines the temporal discretization.  More... | |
| void | set_euler_theta (const Real euler_theta_in) | 
| unsigned int | get_time_step () const | 
| Get/set the current time-step.  More... | |
| void | set_time_step (const unsigned int k) | 
| unsigned int | get_n_time_steps () const | 
| Get/set the total number of time-steps.  More... | |
| void | set_n_time_steps (const unsigned int K) | 
| Real | get_control (const unsigned int k) const | 
| Get/set the RHS control.  More... | |
| void | set_control (const std::vector< Real > &control) | 
| void | process_temporal_parameters_file (const std::string ¶meters_filename) | 
| Read in and initialize parameters from parameters_filename.  More... | |
| void | pull_temporal_discretization_data (RBTemporalDiscretization &other) | 
| Pull the temporal discretization data from other.  More... | |
| Private Attributes | |
| Real | _delta_t | 
| The time-step size.  More... | |
| Real | _euler_theta | 
| The parameter that determines the generalized Euler scheme discretization that we employ.  More... | |
| unsigned int | _current_time_step | 
| The current time-step.  More... | |
| unsigned int | _n_time_steps | 
| The number of time-steps.  More... | |
| std::vector< Real > | _control | 
| The RHS control (scalar function of time).  More... | |
Define a class that encapsulates the details of a "generalized Euler" temporal discretization to be used in the rbOOmit framework.
Definition at line 40 of file rb_temporal_discretization.h.
| libMesh::RBTemporalDiscretization::RBTemporalDiscretization | ( | ) | 
Constructor.
Definition at line 29 of file rb_temporal_discretization.C.
| 
 | default | 
Special functions can all be defaulted for this simple class.
| 
 | default | 
| 
 | virtualdefault | 
Get/set the RHS control.
Definition at line 79 of file rb_temporal_discretization.C.
References _control, and get_n_time_steps().
Referenced by libMesh::TransientRBEvaluation::compute_residual_dual_norm(), libMesh::TransientRBEvaluation::rb_solve(), libMesh::TransientRBEvaluation::rb_solve_again(), and libMesh::TransientRBConstruction::truth_assembly().
| Real libMesh::RBTemporalDiscretization::get_delta_t | ( | ) | const | 
Get/set delta_t, the time-step size.
Definition at line 36 of file rb_temporal_discretization.C.
References _delta_t.
Referenced by libMesh::RBDataSerialization::add_transient_rb_evaluation_data_to_builder(), libMesh::TransientRBEvaluation::compute_residual_dual_norm(), libMesh::TransientRBEvaluation::legacy_write_offline_data_to_files(), libMesh::TransientRBConstruction::print_info(), process_temporal_parameters_file(), pull_temporal_discretization_data(), libMesh::TransientRBEvaluation::rb_solve(), libMesh::TransientRBEvaluation::residual_scaling_numer(), libMesh::TransientRBConstruction::truth_assembly(), and libMesh::TransientRBEvaluation::uncached_compute_residual_dual_norm().
| Real libMesh::RBTemporalDiscretization::get_euler_theta | ( | ) | const | 
Get/set euler_theta, parameter that determines the temporal discretization.
Definition at line 46 of file rb_temporal_discretization.C.
References _euler_theta.
Referenced by libMesh::RBDataSerialization::add_transient_rb_evaluation_data_to_builder(), libMesh::TransientRBEvaluation::compute_residual_dual_norm(), libMesh::TransientRBEvaluation::legacy_write_offline_data_to_files(), libMesh::TransientRBConstruction::print_info(), process_temporal_parameters_file(), pull_temporal_discretization_data(), libMesh::TransientRBEvaluation::rb_solve(), libMesh::TransientRBConstruction::truth_assembly(), and libMesh::TransientRBEvaluation::uncached_compute_residual_dual_norm().
| unsigned int libMesh::RBTemporalDiscretization::get_n_time_steps | ( | ) | const | 
Get/set the total number of time-steps.
Definition at line 68 of file rb_temporal_discretization.C.
References _n_time_steps.
Referenced by libMesh::RBDataSerialization::add_transient_rb_evaluation_data_to_builder(), libMesh::TransientRBConstruction::allocate_data_structures(), libMesh::TransientRBConstruction::enrich_RB_space(), get_control(), libMesh::TransientRBEvaluation::legacy_write_offline_data_to_files(), libMesh::TransientRBConstruction::print_info(), process_temporal_parameters_file(), pull_temporal_discretization_data(), libMesh::TransientRBEvaluation::rb_solve(), libMesh::TransientRBEvaluation::rb_solve_again(), set_time_step(), and libMesh::TransientRBConstruction::truth_solve().
| unsigned int libMesh::RBTemporalDiscretization::get_time_step | ( | ) | const | 
Get/set the current time-step.
Definition at line 57 of file rb_temporal_discretization.C.
References _current_time_step.
Referenced by libMesh::RBDataSerialization::add_transient_rb_evaluation_data_to_builder(), libMesh::TransientRBEvaluation::compute_residual_dual_norm(), libMesh::TransientRBConstruction::get_error_temporal_data(), libMesh::TransientRBEvaluation::legacy_write_offline_data_to_files(), libMesh::TransientRBConstruction::load_rb_solution(), pull_temporal_discretization_data(), libMesh::TransientRBEvaluation::rb_solve(), libMesh::TransientRBConstruction::set_error_temporal_data(), and libMesh::TransientRBConstruction::truth_assembly().
| 
 | default | 
| 
 | default | 
| void libMesh::RBTemporalDiscretization::process_temporal_parameters_file | ( | const std::string & | parameters_filename | ) | 
Read in and initialize parameters from parameters_filename. 
Definition at line 93 of file rb_temporal_discretization.C.
References get_delta_t(), get_euler_theta(), get_n_time_steps(), libMesh::Real, set_delta_t(), set_euler_theta(), set_n_time_steps(), and set_time_step().
Referenced by libMesh::TransientRBConstruction::process_parameters_file().
| void libMesh::RBTemporalDiscretization::pull_temporal_discretization_data | ( | RBTemporalDiscretization & | other | ) | 
Pull the temporal discretization data from other. 
Definition at line 110 of file rb_temporal_discretization.C.
References _control, get_delta_t(), get_euler_theta(), get_n_time_steps(), get_time_step(), set_control(), set_delta_t(), set_euler_theta(), set_n_time_steps(), and set_time_step().
Referenced by libMesh::TransientRBConstruction::process_parameters_file().
| void libMesh::RBTemporalDiscretization::set_control | ( | const std::vector< Real > & | control | ) | 
Definition at line 85 of file rb_temporal_discretization.C.
References _control, and _n_time_steps.
Referenced by pull_temporal_discretization_data().
| void libMesh::RBTemporalDiscretization::set_delta_t | ( | const Real | delta_t_in | ) | 
Definition at line 41 of file rb_temporal_discretization.C.
References _delta_t.
Referenced by libMesh::TransientRBEvaluation::legacy_read_offline_data_from_files(), libMesh::RBDataDeserialization::load_transient_rb_evaluation_data(), process_temporal_parameters_file(), and pull_temporal_discretization_data().
| void libMesh::RBTemporalDiscretization::set_euler_theta | ( | const Real | euler_theta_in | ) | 
Definition at line 51 of file rb_temporal_discretization.C.
References _euler_theta, and libMesh::libmesh_assert().
Referenced by libMesh::TransientRBEvaluation::legacy_read_offline_data_from_files(), libMesh::RBDataDeserialization::load_transient_rb_evaluation_data(), process_temporal_parameters_file(), and pull_temporal_discretization_data().
| void libMesh::RBTemporalDiscretization::set_n_time_steps | ( | const unsigned int | K | ) | 
Definition at line 73 of file rb_temporal_discretization.C.
References _control, and _n_time_steps.
Referenced by libMesh::TransientRBEvaluation::legacy_read_offline_data_from_files(), libMesh::RBDataDeserialization::load_transient_rb_evaluation_data(), process_temporal_parameters_file(), and pull_temporal_discretization_data().
| void libMesh::RBTemporalDiscretization::set_time_step | ( | const unsigned int | k | ) | 
Definition at line 62 of file rb_temporal_discretization.C.
References _current_time_step, and get_n_time_steps().
Referenced by libMesh::TransientRBEvaluation::legacy_read_offline_data_from_files(), libMesh::RBDataDeserialization::load_transient_rb_evaluation_data(), process_temporal_parameters_file(), pull_temporal_discretization_data(), libMesh::TransientRBEvaluation::rb_solve(), libMesh::TransientRBEvaluation::rb_solve_again(), and libMesh::TransientRBConstruction::truth_solve().
| 
 | private | 
The RHS control (scalar function of time).
A function h(t) that is used in the RHS as h(t)*f(x, \( \mu \)). See Martin Grepl's thesis
Definition at line 130 of file rb_temporal_discretization.h.
Referenced by get_control(), pull_temporal_discretization_data(), set_control(), and set_n_time_steps().
| 
 | private | 
The current time-step.
Definition at line 118 of file rb_temporal_discretization.h.
Referenced by get_time_step(), and set_time_step().
| 
 | private | 
The time-step size.
Definition at line 104 of file rb_temporal_discretization.h.
Referenced by get_delta_t(), and set_delta_t().
| 
 | private | 
The parameter that determines the generalized Euler scheme discretization that we employ.
euler_theta = 0 —> Forward Euler euler_theta = 0.5 —> Crank-Nicolson euler_theta = 1 —> Backward Euler
Definition at line 113 of file rb_temporal_discretization.h.
Referenced by get_euler_theta(), and set_euler_theta().
| 
 | private | 
The number of time-steps.
Definition at line 123 of file rb_temporal_discretization.h.
Referenced by get_n_time_steps(), set_control(), and set_n_time_steps().
 1.8.14
 1.8.14