Skip to content

Commit 422b8a4

Browse files
committed
Merge pull request #28 from danielru/make_gmres_maxiter_parameter
gmres parameters now defined in playground; can be selected level dep…
2 parents 8cf9f87 + bb2403a commit 422b8a4

File tree

2 files changed

+8
-2
lines changed

2 files changed

+8
-2
lines changed

examples/boussinesq_2d_imex/ProblemClass.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,9 @@ def __init__(self, cparams, dtype_u, dtype_f):
6363
assert 'x_bounds' in cparams
6464
assert 'z_bounds' in cparams
6565
assert 'order' in cparams
66+
assert 'gmres_maxiter' in cparams
67+
assert 'gmres_restart' in cparams
68+
assert 'gmres_tol' in cparams
6669

6770
# add parameters as attributes for further reference
6871
for k,v in cparams.items():
@@ -99,7 +102,7 @@ def solve_system(self,rhs,factor,u0,t):
99102

100103
b = rhs.values.flatten()
101104
cb = Callback()
102-
sol, info = LA.gmres( self.Id - factor*self.M, b, x0=u0.values.flatten(), tol=1e-13, restart=10, maxiter=500, callback=cb)
105+
sol, info = LA.gmres( self.Id - factor*self.M, b, x0=u0.values.flatten(), tol=self.gmres_tol, restart=self.gmres_restart, maxiter=self.gmres_maxiter, callback=cb)
103106
# If this is a dummy call with factor==0.0, do not log because it should not be counted as a solver call
104107
if factor!=0.0:
105108
print "Number of GMRES iterations: %3i --- Final residual: %6.3e" % ( cb.getcounter(), cb.getresidual() )

examples/boussinesq_2d_imex/playground.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@
3636
swparams['do_LU'] = True
3737

3838
sparams = {}
39-
sparams['maxiter'] = 2
39+
sparams['maxiter'] = 15
4040

4141
# setup parameters "in time"
4242
t0 = 0
@@ -53,6 +53,9 @@
5353
pparams['x_bounds'] = [(-150.0, 150.0)]
5454
pparams['z_bounds'] = [( 0.0, 10.0)]
5555
pparams['order'] = [0, 0] # [fine_level, coarse_level]
56+
pparams['gmres_maxiter'] = [50, 5]
57+
pparams['gmres_restart'] = 20
58+
pparams['gmres_tol'] = 1e-14
5659

5760
# This comes as read-in for the transfer operations
5861
tparams = {}

0 commit comments

Comments
 (0)