Skip to content

Commit db2d8fb

Browse files
committed
DOC: Update docs & default input files to be consistent & correct
1 parent 3866b60 commit db2d8fb

File tree

5 files changed

+67
-61
lines changed

5 files changed

+67
-61
lines changed

README.md

Lines changed: 16 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -19,14 +19,14 @@ developed.
1919

2020
## Contents
2121

22-
- [Aether](#aether)
23-
- [Contents](#contents)
24-
- [Quick Start](#quick-start)
25-
- [Dependencies](#dependencies)
26-
- [Getting the Code](#getting-the-code)
27-
- [Compiling \& Running](#compiling--running)
28-
- [Code Manual](#code-manual)
29-
- [Further Documentation](#further-documentation)
22+
- [Contents](#contents)
23+
- [Quick Start](#quick-start)
24+
- [Dependencies](#dependencies)
25+
- [Getting the Code](#getting-the-code)
26+
- [Compiling \& Running](#compiling--running)
27+
- [Inputs](#inputs)
28+
- [Code Manual](#code-manual)
29+
- [Further Documentation](#further-documentation)
3030

3131
## Quick Start
3232

@@ -141,9 +141,16 @@ structure like this:
141141
cd ..
142142
cp -R share/run ./run.test
143143
cd run.test
144-
./aether
144+
mpirun -np 4 ./aether
145145
```
146146

147+
This will run the default configuration of Aether, which requires four MPI processors.
148+
The default grids are `sphere4` and `dipole4` for the neutrals and ions (respectively),
149+
which both require four "root nodes", or MPI workers. To read more about root nodes and
150+
the available grids, please see [this page in the documentation](doc/internals/grid.md).
151+
152+
### Inputs
153+
147154
There are essentially two input files that specify the settings in the code.
148155
When you are in a run directory, they are:
149156

doc/README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ Contents within `doc`:
3232
- [Ensembles](internals/ensembles.md)
3333
- [Indices](internals/indices.md)
3434
- [The Grid](internals/grid.md)
35+
- [Coordinate Systems](internals/coordinates.md)
3536
- [Doxyfile](Doxyfile)
3637
- [README (this page)](README.md)
3738
- [Citations](citations.md)

doc/internals/grid.md

Lines changed: 41 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -18,21 +18,21 @@ again, 16 processors are needed, etc. However, in the altitude/radial direction,
1818
the number of points that are specified in the aether.json is unchanged, as it
1919
does not rely on the number of processors used.
2020

21-
- [Grids in Aether](#grids-in-aether)
22-
- [Grid Types Explained](#grid-types-explained)
23-
- [Grid Shapes Explained](#grid-shapes-explained)
24-
- [TL;DR](#tldr)
25-
- [The Sphere Grid](#the-sphere-grid)
26-
- [The Cubesphere Grid](#the-cubesphere-grid)
27-
- [The Dipole Grid](#the-dipole-grid)
28-
- [Inputs:](#inputs)
29-
- [Root Nodes](#root-nodes)
30-
- [Sphere](#sphere)
31-
- [Cubesphere](#cubesphere)
32-
- [Specifying Root Nodes](#specifying-root-nodes)
33-
- [Specifying the Grid](#specifying-the-grid)
34-
- [Horizontal Resolution](#horizontal-resolution)
35-
- [Vertical Resolution](#vertical-resolution)
21+
- [Grid Types Explained](#grid-types-explained)
22+
- [Grid Shapes Explained](#grid-shapes-explained)
23+
- [TL;DR](#tldr)
24+
- [The Sphere Grid](#the-sphere-grid)
25+
- [The Cubesphere Grid](#the-cubesphere-grid)
26+
- [The Dipole Grid](#the-dipole-grid)
27+
- [Inputs:](#inputs)
28+
- [Root Nodes](#root-nodes)
29+
- [Sphere](#sphere)
30+
- [Cubesphere](#cubesphere)
31+
- [Dipole](#dipole)
32+
- [Specifying Root Nodes](#specifying-root-nodes)
33+
- [Specifying the Grid](#specifying-the-grid)
34+
- [Horizontal Resolution](#horizontal-resolution)
35+
- [Vertical Resolution](#vertical-resolution)
3636

3737
## Grid Types Explained
3838

@@ -77,8 +77,8 @@ system can simulate a sub-region of the Earth if desired.
7777

7878
The user needs to specify the shape of the grid, which specifies the grid shape
7979
and the number of root nodes. Shapes include: `sphere` (1 root node), `sphere6`
80-
(6 root nodes), `cubesphere` (6 root nodes), `dipole` (1 root node), `dipole4`
81-
(4 root nodes), and `dipole6` (6 root nodes).
80+
(6 root nodes), `cubesphere` (6 root nodes),`dipole4` (4 root nodes), and
81+
`dipole6` (6 root nodes).
8282

8383
### The Sphere Grid
8484

@@ -118,13 +118,6 @@ Each fieldline starts at the lowest modeled altitude
118118
and curves towards the equator. In the northern hemisphere, this means that the
119119
fieldlines curve south, while in the southern hemisphere they curve north.
120120

121-
The dipole grid requires >4 root nodes which ensures the coordinates are
122-
mutually orthogonal. The available shapes are `dipole4` and `dipole6`, for
123-
compatibility with the neutral grid being a sphere or cubesphere. In both cases,
124-
each node the entire longitude range and given a portion of the latitude range.
125-
So in the case of `dipole4`, the four nodes are each given 1/4 of the available
126-
latitudes and all of the longitudes.
127-
128121
The dipole grid is evenly spaced in **invariant latitude** (where the field line
129122
passes the minumum altitude) and **q** (the dipole coordinate
130123
specifying how far along the field line a point lies). Q is dimensionless and defined
@@ -236,6 +229,20 @@ left-right direction and the up-down direction. For a cubesphere grid, the
236229
number of processors that can be used to specify the grid are then: 6, 24 (6
237230
\* 4), 96 (6 \* 4^2), 384 (6 \* 4^3), etc.
238231

232+
#### Dipole
233+
234+
The dipole grid requires >4 root nodes to ensure the coordinates are
235+
mutually orthogonal. The available shapes are `dipole4` and `dipole6`, for
236+
compatibility with the neutral grid being a sphere or cubesphere. In both cases,
237+
each root node covers the entire longitude range and given a portion of the latitude
238+
range. So in the case of `dipole4`, the four nodes each cover 1/4 of the available
239+
latitudes and all of the longitudes. The available latitudes are scaled to the latitude
240+
limits specified in the input file, so the divisions will not be at $\pm45^\circ$ and
241+
$0^\circ$ latitude, rather will be offset to evenly divide the entire range across the
242+
blocks. Dividing the root nodes works identically to the spherical grid, for example
243+
`dipole4` can be used with 16 MPI tasks and each root node is divided into four blocks,
244+
forming a 2x2 grid.
245+
239246
#### Specifying Root Nodes
240247

241248
The root nodes indicate the span of the grid that they cover. This is done in a
@@ -365,27 +372,17 @@ this is the number of points along the dipole flux tube.
365372
```
366373

367374
```json
368-
"ionGrid" : {
369-
"Shape" : "dipole",
370-
"LatRange" : [-90.0, 90.0],
371-
"nLatsPerBlock" : 18,
372-
"LonRange" : [0.0, 360.0],
373-
"nLonsPerBlock" : 36,
374-
"nAlts" : 200,
375-
"MinAlt" : 80.0,
376-
"MinApex" : 120.0,
377-
"MaxAlt" : 5000.0},
375+
"ionGrid": {
376+
"Shape": "dipole4",
377+
"nLonsPerBlock": 36,
378+
"nLatsPerBlock": 18,
379+
"nAlts": 100,
380+
"LatRange": [10, 80],
381+
"AltRange": [80.0, 1000],
382+
"LonRange": [0.0, 360.0]},
378383
```
379384

380385
The dipole grid has both open field-lines and closed field-lines. The closed
381386
field-lines are near the equator, while the open field-lines are near the poles.
382-
The variable `MaxAlt` sets where this differentiation occurs - if the apex
383-
height of the field-line is above this altitude, then it is open. All
384-
field-lines in Aether start at the `MinAlt` and rise along a dipolar shape until
385-
they either encounter the equatorial plane or `MaxAlt`. In the south, these
386-
field-lines tilt towards the north (from `MinAlt` to `MaxAlt`) and in the north,
387-
the field-lines tilt towards the south (from `MinAlt` to `MaxAlt`).
388-
389-
- The spacing is uniform in longitude.
390-
- The spacing along the field-line has non-uniform spacing.
391-
- The spacing in latitude is non-uniform.
387+
The variable `MaxAlt` sets where the differentiation occurs - if the apex
388+
height of all field-lines on this block are above this altitude, then it is open.

share/run/UA/inputs/defaults.json

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -81,13 +81,14 @@
8181
"IsUniformAlt" : true,
8282
"AltFile" : ""},
8383

84-
"ionGrid": {
85-
"Shape": "dipole4",
86-
"nLonsPerBlock": 14,
87-
"nLatsPerBlock" : 20,
88-
"nAlts":30,
89-
"AltRange":[80,1500],
90-
"LatRange":[7, 87]},
84+
"ionGrid": {
85+
"Shape": "dipole4",
86+
"nLonsPerBlock": 36,
87+
"nLatsPerBlock": 18,
88+
"nAlts": 100,
89+
"LatRange": [10, 80],
90+
"AltRange": [80.0, 1000],
91+
"LonRange": [0.0, 360.0]},
9192

9293
"Oblate" : {
9394
"isOblate" : false,

share/run/aether.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
"nAlts": 100,
2828
"LatRange": [10, 80],
2929
"AltRange": [80.0, 1000],
30-
"LonRange": [0.0, 360.0] },
30+
"LonRange": [0.0, 360.0]},
3131

3232
"OmniwebFiles" : ["UA/inputs/omni_20110319.txt"],
3333

0 commit comments

Comments
 (0)