Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Intro and Grid edits #17

Merged
merged 2 commits into from
Jul 8, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 17 additions & 7 deletions sphinx/source/Grid.rst
Original file line number Diff line number Diff line change
Expand Up @@ -404,18 +404,28 @@ Uniform Grid
------------

The Uniform Grid has the same resolution in all the blocks throughout
the domain, and each processor has exactly one block. The uniform grid
can operate in either of two modes: fixed block size (FIXEDBLOCKSIZE)
mode, and non-fixed block size (NONFIXEDBLOCKSIZE) mode. The default
fixed block size grid is statically defined at compile time and can
therefore take advantage of compile-time optimizations. The non-fixed
block size version uses dynamic memory allocation of grid variables.
the domain, and each processor has exactly one block.

.. container:: flashtip

In FLASH, the uniform grid
can operate in either of two modes: fixed block size (FIXEDBLOCKSIZE)
mode, and non-fixed block size (NONFIXEDBLOCKSIZE) mode. The default
fixed block size grid is statically defined at compile time and can
therefore take advantage of compile-time optimizations. The non-fixed
block size version uses dynamic memory allocation of grid variables.
|flashx| currently only supports the Uniform Grid in NONFIXEDBLOCKSIZE
mode (whereas the other Grid implementations in |flashx| operate in
FIXEDBLOCKSIZE mode).

FIXEDBLOCKSIZE Mode
~~~~~~~~~~~~~~~~~~~

NOTE THAT THIS MODE IS CURRENTLY NOT IMPLEMENTED IN |flashx|. The remainder
of this section thus is only for historical information.

*FIXEDBLOCKSIZE* mode, also called static mode, is the default for the
uniform grid. In this mode, the block size is specified at compile time
uniform grid in FLASH. In this mode, the block size is specified at compile time
as NXB\ :math:`\times`\ NYB\ :math:`\times`\ NZB. These
variables default to :math:`8` if the dimension is defined and :math:`1`
otherwise – *e.g.* for a two-dimensional simulation, the defaults are
Expand Down
2 changes: 1 addition & 1 deletion sphinx/source/application_use.rst
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
Application's Use of Orcha
======================

In this section we desribe the end-to-end pipeline of how an
In this section we describe the end-to-end pipeline of how an
application can use |orcha|. At first glance it may seem intimidating
because there are several steps involved in the configurations
process, however, the steps are many fewer in terms of what the users
Expand Down
2 changes: 1 addition & 1 deletion sphinx/source/disclaimers.rst
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ are listed in below.
**Infrastructure**

+---------------+--------------------------+----------------+
| Setup too | Klaus Weide/Younjun Lee | mostly current |
| Setup tool | Klaus Weide/Younjun Lee | mostly current |
+---------------+--------------------------+----------------+
| Grid | Klaus Weide/Anshu Dubey | mostly current |
+---------------+--------------------------+----------------+
Expand Down
20 changes: 10 additions & 10 deletions sphinx/source/intro.rst
Original file line number Diff line number Diff line change
Expand Up @@ -5,33 +5,33 @@
Introduction
============

The |flashx| code is a component-based software system for simulation of
multiphysics applications formulated largely as a collection of partial-
and ordinary- differential equations as well as algebraic equations. The
The |flashx| code is a component-based software system for building
multiphysics simulation applications that are formulated largely as a collection of partial
and ordinary differential equations as well as algebraic equations. The
maintained code components are written in a combination of high level
languages such as Fortran, C and C++. |flashx| is accompanied by
several tools written in python or C++ that provide configurability
several tools written in Python or C++ that provide configurability
and performance portability to the code. The distribution includes
several existing application configurations, and tests for exercising
several existing application configurations and tests for exercising
these configurations. A unit-test framework is also embedded in the
code. The code uses the Message-Passing Interface (MPI) library
communication between nodes, though more than
for communication between compute nodes, though more than
one MPI rank can also be placed on a node. HDF5 is the default mode for
IO. |flashx| has three interchangeable discretization grids: a Uniform
Grid, a oct-tree based adaptive grid using the |paramesh| library, and
Grid, an oct-tree based adaptive grid using the |paramesh| library, and
a block-structured adaptive grid using |amrex| library, which also mimics
an oct-tree-like layout for use in |flashx|.

The precursor of |flashx| is FLASH, which was developed at the
University of Chicago, and is now available from University of
Rochester. |flashx| has been architected from the outset to be
compatible with increasing heterogeneity of both the platforms and the
solvers within the code. Flash-X distribution
solvers within the code. The Flash-X distribution
includes solvers for compressible and incompressible fluids, and several other
solvers needed for astrophysics and fluid-structure interaction
applications. Not all physics and/or general solvers from FLASH have been
migrated to |flashx|, however, the code itself has transitioned to open
migrated to |flashx|. However, the code that is now part of |flashx| has transitioned to open
development and community based governance. The expectation is that
the code will grow with community contributions. Additionally, some
external solvers can be included as add-ons in configuration of applications
external solvers can be included as add-ons in the configuration of applications,
because those solvers have been designed to be compatible with |flashx|.
2 changes: 1 addition & 1 deletion sphinx/source/namingConventions.rst
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ Naming Conventions
remaining part of the name is lowercase and all subsequent words are
capitalized. For example, Grid_fillGuardcells, Driver_getDt} etc

**Private UnitMain funtions**
**Private UnitMain functions**
The private functions are named un_routineName, where *un* stands for
a short string (usually 2 or 3 letters) derived from the unit name.
For example gr_createDomain is a private function in the GridMain
Expand Down
2 changes: 1 addition & 1 deletion sphinx/source/quickstart.rst
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ Quick Start

This chapter describes how to get up-and-running quickly with |flashx|
with an example simulation, the Sedov explosion. We explain how to
configure a problem, build it, run it, and examine the output using IDL.
configure a problem, build it, run it, and examine the output.

System requirements
-------------------
Expand Down
Loading