Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members

StopCriteria Class Reference

#include <solver.hpp>

List of all members.


Detailed Description

Class of stop criteria used in gradient method minimization of J_{alpha}(v) TODO: rename this class.

Class describes stop criterias used in gradient method minimization of Tikhonov regularization functional J_{alpha}(v) where J_{alpha}(v) = alpha * square_norm_{L2([0;H]x[t1;t2])}(v) + square_norm_{L2[0;H]}(qT) where v is source function, qT(x)=h(x,T)-h_obs(x) where h is result of solving forward linear problem.

Definition at line 135 of file solver.hpp.

Public Types

enum  stop_type { stop_max_iters, stop_max_iters_calc_func, stop_func }
 StopCriteria mode. More...

Public Member Functions

 StopCriteria (unsigned max_iter, bool calc_func=false)
 Initialized stop criteria by max_iters.
 StopCriteria (double tol)
 Initialized stop criteria by relative error of minimized functional.
void Reset ()
 Reset iterations to start.
stop_type GetType () const
 Get type of stop criteria.
bool IsStop () const
 Check is stop criteria satisfied.
void UpdateCurIter ()
 Update number of current iteration.
unsigned GetCurIter () const
 Get number of current iteration.
bool NeedCalcFunc () const
 Check is calculating functional is needed.
void CalcFunc (unsigned N, double h, const double *qT, double alpha, double square_norm_v)
 Calculate functional J_{alpha}(v).
double GetCurFunc () const
 Get value of functional on current iteration.

Classes

union  un_param


Member Enumeration Documentation

enum StopCriteria::stop_type
 

StopCriteria mode.

Enumeration values:
stop_max_iters  stop by maximum number of iterations
stop_max_iters_calc_func  as stop_max_iters but also calculate minimized functional
stop_func  stop by relative error of minimized functional

Definition at line 138 of file solver.hpp.


Constructor & Destructor Documentation

StopCriteria::StopCriteria unsigned  max_iter,
bool  calc_func = false
 

Initialized stop criteria by max_iters.

Parameters:
max_iter maximum number of iterations
calc_func if true functional will be calculate on each iteration

Definition at line 204 of file solver.cpp.

StopCriteria::StopCriteria double  tol  ) 
 

Initialized stop criteria by relative error of minimized functional.

Parameters:
tol tolerance of relative error of functional

Definition at line 211 of file solver.cpp.


Member Function Documentation

void StopCriteria::Reset  ) 
 

Reset iterations to start.

Definition at line 217 of file solver.cpp.

StopCriteria::stop_type StopCriteria::GetType  )  const
 

Get type of stop criteria.

Definition at line 224 of file solver.cpp.

References stop_func, stop_max_iters, and stop_max_iters_calc_func.

bool StopCriteria::IsStop  )  const
 

Check is stop criteria satisfied.

Definition at line 244 of file solver.cpp.

References stop_func.

void StopCriteria::UpdateCurIter  ) 
 

Update number of current iteration.

Definition at line 162 of file solver.hpp.

unsigned StopCriteria::GetCurIter  )  const
 

Get number of current iteration.

Definition at line 164 of file solver.hpp.

bool StopCriteria::NeedCalcFunc  )  const
 

Check is calculating functional is needed.

Definition at line 239 of file solver.cpp.

References stop_max_iters.

void StopCriteria::CalcFunc unsigned  N,
double  h,
const double *  qT,
double  alpha,
double  square_norm_v
 

Calculate functional J_{alpha}(v).

Calc J_{alpha}(v) = alpha * square_norm_{L2([0;H]x[t1;t2])}(v) + square_norm_{L2[0;H]}(qT) where qT(x)=h(x,T)-h_obs(x) where h is result of solving forward linear problem.

Parameters:
N size of uniform grid on particles
h step of uniform grid on particles
qT double vector of size N+1
alpha regularization parameter
square_norm_v equal square_norm_{L2([0;H]x[t1;t2])}(v) where v is source function

Definition at line 253 of file solver.cpp.

double StopCriteria::GetCurFunc  )  const
 

Get value of functional on current iteration.

Definition at line 181 of file solver.hpp.


The documentation for this class was generated from the following files:
Generated on Sun May 25 01:58:13 2025 for SmoluchowskiSolver by Doxygen