Interface for calculations using AMBER. Uses tleap to prepare prmtop from pdb, a leaprc file loading the forcefield must be provided. Default leaprc is set in Cuby's config file, custom leaprc can be specified using keyword "leaprc".

The interface requires modified sander executable that prints gradients to file "frc".

List of AMBER keys in cuby.conf.yaml

module Amber

Prepare

prepare_interface(what = [], options = {})

Creates a directory with amber input files for this calculation.

Calculate

calculate_interface(what = [], options = {})

Amber calculation of energy and gradient.

Cleanup

cleanup_interface(options = {})

Private methods

amber_calculate

Runs amber calulation on current geometry (by calling sander, executable name specified in config in "amber_sander")

amber_read_energy_gradient

Reads energy and gradient from file "frc" produced by modified sander executable. Energy is saved into variable @results.energy, gradient as @results.gradient.

amber_read_energy

Reads only energy (when gradient is not requested) from file "frc" produced by modified sander executable. Energy is saved into variable @results.energy.

amber_prmtop_from_pdb(directory, pfb_file_name) # => nil

This method uses tleap module of AMBER to prepare parameters/topology file prmtop from pdb file. For successful conversion, a leaprc file which loads the forcefield is required. By default, value from cuby config file (key amber_leaprc) is used. This can be overriden by by keyword "leaprc" in settings.

amber_charges_from_top(filename, property_name = :ff_charge)

amber_interaction_with_pch # => float

Calculates and returns coulombic energy of interaction of the system woth point charges. Forcefield charges must be previously read from prmtop.

amber_add_grad_from_pch # => nil

module AmberTools

class Prmtop

read_top   write_top  

Container for prmtop file. Reads some properties from the top, converting them to cuby units. These values can be modified and written back to the file.

read_top(topfilename)

Read data from prmtop, filing @natom, @charges, @radii and @screens

write_top(topfilename)

Write prmtop, overwriting the respective sections with data from @charges, @radii and @screens