NonlinSystem Class Reference

#include <nonlinsystem.h>

Inherits LinSystem.

Inherited by RefNonlinSystem, and RefSystem.

List of all members.

Public Member Functions

void init_nonlin ()
 Initializes the class and creates a zero initial coefficient vector.
 NonlinSystem (WeakForm *wf, Solver *solver)
 NonlinSystem (WeakForm *wf)
 NonlinSystem (WeakForm *wf, Solver *solver, Space *s)
 NonlinSystem (WeakForm *wf, Space *s)
 NonlinSystem (WeakForm *wf, Solver *solver, int n,...)
 NonlinSystem (WeakForm *wf, int n,...)
virtual void free ()
 Frees the memory for the RHS, Dir and Vec vectors, and solver data,.
void set_alpha (double alpha)
 Adjusts the iteration coefficient. The default value for alpha is 1.
void assemble (bool rhsonly=false)
 Assembles the Jacobian matrix and the residual vector (as opposed to LibSystem::assemble() that constructs a stiffness matrix and load vector).
bool solve (int n,...)
 Performs one step of the Newton's method for an arbitrary number of equations, stores the result in the given Solutions.
bool solve (Solution *sln)
bool solve_newton (Solution *u_prev, double newton_tol, int newton_max_iter, Filter *f1=NULL, Filter *f2=NULL, Filter *f3=NULL)
 Performs complete Newton's loop for one equation.
bool solve_newton (Solution *u_prev_1, Solution *u_prev_2, double newton_tol, int newton_max_iter, Filter *f1=NULL, Filter *f2=NULL, Filter *f3=NULL)
 Performs complete Newton's loop for two equations.
bool solve_newton (Solution *u_prev_1, Solution *u_prev_2, Solution *u_prev_3, double newton_tol, int newton_max_iter, Filter *f1=NULL, Filter *f2=NULL, Filter *f3=NULL)
 Performs complete Newton's loop for three equations.
double get_residual_l2_norm () const
 returns the L2-norm of the residual vector
double get_residual_l1_norm () const
 returns the L1-norm of the residual vector
double get_residual_max_norm () const
 returns the L_inf-norm of the residual vector
virtual bool is_linear ()
 Helps to determine if linear or nonlinear class instance is used similar to Java instanceof functionality.

Protected Attributes

double alpha
double res_l2
double res_l1
double res_max

Friends

class RefNonlinSystem

Constructor & Destructor Documentation

NonlinSystem::NonlinSystem ( WeakForm wf,
Solver solver 
)
NonlinSystem::NonlinSystem ( WeakForm wf  ) 
NonlinSystem::NonlinSystem ( WeakForm wf,
Solver solver,
Space s 
)
NonlinSystem::NonlinSystem ( WeakForm wf,
Space s 
)
NonlinSystem::NonlinSystem ( WeakForm wf,
Solver solver,
int  n,
  ... 
)
NonlinSystem::NonlinSystem ( WeakForm wf,
int  n,
  ... 
)

Member Function Documentation

void NonlinSystem::assemble ( bool  rhsonly = false  )  [virtual]

Assembles the Jacobian matrix and the residual vector (as opposed to LibSystem::assemble() that constructs a stiffness matrix and load vector).

Reimplemented from LinSystem.

Reimplemented in RefSystem.

void NonlinSystem::free (  )  [virtual]

Frees the memory for the RHS, Dir and Vec vectors, and solver data,.

Reimplemented from LinSystem.

double NonlinSystem::get_residual_l1_norm (  )  const [inline]

returns the L1-norm of the residual vector

double NonlinSystem::get_residual_l2_norm (  )  const [inline]

returns the L2-norm of the residual vector

double NonlinSystem::get_residual_max_norm (  )  const [inline]

returns the L_inf-norm of the residual vector

void NonlinSystem::init_nonlin (  ) 

Initializes the class and creates a zero initial coefficient vector.

virtual bool NonlinSystem::is_linear (  )  [inline, virtual]

Helps to determine if linear or nonlinear class instance is used similar to Java instanceof functionality.

Reimplemented from LinSystem.

void NonlinSystem::set_alpha ( double  alpha  )  [inline]

Adjusts the iteration coefficient. The default value for alpha is 1.

bool NonlinSystem::solve ( Solution sln  ) 

Reimplemented from LinSystem.

bool NonlinSystem::solve ( int  n,
  ... 
)

Performs one step of the Newton's method for an arbitrary number of equations, stores the result in the given Solutions.

Reimplemented from LinSystem.

bool NonlinSystem::solve_newton ( Solution u_prev_1,
Solution u_prev_2,
Solution u_prev_3,
double  newton_tol,
int  newton_max_iter,
Filter f1 = NULL,
Filter f2 = NULL,
Filter f3 = NULL 
)

Performs complete Newton's loop for three equations.

bool NonlinSystem::solve_newton ( Solution u_prev_1,
Solution u_prev_2,
double  newton_tol,
int  newton_max_iter,
Filter f1 = NULL,
Filter f2 = NULL,
Filter f3 = NULL 
)

Performs complete Newton's loop for two equations.

bool NonlinSystem::solve_newton ( Solution u_prev,
double  newton_tol,
int  newton_max_iter,
Filter f1 = NULL,
Filter f2 = NULL,
Filter f3 = NULL 
)

Performs complete Newton's loop for one equation.


Friends And Related Function Documentation

friend class RefNonlinSystem [friend]

Member Data Documentation

double NonlinSystem::alpha [protected]
double NonlinSystem::res_l1 [protected]
double NonlinSystem::res_l2 [protected]
double NonlinSystem::res_max [protected]

The documentation for this class was generated from the following files:
Generated on Sat Jun 5 15:17:43 2010 for Hermes2D Library: Real Version by  doxygen 1.6.3