Skip to content

Feiyang472/dpgk

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DPGK (Deep potential Green-Kubo transport property workflows)

Requirements

DPGK performs simple, short calculations locally (or on the login node), and puts molecular dynamics simulations on the remote machine (or the compute node) via dpdispatcher. Currently, i-pi is required for doing RPMD in the remote environment, and lammps is required for rdf. In the future we might migrate to lammps completely. In addition, thermocepstrum is required for post-analysis.

Installation

Clone this repository and do

pip install -e dpgk

Then, run airinit.sh to initialise airflow and import all the workflows to ~/airflow/dags/.

Include the files in remote_xcutables in your remote bin, and make them executable.

Quick start

To calculate the thermal conductivity and the phonon density of states for your system, first fill in a json file which contains

  1. list of temperatures
  2. number of beads in ring-polymer
  3. time step sizes to test integrator divergence rates
  4. file names of a trained Deep Potential graph, and a initial structure.
{
    "work_base_abspath": "/your/work/path/",
    "temperature_list": [78],
    "n_beads": 32,
    "test_ts": [0.2],
    "inputs":{
        "dp_graph": "graph10_c.pb",
        "initial_state": "init.xyz"
    },
    "machine": {
        "batch_type": "Shell",
        "context_type": "SSHContext",
        "local_root": "/your/work/path/",
        "remote_root": "/tour/remote/root/",
        "remote_profile": {
            "hostname": "xx.xx.xx",
            "username": "user",
            "password": "password"
        }
    },    
    "resources":{
        "number_node": 1,
        "cpu_per_node": 1,
        "gpu_per_node": 1,
        "queue_name": "dpgk_test_0",
        "group_size": 1
    }
}

See dpdispatcher documentation for details of machine and resources specification. You may need source_list to activate the appropriate environment. On machines where this doesn't work, edit the ENVIRONMENT variable at the top of your workflow file.

Start an airflow scheduler

airflow scheduler

and 'trigger' the dpgk_workflow with your parameters.

airflow dags trigger dpgk_workflow --conf $(printf "%s" $(cat YOURJSON.json))

To view your workflow progress on the graphical webserver, try ssh tunnel it on local machine, and then open localhost:8080 in your browser.

airflow webserver --port <PORT>
ssh -L 8080:localhost:<PORT> <REMOTE_USER>@<REMOTE_HOST>

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published