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)
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,
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,
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)
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)