next set of converted AtC documentation

This commit is contained in:
Axel Kohlmeyer
2020-03-13 10:19:12 -04:00
parent 3574673901
commit 5a81f69495
10 changed files with 356 additions and 13 deletions

View File

@ -0,0 +1,77 @@
.. index:: fix_modify AtC control momentum
fix_modify AtC control momentum command
=======================================
Syntax
""""""
.. parsed-literal::
fix_modify <AtC fixID> control <physics_type> <solution_parameter> <value>
fix_modify AtC control momentum none
fix_modify AtC control momentum rescale <frequency>
fix_modify AtC control momentum glc_displacement
fix_modify AtC control momentum glc_velocity
fix_modify AtC control momentum hoover
fix_modify AtC control momentum flux [faceset face_set_id, interpolate]
* AtC fixID = ID of :doc:`fix atc <fix_atc>` instance
* control = name of the AtC sub-command
* physics_type = *thermal* or *momentum*
* solution_parameter = *max_iterations* or *tolerance*
* value = solution_parameter value
* momentum option = *none* or *rescale* or *glc_displacement* or *glc_velocity* *hoover* or *flux*
* frequency = time step frequency for applying displacement and velocity rescaling
* faceset_id = id of boundary face set (optional, only for *faceset*)
Examples
""""""""
.. code-block:: LAMMPS
fix_modify AtC control momentum none
fix_modify AtC control momentum flux faceset bndy_faces
fix_modify AtC control momentum glc_velocity
Description
"""""""""""
The general version of *control* sets the numerical parameters for the
matrix solvers used in the specified control algorithm. Many solution
approaches require iterative solvers, and these methods enable users to
provide the maximum number of iterations and the relative tolerance.
The *control momentum* version sets the momentum exchange mechanism from
the finite elements to the atoms, managed through a control algorithm.
*rescale* computes a scale factor for each atom to match the finite
element temperature. *hoover* is a Gaussian least-constraint isokinetic
thermostat enforces that the nodal restricted atomic temperature matches
the finite element temperature. *flux* is a similar mode, but rather
adds energy to the atoms based on conservation of energy.
*correction_max_iterations* sets the maximum number of iterations to
compute the 2nd order in time correction term for lambda with the
fractional step method. The method uses the same tolerance as the
controller's matrix solver.
Restrictions
""""""""""""
Only for be used with the specific controllers *thermal* or *momentum*.
They are ignored if a lumped solution is requested.
*control momentum* is only for be used with specific transfers: elastic
*rescale* not valid with time filtering activated
Related AtC commands
""""""""""""""""""""
:doc:`fix_modify AtC control thermal <atc_control_thermal>`
Default
"""""""
- *max_iterations* is the number of rows in the matrix.
- *tolerance* is 1.0e-10.

View File

@ -0,0 +1,87 @@
.. index:: fix_modify AtC control thermal
fix_modify AtC control thermal command
======================================
Syntax
""""""
.. parsed-literal::
fix_modify <AtC fixID> control <physics_type> <solution_parameter> <value>
fix_modify <AtC fixID> control thermal <control_type> <optional_args>
fix_modify <AtC fixID> control thermal rescale <frequency>
fix_modify <AtC fixID> control thermal flux <boundary_integration_type> <faceset_id>
fix_modify <AtC fixID> control thermal correction_max_iterations <max_iterations>
* AtC fixID = ID of :doc:`fix atc <fix_atc>` instance
* control = name of the AtC sub-command
* physics_type = *thermal* or *momentum*
* solution_parameter = *max_iterations* or *tolerance*
* value = solution_parameter value
* thermal control_type = *none* or *rescale* or *hoover* or *flux*
* frequency = time step frequency for applying velocity rescaling
* boundary_integration_type = *faceset* or *interpolate* (optional)
* faceset_id = id of boundary face set (optional, only for *faceset*)
* correction_max_iterations = maximum number of iterations that will be used by iterative matrix solvers for *thermal* physics type
Examples
""""""""
.. code-block:: LAMMPS
fix_modify AtC control thermal none
fix_modify AtC control thermal rescale 10
fix_modify AtC control thermal hoover
fix_modify AtC control thermal flux
fix_modify AtC control thermal flux faceset bndy_faces
fix_modify AtC control thermal correction_max_iterations 10
Description
"""""""""""
The general version of *control* sets the numerical parameters for the
matrix solvers used in the specified control algorithm. Many solution
approaches require iterative solvers, and these methods enable users to
provide the maximum number of iterations and the relative tolerance.
The *control thermal* version sets the energy exchange mechanism from
the finite elements to the atoms, managed through a control algorithm.
*rescale* computes a scale factor for each atom to match the finite
element temperature. *hoover* is a Gaussian least-constraint isokinetic
thermostat enforces that the nodal restricted atomic temperature matches
the finite element temperature. *flux* is a similar mode, but rather
adds energy to the atoms based on conservation of energy. *hoover* and
*flux* allow the prescription of sources or fixed temperatures on the
atoms.
*correction_max_iterations* sets the maximum number of iterations to
compute the 2nd order in time correction term for lambda with the
fractional step method. The method uses the same tolerance as the
controller's matrix solver.
Restrictions
""""""""""""
Only for be used with the specific controllers *thermal* or *momentum*.
They are ignored if a lumped solution is requested.
*control thermal* is only for be used with specific transfers: thermal (*rescale*\ , *hoover*\ , *flux*\ ), *two_temperature* (*flux*\ ).
*rescale* not valid with time filtering activated
*correction_max_iterations* is only for use with *thermal* physics using
the fractional step method.
Related AtC commands
""""""""""""""""""""
:doc:`fix_modify AtC control momentum <atc_control_momentum>`
Default
"""""""
- *max_iterations* is the number of rows in the matrix.
- *tolerance* is 1.0e-10.
- *rescale* frequency is 1
- *flux* boundary_integration_type is *interpolate*
- *correction_max_iterations* is 20

View File

@ -1,7 +1,7 @@
.. index:: fix_modify AtC fix
fix_modify AtC initial command
==============================
fix_modify AtC fix command
==========================
Syntax
""""""

47
doc/src/atc_fix_flux.rst Normal file
View File

@ -0,0 +1,47 @@
.. index:: fix_modify AtC fix_flux
fix_modify AtC fix_flux command
===============================
Syntax
""""""
.. parsed-literal::
fix_modify <AtC fixID> fix_flux <field> <face_set> <value|function>
* AtC fixID = ID of :doc:`fix atc <fix_atc>` instance
* fix_flux = name of the AtC sub-command
* field = field kind name valid for type of physics: *temperature* or *electron_temperature*
* face_set = name of set of element faces
* *value* or *function* = value or name of function followed by its parameters
Examples
""""""""
.. code-block:: LAMMPS
fix_modify AtC fix_flux temperature faceSet 10.0
Description
"""""""""""
Command for fixing normal fluxes e.g. heat_flux. This command only
prescribes the normal component of the physical flux, e.g. heat (energy)
flux. The units are in AtC units, i.e. derived from the LAMMPS length,
time, and mass scales.
Restrictions
""""""""""""
Only normal fluxes (Neumann data) can be prescribed.
Related AtC commands
""""""""""""""""""""
:doc:`fix_modify AtC unfix_flux <atc_unfix_flux>`
Default
"""""""
None.

View File

@ -39,8 +39,8 @@ If boundary atoms are used in conjunction with Eulerian atom maps, the
Eulerian reset frequency must be an integer multiple of the Lammps
reneighbor frequency.
Related AtC Sub-commands
""""""""""""""""""""""""
Related AtC commands
""""""""""""""""""""
- :doc:`fix_modify AtC atom_element_map <atc_atom_element_map>`
- :doc:`fix_modify AtC boundary type <atc_boundary_type>`

View File

@ -0,0 +1,43 @@
.. index:: fix_modify AtC remove_source
fix_modify AtC remove_source command
====================================
Syntax
""""""
.. parsed-literal::
fix_modify <AtC fixID> remove_source <field> <element_set>
* AtC fixID = ID of :doc:`fix atc <fix_atc>` instance
* remove_source = name of the AtC sub-command
* field = field kind name valid for type of physics: *temperature* or *electron_temperature*
* element_set = name of set of elements
Examples
""""""""
.. code-block:: LAMMPS
fix_modify AtC remove_source temperature groupNAME
Description
"""""""""""
Remove a domain source.
Restrictions
""""""""""""
The keyword *all* is reserved and thus not available as element_set name.
Related AtC commands
""""""""""""""""""""
:doc:`fix_modify AtC source <atc_source>`
Default
"""""""
None.

47
doc/src/atc_source.rst Normal file
View File

@ -0,0 +1,47 @@
.. index:: fix_modify AtC source
fix_modify AtC source command
==============================
Syntax
""""""
.. parsed-literal::
fix_modify <AtC fixID> source <field> <element_set> <value|function>
* AtC fixID = ID of :doc:`fix atc <fix_atc>` instance
* source = name of the AtC sub-command
* field = field kind name valid for type of physics: *temperature* or *electron_temperature*
* element_set = name of set of elements
* *value* or *function* = value or name of function followed by its parameters
Examples
""""""""
.. code-block:: LAMMPS
fix_modify AtC source temperature middle temporal_ramp 10.0 0.0
Description
"""""""""""
Add domain sources to the mesh. The units are consistent with LAMMPS's
units for mass, length and time and are defined by the PDE being solved,
e.g. for thermal transfer the balance equation is for energy and source
is energy per time.
Restrictions
""""""""""""
The keyword *all* is reserved and thus not available as element_set name.
Related AtC commands
""""""""""""""""""""
:doc:`fix_modify AtC remove_source <atc_remove_source>`
Default
"""""""
None.

View File

@ -1,6 +1,6 @@
.. index:: fix_modify AtC unfix
fix_modify AtC initial command
fix_modify AtC unfix command
==============================
Syntax

View File

@ -0,0 +1,44 @@
.. index:: fix_modify AtC unfix_flux
fix_modify AtC unfix_flux command
=================================
Syntax
""""""
.. parsed-literal::
fix_modify <AtC fixID> unfix_flux <field> <face_set> <value|function>
* AtC fixID = ID of :doc:`fix atc <fix_atc>` instance
* unfix_flux = name of the AtC sub-command
* field = field kind name valid for type of physics: *temperature* or *electron_temperature*
* face_set = name of set of element faces
Examples
""""""""
.. code-block:: LAMMPS
fix_modify AtC unfix_flux temperature faceSet
Description
"""""""""""
Command for removing prescribed normal fluxes e.g. heat_flux, stress.
Restrictions
""""""""""""
None.
Related AtC commands
""""""""""""""""""""
:doc:`fix_modify AtC fix_flux <atc_fix_flux>`
Default
"""""""
None.

View File

@ -172,17 +172,15 @@ conditions.
* :doc:`fix_modify AtC initial <atc_initial>`
* :doc:`fix_modify AtC fix <atc_fix>`
* :doc:`fix_modify AtC unfix <atc_unfix>`
* `fix_modify AtC fix_flux <USER/atc/man_fix_flux.html>`_
* `fix_modify AtC unfix_flux <USER/atc/man_unfix_flux.html>`_
* `fix_modify AtC source <USER/atc/man_source.html>`_
* `fix_modify AtC remove_source <USER/atc/man_remove_source.html>`_
* :doc:`fix_modify AtC fix_flux <atc_fix_flux>`
* :doc:`fix_modify AtC unfix_flux <atc_unfix_flux>`
* :doc:`fix_modify AtC source <atc_source>`
* :doc:`fix_modify AtC remove_source <atc_remove_source>`
*fix_modify* commands for control and filtering:
* `fix_modify AtC control <USER/atc/man_control.html>`_
* `fix_modify AtC control thermal <USER/atc/man_control_thermal.html>`_
* `fix_modify AtC control thermal correction_max_iterations <USER/atc/man_control_thermal_correction_max_iterations.html>`_
* `fix_modify AtC control momentum <USER/atc/man_control_momentum.html>`_
* :doc:`fix_modify AtC control thermal <atc_control_thermal>`
* :doc:`fix_modify AtC control momentum <atc_control_momentum>`
* `fix_modify AtC control localized_lambda <USER/atc/man_localized_lambda.html>`_
* `fix_modify AtC control lumped_lambda_solve <USER/atc/man_lumped_lambda_solve.html>`_
* `fix_modify AtC control mask_direction <USER/atc/man_mask_direction.html>`_ control