1#! /usr/bin/env python3
2
3from nexus import settings,job,run_project
4from nexus import generate_physical_system
5from nexus import generate_pwscf
6from nexus import generate_pw2qmcpack
7from nexus import generate_qmcpack
8
9settings(
10    pseudo_dir = '../../pseudopotentials',
11    results    = '',
12    sleep      = 3,
13    machine    = 'ws16',
14    )
15
16system = generate_physical_system(
17    units    = 'A',
18    axes     = '''1.785   1.785   0.000
19                  0.000   1.785   1.785
20                  1.785   0.000   1.785''',
21    elem_pos = '''
22               C  0.0000  0.0000  0.0000
23               C  0.8925  0.8925  0.8925
24               ''',
25    tiling   = [[ 1, -1,  1],
26                [ 1,  1, -1],
27                [-1,  1,  1]],
28    kgrid    = (1,1,1),
29    kshift   = (0,0,0),
30    C        = 4,
31    )
32
33scf = generate_pwscf(
34    identifier   = 'scf',
35    path         = 'diamond/scf',
36    job          = job(cores=16,app='pw.x'),
37    input_type   = 'generic',
38    calculation  = 'scf',
39    input_dft    = 'lda',
40    ecutwfc      = 200,
41    conv_thr     = 1e-8,
42    system       = system,
43    pseudos      = ['C.BFD.upf'],
44    kgrid        = (4,4,4),
45    kshift       = (0,0,0),
46    )
47
48nscf = generate_pwscf(
49    identifier   = 'nscf',
50    path         = 'diamond/nscf',
51    job          = job(cores=16,app='pw.x'),
52    input_type   = 'generic',
53    calculation  = 'nscf',
54    input_dft    = 'lda',
55    ecutwfc      = 200,
56    conv_thr     = 1e-8,
57    system       = system,
58    pseudos      = ['C.BFD.upf'],
59    nosym        = True,
60    dependencies = (scf,'charge_density'),
61    )
62
63conv = generate_pw2qmcpack(
64    identifier   = 'conv',
65    path         = 'diamond/nscf',
66    job          = job(cores=16,app='pw2qmcpack.x'),
67    write_psir   = False,
68    dependencies = (nscf,'orbitals'),
69    )
70
71opt = generate_qmcpack(
72    identifier   = 'opt',
73    path         = 'diamond/optJ2',
74    job          = job(cores=16,threads=4,app='qmcpack'),
75    input_type   = 'basic',
76    system       = system,
77    pseudos      = ['C.BFD.xml'],
78    J2           = True,
79    qmc          = 'opt',
80    cycles       = 6,
81    samples      = 51200,
82    dependencies = (conv,'orbitals'),
83    )
84
85qmc = generate_qmcpack(
86    identifier   = 'dmc',
87    path         = 'diamond/dmc',
88    job          = job(cores=16,threads=4,app='qmcpack'),
89    input_type   = 'basic',
90    system       = system,
91    pseudos      = ['C.BFD.xml'],
92    J2           = True,
93    qmc          = 'dmc',
94    vmc_samples  = 400,
95    eq_dmc       = True,
96    timestep     = 0.02,
97    ntimesteps   = 3,
98    dependencies = [(conv,'orbitals'),
99                    (opt,'jastrow')],
100    )
101
102run_project()
103