项目作者: MatrixLabTools

项目描述 :
Calculate potential energy surface between two molecules
高级语言: Julia
项目地址: git://github.com/MatrixLabTools/PotentialCalculation.jl.git
创建时间: 2018-11-19T21:15:54Z
项目社区:https://github.com/MatrixLabTools/PotentialCalculation.jl

开源协议:MIT License

下载


PotentialCalculation.jl

Documentation Build Status

A Julia package to calculate potential energy between two molecules.

Fitting of potential energy is done by separate package.

Currently supported backendes are ORCA
and Psi4.

Installation

Hit “]” to enter “pkg>”

  1. pkg> registry add https://github.com/MatrixLabTools/PackageRegistry
  2. pkg> add PotentialCalculation

Basic usage

Load package

  1. using PotentialCalculation

or if using parallelization (recommended).

  1. using Distributed
  2. @everywhere using PotentialCalculation

Creating inputs and doing basic calculation, where two molecules are calculated
with various distances and orientations from each other.

  1. # Creating calculation method
  2. mp2 = Calculator(
  3. "RI-MP2 RIJK TIGHTSCF",
  4. "aug-cc-pVTZ aug-cc-pVTZ/C def2/JK",
  5. Orca()
  6. )
  7. # Creating argon atom
  8. Ar = Cluster(zeros(3), AtomOnlySymbol("Ar"))
  9. # File where other molecule is taken
  10. trajfile="Some trajectory.xyz"
  11. # Create input for calculations
  12. inputs = create_inputs(
  13. trajfile, # First molecule will be picked from here
  14. Ar, # Second molecule will be picked from here
  15. mp2; # Calculator to do electronic structure calculations
  16. nsaples=32, # How many lines are calculated
  17. max_e=10000, # Maximum energy in cm⁻¹ -
  18. # limit to areas where energy is less than this
  19. npoints=50 # Number of points per line
  20. )
  21. # Do calculation
  22. data = calculate_potential(inputs, save_file="save file")

New calculations with different method can be done on previous points.

  1. #New method
  2. ccf12 = Calculator(
  3. "CCSD(T)-F12/RI TIGHTSCF",
  4. "cc-pVDZ-F12 cc-pVDZ-F12-CABS cc-pVTZ/C",
  5. Orca(maxmem=4000)
  6. )
  7. data2 = calculate_potential(
  8. "previous results file",
  9. ccf12, # Calculate with this method now
  10. save_file="new save file",
  11. restart_file="restart file"
  12. )

To restart calculations from restart file.

  1. data3 = continue_calculation(
  2. "restart file",
  3. Orca(maxmem=4000),
  4. save_file="final save file",
  5. restart_file="new restart file"
  6. )