70 | 70 | |
71 | 71 | * '''{{{Domain%mGlobal}}}''': The global cell indices for a domain. For a single-domain problem, {{{Domain%mGlobal}}} should be {{{1, 1, 1, GmX(1), GmX(2), GmX(3)}}}. A two-domain, 64 x 64 x 64 problem might have mGlobals of {{{[1, 1, 1, 64, 32, 64}}} and {{{1, 33, 1, 64, 64, 64}}}. |
86 | | * ''{{2 -- GMRES solver}}}'': The GMRES solver allows the user |
| 86 | * ''{{{2 -- GMRES solver}}}'': The GMRES solver uses a Krylov approximation to converge to a solution. Unlike PCG, GMRES is guaranteed to converge, given enough time and memory. Such convergence can, however, be computationally infeasible, and GMRES is slower than PCG on problems that PCG can handle. If you are in doubt, try PCG ({{{solver = 1}}}) first. |
| 87 | |
| 88 | * '''{{{tolerance}}}''': A floating point value indicating the tolerance within which you would like your solver to converge. This tolerance affects the accuracy of your approximation; a lower tolerance gives a more accurate answer, but usually takes more iterations to achieve. Most problems should do fine with a {{{tolerance}}} value of {{{1e-4}}} to {{{1e-6}}}. |
| 89 | |
| 90 | * '''{{{printlevel}}}''': A hypre parameter that controls the information printed out by hypre's solver during the course of execution. There are four options for {{{printlevel}}}: |
| 91 | * ''{{{0}}}'' -- No printout. |
| 92 | * ''{{{1}}}'' -- Print solver setup information only. |
| 93 | * ''{{{2}}}'' -- Print solve information only. |
| 94 | * ''{{{3}}}'' -- Print setup and solve information. |
| 95 | The hypre solver can be pretty verbose; it's recommended that {{{printlevel}}} be set to {{{0}}} unless you are debugging. |
| 96 | |
| 97 | * '''{{{MaxIters}}}''': The maximum number of iterations hypre may step through to converge the solution. If the solution does not converge within {{{MaxIters}}} iterations, then it will fail with an error message. Multigrid solvers often experience diminishing returns over many iterations, so increasing {{{MaxIters}}} is not necessarily going to make your solution converge. Conversely, too few iterations will cause your problem to fail where it might have succeeded. |
| 98 | |
| 99 | {{{100000}}} is a good initial guess for {{{MaxIters}}}. This number can be lowered to force convergence failures to occur earlier, or it can be raised if you think a few more iterations will make a difference. |
| 100 | |
| 101 | * '''{{{hVerbosity}}}''': The amount of detail AstroBEAR prints about its hypre operations. This is a higher-level form of reporting than {{{printlevel}}}; {{{hVerbosity}}} prints out what hypre routines AstroBEAR is calling. |
| 102 | * ''{{{0 -- off}}}'': No printouts. |
| 103 | * ''{{{0 -- on}}}'': AstroBEAR prints information about the hypre routines it is calling to standard output. |
| 104 | |
| 105 | * '''{{{mthbc}}}''': These boundary condition codes are similar to the ones explained in [GlobalDataExplained#GlobalData GlobalData] above. |