Repository: AMReX-Codes/amrex — pull request #2583 (cpp)
Title: Update locations for tutorials and minor formatting.

## Summary
Update remaining locations for tutorials referenced in the docs. 

## Additional background
Follow up to #2576
## Checklist

The proposed changes:
- [ ] fix a bug or incorrect behavior in AMReX
- [ ] add new capabilities to AMReX
- [ ] changes answers in the test suite to more than roundoff level
- [ ] are likely to significantly affect the results of downstream AMReX users
- [x] include documentation in the code and/or rst files, if appropriate


Resolved issues:
title: Update locations from `amrex/Tutorials`
body: ## Summary
Many tutorials are listed as residing at `amrex/Tutorials/...`. They have been updated to their new
location at `amrex-tutorials/ExampleCodes/...`.

## Additional background
The updated locations cause straightforward changes to the Catalyst and Libsim tutorials in Visualizations.rst (line 901 and 927). I made these changes but I did not retest the tutorials. I'll put this on my list, and update if any changes are necessary. 

## Checklist

The proposed changes:
- [ ] fix a bug or incorrect behavior in AMReX
- [ ] add new capabilities to AMReX
- [ ] changes answers in the test suite to more than roundoff level
- [ ] are likely to significantly affect the results of downstream AMReX users
- [x] include documentation in the code and/or rst files, if appropriate


Hints:

Fix patch:
diff --git a/Docs/sphinx_documentation/source/Fortran.rst b/Docs/sphinx_documentation/source/Fortran.rst
index cd613bd6d85..ddfcd755d54 100644
--- a/Docs/sphinx_documentation/source/Fortran.rst
+++ b/Docs/sphinx_documentation/source/Fortran.rst
@@ -384,7 +384,7 @@ interfaces:
         character(c_char), intent(in), value :: tagval, clearval
       end subroutine amrex_error_est_proc
 
-``Tutorials/Amr/Advection_F/Source/my_amr_mod.F90`` shows an
+``amrex-tutorials/ExampleCodes/FortranInterface/Advection_F/Source/my_amr_mod.F90`` shows an
 example of the setup process. The user provided
 :fortran:`procedure(amrex_error_est_proc)` has a tags argument that
 is of type :fortran:`c_ptr` and its value is a pointer to a
@@ -400,7 +400,7 @@ The module :fortran:`amrex_fillpatch_module` provides interface to
 C++ functions :cpp:`FillPatchSinglelevel` and :cpp:`FillPatchTwoLevels`. To use
 it, the application code needs to provide procedures for interpolation and
 filling physical boundaries.  See
-``Tutorials/Amr/Advection_F/Source/fillpatch_mod.F90`` for an example.
+``amrex-tutorials/ExampleCodes/FortranInterface/Advection_F/Source/fillpatch_mod.F90`` for an example.
 
 Module :fortran:`amrex_fluxregister_module` provides interface to
 :cpp:`FluxRegister` (see the section on :ref:`sec:amrcore:fluxreg`). Its usage
@@ -418,7 +418,7 @@ between levels. Therefore, grids in AMReX in general cannot be represented by
 trees. Nevertheless, octree type grids are supported via Fortran interface,
 because grids are more general than octree grids. A tutorial example using
 amrex_octree_module ( ``amrex/Src/F_Interfaces/Octree/AMReX_octree_mod.f90``) is
-available at ``amrex-tutorials/Amr/Advection_octree_F/``. Procedures
+available at ``amrex-tutorials/ExampleCodes/FortranInterface/Advection_F/Advection_octree_F/``. Procedures
 :fortran:`amrex_octree_init` and :fortran:`amrex_octree_finalize` must be
 called as follows,
 
diff --git a/Docs/sphinx_documentation/source/GPU.rst b/Docs/sphinx_documentation/source/GPU.rst
index 37bd255073f..7c8863c2c3c 100644
--- a/Docs/sphinx_documentation/source/GPU.rst
+++ b/Docs/sphinx_documentation/source/GPU.rst
@@ -158,8 +158,8 @@ For example, ``COMP=pgi`` alone will compile C/C++ codes with NVCC/GCC
 and Fortran codes with PGI, and link with PGI.  Using ``COMP=pgi`` and
 ``NVCC_HOST_COMP=pgi`` will compile C/C++ codes with PGI and NVCC/PGI.
 
-You can use ``Tutorials/Basic/HelloWorld_C`` to test your programming
-environment.  For example, building with:
+You can use ``amrex-tutorials/ExampleCodes/Basic/HelloWorld_C/``
+to test your programming environment.  For example, building with:
 
 .. highlight:: console
 
diff --git a/Docs/sphinx_documentation/source/GettingStarted.rst b/Docs/sphinx_documentation/source/GettingStarted.rst
index 05af8292561..ba819cb2c99 100644
--- a/Docs/sphinx_documentation/source/GettingStarted.rst
+++ b/Docs/sphinx_documentation/source/GettingStarted.rst
@@ -48,13 +48,13 @@ AMReX.H). All AMReX C++ functions are in the :cpp:`amrex` namespace.
 Building the Code
 -----------------
 
-You build the code in the ``amrex-tutorials/Tutorials/Basic/HelloWorld_C/`` directory.
+You build the code in the ``amrex-tutorials/ExampleCodes/Basic/HelloWorld_C/`` directory.
 Typing ``make`` will start the compilation process and result in an executable
 named ``main3d.gnu.DEBUG.ex``. The name shows that the GNU compiler with debug
 options set by AMReX is used.  It also shows that the executable is built for
 3D. Although this simple example code is dimension independent, dimensionality
 does matter for all non-trivial examples. The build process can be adjusted by
-modifying the ``amrex-tutorials/Tutorials/Basic/HelloWorld_C/GNUmakefile`` file.  More
+modifying the ``amrex-tutorials/ExampleCodes/Basic/HelloWorld_C/GNUmakefile`` file.  More
 details on how to build AMReX can be found in :ref:`Chap:BuildingAMReX`.
 
 Running the Code
diff --git a/Docs/sphinx_documentation/source/LinearSolvers.rst b/Docs/sphinx_documentation/source/LinearSolvers.rst
index a68336a200a..6a08c0dc5a7 100644
--- a/Docs/sphinx_documentation/source/LinearSolvers.rst
+++ b/Docs/sphinx_documentation/source/LinearSolvers.rst
@@ -676,23 +676,23 @@ An example (implemented in the ``MultiComponent`` tutorial) might be:
   .. _fig::refluxfreecoarsefine:
 
   .. figure:: ./LinearSolvers/refluxfreecoarsefine.png
-      :height: 2cm
-      :align: center
+     :height: 4cm
+     :align: center
 
-      : Reflux-free coarse-fine boundary update.
-      Level 2 ghost nodes (small dark blue) are interpolated from coarse boundary.
-      Level 1 ghost nodes are updated during the relaxation along with all the other interior fine nodes.
-      Coarse nodes (large blue) on the coarse/fine boundary are updated by restricting with interior nodes
-      and the first level of ghost nodes.
-      Coarse nodes underneath level 2 ghost nodes are not updated.
-      The remaining coarse nodes are updates by restriction.
+     Reflux-free coarse-fine boundary update.
+     Level 2 ghost nodes (small dark blue) are interpolated from coarse boundary.
+     Level 1 ghost nodes are updated during the relaxation along with all the other interior fine nodes.
+     Coarse nodes (large blue) on the coarse/fine boundary are updated by restricting with interior nodes
+     and the first level of ghost nodes.
+     Coarse nodes underneath level 2 ghost nodes are not updated.
+     The remaining coarse nodes are updates by restriction.
 
   The MC nodal operator can inherit from the ``MCNodeLinOp`` class.
   ``Fapply``, ``Fsmooth``, and ``Fflux`` must update level 1 ghost nodes that are inside the domain.
   `interpolation` and `restriction` can be implemented as usual.
   `reflux` is a straightforward restriction from fine to coarse, using level 1 ghost nodes for restriction as described above.
 
-  See ``Tutorials/LinearSolvers/MultiComponent`` for a complete working example.
+See ``amrex-tutorials/ExampleCodes/LinearSolvers/MultiComponent`` for a complete working example.
 
 .. solver reuse
 
diff --git a/Docs/sphinx_documentation/source/Visualization.rst b/Docs/sphinx_documentation/source/Visualization.rst
index 6de66a045f4..27a058ae5d0 100644
--- a/Docs/sphinx_documentation/source/Visualization.rst
+++ b/Docs/sphinx_documentation/source/Visualization.rst
@@ -426,7 +426,7 @@ we will assume a single vector has been stored as three separate variables,
    by its magnitude. To do this, look under the Scale heading, select the
    vector value as the Scale Array and select Scale by Magnitude.
 
-   Two adjust the number and location of vectors displayed, one may alter the
+   To adjust the number and location of vectors displayed, one may alter the
    settings under the Masking heading.
 
 .. figure:: ./Visualization/ParaView_vectorfield.png


Test patch:
diff --git a/Docs/sphinx_documentation/source/Testing.rst b/Docs/sphinx_documentation/source/Testing.rst
index 573ed9a3aa8..b7e32c9477b 100644
--- a/Docs/sphinx_documentation/source/Testing.rst
+++ b/Docs/sphinx_documentation/source/Testing.rst
@@ -13,7 +13,7 @@ quickly on every commit. For more extensive testing, we rely on the nightly regr
 Nightly Regression Testing
 ==========================
 
-Each night, we automically run a suite of tests, both on AMReX itself, and on a most of the major
+Each night, we automatically run a suite of tests, both on AMReX itself, and on a most of the major
 application codes that use it as a framework. We use an in-house test runner script to manage this
 operation, originally developed by Michael Zingale for the Castro code, and later expanded to other
 application codes as well. The results for each night are collected and stored on a web page; see
@@ -23,13 +23,15 @@ Running the test suite locally
 ==============================
 
 The test suite is mostly used internally by AMReX developers. However,
-f you are making a pull request to AMReX, it can be useful to run the test suite
-on your local machine, to reduce the liklihood that your changes break some existing functionality.
-To run the test suite on locally, you must first obtain a copy of the test runner source, available
+if you are making a pull request to AMReX, it can be useful to run the test suite
+on your local machine to reduce the liklihood that your changes break some existing functionality.
+To run the test suite locally, you must first obtain a copy of the test runner source, available
 on Github here: https://github.com/AMReX-Codes/regression_testing. The test runner requires Python
-version 2.7 or greater.
+version 2.7 or greater. Additional information on the test suite software can be found at,
+https://amrex-codes.github.io/regression_testing/.
 
-Next, you need a configuration file that defines which tests to run, which amrex repository to test,
+After obtaining the code, you will need a configuration file that defines which tests to run, which
+amrex repository to test,
 which branch to use, etc. A sample configuration file for AMReX is distributed with the amrex source
 code at :cpp:`amrex/Tools/RegressionTesting/AMReX-tests.ini`. You will need to modify a few of the entries
 to, for example, point the test runner to the clone of amrex on your local machine. Entries you will
@@ -56,24 +58,24 @@ The test runner is a Python script and can be invoked like so:
 
 ::
 
-   python regtest.py <options> AMReX-Tests.ini
+   python regtest.py <options> AMReX-tests.ini
 
 Before you can use it, you must first generate a set of "benchmarks" - i.e. known "good" answers to the
 tests that will be run. If you are testing a pull request, you can generate these by running the script
-with the a recent version of the :cpp:`development` branch of AMReX. You can generate the benchmarks like so:
+with a recent version of the :cpp:`development` branch of AMReX. You can generate the benchmarks like so:
 
 ::
 
-   python regtest.py --make_benchmarks 'generating initial benchmarks' AMReX-Tests.ini
+   python regtest.py --make_benchmarks 'generating initial benchmarks' AMReX-tests.ini
 
-Once that is finished, you can switch over to the branch you want to test in :cpp:`AMReX-Tests.ini`, and then
+Once that is finished, you can switch over to the branch you want to test in :cpp:`AMReX-tests.ini`, and then
 re-run the script without the :cpp:`--make_benchmarks` option:
 
 ::
 
-   python regtest.py --make_benchmarks 'generating initial benchmarks' AMReX-Tests.ini
+   python regtest.py --make_benchmarks 'generating initial benchmarks' AMReX-tests.ini
 
-The script will generate a set of html pages in the directory specified in your :cpp:`AMReX-Tests.ini`
+The script will generate a set of html pages in the directory specified in your :cpp:`AMReX-tests.ini`
 file that you can examine using the browser of your choice.
 
 For a complete set of script options, run
@@ -86,25 +88,25 @@ A particularly useful option lets you run just a subset of the complete test sui
 
 ::
 
-   python regtest.py --single_test <TestName> AMReX-Tests.ini
+   python regtest.py --single_test <TestName> AMReX-tests.ini
 
 To run an enumerated list of tests, do:
 
 ::
 
-   python regtest.py --tests '<TestName1> <TestName2> <TestName3>' AMReX-Tests.ini
+   python regtest.py --tests '<TestName1> <TestName2> <TestName3>' AMReX-tests.ini
 
 
 Adding a new test
 =================
 
-New tests can be added to the suite by modifying the :cpp:`AMReX-Tests.ini` file. The easiest thing to
+New tests can be added to the suite by modifying the :cpp:`AMReX-tests.ini` file. The easiest thing to
 do is start from an existing test and modify it. For example, this entry:
 
 ::
 
    [MLMG_FI_PoisCom]
-   buildDir = Tutorials/LinearSolvers/ABecLaplacian_F
+   buildDir = Tests/LinearSolvers/ABecLaplacian_F
    inputFile = inputs-rt-poisson-com
    dim = 3
    restartTest = 0