Advertisement
Guest User

Untitled

a guest
Feb 22nd, 2018
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.01 KB | None | 0 0
  1. import numpy as np
  2. from ase import Atoms
  3. from ase.io import read
  4. from ase.lattice.spacegroup import crystal
  5. from ase.optimize import BFGS, BFGSLineSearch
  6. from ase.constraints import FixAtoms, UnitCellFilter
  7. from gpaw import GPAW, PW, MixerSum, MixerDif, FermiDirac
  8. from gpaw.occupations import FermiDirac
  9.  
  10. #From gs.gpw
  11. pos = [[ 3.14635755e+00, 1.81655038e+00, 8.87569021e+00],
  12. [ 1.08133308e-15, 3.63310076e+00, 8.87566200e+00],
  13. [ 3.97192780e+00, -2.06299436e-04, 7.49522829e+00],
  14. [ 1.16021499e+00, 2.00996392e+00, 7.49522829e+00],
  15. [ -1.98578524e+00, 3.43989352e+00, 7.49522829e+00],
  16. [ 2.32078745e+00, -1.95870631e-04, 1.02561218e+01],
  17. [ 1.98579420e+00, 3.43988819e+00, 1.02561218e+01],
  18. [ -1.16022409e+00, 2.00995882e+00, 1.02561218e+01]]
  19.  
  20. cellp = [[ 6.29271511e+00, -1.57210150e-19, 0.00000000e+00],
  21. [ -3.14635755e+00, 5.44965114e+00, 0.00000000e+00],
  22. [ -7.91811112e-19, 0.00000000e+00, 1.77513506e+01]]
  23.  
  24. a = Atoms('Fe2Cl6', cell=cellp, positions = pos, pbc = [True, True, False] )
  25.  
  26. magmom = [ 1, 1, 0, 0, 0, 0, 0, 0]
  27.  
  28.  
  29. a.set_initial_magnetic_moments(magmom)
  30.  
  31. for i in range(200,901, 50):
  32. calc = GPAW(mode=PW(i),
  33. xc='PBE',
  34. #mixer=MixerDif(),
  35. occupations=FermiDirac(0.1),
  36. parallel={'domain': 1, 'band': 1},
  37. kpts=(8,8,1),
  38. txt='conv_pw_FeCl3%d.txt' % i)
  39. a.set_calculator(calc)
  40. a.get_potential_energy()
  41.  
  42. uf = UnitCellFilter(a)
  43. #opt = BFGSLineSearch(uf)
  44. opt = BFGS(uf)
  45. opt.run(fmax=0.01)
  46. calc.write('conv_pw_FeCl3%d.gpw' % i)
  47.  
  48. #for k in range(2, 13, 2):
  49. # calc = GPAW(mode=PW(600),
  50. # xc='PBE',
  51. # #mixer=MixerDif(),
  52. # occupations=FermiDirac(0.1),
  53. # parallel={'domain': 1, 'band': 1},
  54. # kpts=(k,k,1),
  55. # txt='conv_k_FeCl3%d.txt' % k)
  56. # a.set_calculator(calc)
  57. # a.get_potential_energy()
  58. #
  59. # uf = UnitCellFilter(a)
  60. #opt = BFGSLineSearch(uf)
  61. # opt = BFGS(uf)
  62. # opt.run(fmax=0.01)
  63. # calc.write('conv_k_FeCl3%d.gpw' % k)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement