.. nrelmat documentation master file, created by sphinx-quickstart on Fri May 17 13:45:57 2013. You can adapt this file completely to your liking, but it should at least contain the root `toctree` directive. .. currentmodule:: pylada NRELMatDB database builder pipeline *********************************** .. graphviz:: digraph nrelmat { //graph [label="NREL MatDB Data Flow", labelloc=t, fontsize=30]; rank=source; legendx [shape=none, margin=0, label=<
NREL MatDB Data Flow
Click any box for details
>]; rankdir = TB; node [color=blue, shape=box, fontsize=11]; edge [fontsize=11]; //URL="index.html"; // default for entire graph wrapUpload [URL="wrapUpload.html", shape=none, margin=0, tooltip="Click for wrapUpload details", label=<
wrapUpload
Find candidate directories
Gather metadata
Use tar to create an archive file
Use scp to copy the file to the archive server
>]; fillDbVasp [URL="fillDbVasp.html", shape=none, margin=0, tooltip="Click for fillDbVasp details", label=<
fillDbVasp
Traverse directory tree
For each dir:
Call readVasp to extract statistics
Add a row to the model table
Call augmentDb to calc additional statistics for the model table
Add a row to the contrib table
>]; augmentDb [URL="augmentDb.html", shape=none, margin=0, tooltip="Click for augmentDb details", label=<
augmentDb
Create derived fields for SQL database
>]; flatDatabase [URL="flatDatabase.html", shape=none, margin=0, tooltip="Click for flat file database details", label=<
Flat file database
Contains compressed copies
of all uploaded files
>]; sqlDatabase [URL="sqlDatabase.html", shape=none, margin=0, tooltip="Click for PostgreSQL database details", label=<
PostgreSQL database
model table: Summary statistics, one row per vasp run
contrib table: Author statistics, one row per upload
>]; webServer [URL="webServer.html", shape=none, margin=0, tooltip="Click for web server details", label=<
Web server
Language: Python
Platform: Pyramid
Template system: Mako
3-D Visualization: WebGL using three.js
>]; legendx -> wrapUpload [style=invis]; wrapUpload -> fillDbVasp fillDbVasp -> flatDatabase fillDbVasp -> sqlDatabase sqlDatabase -> augmentDb -> sqlDatabase sqlDatabase -> webServer flatDatabase -> webServer } .. toctree:: :maxdepth: 1 SQL database overview: Overview of the database system. Flat file database overview: Overview of the database system. Web overview: Overview of the web server system. augmentDb.py: Add additional info to the model table. execMimic.py: Mimic execution for validity testing. fillDbVasp.py: Read files created by wrapUpload and add rows to the model table. queryMatDb.py: Demo query of the NRELMatDB SQL database. readVasp.py: Read and parse an OUTCAR or vasprun.xml file ScanOutcar.py: Extract info from OUTCAR and INCAR files ScanXml.py: Read and parse a vasprun.xml file wrapReceive.py: Receive results sent by wrapUpload.sh wrapUpload.py: Locate, extract, and upload results to the server running wrapReceive.