| Home | Trees | Index | Help |
|---|
| Package esys :: Package escript :: Module linearPDEs :: Class AdvectivePDE |
|
object--+ |LinearPDE--+ | AdvectivePDE
In cases of PDEs dominated by the advection terms B and C against the adevctive terms
A up-winding has been used. The AdvectivePDE class applies SUPG upwinding
to the advective terms.
In the following we set
Z[j]=C[j]-B[j]
or
Z[i,k,l]=C[i,k,l]-B[i,l,k]
To measure the dominance of the advective terms over the diffusive term A the Pelclet number P is used. It is defined as
P=h|Z|/(2|A|)
where |.| denotes the length of the arument and h is the local cell size from getSize.
Where |A|==0 P is ∞.
From the Pelclet number the stabilization parameters Ξ and Ξ are calculated:
Ξ=ξ(P) h/|Z|
where ξ is a suitable function of the Peclet number.
In the case of a single PDE the coefficient are up-dated in the following way:kronecker. Using upwinding in this form,
introduces an additonal error which is proprtional to the cell size h but with the intension to stabilize the solution.
| Method Summary | |
|---|---|
creates a linear, steady, second order PDE on a Domain | |
Scalar
|
Predefined function to set a values for ξ from a Preclet number P. |
Data
|
return the value of the coefficient name of the general PDE |
Scalar
|
Predefined function to set value 1/2 for ξ |
sets new values to coefficients | |
Scalar
|
Predefined function to set a values for ξ from a Preclet number P. |
| Inherited from LinearPDE | |
str
|
returns string representation of the PDE |
announce that coefficient name has been changed | |
Data
|
applies the operator of the PDE to a given u or the solution of PDE if u is not present. |
Data
|
test the PDE for symmetry. |
Data
|
copies the constraint into u and returns u. |
Data
|
create a Data object corresponding to coefficient
name |
Data
|
returns a new instance of a coefficient for coefficient name of the general PDE |
Data
|
returns the value of the coefficient name |
int
|
returns the spatial dimension of the PDE |
Domain
|
returns the domain of the PDE |
Data
|
returns the flux J for a given u |
FunctionSpace
|
return the FunctionSpace to be used for coefficient
name |
FunctionSpace
|
return the FunctionSpace to be used for coefficient name
of the general PDE |
FunctionSpace
|
returns the FunctionSpace used to discretize the
equation |
FunctionSpace
|
returns the FunctionSpace used to represent the
solution |
int
|
returns the number of equations |
int
|
returns the number of unknowns |
Operator
|
provides access to the operator of the PDE |
Data
|
return the residual of u or the current solution if u is not present. |
Data
|
provides access to the right hand side of the PDE |
tuple of int
|
return the shape of the coefficient name |
tuple of int
|
return the shape of the coefficient name of the general PDE |
Data
|
returns the solution of the PDE. |
int
|
returns the solver method |
string
|
returns the name of the solver currently used |
int
|
returns the package of the solver |
tuple of Operator, and
Data.
|
return the operator and right hand side of the PDE |
float
|
returns the tolerance set for the solution |
bool
|
return True if name is the name of a coefficient |
bool
|
checks if name is a the name of a coefficient of the general PDE. |
bool
|
checks if symmetry is indicated. |
bool
|
checks if matrix lumping is used a solver method |
bool
|
return status for order reduction for equation |
bool
|
return status for order reduction for the solution |
resets all coefficients to there default values. | |
switches off debugging | |
switches on debugging | |
switches off reduced order for equation representation | |
switches on reduced order for equation representation | |
sets order for test functions according to flag | |
switches off reduced order for solution representation | |
switches on reduced order for solution representation | |
sets order for test functions according to flag | |
switches off reduced order for solution and equation representation | |
switches on reduced order for solution and equation representation | |
sets order reduction for both solution and equation representation according to flag. | |
sets a new solver | |
sets a new solver package | |
removes the symmetry flag. | |
sets the symmetry flag. | |
sets the symmetry flag to flag | |
resets the tolerance for the solver method to tol where for an appropriate norm |.| | |
print the text message if debugging is swiched on. | |
| Inherited from object | |
x.__delattr__('name') <==> del x.name | |
x.__getattribute__('name') <==> x.name | |
x.__hash__() <==> hash(x) | |
T.__new__(S, ...) -> a new object with type S, a subtype of T | |
helper for pickle | |
helper for pickle | |
x.__repr__() <==> repr(x) | |
x.__setattr__('name', value) <==> x.name = value | |
| Class Variable Summary | |
|---|---|
| Inherited from LinearPDE | |
int |
AMG: algebraic multi grid |
int |
BICGSTAB: The stabilized BiConjugate Gradient method. |
int |
CGS: The conjugate gardient square method |
int |
CHOLEVSKY: The direct solver based on LDLt factorization (can only be applied for
symmetric PDEs) |
int |
CR: The conjugate residual method |
int |
DEFAULT: The default method used to solve the system of linear equations |
int |
DIRECT: The direct solver based on LDU factorization |
int |
GMRES: The Gram-Schmidt minimum residual method |
int |
ILU0: The incomplete LU factorization preconditioner with no fill in |
int |
ILUT: The incomplete LU factorization preconditioner with will in |
int |
ITERATIVE: The default iterative solver |
int |
JACOBI: The Jacobi preconditioner |
int |
LUMPING: Matrix lumping. |
int |
MINIMUM_FILL_IN: Reorder matrix to reduce fill-in during factorization |
int |
MKL: Intel's MKL solver library |
int |
NESTED_DISSECTION: Reorder matrix to improve load balancing during factorization |
int |
NO_REORDERING: No matrix reordering allowed |
int |
PASO: PASO solver package |
int |
PCG: The preconditioned conjugate gradient method (can only be applied for
symmetric PDEs) |
int |
PRES20: Special GMRES with restart after 20 steps and truncation after 5
residuals |
int |
RILU: recursive ILU |
int |
SCSL: SGI SCSL solver library |
float |
SMALL_TOLERANCE = 1e-13 |
int |
SSOR: The symmetric overrealaxtion method |
int |
UMFPACK: the UMFPACK library |
| Method Details |
|---|
__init__(self,
domain,
numEquations=None,
numSolutions=None,
xi=None,
debug=False)
creates a linear, steady, second order PDE on a
|
ELMAN_RAMAGE(self, P)Predefined function to set a values for ξ from a Preclet number P. This function uses the method suggested by H.C. Elman and A. Ramage, SIAM J. Numer. Anal., 40 (2002)
|
getCoefficientOfGeneralPDE(self, name)return the value of the coefficient name of the general PDE
|
HALF(self, P)Predefined function to set value 1/2 for ξ |
setValue(self, **coefficients)sets new values to coefficients
|
SIMPLIFIED_BROOK_HUGHES(self, P)Predefined function to set a values for ξ from a Preclet number P. The original methods is ξ(P)=coth(P)-1/P As the evaluation of coth is expensive we are using the approximation:
|
| Home | Trees | Index | Help |
|---|
| Generated by Epydoc 2.1 on Thu Apr 27 11:16:13 2006 | http://epydoc.sf.net |