Пример #1
0
def get_quantum_package_sim(**kwargs):
    from physical_system import generate_physical_system
    from machines import job
    from quantum_package import QuantumPackage,generate_quantum_package

    QuantumPackage.qprc = ''

    system = generate_physical_system(
        elem_pos = '''
            O  0.000000  0.000000  0.000000 
            H  0.000000  0.757160  0.586260
            H  0.000000  0.757160 -0.586260
            ''',
        )

    sim = generate_quantum_package(
        job      = job(machine='ws1',cores=1),
        system   = system,
        prefix   = 'h2o',
        run_type = 'scf',
        **kwargs
        )

    assert(isinstance(sim,QuantumPackage))
    
    return sim
Пример #2
0
def get_pwscf_sim(type='scf'):
    from nexus_base import nexus_core
    from machines import job
    from pwscf import Pwscf,generate_pwscf

    nexus_core.runs = ''

    sim = None

    if type=='scf':
        sim = generate_pwscf(
            identifier   = 'scf',
            path         = 'scf',
            job          = job(machine='ws1',cores=1),
            input_type   = 'generic',
            calculation  = 'scf',
            input_dft    = 'lda', 
            ecutwfc      = 200,   
            conv_thr     = 1e-8, 
            nosym        = True,
            wf_collect   = True,
            system       = get_system(),
            pseudos      = ['C.BFD.upf'], 
            nogamma      = True,
            )
    else:
        failed()
    #end if

    assert(sim is not None)
    assert(isinstance(sim,Pwscf))

    return sim
Пример #3
0
def get_gamess_sim(type='rhf'):
    from machines import job
    from gamess import Gamess, generate_gamess, GamessInput
    from test_gamess_input import get_files

    sim = None

    Gamess.ericfmt = ''

    files = get_files()

    if type == 'rhf':
        gi_input = GamessInput(files['rhf.inp'])

        sim = generate_gamess(
            identifier='rhf',
            path='rhf',
            job=job(machine='ws1', cores=1),
            input=gi_input,
        )
    else:
        failed()
    #end if

    assert (sim is not None)
    assert (isinstance(sim, Gamess))

    return sim
Пример #4
0
def test_minimal_init():
    from machines import job
    from vasp import Vasp, generate_vasp

    sim = generate_vasp(job=job(machine='ws1', cores=1), )

    assert (isinstance(sim, Vasp))

    clear_all_sims()
Пример #5
0
def get_pyscf_to_afqmc_sim(**kwargs):
    from machines import job
    from qmcpack_converters import PyscfToAfqmc, generate_pyscf_to_afqmc

    sim = generate_pyscf_to_afqmc(job=job(machine='ws1', cores=1), **kwargs)

    assert (isinstance(sim, PyscfToAfqmc))

    return sim
Пример #6
0
def test_pyscf_to_afqmc_minimal_init():
    from machines import job
    from qmcpack_converters import PyscfToAfqmc, generate_pyscf_to_afqmc

    sim = generate_pyscf_to_afqmc(job=job(machine='ws1', cores=1), )

    assert (isinstance(sim, PyscfToAfqmc))

    clear_all_sims()
Пример #7
0
def get_pyscf_sim(**kwargs):
    from machines import job
    from pyscf_sim import Pyscf, generate_pyscf

    sim = generate_pyscf(job=job(machine='ws1', cores=1), **kwargs)

    assert (isinstance(sim, Pyscf))

    return sim
Пример #8
0
def test_pw2qmcpack_minimal_init():
    from machines import job
    from qmcpack_converters import Pw2qmcpack, generate_pw2qmcpack

    sim = generate_pw2qmcpack(job=job(machine='ws1', cores=1), )

    assert (isinstance(sim, Pw2qmcpack))

    clear_all_sims()
Пример #9
0
def get_pw2qmcpack_sim(**kwargs):
    from machines import job
    from qmcpack_converters import Pw2qmcpack, generate_pw2qmcpack

    sim = generate_pw2qmcpack(job=job(machine='ws1', cores=1), **kwargs)

    assert (isinstance(sim, Pw2qmcpack))

    return sim
Пример #10
0
def test_minimal_init():
    from machines import job
    from pyscf_sim import Pyscf, generate_pyscf

    sim = generate_pyscf(job=job(machine='ws1', cores=1), )

    assert (isinstance(sim, Pyscf))

    clear_all_sims()
Пример #11
0
def test_minimal_init():
    from machines import job

    for cls,gen in get_class_generators():
        sim = gen(job=job(machine='ws1',cores=1))
        assert(isinstance(sim,cls))
    #end for

    clear_all_sims()
Пример #12
0
def get_convert4qmc_sim(**kwargs):
    from machines import job
    from qmcpack_converters import Convert4qmc, generate_convert4qmc

    sim = generate_convert4qmc(job=job(machine='ws1', cores=1), **kwargs)

    assert (isinstance(sim, Convert4qmc))

    return sim
Пример #13
0
def test_check_result():
    from machines import job

    for cls,gen in get_class_generators():
        sim = gen(job=job(machine='ws1',cores=1))
        assert(isinstance(sim,cls))
        assert(not sim.check_result('anything',None))
    #end for

    clear_all_sims()
Пример #14
0
def test_minimal_init():
    from machines import job
    from qmcpack import Qmcpack, generate_qmcpack

    sim = generate_qmcpack(
        job=job(machine='ws1', cores=1),
        system=get_system(),
    )

    assert (isinstance(sim, Qmcpack))

    sim = generate_qmcpack(
        identifier='afqmc',
        job=job(machine='ws1', cores=1),
        input_type='basic_afqmc',
    )

    assert (isinstance(sim, Qmcpack))

    clear_all_sims()
Пример #15
0
def test_minimal_init():
    from machines import job
    from gamess import Gamess, generate_gamess

    Gamess.ericfmt = ''

    sim = generate_gamess(job=job(machine='ws1', cores=1), )

    assert (isinstance(sim, Gamess))

    clear_all_sims()
Пример #16
0
def test_minimal_init():
    from machines import job
    from rmg import Rmg,generate_rmg

    sim = generate_rmg(
        job    = job(machine='ws1',cores=1),
        )

    assert(isinstance(sim,Rmg))

    clear_all_sims()
Пример #17
0
def test_check_sim_status():
    from machines import job

    for cls,gen in get_class_generators():
        sim = gen(job=job(machine='ws1',cores=1))
        assert(isinstance(sim,cls))
        sim.check_sim_status()
        assert(sim.finished)
        assert(not sim.failed)
    #end for

    clear_all_sims()
Пример #18
0
def test_minimal_init():
    from machines import job
    from pwscf import Pwscf,generate_pwscf

    sim = generate_pwscf(
        job    = job(machine='ws1',cores=1),
        system = get_system(),
        )

    assert(isinstance(sim,Pwscf))

    clear_all_sims()
Пример #19
0
def get_qmcpack_sim(type='rsqmc', **kwargs):
    from machines import job
    from qmcpack import Qmcpack, generate_qmcpack

    if type == 'rsqmc':
        tiling = kwargs.pop('tiling', (1, 1, 1))

        sim = generate_qmcpack(job=job(machine='ws1', cores=1),
                               system=get_system(tiling=tiling),
                               **kwargs)
    elif type == 'afqmc':
        sim = generate_qmcpack(job=job(machine='ws1', cores=1),
                               input_type='basic_afqmc',
                               **kwargs)
    else:
        failed()
    #end if

    assert (isinstance(sim, Qmcpack))

    return sim
Пример #20
0
    def get_workflow():
        machine = get_machine('theta')
        machine.account = 'ABC123'
        test_job = job(machine='theta', nodes=1, app_command='test.x')
        sims = get_test_workflow(7, job=test_job)

        levels = []
        levels.append([sims.s0, sims.s1, sims.s2])
        levels.append([sims.s3, sims.s5, sims.s7, sims.s10])
        levels.append([sims.s4, sims.s6, sims.s8, sims.s11])
        levels.append([sims.s9, sims.s12])

        return sims, levels
Пример #21
0
def setup_vasp_sim(path, identifier='vasp', files=False):
    import shutil
    from nexus_base import nexus_core
    from machines import job
    from physical_system import generate_physical_system
    from vasp import generate_vasp, Vasp

    copy_files = files
    del files

    nexus_core.runs = ''

    files = get_files()

    dia16 = generate_physical_system(structure=files['d16bulk.POSCAR'], C=4)

    sim = generate_vasp(
        identifier=identifier,
        path=path,
        job=job(machine='ws1', cores=1),
        system=dia16,
        pseudos=['C.POTCAR'],
        input_type='generic',
        istart=0,
        icharg=2,
        encut=450,
        nsw=5,
        ibrion=2,
        isif=2,
        kcenter='monkhorst',
        kgrid=(2, 2, 2),
        kshift=(0, 0, 0),
    )

    assert (isinstance(sim, Vasp))

    if copy_files:
        vfiles = [
            'diamond_INCAR',
            'diamond_KPOINTS',
            'diamond_POSCAR',
            'diamond_POTCAR',
        ]
        for vfile in vfiles:
            shutil.copy2(files[vfile], path)
        #end for
    #end if

    return sim
Пример #22
0
def test_incorporate_result():
    from generic import NexusError
    from machines import job

    for cls,gen in get_class_generators():
        sim = gen(job=job(machine='ws1',cores=1))
        assert(isinstance(sim,cls))
        try:
            sim.incorporate_result('anything',None,None)
            raise FailedTest
        except NexusError:
            None
        except FailedTest:
            failed()
        except Exception as e:
            failed(str(e))
        #end try
    #end for

    clear_all_sims()
Пример #23
0
def test_incorporate_result():
    from generic import NexusError,obj
    from machines import job
    from simulation import Simulation
    from gamess import generate_gamess,Gamess

    Gamess.ericfmt = ''

    other = Simulation()

    gms = generate_gamess(
        job = job(machine='ws1',cores=1),
        )

    Gamess.ericfmt = None

    sim = get_quantum_package_sim()
    
    try:
        sim.get_result('unknown',None)
        raise FailedTest
    except NexusError:
        None
    except FailedTest:
        failed()
    except Exception as e:
        failed(str(e))
    #end try
    
    try:
        sim.get_result('orbitals',other)
        raise FailedTest
    except NexusError:
        None
    except FailedTest:
        failed()
    except Exception as e:
        failed(str(e))
    #end try

    clear_all_sims()