You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
EXP is a Basis Function Expansion C++ library and Python package for running N-body galactic simulations and dynamical discovery.
7
8
8
9
## Repo organization
9
10
10
-
|Files| Description |
11
+
|Directory| Description |
11
12
| --- | --- |
12
-
|README | This file|
13
-
|TODO | Wish list of features to add, things to fix, big and small|
14
-
|include | Include file for all common classes|
15
-
|src | Source for nbody code |
13
+
|Paper | The JOSS paper for EXP|
14
+
|cmake | Helpers for `cmake` installation process|
15
+
|doc | The doxygen documentation for EXP|
16
+
|expui | Classes used by Python wrappers and by the nbody code and other standalone utilities for coefficient IO support.|
16
17
| exputil | The main EXP function and class library used by both pyEXP and EXP |
17
-
| coefs | Source for standalone classes used by Python wrappers and other standalone utilities |
18
+
| extern | The directory for external code needed for installation |
19
+
| include | Include file for all common classes |
18
20
| pyEXP | Source for Python wrappers |
21
+
| src | Source for nbody code |
22
+
| tests | An assortment of automatic tests for EXP |
19
23
| utils | Older but still useful standalone C++ utilities |
20
24
21
25
## Version reporting
22
26
23
27
EXP automatically stashes its compile time, git branch, and git commit
24
-
hash when `make` is invoked in the src directory. You can see this
28
+
hash when `make` is invoked in the src directory (e.g. as part of the `cmake` installation). You can see this info using `pyEXP` using the `pyEXP.util.getVersionInfo()` command. You can also see this
25
29
info using the -v flag, i.e. `mpirun -np 1 exp -v` or `exp -v`. Note:
26
30
some MPI implementations require the MPI-aware executable to be run
27
31
using 'mpirun'. Some recent HPC systems using `slurm` require the use
@@ -30,7 +34,7 @@ resource request.
30
34
31
35
## Compile hints
32
36
33
-
See INSTALL.md for a brief synposis.
37
+
See INSTALL.md for a brief synposis and pointers to more detailed information.
34
38
35
39
A few quick additional notes. By default, both the n-body code and the
36
40
Python bindings, the pyEXP interface, will be compiled by default.
@@ -54,7 +58,7 @@ We are developing two repositories of examples and tutorials:
54
58
| EXP-examples | Each subdirectory contains a full set of body files and configurations to run EXP with with model galaxy |
55
59
| pyEXP-examples | Tutorials and example workflows for a variety of envisioned use cases |
56
60
57
-
Both of these are available from the origin as EXP.
61
+
Both of these are available from the [origin as EXP](https://github.com/EXP-code).
58
62
59
63
## pyEXP
60
64
@@ -94,11 +98,9 @@ To provide some context, suppose you want to read some snapshots, make some coef
94
98
5. 'newcoefs' and 'disk' can then be passed to the FieldGenerator to provide density, potential, force fields, etc. for the each principal signal
95
99
96
100
This is only one example of many possible uses. There are many
97
-
variants to this work flow, of course, and I expect that you will
101
+
variants to this work flow, of course, and we expect that you will
98
102
invent some interesting ones.
99
103
100
104
## Citation
101
105
102
-
If you use EXP in your research, please cite the following paper:
If you use EXP in your research, please cite the [JOSS paper](https://doi.org/10.21105/joss.07302), and consider including other papers from the list in CITATIONS.bib.
0 commit comments