基于torchni做结构优化


from ase.lattice.cubic import Diamond
from ase.md.langevin import Langevin
from ase.optimize import BFGS
from ase import units
import torchani

#h2 = Atoms('H2',
#           positions = [[0,0,0],[0,0,0.7]])
#h2.calc = NWChem(xc='PBE')
#opt = BFGS(h2)
#opt.run(fmax=0.02)

atoms = Diamond(symbol="C", pbc=True)
print(len(atoms), "atoms in the cell")

calculator = torchani.models.ANI1ccx().ase()
atoms.set_calculator(calculator)

print("Begin minimizing...")
opt = BFGS(atoms)
opt.run(fmax=0.001)
print()

def printenergy(a=atoms):
    """Function to print the potential, kinetic and total energy."""
    epot = a.get_potential_energy() / len(a)
    ekin = a.get_kinetic_energy() / len(a)
    print('Energy per atom: Epot = %.3feV  Ekin = %.3feV (T=%3.0fK)  '
          'Etot = %.3feV' % (epot, ekin, ekin / (1.5 * units.kB), epot + ekin))
    
dyn = Langevin(atoms, 1 * units.fs, 300 * units.kB, 0.2)
dyn.attach(printenergy, interval=50)

print("Beginning dynamics...")
printenergy()
dyn.run(500)
```python


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值