HermesCommon
2.0
|
Base class for defining interface for nonlinear solvers. More...
#include <nonlinear_solver.h>
Public Member Functions | |
NonlinearSolver (DiscreteProblemInterface< Scalar > *dp) | |
virtual void | solve (Scalar *coeff_vec) |
Scalar * | get_sln_vector () |
void | set_iterative_method (const char *iterative_method_name) |
void | set_preconditioner (const char *preconditioner_name) |
Public Member Functions inherited from Hermes::Mixins::Loggable | |
void | set_verbose_output (bool to_set) |
Sets the attribute verbose_output to the paramater option passed. | |
bool | get_verbose_output () const |
Returns the current value of verbose_output;. | |
void | set_verbose_callback (callbackFn callback) |
callbackFn | get_verbose_callback () const |
Returns the current value of verbose_callback;. | |
Public Member Functions inherited from Hermes::Mixins::TimeMeasurable | |
TimeMeasurable (const char *name=NULL) | |
Constructs internal structures and starts measuring. | |
const TimeMeasurable & | reset () |
Resets accumulated time. | |
const TimeMeasurable & | tick_reset () |
Starts a new period and resets accumulated time. | |
const TimeMeasurable & | tick (TimeMeasurable::TimerPeriodTickType type=HERMES_ACCUMULATE) |
Starts/ends a new period. | |
const std::string & | name () const |
Returns a name of the time period if any. | |
double | accumulated () const |
Returns accumulated time (in seconds). | |
std::string | accumulated_str () const |
Returns accumulated time in human readable form. | |
double | last () const |
Returns last measured period (in seconds). More... | |
std::string | last_str () const |
Returns last measured period in human readable form. | |
Public Member Functions inherited from Hermes::Mixins::IntegrableWithGlobalOrder | |
void | set_global_integration_order (unsigned int order) |
Public Member Functions inherited from Hermes::Mixins::SettableComputationTime | |
virtual void | set_time (double time) |
set time information for time-dependent problems. | |
virtual void | set_time_step (double time_step) |
Protected Attributes | |
DiscreteProblemInterface < Scalar > * | dp |
NonlinearProblem(DiscreteProblemInterface *) ctor. More... | |
Scalar * | sln_vector |
The solution vector. | |
int | error |
For use of error measurement. | |
bool | precond_yes |
Preconditioned solver. | |
char * | iterative_method |
char * | preconditioner |
Additional Inherited Members | |
Public Types inherited from Hermes::Mixins::TimeMeasurable | |
enum | TimerPeriodTickType { HERMES_ACCUMULATE, HERMES_SKIP } |
Tick type. Used by the class Hermes::TimePeriod. More... | |
Public Attributes inherited from Hermes::Mixins::IntegrableWithGlobalOrder | |
bool | global_integration_order_set |
unsigned int | global_integration_order |
Public Attributes inherited from Hermes::Mixins::SettableComputationTime | |
double | time |
double | time_step |
Protected Member Functions inherited from Hermes::Mixins::Loggable | |
Loggable (bool verbose_output=false, callbackFn verbose_callback=NULL) | |
void | info (const char *msg,...) const |
void | info_if (bool cond, const char *msg,...) const |
void | warn (const char *msg,...) const |
void | warn_if (bool cond, const char *msg,...) const |
void | error (const char *msg,...) const |
void | error_if (bool cond, const char *msg,...) const |
void | hermes_fwrite (const void *ptr, size_t size, size_t nitems, FILE *stream) const |
void | hermes_fread (void *ptr, size_t size, size_t nitems, FILE *stream) const |
Base class for defining interface for nonlinear solvers.
Definition at line 36 of file nonlinear_solver.h.
void Hermes::Solvers::NonlinearSolver< Scalar >::set_iterative_method | ( | const char * | iterative_method_name | ) |
Set the name of the iterative method employed by AztecOO (ignored by the other solvers).
[in] | preconditioner_name | See the attribute preconditioner. |
Definition at line 57 of file nonlinear_solver.cpp.
void Hermes::Solvers::NonlinearSolver< Scalar >::set_preconditioner | ( | const char * | preconditioner_name | ) |
Set the name of the preconditioner employed by AztecOO (ignored by the other solvers).
[in] | preconditioner_name | See the attribute preconditioner. |
Definition at line 71 of file nonlinear_solver.cpp.
|
virtual |
Basic solve method.
[in] | coeff_vec | initiall guess as a vector of coefficients wrt. basis functions. |
Definition at line 44 of file nonlinear_solver.cpp.
|
protected |
NonlinearProblem(DiscreteProblemInterface *) ctor.
FE problem being solved (not NULL in case of using
Definition at line 60 of file nonlinear_solver.h.
|
protected |
Name of the iterative method employed by AztecOO (ignored by the other solvers). Possibilities: gmres, cg, cgs, tfqmr, bicgstab.
Definition at line 75 of file nonlinear_solver.h.
|
protected |
Name of the preconditioner employed by AztecOO (ignored by the other solvers). Possibilities: none, jacobi, neumann, least-squares, or a preconditioner from IFPACK (see solver/aztecoo.h).
Definition at line 81 of file nonlinear_solver.h.