Skip to content
Snippets Groups Projects
Unverified Commit f55c9d06 authored by William Fullmer's avatar William Fullmer Committed by GitHub
Browse files

Merge pull request #14 from drangara/hypre_settings

add section for hypre settings
parents 4400dcfd 92d5d2bb
No related branches found
No related tags found
No related merge requests found
......@@ -45,6 +45,7 @@ keywords such as ``mfix``, ``amr``, ``geometry``, ``nodal_proj`` etc.
inputs/InputsInitialization
inputs/InputsLoadBalancing
inputs/InputsMultigrid
inputs/InputsHypre
inputs/InputsPlotFiles
inputs/InputsCheckpoint
inputs/InputsMonitors
......
.. _Chap:InputsHypre:
Hypre Inputs
=============
The following inputs control the hypre settings and are read directly
by AMReX when we use hypre as the bottom solver.
NOTE: Default uses the same hypre namespace "hypre" for all solvers. However,
the hypre namespace can be set at the solver level and the hypre settings
can be configured for each MLMG solver.
These settings must be preceded by the hypre_namespace setting corresponding to the solver (see :ref:`Chap:InputsMultigrid`)
+-----------------------------------+-----------------------------------------------------------------------+-------------+--------------+
| | Description | Type | Default |
+-----------------------------------+-----------------------------------------------------------------------+-------------+--------------+
| verbose | Verbosity of hypre | Int | 0 |
+-----------------------------------+-----------------------------------------------------------------------+-------------+--------------+
| adjust_singular_matrix | Should be true if the problem to be solved has singular matrix | Bool | false |
+-----------------------------------+-----------------------------------------------------------------------+-------------+--------------+
| hypre_solver | Type of hypre solver | String | BoomerAMG |
| | | | |
| | Options are BoomerAMG, GMRES, COGMRES, LGMRES, FlexGMRES, BiCGSTAB, | | |
| | PCG or Hybrid | | |
+-----------------------------------+-----------------------------------------------------------------------+-------------+--------------+
| hypre_preconditioner | Type of preconditioner | String | none |
| | | | |
| | Options are BoomerAMG or euclid | | |
+-----------------------------------+-----------------------------------------------------------------------+-------------+--------------+
| recompute_preconditioner | Recompute preconditioner during runs | Bool | true |
+-----------------------------------+-----------------------------------------------------------------------+-------------+--------------+
| write_matrix_files | Write out matrix into text files | Bool | false |
+-----------------------------------+-----------------------------------------------------------------------+-------------+--------------+
| overwrite_existing_matrix_files | Over-write existing matrix files | Bool | false |
+-----------------------------------+-----------------------------------------------------------------------+-------------+--------------+
| bamg_verbose | Verbosity of BoomerAMG preconditioner | Int | 0 |
+-----------------------------------+-----------------------------------------------------------------------+-------------+--------------+
| bamg_logging | When using BoomerAMG preconditioner | Int | 0 |
| | | | |
| | See HYPRE_BoomerAMGSetLogging | | |
+-----------------------------------+-----------------------------------------------------------------------+-------------+--------------+
| bamg_coarsen_type | When using BoomerAMG preconditioner | Int | 6 |
| | | | |
| | See HYPRE_BoomerAMGSetCoarsenType | | |
+-----------------------------------+-----------------------------------------------------------------------+-------------+--------------+
| bamg_cycle_type | When using BoomerAMG preconditioner | Int | 1 |
| | | | |
| | See HYPRE_BoomerAMGSetCycleType | | |
+-----------------------------------+-----------------------------------------------------------------------+-------------+--------------+
| bamg_relax_type | When using BoomerAMG preconditioner | Int | 6 |
| | | | |
| | See HYPRE_BoomerAMGSetRelaxType | | |
+-----------------------------------+-----------------------------------------------------------------------+-------------+--------------+
| bamg_relax_order | When using BoomerAMG preconditioner | Int | 1 |
| | | | |
| | See HYPRE_BoomerAMGSetRelaxOrder | | |
+-----------------------------------+-----------------------------------------------------------------------+-------------+--------------+
| bamg_num_sweeps | When using BoomerAMG preconditioner | Int | 2 |
| | | | |
| | See HYPRE_BoomerAMGSetNumSweeps | | |
+-----------------------------------+-----------------------------------------------------------------------+-------------+--------------+
| bamg_max_levels | When using BoomerAMG preconditioner | Int | 20 |
| | | | |
| | See HYPRE_BoomerAMGSetMaxLevels | | |
+-----------------------------------+-----------------------------------------------------------------------+-------------+--------------+
| bamg_strong_threshold | When using BoomerAMG preconditioner | Real | 0.57 |
| | | | |
| | See HYPRE_BoomerAMGSetStrongThreshold | | |
+-----------------------------------+-----------------------------------------------------------------------+-------------+--------------+
| bamg_interp_type | When using BoomerAMG preconditioner | Int | 0 |
| | | | |
| | HYPRE_BoomerAMGSetInterpType | | |
+-----------------------------------+-----------------------------------------------------------------------+-------------+--------------+
......@@ -31,8 +31,16 @@ These control the nodal projection and must be preceded by "nodal_proj":
| | If set to 0, the bottom solver will be called at the current level | | |
+-------------------------+-----------------------------------------------------------------------+-------------+--------------+
| bottom_solver | Which bottom solver to use in the nodal projection | String | bicgcg |
| | | | |
| | Options are bicgcg, bicgstab, cg, cgbicg, smoother or hypre | | |
+-------------------------+-----------------------------------------------------------------------+-------------+--------------+
| hypre_namespace | Namespace to use in the nodal projection when using hypre | String | hypre |
| | to control hypre specific settings. It can be any string. | | |
+-------------------------+-----------------------------------------------------------------------+-------------+--------------+
| hypre_interface | Which interface to use in the nodal projection when using hypre | String | ij |
| | | | |
| | Options are ij, semi_structured or structured | | |
+-------------------------+-----------------------------------------------------------------------+-------------+--------------+
These control the MAC projection and must be preceded by "mac_proj":
......@@ -56,8 +64,16 @@ These control the MAC projection and must be preceded by "mac_proj":
| | If set to 0, the bottom solver will be called at the current level | | |
+-------------------------+-----------------------------------------------------------------------+-------------+--------------+
| bottom_solver | Which bottom solver to use in the MAC projection | String | bicgcg |
| | | | |
| | Options are bicgcg, bicgstab, cg, cgbicg, smoother or hypre | | |
+-------------------------+-----------------------------------------------------------------------+-------------+--------------+
| hypre_namespace | Namespace to use in the MAC projection when using hypre | String | hypre |
| | to control hypre specific settings. It can be any string. | | |
+-------------------------+-----------------------------------------------------------------------+-------------+--------------+
| hypre_interface | Which interface to use in the MAC projection when using hypre | String | ij |
| | | | |
| | Options are ij, semi_structured or structured | | |
+-------------------------+-----------------------------------------------------------------------+-------------+--------------+
These control the diffusion solver and must be preceded by "diffusion":
......@@ -81,5 +97,13 @@ These control the diffusion solver and must be preceded by "diffusion":
| | If set to 0, the bottom solver will be called at the current level | | |
+-------------------------+-----------------------------------------------------------------------+-------------+--------------+
| bottom_solver | Which bottom solver to use in the diffusion solve | String | bicgcg |
| | | | |
| | Options are bicgcg, bicgstab, cg, cgbicg, smoother or hypre | | |
+-------------------------+-----------------------------------------------------------------------+-------------+--------------+
| hypre_namespace | Namespace to use in the diffusion solve when using hypre | String | hypre |
| | to control hypre specific settings. It can be any string. | | |
+-------------------------+-----------------------------------------------------------------------+-------------+--------------+
| hypre_interface | Which interface to use in the diffusion solve when using hypre | String | ij |
| | | | |
| | Options are ij, semi_structured or structured | | |
+-------------------------+-----------------------------------------------------------------------+-------------+--------------+
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment