Example: Improves readme template
-# Dataset Example using Fireworks backend
+# Dataset example using the Fireworks backend
-## Setup and Configure
-
-This example assumes you have a install configure to the setup in the
-[fireworks.yaml or openff.yaml conda env](../../devtools/conda-envs).
+This example computes several interaction energies using the Dataset Collection
+using the Fireworks distributed queue manager.
-You effectively need MongoDB and Fireworks installed
+## Setup and Configure
-You will also need to configure your MongoDB to write to location
-you have write access to. The example sets one but you can change
-it to where ever you like.
+Above the base QCFractal installation, this example requires the following
+dependencies:
+ - Psi4 (`conda install psi4 -c psi4`)
+ - fireworks (`pip install fireworks`)
+It is recommend to create a development environment from either the
+[fireworks.yaml or openff.yaml conda envs](../../devtools/conda-envs).
## Example
### Step 1
-Run the MongoDB and QCFractal server in the background or a new window.
-
-We recommend running these commands in separate windows so that you can
-see the logging information of interactions with the server.
+It is recommended to run the MongoDB and QCFractal server in separate windows
+so that you can see the logging information of interactions with the server.
+In production, these are run in the background and their log files can be
+directed to a directory.
```bash
# Make MongoDB Directory and start server
@@ -29,7 +30,7 @@ mkdir -p $MONGOPATH
mongod --dbpath $MONGOPATH
```
-The QCFractal server can be started with a fireworks-queue manager in the
+The QCFractal server can be started with a `fireworks queue-manager` in the
database `qca_fw_testing`. This will automatically create a fireworks queue
with the name `qca_fw_testing_fireworks_queue`.
@@ -39,6 +40,7 @@ qcfractal-server qca_fw_testing --fireworks-manager
### Step 2
+A new Database Collection can be added to the server with several systems to be computed.
Add a new Database of several intermolecular reactions.
This step and following ones should be run in the same window and/or
@@ -49,23 +51,30 @@ python build_database.py
```
### Step 3
-Add new computation to the queue
+Add new computation to the queue:
```bash
python compute_database.py
```
### Step 4
-Execute jobs in the queue:
+Jobs can be executed through canonical Fireworks commands. As we are running
+locally it is recommend to use the "rapidfire" command. Fireworks can also
+interact with a number of Supercomputer and cluster queue managers such as
+Slurm and PBS.
```bash
rlaunch -l fw_lpad.yaml rapidfire
```
+Note that the `fw_lpad.yaml` has been set to the same MongoDB as the fractal server
+and the name has been set to the autogenerated name as described above.
+
### Step 5
-Query data
+Query data:
```bash
python query_database.py
```
+
### Cleanup
You can now stop the Fireworks and MongoDB processes
