This class provides a framework for solving linear homogeneous saddle
point problems of the form:
|
equal to the type of p
|
Bv(self,
v,
tol)
Returns Bv with accuracy tol (overwrite) |
|
|
|
|
|
|
|
|
|
|
|
|
|
__init__(self,
**kwargs)
initializes the saddle point problem |
|
|
|
|
| __inner_GMRES(self,
p0,
p1) |
|
|
|
|
|
|
|
_solve(self,
v,
p,
max_iter=20,
verbose=False,
usePCG=True,
iter_restart=20,
max_correction_steps=10)
see _solve method. |
|
|
|
float
|
|
|
|
getDV(self,
p,
v,
tol)
return a correction to the value for a given v and a given p with accuracy tol (overwrite) |
|
|
|
float
|
|
|
float
|
inner_p(self,
p0,
p1)
Returns inner product of p0 and p1 (overwrite). |
|
|
|
float
|
inner_pBv(self,
p,
Bv)
Returns inner product of element p and Bv (overwrite). |
|
|
|
equal to the type of p
|
norm_Bv(self,
Bv)
Returns the norm of Bv (overwrite). |
|
|
|
float
|
norm_p(self,
p)
calculates the norm of p |
|
|
|
non-negative float
|
norm_v(self,
v)
Returns the norm of v (overwrite). |
|
|
|
|
resetControlParameters(self,
K_p=1.0,
K_v=1.0,
rtol_max=0.01,
rtol_min=1e-07,
chi_max=0.5,
reduction_factor=0.3,
theta=0.1)
sets a control parameter |
|
|
|
|
|
|
|
setControlParameter(self,
K_p=None,
K_v=None,
rtol_max=None,
rtol_min=None,
chi_max=None,
reduction_factor=None,
theta=None)
sets a control parameter |
|
|
|
|
setTolerance(self,
tolerance=0.0001)
Sets the relative tolerance for (v,p). |
|
|
|
tuple of Data objects
|
solve(self,
v,
p,
max_iter=20,
verbose=False,
usePCG=True,
iter_restart=20,
max_correction_steps=10)
Solves the saddle point problem using initial guesses v and p. |
|
|
|
|
solve_AinvBt(self,
dp,
tol)
Solves A dv=B^*dp with accuracy tol |
|
|
|
equal to the type of p
|
solve_prec(self,
Bv,
tol)
Provides a preconditioner for (BA^{-1}B^ * ) applied to Bv with accuracy tol |
|
|
|
Inherited from object:
__delattr__,
__format__,
__getattribute__,
__hash__,
__new__,
__reduce__,
__reduce_ex__,
__repr__,
__setattr__,
__sizeof__,
__str__,
__subclasshook__
|