Cantera  2.0
NonlinearSolver.h File Reference

Class that calculates the solution to a nonlinear, dense, set of equations (see Numerical Utilities within Cantera and class NonlinearSolver). More...

#include "ResidJacEval.h"
#include "SquareMatrix.h"
Include dependency graph for NonlinearSolver.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  NonlinearSolver
Class that calculates the solution to a nonlinear system. More...

Namespaces

namespace  Cantera
Provides class Nucleus.

Macros

Constant which determines the type of the nonlinear solve
#define NSOLN_TYPE_PSEUDO_TIME_DEPENDENT   2
The nonlinear problem is part of a pseudo time dependent calculation (NOT TESTED)

#define NSOLN_TYPE_TIME_DEPENDENT   1
The nonlinear problem is part of a time dependent calculation.

The nonlinear problem is part of a steady state calculation.

Constant which determines the Return int from the nonlinear solver
#define NSOLN_RETN_SUCCESS   1
The nonlinear solve is successful.

#define NSOLN_RETN_CONTINUE   0
Problem isn't solved yet.

#define NSOLN_RETN_FAIL_STEPTOOSMALL   -1
The nonlinear problem started to take too small an update step.

#define NSOLN_RETN_FAIL_DAMPSTEP   -2
The nonlinear problem didn't solve the problem.

#define NSOLN_RETN_MATRIXINVERSIONERROR   -3
The nonlinear problem's jacobian is singular.

#define NSOLN_RETN_JACOBIANFORMATIONERROR   -4
The nonlinear problem's jacobian formation produced an error.

#define NSOLN_RETN_RESIDUALFORMATIONERROR   -5
The nonlinear problem's base residual produced an error.

#define NSOLN_RETN_MAXIMUMITERATIONSEXCEEDED   -7
The nonlinear problem's max number of iterations has been exceeded.

Constant which determines the type of the Jacobian

The jacobian will be calculated from a numerical method

#define NSOLN_JAC_NUM   1

#define NSOLN_JAC_ANAL   2
The jacobian is calculated from an analytical function.

Detailed Description

Class that calculates the solution to a nonlinear, dense, set of equations (see Numerical Utilities within Cantera and class NonlinearSolver).

Definition in file NonlinearSolver.h.

Macro Definition Documentation

 #define NSOLN_TYPE_PSEUDO_TIME_DEPENDENT   2

The nonlinear problem is part of a pseudo time dependent calculation (NOT TESTED)

I think steady state is the only option I'm gunning for

Definition at line 30 of file NonlinearSolver.h.

 #define NSOLN_TYPE_TIME_DEPENDENT   1

The nonlinear problem is part of a time dependent calculation.

Definition at line 32 of file NonlinearSolver.h.

The nonlinear problem is part of a steady state calculation.

Definition at line 34 of file NonlinearSolver.h.

 #define NSOLN_RETN_SUCCESS   1

The nonlinear solve is successful.

This int is returned from the nonlinear solver

Definition at line 44 of file NonlinearSolver.h.

Referenced by NonlinearSolver::solve_nonlinear_problem().

 #define NSOLN_RETN_CONTINUE   0

Problem isn't solved yet.

Definition at line 46 of file NonlinearSolver.h.

Referenced by NonlinearSolver::solve_nonlinear_problem().

 #define NSOLN_RETN_FAIL_STEPTOOSMALL   -1

The nonlinear problem started to take too small an update step.

This indicates that either the Jacobian is bad, or a constraint is being bumped up against.

Definition at line 49 of file NonlinearSolver.h.

 #define NSOLN_RETN_FAIL_DAMPSTEP   -2

The nonlinear problem didn't solve the problem.

Definition at line 51 of file NonlinearSolver.h.

Referenced by NonlinearSolver::dampDogLeg(), and NonlinearSolver::dampStep().

 #define NSOLN_RETN_MATRIXINVERSIONERROR   -3

The nonlinear problem's jacobian is singular.

Definition at line 53 of file NonlinearSolver.h.

Referenced by NonlinearSolver::solve_nonlinear_problem().

 #define NSOLN_RETN_JACOBIANFORMATIONERROR   -4

The nonlinear problem's jacobian formation produced an error.

Definition at line 55 of file NonlinearSolver.h.

Referenced by NonlinearSolver::solve_nonlinear_problem().

 #define NSOLN_RETN_RESIDUALFORMATIONERROR   -5

The nonlinear problem's base residual produced an error.

Definition at line 57 of file NonlinearSolver.h.

Referenced by NonlinearSolver::solve_nonlinear_problem().

 #define NSOLN_RETN_MAXIMUMITERATIONSEXCEEDED   -7

The nonlinear problem's max number of iterations has been exceeded.

Definition at line 59 of file NonlinearSolver.h.

Referenced by NonlinearSolver::solve_nonlinear_problem().

 #define NSOLN_JAC_ANAL   2

The jacobian is calculated from an analytical function.

Definition at line 68 of file NonlinearSolver.h.

Referenced by NonlinearSolver::beuler_jac().