1
2 """Stop solver at convergence"""
3
4 from AnalyzedRunner import AnalyzedRunner
5 from PyFoam.LogAnalysis.SteadyConvergedLineAnalyzer import SteadyConvergedLineAnalyzer
6
8 """It is assumed that the provided solver is a steady state
9 solver. After all the linear solvers have initial residuals below
10 their limits the run is assumed to be convergent and the run is
11 stopped by setting
12
13 stopAt nextWrite;
14 writeInterval 1;
15
16 in the controlDict"""
17
18 - def __init__(self,analyzer,
19 argv=None,
20 silent=False,
21 logname="PyFoamSolve",
22 server=False,
23 lam=None,
24 restart=False,
25 compressLog=False,
26 noLog=False,
27 remark=None,
28 jobId=None):
29 """See AnalyzedRunner"""
30 AnalyzedRunner.__init__(self,
31 analyzer,
32 argv,
33 silent,
34 logname,
35 server=server,
36 lam=lam,
37 compressLog=compressLog,
38 restart=restart,
39 noLog=noLog,
40 remark=remark,
41 jobId=jobId)
42
43 self.analyzer.addAnalyzer("Convergence",SteadyConvergedLineAnalyzer())
44
51