Add radiation inputs

Merge request reports

Loading
+66 −1
Changes for docs/source_docs/user_guide/inputs/boundary_conditions.rst: 66 added lines, 1 removed line.
Original line number Diff line number Diff line
@@ -63,7 +63,7 @@ using the prefix ``bc.[region_name].[fluid_name]``:
+------------------------+------------------------------------------------------------------------+-------------+-----------+
| density                | Fluid density [required if bc type is ``mi`` or ``pi``]                | Real        | None      |
+------------------------+------------------------------------------------------------------------+-------------+-----------+
| pressure               | Fluid pressure [required if bc type is ``po' or ``pi``]                | Real        | None      |
| pressure               | Fluid pressure [required if bc type is ``po`` or ``pi``]               | Real        | None      |
+------------------------+------------------------------------------------------------------------+-------------+-----------+
| temperature            | Fluid temperature [required if bc type is ``mi`` or ``pi``]            | Real        | None      |
+------------------------+------------------------------------------------------------------------+-------------+-----------+
@@ -449,3 +449,68 @@ Below is an example for specifying a constant temperature boundary condition in
   bc.hot-walls = eb
   bc.hot-walls.eb.temperature = constant
   bc.hot-walls.eb.temperature.constant = 800


Radiation
~~~~~~~~~

.. |gray_poly_of_T_Eq| replace:: :math:`\displaystyle a(T) = a_0 + a_1 T + a_2 T^2 + \ldots`
.. |gray_poly_of_invT_Eq| replace:: :math:`\displaystyle a(T) = a_0 + a_1 / T + a_2 / T^2 + \ldots`

The following table lists the thermal boundary condition options that can be applied to embedded boundaries (EBs),
when the radiation solver is enabled. All EB surfaces must have radiation properties defined when the
radiation solver is enabled.

The following inputs defined using the prefix ``bc.[region_name].eb.radiation.emissivity``.

+-----------------------+----------------------------------------------------------------+---------+----------+
|                       | Description                                                    |  Type   | Default  |
+=======================+================================================================+=========+==========+
| model                 | Specify which radiation emissivity coefficient model to use    | String  |  None    |
|                       | for the embedded boundaries. Options:                          |         |          |
|                       |                                                                |         |          |
|                       | * ``gray-poly`` - Emissivity is defined by a                   |         |          |
|                       |   temperature-dependent polynomial (0-5th order). Piecewise    |         |          |
|                       |   polynomials are defined by specifying temperature ranges.    |         |          |
|                       |                                                                |         |          |
|                       | An emissivity model is required if radiation is enabled.       |         |          |
+-----------------------+----------------------------------------------------------------+---------+----------+
| form                  | Specifies the polynomial form used to represent the absorption |  Int    |  0       |
|                       | coefficient as a function of temperature. Options:             |         |          |
|                       |                                                                |         |          |
|                       | * ``0`` - Absorption coefficient is defined as a polynomial    |         |          |
|                       |   in temperature.                                              |         |          |
|                       |                                                                |         |          |
|                       |      |gray_poly_of_T_Eq|                                       |         |          |
|                       |                                                                |         |          |
|                       | * ``1`` - Absorption coefficient is defined as a polynomial    |         |          |
|                       |   in the inverse of temperature.                               |         |          |
|                       |                                                                |         |          |
|                       |      |gray_poly_of_invT_Eq|                                    |         |          |
|                       |                                                                |         |          |
+-----------------------+----------------------------------------------------------------+---------+----------+
| T_range               | Valid temperature range for the polynomial. If no temperature  |  Reals  |  None    |
|                       | is provided, then the polynomial is assumed valid for all      |         |          |
|                       | temperatures. Piecewise polynomials are defined by specify     |         |          |
|                       | multiple ranges. For example, two piecewise polynomials can be |         |          |
|                       | specified by providing three temperatures: low, mid and high.  |         |          |
+-----------------------+----------------------------------------------------------------+---------+----------+
| polynomial_coeffs     | Polynomial coefficient. Polynomials can be up to 5-th order,   |  Reals  |  None    |
|                       | and a set of polynomial coefficients must be defined for       |         |          |
|                       | each temperature range.                                        |         |          |
+-----------------------+----------------------------------------------------------------+---------+----------+

**Example: Constant valued emissivity**

A constant value is used over the entire valid temperature range.::

   regions = sphere ...

   regions.sphere.shape = sphere
   regions.sphere.sphere.radius = 0.25
   regions.sphere.sphere.center = 0.0  0.0  0.0

   bc.regions = sphere ...

   bc.sphere.eb.radiation.emissivity.model = "gray-poly"
   bc.sphere.eb.radiation.emissivity.polynomial_coeffs = 1.0
+184 −11
Changes for docs/source_docs/user_guide/inputs/fluid_model.rst: 184 added lines, 11 removed lines.
Original line number Diff line number Diff line
@@ -300,7 +300,6 @@ The following inputs are defined using the prefix ``[fluid_name]``.
+--------------------------+----------------------------------------------------------------+--------+----------+



Thermal conductivity
--------------------

@@ -313,7 +312,7 @@ The following inputs are defined using the prefix ``[fluid_name].thermal_conduct
+-----------------------+----------------------------------------------------------------+--------+----------+
|                       | Description                                                    |  Type  | Default  |
+=======================+================================================================+========+==========+
| model                 | Specify which thermal conductivity model to use for            | String |  None    |
| model                 | Specify which thermal conductivity model to use for the        | String |  None    |
|                       | fluid. Options:                                                |        |          |
|                       |                                                                |        |          |
|                       | * ``constant`` - constant thermal conductivity                 |        |          |
@@ -342,21 +341,195 @@ The following inputs are defined using the prefix ``[fluid_name].thermal_conduct
+-----------------------+----------------------------------------------------------------+--------+----------+


Radiation
---------

.. |gray_wsgg_Eq| replace:: :math:`\displaystyle a(T) = \sum_n \left( [1-e^{-k_i PS}] \sum_i b_{n,i} T^i \right)`

The following inputs are defined using the prefix ``[fluid_name].radiation``.

+-----------------------+----------------------------------------------------------------+---------+----------+
|                       | Description                                                    |  Type   | Default  |
+=======================+================================================================+=========+==========+
| scattering_coeff      | Scattering coefficient of the fluid.                           |  Real   |  None    |
+-----------------------+----------------------------------------------------------------+---------+----------+
| absorption.model      | Specify which radiation absorption coefficient model to use    | String  |  None    |
|                       | for the fluid. Options:                                        |         |          |
|                       |                                                                |         |          |
|                       | * ``gray-poly`` - The absorption coefficient is defined by a   |         |          |
|                       |   temperature-dependent polynomial (0-5th order). Piecewise    |         |          |
|                       |   polynomials are defined by specifying temperature ranges.    |         |          |
|                       |                                                                |         |          |
|                       | * ``gray-wsgg`` - Weighted sum of gray-gases model. For each   |         |          |
|                       |   gray gas *n*, a gas‑specific absorption coefficient          |         |          |
|                       |   :math:`k_n` is provided along with a set of polynomial       |         |          |
|                       |   coefficients :math:`b_{n,i}` (0th-5th order).                |         |          |
|                       |                                                                |         |          |
|                       |      |gray_wsgg_Eq|                                            |         |          |
|                       |                                                                |         |          |
|                       | * ``mixture`` - Mixture-based model combining species          |         |          |
|                       |   contributions.                                               |         |          |
|                       |                                                                |         |          |
|                       | An absorption model is required if radiation is enabled.       |         |          |
+-----------------------+----------------------------------------------------------------+---------+----------+


Gray polynomial
^^^^^^^^^^^^^^^

.. |gray_poly_of_T_Eq| replace:: :math:`\displaystyle a(T) = a_0 + a_1 T + a_2 T^2 + \ldots`
.. |gray_poly_of_invT_Eq| replace:: :math:`\displaystyle a(T) = a_0 + a_1 / T + a_2 / T^2 + \ldots`


The following inputs are defined using the prefix ``[fluid_name].radiation.absorption``.

+-----------------------+----------------------------------------------------------------+---------+----------+
|                       | Description                                                    |  Type   | Default  |
+=======================+================================================================+=========+==========+
| form                  | Specifies the polynomial form used to represent the absorption |  Int    |  0       |
|                       | coefficient as a function of temperature. Options:             |         |          |
|                       |                                                                |         |          |
|                       | * ``0`` - Absorption coefficient is defined as a polynomial    |         |          |
|                       |   in temperature.                                              |         |          |
|                       |                                                                |         |          |
|                       |      |gray_poly_of_T_Eq|                                       |         |          |
|                       |                                                                |         |          |
|                       | * ``1`` - Absorption coefficient is defined as a polynomial    |         |          |
|                       |   in the inverse of temperature.                               |         |          |
|                       |                                                                |         |          |
|                       |      |gray_poly_of_invT_Eq|                                    |         |          |
|                       |                                                                |         |          |
+-----------------------+----------------------------------------------------------------+---------+----------+
| T_range               | Valid temperature range for the polynomial. If no temperature  |  Reals  |  None    |
|                       | is provided, then the polynomial is assumed valid for all      |         |          |
|                       | temperatures. Piecewise polynomials are defined by specify     |         |          |
|                       | multiple ranges. For example, two piecewise polynomials can be |         |          |
|                       | specified by providing three temperatures: low, mid and high.  |         |          |
+-----------------------+----------------------------------------------------------------+---------+----------+
| polynomial_coeffs     | Polynomial coefficient. Polynomials can be up to 5-th order,   |  Reals  |  None    |
|                       | and a set of polynomial coefficients must be defined for       |         |          |
|                       | each temperature range.                                        |         |          |
+-----------------------+----------------------------------------------------------------+---------+----------+

**Example: A single temperature-dependent polynomial**

A single polynomial is used over the entire valid temperature range. Here, the absorption coefficient is
represented by one set of polynomial coefficients (e.g., 0th–2nd order).::


   fluid0.radiation.absorption.model = gray-poly
   fluid0.radiation.absorption.T_range = 300. 2400.
   fluid0.radiation.absorption.polynomial_coeffs = 32.2454,  4.057e-3, -3.89e-6

**Example: Three piecewise constants**

The absorption coefficient is defined using multiple temperature segments. Providing three temperatures
defines two piecewise regions. Because each region is specified with a single coefficient, the
absorption coefficient is constant within each segment.::

   fluid0.radiation.absorption.model = gray-poly
   fluid0.radiation.absorption.T_range = 300.  600. 1200.
   fluid0.radiation.absorption.polynomial_coeffs = 1.
   fluid0.radiation.absorption.polynomial_coeffs = 0.1
   fluid0.radiation.absorption.polynomial_coeffs = 0.01


Gray WSGG (Weighted Sum of Gray Gases)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

The following inputs are defined using the prefix ``[fluid_name].radiation.absorption``.

+-----------------------+----------------------------------------------------------------+---------+----------+
|                       | Description                                                    |  Type   | Default  |
+=======================+================================================================+=========+==========+
| pressure-path_length  | The pressure path length product ``PS``. This term includes    |  Real   |  None    |
|                       | partial pressure of the absorbing gases ``P`` and the path     |         |          |
|                       | length of the gas ``S``. A value is required when the species  |         |          |
|                       | equations are not solved.                                      |         |          |
+-----------------------+----------------------------------------------------------------+---------+----------+
| path_length           | The path length of the gas, ``S``. A value is required when    |  Real   |  None    |
|                       | the species are solved. It is combed with the total partial    |         |          |
|                       | pressure of the real ``gases`` based on the local composition  |         |          |
|                       | to compute the pressure path length product.                   |         |          |
+-----------------------+----------------------------------------------------------------+---------+----------+
| gases                 | List of absorbing gas species. The total partial pressure      | Strings |  None    |
|                       | based on the local composition ``P`` is computed from the      |         |          |
|                       | listed species. One or more species must be listed if species  |         |          |
|                       | equations are solved.                                          |         |          |
+-----------------------+----------------------------------------------------------------+---------+----------+
| T_range               | Valid temperature range for the polynomial. If no temperature  |  Reals  |  None    |
|                       | is provided, then the polynomial is assumed valid for all      |         |          |
|                       | temperatures. Piecewise polynomials are defined by specify     |         |          |
|                       | multiple ranges. For example, two piecewise polynomials can be |         |          |
|                       | specified by providing three temperatures: low, mid and high.  |         |          |
+-----------------------+----------------------------------------------------------------+---------+----------+
| coeffs                | Weighted sum of gray gas coefficients.                         |  Reals  |  None    |
+-----------------------+----------------------------------------------------------------+---------+----------+
| polynomial_coeffs     | Polynomial coefficient. Polynomials can be up to 5-th order,   |  Reals  |  None    |
|                       | and a set of polynomial coefficients must be defined for       |         |          |
|                       | each temperature range.                                        |         |          |
+-----------------------+----------------------------------------------------------------+---------+----------+

**Example: WSGG model with five gray gases**

Example inputs defining a WSGG model. Here, five gray gases are included in the absorption‑coefficient model. This
is not a complete input file, nor does it represent a real WSGG model.

Dummy values are provided for illustration only.::

   fluid0.radiation.absorption.model = gray-wsgg
   fluid0.radiation.absorption.T_range = 600. 2400.
   fluid0.radiation.absorption.pressure-path_length = 2.0

   fluid0.radiation.absorption.coeffs = 100.  10.  1.  0.1  0.01
   fluid0.radiation.absorption.polynomial_coeffs = 0.4068  -1.83E-04  8.68E-09
   fluid0.radiation.absorption.polynomial_coeffs = 0.3390  -1.53E-04  7.24E-09
   fluid0.radiation.absorption.polynomial_coeffs = 0.2712  -1.22E-04  5.79E-09
   fluid0.radiation.absorption.polynomial_coeffs = 0.2034  -9.16E-05  4.34E-09
   fluid0.radiation.absorption.polynomial_coeffs = 0.1356  -6.11E-05  2.89E-09


Each polynomial_coeffs line corresponds to one gray gas and provides the polynomial coefficients
:math:`b_{n,i}` in the temperature‑dependent term :math:`\sum_i b_{n,i}T^{i-1}`.


**Example: WSGG model with partial‑pressure path‑length**

Example inputs defining a weighted‑sum‑of‑gray‑gases model using three gray gases.  In this case, the
pressure path‑length product ``PS`` is computed from the partial pressures of real gases ``CO2`` and
``H2O``.  As before, this is not a complete input file and does not represent a real WSGG dataset.::

   species.solve = O2 H2O CO2 coal ash
   fluid.species = CO2 H2O O2

   fluid0.radiation.absorption.T_range = 600. 2400.
   fluid0.radiation.absorption.path_length = 1.0
   fluid0.radiation.absorption.gases = CO2 H2O
   fluid0.radiation.absorption.coeffs = 75., 5., 1.
   fluid0.radiation.absorption.polynomial_coeffs = 0.6280, -1.69E-04,  -8.78E-08,  2.22E-11
   fluid0.radiation.absorption.polynomial_coeffs = 0.3768, -1.01E-04,  -5.27E-08,  1.33E-11
   fluid0.radiation.absorption.polynomial_coeffs = 0.2512, -6.75E-05,  -3.51E-08,  8.90E-12

``coeffs`` supplies the gray‑gas absorption coefficients :math:`k_n`, and each ``polynomial_coeffs``
line provides the :math:`b_{n,i}` for the corresponding gray gas.  The specified gases (``CO2``, ``H2O``)
are used to compute the local partial‑pressure path‑length ``PS``.


Newton solver
-------------

The following inputs are defined using the prefix ``fluid`` and control the convergence criteria
The following inputs are defined using the prefix ``fluid.newton_solver`` and control the convergence criteria
of the damped Newton solver used to compute temperature from enthalpy and specific heat.

+------------------------------------------+----------------------------------------------------------+--------+----------+
+----------------------------+----------------------------------------------------------+--------+----------+
|                            | Description                                              |  Type  | Default  |
+==========================================+==========================================================+========+==========+
| newton_solver.absolute_tol               | Define absolute tolerance for the Newton solver          |  Real  |  1.e-8   |
+------------------------------------------+----------------------------------------------------------+--------+----------+
| newton_solver.relative_tol               | Define relative tolerance for the Newton solver          |  Real  |  1.e-8   |
+------------------------------------------+----------------------------------------------------------+--------+----------+
| newton_solver.max_iterations             | Define max number of iterations for the Newton solver    |  Int   |  500     |
+------------------------------------------+----------------------------------------------------------+--------+----------+
+============================+==========================================================+========+==========+
| absolute_tol               | Define absolute tolerance for the Newton solver          |  Real  |  1.e-8   |
+----------------------------+----------------------------------------------------------+--------+----------+
| relative_tol               | Define relative tolerance for the Newton solver          |  Real  |  1.e-8   |
+----------------------------+----------------------------------------------------------+--------+----------+
| max_iterations             | Define max number of iterations for the Newton solver    |  Int   |  500     |
+----------------------------+----------------------------------------------------------+--------+----------+



+3 −0
Changes for docs/source_docs/user_guide/inputs/model_options.rst: 3 added lines, 0 removed lines.
Original line number Diff line number Diff line
@@ -22,6 +22,8 @@ The following input is defined using the prefix ``mfix``:
+--------------------------+----------------------------------------------------------------------------+----------+---------------------+
| enable.solids            | Enable the solids solver for DEM or PIC.                                   | Bool     | false               |
+--------------------------+----------------------------------------------------------------------------+----------+---------------------+
| enable.radiation         | Enable the radiation solver. This solver must be built with RTE enabled.   | Bool     | false               |
+--------------------------+----------------------------------------------------------------------------+----------+---------------------+
| solve_species            | Enable the MFIX species solver.                                            | Int      | 0                   |
+--------------------------+----------------------------------------------------------------------------+----------+---------------------+
| advect_enthalpy          | Enable time evolution of fluid temperature and enthalpy.                   | Int      | 0                   |
@@ -30,6 +32,7 @@ The following input is defined using the prefix ``mfix``:
+--------------------------+----------------------------------------------------------------------------+----------+---------------------+



Fluid options
-------------

+173 −0
Changes for docs/source_docs/user_guide/inputs/radiation_model.rst: 173 added lines, 0 removed lines.
Original line number Diff line number Diff line
.. sec:InputsRadiation:

Radiation
=========

.. warning::

  * MFIX-Exa must be built with ``RTE`` enabled which requires ``hypre``.

The following inputs are defined using the prefix ``radiation``:

+----------------------+--------------------------------------------------------------------------+----------+---------+
| Key                  | Description                                                              | Type     | Default |
+======================+==========================================================================+==========+=========+
| model                | Radiation model. Options:                                                | String   |  None   |
|                      |                                                                          |          |         |
|                      | * ``P1`` - :math:`\mathrm{P}_1` spherical-harmonics approximation.       |          |         |
|                      | * ``FV`` - Finite-volume discretization of the radiation transport       |          |         |
|                      |   equation.                                                              |          |         |
+----------------------+--------------------------------------------------------------------------+----------+---------+
| enable_scaling       | Enable mean beam-length scaling.                                         | Bool     | false   |
+----------------------+--------------------------------------------------------------------------+----------+---------+
| update_int           | Solve for the radiation intensity on the interval in time steps.         | Int      | None    |
|                      | This input cannot be specified with ``radiation.update_per_approx``.     |          |         |
+----------------------+--------------------------------------------------------------------------+----------+---------+
| update_per_approx    | Solve for the radiation intensity on the approximted lapsed time.        | Int      | None    |
|                      | This input cannot be specified with ``radiation.update_int``.            |          |         |
+----------------------+--------------------------------------------------------------------------+----------+---------+

RTE P\ :sub:`1` solver
----------------------

The following inputs are defined using the prefix ``rte.P1``:

+--------------------------+-----------------------------------------------------------------------+----------+---------+
| Key                      | Description                                                           | Type     | Default |
+==========================+=======================================================================+==========+=========+
| A1                       | Legendre coefficient for scattering phase function.                   | Real     |  0.     |
|                          |                                                                       |          |         |
+--------------------------+-----------------------------------------------------------------------+----------+---------+
| maxConvergeIter          | Maximum allowed iterations to get a converged solution.               | Int      |  10     |
+--------------------------+-----------------------------------------------------------------------+----------+---------+
| L2_convergence_tol       | Convergence threshold on L2 norm of incident radiation (G).           | Real     | 1.0e-5  |
+--------------------------+-----------------------------------------------------------------------+----------+---------+
| NOS_correction           | Non-orthogonal and skewness correction on face fluxes.                | Bool     | false   |
+--------------------------+-----------------------------------------------------------------------+----------+---------+
| flux_redistribution      | Redistribute the flux or not during the non-orthogonal corrections.   | Bool     | false   |
+--------------------------+-----------------------------------------------------------------------+----------+---------+
| LeastSquare_stencil_size | Stencil size for the least square regression.                         | Int      | 3       |
+--------------------------+-----------------------------------------------------------------------+----------+---------+


RTE FV solver
-------------

The following inputs are defined using the prefix ``rte.fv``:

+-----------------------------+--------------------------------------------------------------------+----------+---------+
| Key                         | Description                                                        | Type     | Default |
+=============================+====================================================================+==========+=========+
| quadrature_resolution_theta | Number of polar discretizations in each quadrature.                | Int      | None    |
+-----------------------------+--------------------------------------------------------------------+----------+---------+
| quadrature_resolution_phi   | Number of azimuthal discretizations in each quadrature.            | Int      | None    |
+-----------------------------+--------------------------------------------------------------------+----------+---------+
| maxConvergeIter             | Maximum allowed iterations to get a converged solution.            | Int      |   10    |
+-----------------------------+--------------------------------------------------------------------+----------+---------+
| explicit_correction         | Deferred correction                                                | Bool     | false   |
+-----------------------------+--------------------------------------------------------------------+----------+---------+


Hypre settings
--------------

.. warning::

  * These inputs are all case-sensitive.

``hypre`` settings are specified using the following inputs which are read directly by the RTE library.
The following inputs are defined using the prefix ``rte.hypre``:

+-------------------+-----------------------------------------------------------------------+----------+---------+
|                   |  Description                                                          |   Type   | Default |
+===================+=======================================================================+==========+=========+
| preconditioner    | Type of preconditioner.                                               |  String  |  None   |
|                   |                                                                       |          |         |
|                   | Options:                                                              |          |         |
|                   |                                                                       |          |         |
|                   | * ``BoomerAMG``                                                       |          |         |
+-------------------+-----------------------------------------------------------------------+----------+---------+
| solver            | Type of hypre solver.                                                 |  String  |  None   |
|                   |                                                                       |          |         |
|                   | Options:                                                              |          |         |
|                   |                                                                       |          |         |
|                   | * ``GMRES``                                                           |          |         |
|                   | * ``BiCGSTAB``                                                        |          |         |
|                   | * ``BoomerAMG``                                                       |          |         |
+-------------------+-----------------------------------------------------------------------+----------+---------+
| verbose           | Verbosity of hypre.                                                   |   Int    |   0     |
+-------------------+-----------------------------------------------------------------------+----------+---------+
| num_krylov        | Number of iterations.                                                 |   Int    |  50     |
+-------------------+-----------------------------------------------------------------------+----------+---------+
| convergence_tol   | Convergence tolerance.                                                |   Real   |  1.0e-4 |
+-------------------+-----------------------------------------------------------------------+----------+---------+
| max_iterations    | Maximum number of iterations.                                         |   Int    |  1000   |
+-------------------+-----------------------------------------------------------------------+----------+---------+


The following inputs are valid when using ``BoomerAMG`` as a preconditioner or solver.
They must be defined using the prefix ``rte.hypre``:

+------------------------+------------------------------------------------------------------+----------+---------+
|                        |  Description                                                     |  Type    | Default |
+========================+==================================================================+==========+=========+
| bamg_agg_interp_type   | See ``HYPRE_BoomerAMGSetAggInterpType``.                         |   Int    |   4     |
+------------------------+------------------------------------------------------------------+----------+---------+
| bamg_agg_num_levels    | See ``HYPRE_BoomerAMGSetAggNumLevels``.                          |   Int    |   0     |
+------------------------+------------------------------------------------------------------+----------+---------+
| bamg_agg_pmax_elmts    | See ``HYPRE_BoomerAMGSetAggPMaxElmts``.                          |   Int    |   0     |
+------------------------+------------------------------------------------------------------+----------+---------+
| bamg_coarse_relax_type | See ``HYPRE_BoomerAMGSetCycleRelaxType``.                        |   Int    |   11    |
+------------------------+------------------------------------------------------------------+----------+---------+
| bamg_coarsen_type      | See ``HYPRE_BoomerAMGSetCoarsenType``.                           |   Int    |   6     |
+------------------------+------------------------------------------------------------------+----------+---------+
| bamg_cycle_type        | See ``HYPRE_BoomerAMGSetCycleType``.                             |   Int    |   1     |
+------------------------+------------------------------------------------------------------+----------+---------+
| bamg_down_relax_type   | See ``HYPRE_BoomerAMGSetCycleRelaxType``.                        |   Int    |   11    |
+------------------------+------------------------------------------------------------------+----------+---------+
| bamg_interp_type       | See ``HYPRE_BoomerAMGSetInterpType``.                            |   Int    |   0     |
+------------------------+------------------------------------------------------------------+----------+---------+
| bamg_keep_transpose    | See ``HYPRE_BoomerAMGSetKeepTranspose``.                         |   Int    |   0     |
+------------------------+------------------------------------------------------------------+----------+---------+
| bamg_logging           | See ``HYPRE_BoomerAMGSetLogging``.                               |   Int    |   0     |
+------------------------+------------------------------------------------------------------+----------+---------+
| bamg_max_coarse_size   | See ``HYPRE_BoomerAMGSetMaxCoarseSize``.                         |   Int    |   9     |
+------------------------+------------------------------------------------------------------+----------+---------+
| bamg_max_iterations    | See ``HYPRE_BoomerAMGSetMaxIter``.                               |   Int    |   1     |
+------------------------+------------------------------------------------------------------+----------+---------+
| bamg_max_levels        | See ``HYPRE_BoomerAMGSetMaxLevels``.                             |   Int    |   20    |
+------------------------+------------------------------------------------------------------+----------+---------+
| bamg_min_coarse_size   | See ``HYPRE_BoomerAMGSetMinCoarseSize``.                         |   Int    |   1     |
+------------------------+------------------------------------------------------------------+----------+---------+
| bamg_num_coarse_sweeps | See ``HYPRE_BoomerAMGSetCycleNumSweeps``.                        |   Int    |   1     |
+------------------------+------------------------------------------------------------------+----------+---------+
| bamg_num_down_sweeps   | See ``HYPRE_BoomerAMGSetCycleNumSweeps``.                        |   Int    |   2     |
+------------------------+------------------------------------------------------------------+----------+---------+
| bamg_num_sweeps        | See ``HYPRE_BoomerAMGSetNumSweeps``.                             |   Int    |   2     |
+------------------------+------------------------------------------------------------------+----------+---------+
| bamg_num_up_sweeps     | See ``HYPRE_BoomerAMGSetCycleNumSweeps``.                        |   Int    |   2     |
+------------------------+------------------------------------------------------------------+----------+---------+
| bamg_pmax_elmts        | See ``HYPRE_BoomerAMGSetPMaxElmts``.                             |   Int    |   4     |
+------------------------+------------------------------------------------------------------+----------+---------+
| bamg_precond_tolerance | See ``HYPRE_BoomerAMGSetTol``.                                   |   Real   |   0.0   |
+------------------------+------------------------------------------------------------------+----------+---------+
| bamg_relax_order       | See ``HYPRE_BoomerAMGSetRelaxOrder``.                            |   Int    |   1     |
+------------------------+------------------------------------------------------------------+----------+---------+
| bamg_relax_type        | See ``HYPRE_BoomerAMGSetRelaxType``.                             |   Int    |   6     |
+------------------------+------------------------------------------------------------------+----------+---------+
| bamg_set_restriction   | See ``HYPRE_BoomerAMGSetRestriction``.                           |   Int    |   0     |
+------------------------+------------------------------------------------------------------+----------+---------+
| bamg_strong_threshold  | See ``HYPRE_BoomerAMGSetStrongThreshold``.                       |   Real   |   0.57  |
+------------------------+------------------------------------------------------------------+----------+---------+
| bamg_trunc_factor      | See ``HYPRE_BoomerAMGSetTruncFactor``.                           |   Real   |   0.1   |
+------------------------+------------------------------------------------------------------+----------+---------+
| bamg_up_relax_type     | See ``HYPRE_BoomerAMGSetCycleRelaxType``.                        |   Int    |   11    |
+------------------------+------------------------------------------------------------------+----------+---------+
| bamg_variant           | See ``HYPRE_BoomerAMGSetVariant``.                               |   Int    |   0     |
+------------------------+------------------------------------------------------------------+----------+---------+
| bamg_verbose           | Set ``BoomerAMG`` verbosity.                                     |   Int    |   0     |
+------------------------+------------------------------------------------------------------+----------+---------+

.. note::

   This list is likely incomplete because the  AMReX / `hypre` interface continues to evolve.
+64 −0
Changes for docs/source_docs/user_guide/inputs/solids_model.rst: 64 added lines, 0 removed lines.
Original line number Diff line number Diff line
@@ -165,6 +165,70 @@ The following inputs are defined with the prefix ``solids``:
+-----------------------+--------------------------------------------------------------+----------+----------+


Radiation
---------

The following inputs are defined using the prefix ``[solid_name].radiation``.

+-----------------------+----------------------------------------------------------------+---------+----------+
|                       | Description                                                    |  Type   | Default  |
+=======================+================================================================+=========+==========+
| scattering_factor     | Particle scattering factor.                                    |  Real   |  None    |
+-----------------------+----------------------------------------------------------------+---------+----------+
| emissivity.model      | Specify which radiation emissivity coefficient model to use    | String  |  None    |
|                       | for the solid. Options:                                        |         |          |
|                       |                                                                |         |          |
|                       | * ``gray-poly`` - Emissivity is defined by a                   |         |          |
|                       |   temperature-dependent polynomial (0-5th order). Piecewise    |         |          |
|                       |   polynomials are defined by specifying temperature ranges.    |         |          |
|                       |                                                                |         |          |
|                       | An emissivity model is required if radiation is enabled.       |         |          |
+-----------------------+----------------------------------------------------------------+---------+----------+


Gray polynomial

.. |gray_poly_of_T_Eq| replace:: :math:`\displaystyle a(T) = a_0 + a_1 T + a_2 T^2 + \ldots`
.. |gray_poly_of_invT_Eq| replace:: :math:`\displaystyle a(T) = a_0 + a_1 / T + a_2 / T^2 + \ldots`


The following inputs are defined using the prefix ``[solid_name].radiation.emissivity``.

+-----------------------+----------------------------------------------------------------+---------+----------+
|                       | Description                                                    |  Type   | Default  |
+=======================+================================================================+=========+==========+
| form                  | Specifies the polynomial form used to represent the absorption |  Int    |  0       |
|                       | coefficient as a function of temperature. Options:             |         |          |
|                       |                                                                |         |          |
|                       | * ``0`` - Absorption coefficient is defined as a polynomial    |         |          |
|                       |   in temperature.                                              |         |          |
|                       |                                                                |         |          |
|                       |      |gray_poly_of_T_Eq|                                       |         |          |
|                       |                                                                |         |          |
|                       | * ``1`` - Absorption coefficient is defined as a polynomial    |         |          |
|                       |   in the inverse of temperature.                               |         |          |
|                       |                                                                |         |          |
|                       |      |gray_poly_of_invT_Eq|                                    |         |          |
|                       |                                                                |         |          |
+-----------------------+----------------------------------------------------------------+---------+----------+
| T_range               | Valid temperature range for the polynomial. If no temperature  |  Reals  |  None    |
|                       | is provided, then the polynomial is assumed valid for all      |         |          |
|                       | temperatures. Piecewise polynomials are defined by specify     |         |          |
|                       | multiple ranges. For example, two piecewise polynomials can be |         |          |
|                       | specified by providing three temperatures: low, mid and high.  |         |          |
+-----------------------+----------------------------------------------------------------+---------+----------+
| polynomial_coeffs     | Polynomial coefficient. Polynomials can be up to 5-th order,   |  Reals  |  None    |
|                       | and a set of polynomial coefficients must be defined for       |         |          |
|                       | each temperature range.                                        |         |          |
+-----------------------+----------------------------------------------------------------+---------+----------+

**Example: Constant valued emissivity**

A constant value is used over the entire valid temperature range.::

   solid0.radiation.absorption.model = gray-poly
   solid0.radiation.absorption.polynomial_coeffs = 0.9


Density
-------
Loading
Loading