コード例 #1
0
basis = BasisMaker('Na').generate(1, 1, energysplit=0.3)

atoms = Atoms('Na12', pbc=(1, 1, 1), cell=[L, L, 12 * a])
atoms.positions[:12, 2] = [i * a for i in range(12)]
atoms.positions[:, :2] = L / 2.
atoms.center()
pl_atoms1 = range(4)
pl_atoms2 = range(8, 12)
pl_cell1 = (L, L, 4 * a)
pl_cell2 = pl_cell1

t = Transport(h=0.3,
              xc='LDA',
              basis={'Na': basis},
              kpts=(2, 2, 1),
              occupations=FermiDirac(0.1),
              mode='lcao',
              poissonsolver=PoissonSolver(nn=2, relax='GS'),
              txt='Na_lcao.txt',
              mixer=Mixer(0.1, 5, weight=100.0),
              guess_steps=10,
              pl_atoms=[pl_atoms1, pl_atoms2],
              pl_cells=[pl_cell1, pl_cell2],
              pl_kpts=(2, 2, 15),
              analysis_data_list=['tc'],
              edge_atoms=[[0, 3], [0, 11]],
              mol_atoms=range(4, 8))
atoms.set_calculator(t)
t.calculate_iv(0.5, 2)
コード例 #2
0
ファイル: spin_transport.py プロジェクト: robwarm/gpaw-symm
               lead_guess=True,
               spinpol=True,
               guess_steps=80,
               beta_guess=0.003,
               alpha=0.1,
               poissonsolver=PoissonSolver(nn=2),
               mixer=MixerSum(0.005, 5, weight=100.0),
               extra_density=True,
               pl_atoms=[pl_atoms1, pl_atoms2],
               pl_cells=[pl_cell1, pl_cell2],
               pl_kpts=[2 , 2 , 15],
               edge_atoms=[[ 0, 35],[0 , 133]],
               mol_atoms=range(36, 98),
               nleadlayers=[1,1]) 
system.set_calculator(t)
t.calculate_iv()

t = Transport( h=0.2,     
               xc='RPBE',
               basis={'Ni': 'szp', 'H': 'szp', 'C': 'szp', 'S':'szp'},
               kpts=(12, 12, 1),
               occupations=FermiDirac(0.2),
               parallel={'domain':(1,1,1)},
               mode='lcao',
               txt='NiC8.txt',
               buffer_guess=True,
               lead_guess=True,
               spinpol=True,
               guess_steps=80,
               beta_guess=0.003,
               alpha=0.1,
コード例 #3
0
              lead_guess=True,
              spinpol=True,
              guess_steps=80,
              beta_guess=0.003,
              alpha=0.1,
              poissonsolver=PoissonSolver(nn=2),
              mixer=MixerSum(0.005, 5, weight=100.0),
              extra_density=True,
              pl_atoms=[pl_atoms1, pl_atoms2],
              pl_cells=[pl_cell1, pl_cell2],
              pl_kpts=[2, 2, 15],
              edge_atoms=[[0, 35], [0, 133]],
              mol_atoms=range(36, 98),
              nleadlayers=[1, 1])
system.set_calculator(t)
t.calculate_iv()

t = Transport(h=0.2,
              xc='RPBE',
              basis={
                  'Ni': 'szp',
                  'H': 'szp',
                  'C': 'szp',
                  'S': 'szp'
              },
              kpts=(12, 12, 1),
              occupations=FermiDirac(0.2),
              parallel={'domain': (1, 1, 1)},
              mode='lcao',
              txt='NiC8.txt',
              buffer_guess=True,
コード例 #4
0
atoms.positions[:9, 2] = [i * a for i in range(9)]
atoms.positions[:, :2] = L / 2.
atoms.center()

pl_atoms1 = range(4)     
pl_atoms2 = range(5, 9)
pl_cell1 = (L, L, 4 * a) 
pl_cell2 = pl_cell1

t = Transport(h=0.3,
              xc='LDA',
              basis={'Na': basis},
              kpts=(1,1,1),
              occupations=FermiDirac(0.1),
              mode='lcao',
              poissonsolver=PoissonSolver(nn=2, relax='GS'),
              txt='Na_lcao.txt',
              mixer=Mixer(0.1, 5, weight=100.0),
              pl_atoms=[pl_atoms1, pl_atoms2],
              pl_cells=[pl_cell1, pl_cell2],
              pl_kpts=(1,1,5),
              edge_atoms=[[0, 3], [0, 8]],
              mol_atoms=[4],
              guess_steps=1,
              fixed_boundary=False,
              foot_print=False)

atoms.set_calculator(t)
t.calculate_iv(0.5, 2)

コード例 #5
0
ファイル: BDT.py プロジェクト: yihsuanliu/gpaw
import numpy as np
from ase.io import read
from gpaw import FermiDirac, PoissonSolver, Mixer
from gpaw.transport.calculator import Transport

system = read('BDT.traj', -1)
pl_atoms1 = range(36)     
pl_atoms2 = range(72, 108) 
pl_cell1 = np.diag(system.cell)
pl_cell1[2] = 7.067
pl_cell2 = pl_cell1      

t = Transport(h=0.2,     
              xc='PBE',
              basis={'Au': 'sz(dzp)', 'H': 'dzp', 'C': 'dzp', 'S':'dzp'},
              kpts=(1, 1, 1),
              occupations=FermiDirac(0.1),
              mode='lcao',
              txt='ABA.txt',
              poissonsolver=PoissonSolver(nn=2),
              mixer=Mixer(0.1, 5, weight=100.0),
              pl_atoms=[pl_atoms1, pl_atoms2],
              pl_cells=[pl_cell1, pl_cell2],
              pl_kpts=[1, 1, 15],
              extra_density=True,
              analysis_data_list=['tc'],
              edge_atoms=[[ 0, 35],[0 , 107]],
              mol_atoms=range(36, 72))
system.set_calculator(t)
t.calculate_iv(3.0, 2)