Beispiel #1
0
structure = Structure()
structure.name   = 'Ga2CdO4: b5'
structure.scale  = 1.0
structure.energy = -75.497933000000003
structure.weight = 1.0
structure.set_cell = (-0.0001445, 4.3538020, 4.3537935),\
                     (4.3538700, -0.0001445, 4.3538615),\
                     (4.3538020, 4.3537935, -0.0001445)
structure.add_atoms = [(7.61911540668, 7.61923876219, 7.61912846850), 'Cd'],\
                      [(1.08833559332, 1.08834823781, 1.08832253150), 'Cd'],\
                      [(4.35372550000, 4.35379350000, 4.35372550000), 'Ga'],\
                      [(4.35379775000, 2.17685850000, 2.17682450000), 'Ga'],\
                      [(2.17682450000, 4.35386575000, 2.17682875000), 'Ga'],\
                      [(2.17682875000, 2.17686275000, 4.35379775000), 'Ga'],\
                      [(2.32881212361, 2.32884849688, 2.32881647755),  'O'],\
                      [(2.32887187256, 4.20174404476, 4.20169148188),  'O'],\
                      [(4.20168277385, 2.32891695560, 4.20168347161),  'O'],\
                      [(4.20168782554, 4.20174474241, 2.32887622633),  'O'],\
                      [(6.37863887654, 6.37873414925, 6.37863016865),  'O'],\
                      [(6.37857477364, 4.50584295539, 4.50575516433),  'O'],\
                      [(4.50576822615, 6.37867004441, 4.50576752839),  'O'],\
                      [(4.50576317445, 4.50584225759, 6.37857477367),  'O']

# this is converged to less than 1meV
third = third_order_charge_correction(structure, epsilon=10.0, n=20)
assert abs(third - 0.11708438633232088*eV) < 1e-12
# to compare to Stephan Lany's 3rd0 (-1.299), multiply third by epsilon / (1.0 - 1.0/epsilon)
# tries another cell. Jumping hoops since  can't modify cell component directly.
cell = structure.cell.copy()
cell[0,0] = -30.0
structure.cell = cell
Beispiel #2
0
#                      (0.50, 0.5, 0.0)
# structure.add_atoms = ((0.00, 0.00, 0.00), "In"),\
#                       ((0.25, 0.25, 0.25), "As")
structure.set_cell = (10.0, 0.5, 0.5),\
                     (0.00, 0.0, 0.5),\
                     (0.00, 0.5, 0.0)
structure.add_atoms = ((0.00, 0.00, 0.00), "Ga"),\
                      ((0.25, 0.25, 0.25), "As"),\
                      ((1.00, 0.00, 0.00), "Ga"),\
                      ((1.25, 0.25, 0.25), "As"),\
                      ((2.00, 0.00, 0.00), "In"),\
                      ((2.25, 0.25, 0.25), "As"),\
                      ((3.00, 0.00, 0.00), "In"),\
                      ((3.25, 0.25, 0.25), "As"),\
                      ((4.00, 0.00, 0.00), "Ga"),\
                      ((4.25, 0.25, 0.25), "As"),\
                      ((5.00, 0.00, 0.00), "In"),\
                      ((5.25, 0.25, 0.25), "As"),\
                      ((6.00, 0.00, 0.00), "In"),\
                      ((6.25, 0.25, 0.25), "As"),\
                      ((7.00, 0.00, 0.00), "Ga"),\
                      ((7.25, 0.25, 0.25), "As"),\
                      ((8.00, 0.00, 0.00), "Ga"),\
                      ((8.25, 0.25, 0.25), "As"),\
                      ((9.00, 0.00, 0.00), "Ga"),\
                      ((9.25, 0.25, 0.25), "As"), 
structure.scale = vff.lattice.scale # + 0.1

# vff.direction = FreezeCell.a0 | FreezeCell.a1

# print vff
# print structure