示例#1
0
文件: Si-qha.py 项目: atztogo/cogue
def get_task(task_name):
    cell = vasp.parse_poscar(Si_str.split('\n'))
    
    # Vasp settings
    incar = vasp.incar()
    incar.set_structure_optimization()
    incar.set_nsw(20)
    incar.set_encut(300)
    
    incar_ph_rx = vasp.incar()
    incar_ph_rx.set_structure_optimization()
    incar_ph_rx.set_nsw(20)
    incar_ph_rx.set_encut(300)
    incar_ph_rx.set_isif(4) # volume constant
    
    incar_ph_dsp = vasp.incar()
    incar_ph_dsp.set_electronic_structure()
    incar_ph_dsp.set_encut(300)
    
    # Queue
    job = ge.job(script="mpirun vasp5212mpi",
                 shell="/bin/zsh",
                 jobname=task_name,
                 pe="mpi* 8",
                 stdout="std.log",
                 stderr="err.log")
    
    # Task
    task = vasp.quasiharmonic_phonon(max_iteration=10,
                                     min_iteration=1,
                                     sampling_mesh=[20, 20, 20],
                                     supercell_matrix=np.diag([2, 2, 2]),
                                     cell=cell,
                                     pseudo_potential_map=ps_map,
                                     incar=[incar,
                                            incar_ph_rx,
                                            incar_ph_dsp],
                                     k_mesh=[[8, 8, 8],
                                             [8, 8, 8],
                                             [4, 4, 4]],
                                     job=[job,
                                          job.copy(task_name + "-ph_relax"),
                                          job.copy(task_name + "-ph")],
                                     traverse=False)

    return task
示例#2
0
def get_task(task_name):
    cell = vasp.parse_poscar(Si_str.split('\n'))

    # Vasp settings
    incar = vasp.incar()
    incar.set_structure_optimization()
    incar.set_nsw(20)
    incar.set_encut(300)

    incar_ph_rx = vasp.incar()
    incar_ph_rx.set_structure_optimization()
    incar_ph_rx.set_nsw(20)
    incar_ph_rx.set_encut(300)
    incar_ph_rx.set_isif(4)  # volume constant

    incar_ph_dsp = vasp.incar()
    incar_ph_dsp.set_electronic_structure()
    incar_ph_dsp.set_encut(300)

    # Queue
    job = ge.job(script="mpirun vasp5212mpi",
                 shell="/bin/zsh",
                 jobname=task_name,
                 pe="mpi* 8",
                 stdout="std.log",
                 stderr="err.log")

    # Task
    task = vasp.quasiharmonic_phonon(max_iteration=10,
                                     min_iteration=1,
                                     sampling_mesh=[20, 20, 20],
                                     supercell_matrix=np.diag([2, 2, 2]),
                                     cell=cell,
                                     pseudo_potential_map=ps_map,
                                     incar=[incar, incar_ph_rx, incar_ph_dsp],
                                     k_mesh=[[8, 8, 8], [8, 8, 8], [4, 4, 4]],
                                     job=[
                                         job,
                                         job.copy(task_name + "-ph_relax"),
                                         job.copy(task_name + "-ph")
                                     ],
                                     traverse=False)

    return task
示例#3
0
           [0, 4.75, 0],
           [0, 0, 3.25]] # Orthorhombic
points=np.transpose([[0.0, 0.0, 0.0],
                     [0.5, 0.5, 0.5],
                     [0.3, 0.3, 0.0],
                     [0.7, 0.7, 0.0],
                     [0.2, 0.8, 0.5],
                     [0.8, 0.2, 0.5]])
cell = cogue.cell(lattice=lattice,
                  points=points,
                  symbols=symbols)

# Vasp settings
ps_map = {'Si': 'Si_PBE',
          'O': 'O_PBE'}
incar = vasp.incar()
incar.set_structure_optimization()
incar.set_nsw(20)

incar_ph_rx = vasp.incar()
incar_ph_rx.set_structure_optimization()
incar_ph_rx.set_nsw(20)
incar_ph_rx.set_isif(4) # volume constant
# incar_ph_rx.set_isif(2) # lattice vectors constant

incar_ph_dsp = vasp.incar()
incar_ph_dsp.set_electronic_structure()

# Queue
job = ge.job(script="mpirun vasp5212mpi",
             shell="/bin/zsh",
           [0, 4.75, 0],
           [0, 0, 3.25]] # Orthorhombic
points=np.transpose([[0.0, 0.0, 0.0],
                     [0.5, 0.5, 0.5],
                     [0.3, 0.3, 0.0],
                     [0.7, 0.7, 0.0],
                     [0.2, 0.8, 0.5],
                     [0.8, 0.2, 0.5]])
cell = cogue.cell(lattice=lattice,
                  points=points,
                  symbols=symbols)

# Vasp settings
ps_map = {'Si': 'Si_PBE',
          'O': 'O_PBE'}
incar = vasp.incar()
incar.set_structure_optimization()
incar.set_encut(500)
incar.set_nsw(20)
incar.set_pstress(800)

# Queue
job = ge.job(script="mpirun vasp5212mpi",
             shell="/bin/zsh",
             jobname=task_name,
             pe="mpi* 4",
             stdout="std.log",
             stderr="err.log")

# Task
task = vasp.structure_optimization(max_iteration=10,
示例#5
0
           [0, 4.75, 0],
           [0, 0, 3.25]]
points=np.transpose([[0.0, 0.0, 0.0],
                     [0.5, 0.5, 0.5],
                     [0.3, 0.3, 0.0],
                     [0.7, 0.7, 0.0],
                     [0.2, 0.8, 0.5],
                     [0.8, 0.2, 0.5]])
cell = cogue.cell(lattice=lattice,
                  points=points,
                  symbols=symbols)

# Vasp settings
ps_map = {'Sn': 'Sn_PBE',
          'O': 'O_PBE'}
incar = vasp.incar()
incar.set_structure_optimization()
incar.set_encut(400)
incar.set_prec("Normal")

# Queue
job = ge.job(script="vasp5212serial",
             shell="/bin/zsh",
             jobname=task_name,
             stdout="std.log",
             stderr="err.log")

# Task
task = vasp.bulk_modulus(max_iteration=2,
                         cell=cell,
                         pseudo_potential_map=ps_map,
示例#6
0
import cogue
import cogue.calculator.vasp as vasp
import cogue.qsystem.gridengine as ge

task_name = "SiO2-80GPa"

# Crystal structure
symbols = ['Si'] * 2 + ['O'] * 4
lattice = [[4.65, 0, 0], [0, 4.75, 0], [0, 0, 3.25]]  # Orthorhombic
points = np.transpose([[0.0, 0.0, 0.0], [0.5, 0.5, 0.5], [0.3, 0.3, 0.0],
                       [0.7, 0.7, 0.0], [0.2, 0.8, 0.5], [0.8, 0.2, 0.5]])
cell = cogue.cell(lattice=lattice, points=points, symbols=symbols)

# Vasp settings
ps_map = {'Si': 'Si_PBE', 'O': 'O_PBE'}
incar = vasp.incar()
incar.set_structure_optimization()
incar.set_nsw(20)
incar.set_pstress(800)

incar_phonon = vasp.incar()
incar_phonon.set_electronic_structure()

# Queue
job = ge.job(script="mpirun vasp5212mpi",
             shell="/bin/zsh",
             jobname=task_name,
             pe="mpi* 4",
             stdout="std.log",
             stderr="err.log")
示例#7
0
import cogue
import cogue.calculator.vasp as vasp
import cogue.qsystem.gridengine as ge

task_name = "SiO2-gruneisen"

# Crystal structure
symbols = ['Si'] * 2 + ['O'] * 4
lattice = [[4.65, 0, 0], [0, 4.75, 0], [0, 0, 3.25]]  # Orthorhombic
points = np.transpose([[0.0, 0.0, 0.0], [0.5, 0.5, 0.5], [0.3, 0.3, 0.0],
                       [0.7, 0.7, 0.0], [0.2, 0.8, 0.5], [0.8, 0.2, 0.5]])
cell = cogue.cell(lattice=lattice, points=points, symbols=symbols)

# Vasp settings
ps_map = {'Si': 'Si_PBE', 'O': 'O_PBE'}
incar = vasp.incar()
incar.set_structure_optimization()
incar.set_nsw(20)

incar_ph_rx = vasp.incar()
incar_ph_rx.set_structure_optimization()
incar_ph_rx.set_nsw(20)
incar_ph_rx.set_isif(4)  # volume constant
# incar_ph_rx.set_isif(2) # lattice vectors constant

incar_ph_dsp = vasp.incar()
incar_ph_dsp.set_electronic_structure()

# Queue
job = ge.job(script="mpirun vasp5212mpi",
             shell="/bin/zsh",
示例#8
0
           [0, 4.75, 0],
           [0, 0, 3.25]] # Orthorhombic
points=np.transpose([[0.0, 0.0, 0.0],
                     [0.5, 0.5, 0.5],
                     [0.3, 0.3, 0.0],
                     [0.7, 0.7, 0.0],
                     [0.2, 0.8, 0.5],
                     [0.8, 0.2, 0.5]])
cell = cogue.cell(lattice=lattice,
                  points=points,
                  symbols=symbols)

# Vasp settings
ps_map = {'Si': 'Si_PBE',
          'O': 'O_PBE'}
incar = vasp.incar()
incar.set_structure_optimization()
incar.set_nsw(20)
incar.set_pstress(800)

incar_phonon = vasp.incar()
incar_phonon.set_electronic_structure()

# Queue
job = ge.job(script="mpirun vasp5212mpi",
             shell="/bin/zsh",
             jobname=task_name,
             pe="mpi* 4",
             stdout="std.log",
             stderr="err.log")