|
| typedef TAlgebra | algebra_type |
| |
| typedef INonlinearTimeIntegrator< TDomain, TAlgebra > | base_type |
| |
| typedef IDomainDiscretization< algebra_type > | domain_discretization_type |
| |
| typedef ISubDiagErrorEst< vector_type > | error_estim_type |
| |
| typedef GridFunction< TDomain, TAlgebra > | grid_function_type |
| |
| typedef INonlinearTimeIntegrator< TDomain, TAlgebra > | itime_integrator_type |
| |
| typedef algebra_type::matrix_type | matrix_type |
| |
| typedef base_type::solver_type | solver_type |
| |
| typedef std::vector< SmartPtr< ThreadData > > | thread_vector_type |
| |
| typedef SimpleTimeIntegrator< TDomain, TAlgebra > | time_integrator_type |
| |
| typedef LinearImplicitEuler< algebra_type > | timestep_type |
| |
| typedef AitkenNevilleTimex< vector_type > | timex_type |
| |
| typedef algebra_type::vector_type | vector_type |
| |
| typedef AssembledOperator< TAlgebra > | assembled_operator_type |
| |
| typedef ITimeIntegrator< TDomain, TAlgebra > | base_type |
| |
| typedef IOperatorInverse< vector_type > | solver_type |
| |
| typedef base_type::vector_type | vector_type |
| |
| typedef TAlgebra | algebra_type |
| |
| typedef TDomain | domain_type |
| |
| typedef GridFunction< TDomain, TAlgebra > | grid_function_type |
| |
| typedef TAlgebra::matrix_type | matrix_type |
| |
| typedef TAlgebra::vector_type | vector_type |
| |
| typedef Y | codomain_function_type |
| |
| typedef X | domain_function_type |
| |
| typedef ITimeIntegratorStageObserver_end< TDomain, TAlgebra > | end_observer_type |
| |
| typedef ITimeIntegratorStageObserver_finalize< TDomain, TAlgebra > | finalize_observer_type |
| |
| typedef GridFunction< TDomain, TAlgebra > | grid_function_type |
| |
| typedef ITimeIntegratorStageObserver_init< TDomain, TAlgebra > | init_observer_type |
| |
| enum | observer_group_type |
| |
| typedef ITimeIntegratorStageObserver_postprocess< TDomain, TAlgebra > | postprocess_observer_type |
| |
| typedef ITimeIntegratorStageObserver_preprocess< TDomain, TAlgebra > | preprocess_observer_type |
| |
| typedef std::vector< SmartPtr< process_observer_type > > | process_observer_container_type |
| |
| typedef ITimeIntegratorObserver< TDomain, TAlgebra > | process_observer_type |
| |
| typedef ITimeIntegratorStageObserver_rewind< TDomain, TAlgebra > | rewind_observer_type |
| |
| typedef ITimeIntegratorStageObserver_start< TDomain, TAlgebra > | start_observer_type |
| |
| typedef TAlgebra | algebra_type |
| |
| typedef TAlgebra::matrix_type | matrix_type |
| |
| typedef TAlgebra::vector_type | vector_type |
| |
| typedef TVector | vector_type |
| |
|
| void | add_error_estimator (SmartPtr< error_estim_type > spErrorEstim) |
| | add an error estimator
|
| |
| void | add_stage (size_t i, size_t nsteps, SmartPtr< domain_discretization_type > spDD, SmartPtr< solver_type > solver) |
| | ! TODO: remove this function!
|
| |
| void | add_stage (size_t nsteps, SmartPtr< solver_type > solver, SmartPtr< domain_discretization_type > spDD) |
| |
| void | add_stage_base (size_t nsteps, SmartPtr< solver_type > solver, SmartPtr< domain_discretization_type > spDD, SmartPtr< domain_discretization_type > spGamma=SPNULL) |
| | add a new stage (at end of list)
|
| |
| void | add_stage_ext (size_t nsteps, SmartPtr< solver_type > solver, SmartPtr< domain_discretization_type > spDD, SmartPtr< domain_discretization_type > spGamma) |
| |
| bool | apply (SmartPtr< grid_function_type > u, number t1, ConstSmartPtr< grid_function_type > u0, number t0) |
| | Integrating from t0 -> t1.
|
| |
| std::string | config_string () const |
| |
| void | disable_matrix_cache () |
| | Select approximate Newton (default)
|
| |
| void | enable_matrix_cache () |
| | Select classic LIMEX.
|
| |
| number | get_cost (size_t i) |
| |
| number | get_gamma (size_t i) |
| |
| SmartPtr< grid_function_type > | get_time_derivative () |
| | getter for time derivative info (optional for setting $\Gamma$)
|
| |
| SmartPtr< timestep_type > | get_time_stepper (size_t i) |
| |
| number | get_workload (size_t i) |
| |
| bool | has_time_derivative () |
| | status for time derivative info (optional for setting $\Gamma$)
|
| |
| void | interrupt () |
| | interrupt execution of apply() by external call via observer
|
| |
| | LimexTimeIntegrator (int nstages) |
| |
| void | select_cost_strategy (SmartPtr< ILimexCostStrategy > cost) |
| |
| void | set_asymptotic_order (size_t q) |
| |
| void | set_conservative (bool c) |
| |
| void | set_debug_for_timestepper (SmartPtr< IDebugWriter< algebra_type > > spDebugWriter) |
| | forward debug info to time integrators
|
| |
| void | set_max_reductions (size_t nred) |
| |
| void | set_space (SmartPtr< IGridFunctionSpace< grid_function_type > > spSpace) |
| | set banach space (e.g. for computing consistency error)
|
| |
| void | set_start_step (size_t step) |
| |
| void | set_stepsize_greedy_order_factor (double sigma) |
| |
| void | set_stepsize_reduction_factor (double sigma) |
| |
| void | set_stepsize_safety_factor (double rho) |
| |
| void | set_time_derivative (SmartPtr< grid_function_type > udot) |
| | setter for time derivative info (optional for setting $\Gamma$)
|
| |
| void | set_tolerance (double tol) |
| | tolerance
|
| |
| double | get_dt_max () |
| |
| double | get_dt_min () |
| |
| double | get_increase_factor () |
| |
| double | get_reduction_factor () |
| |
| SmartPtr< solver_type > | get_solver () |
| |
| ConstSmartPtr< solver_type > | get_solver () const |
| |
| | INonlinearTimeIntegrator () |
| |
| void | set_dt_max (double max) |
| |
| void | set_dt_min (double min) |
| |
| void | set_increase_factor (double inc) |
| |
| void | set_reduction_factor (double dec) |
| |
| void | set_solver (SmartPtr< solver_type > solver) |
| |
| void | apply (grid_function_type &u1, const grid_function_type &u0) |
| | Apply operator.
|
| |
| double | get_time_step () |
| |
| void | init () |
| | init operator
|
| |
| virtual void | init (grid_function_type const &u) |
| | init operator depending on a function u
|
| |
| | ITimeIntegrator () |
| |
| void | prepare (grid_function_type &u) |
| | prepares functions for application
|
| |
| void | set_no_log_out (bool bNoLogOut) |
| |
| void | set_precision_bound (double precisionBound) |
| |
| void | set_time_step (double dt) |
| | Set initial time step.
|
| |
| virtual | ~ITimeIntegrator () |
| | virtual destructor
|
| |
| virtual void | apply (Y &d, const X &u)=0 |
| |
| virtual void | prepare (X &u)=0 |
| |
| virtual | ~IOperator () |
| |
| void | attach_end_observer (SmartPtr< process_observer_type > obs) |
| |
| void | attach_finalize_observer (SmartPtr< process_observer_type > obs) |
| |
| void | attach_init_observer (SmartPtr< process_observer_type > obs) |
| |
| void | attach_observer (SmartPtr< process_observer_type > obs) |
| |
| void | attach_postprocess_observer (SmartPtr< process_observer_type > obs) |
| |
| void | attach_preprocess_observer (SmartPtr< process_observer_type > obs) |
| |
| void | attach_rewind_observer (SmartPtr< process_observer_type > obs) |
| |
| void | attach_start_observer (SmartPtr< process_observer_type > obs) |
| |
| void | reset_observers () |
| |
| SmartPtr< IDebugWriter< algebra_type > > | debug_writer () |
| |
| ConstSmartPtr< IDebugWriter< algebra_type > > | debug_writer () const |
| |
| bool | debug_writer_valid () const |
| |
| | DebugWritingObject () |
| |
| | DebugWritingObject (const DebugWritingObject< algebra_type > &parent) |
| |
| | DebugWritingObject (SmartPtr< IDebugWriter< algebra_type > > spDebugWriter) |
| |
| virtual void | set_debug (SmartPtr< IDebugWriter< algebra_type > > spDebugWriter) |
| |
| virtual | ~DebugWritingObject () |
| |
| virtual void | set_debug (SmartPtr< IVectorDebugWriter< vector_type > > spDebugWriter) |
| |
| SmartPtr< IVectorDebugWriter< vector_type > > | vector_debug_writer () |
| |
| ConstSmartPtr< IVectorDebugWriter< vector_type > > | vector_debug_writer () const |
| |
| bool | vector_debug_writer_valid () const |
| |
| | VectorDebugWritingObject () |
| |
| | VectorDebugWritingObject (SmartPtr< IVectorDebugWriter< vector_type > > spDebugWriter) |
| |
| void | write_debug (const vector_type &vec, const char *filename) |
| |
| virtual | ~VectorDebugWritingObject () |
| |
| std::string | config_string () const |
| |
| | LimexTimeIntegratorConfig () |
| |
| | LimexTimeIntegratorConfig (unsigned int nstages) |
| |
|
| int | apply_integrator_threads (number dtcurr, ConstSmartPtr< grid_function_type > u0, number t0, size_t nstages) |
| | (Tentatively) apply integrators
|
| |
| void | dispose_integrator_threads () |
| | Dispose integrator threads (w/ solutions)
|
| |
| size_t | find_optimal_solution (const std::vector< number > &eps, size_t ntest, size_t &qpred) |
| |
| void | init_gamma () |
| | aux: compute exponents gamma_k (for roots)
|
| |
| void | init_integrator_threads (ConstSmartPtr< grid_function_type > u) |
| | Initialize integrator threads (w/ solutions)
|
| |
| void | join_integrator_threads () |
| | e.g. wait for all threads to complete
|
| |
| number & | monitor (size_t k, size_t q) |
| |
| void | update_cost () |
| | Updating workloads A_i for computing T_ii.
|
| |
| void | update_integrator_threads (ConstSmartPtr< grid_function_type > ucommon, number t) |
| | Override thread-wise solutions with common solution.
|
| |
| void | update_monitor () |
| | convergence monitor
|
| |
| void | attach_to_group (int tGroup, SmartPtr< process_observer_type > obs) |
| |
| void | attach_to_group (SmartPtr< process_observer_type > obs) |
| |
| bool | notify_group (SmartPtr< grid_function_type > u, int step, number time, number dt) |
| |
| void | enter_debug_writer_section (const char *secDir) |
| |
| void | enter_debug_writer_section (std::string secDir) |
| |
| void | leave_debug_writer_section () |
| |
| void | write_debug (const matrix_type &mat, const char *filename) |
| |
| void | write_debug (const matrix_type &mat, std::string name) |
| |
| void | enter_vector_debug_writer_section (const char *secDir) |
| |
| void | enter_vector_debug_writer_section (std::string secDir) |
| |
| void | leave_vector_debug_writer_section () |
| |
| void | print_debugger_message (const char *msg) |
| |
| void | print_debugger_message (std::string msg) |
| |
| virtual void | write_debug (const vector_type &vec, std::string name) |
| |
template<class TDomain, class TAlgebra>
class ug::LimexTimeIntegrator< TDomain, TAlgebra >
Base class for LIMEX time integrator.