Class Angle
- java.lang.Object
-
- com.actelion.research.chem.forcefield.mmff.table.Angle
-
- All Implemented Interfaces:
Searchable
public final class Angle extends java.lang.Object implements Searchable
Angle table, corresponds to the MMFFANG.PAR parameters table provided in the MMFF literature. This table provides parameters for angle bending interactions. This table is loaded from a CSV file as it is too large to hard code in to the class file.
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
get(int row, int col)
This should get an integer value given a column and row.int
index(MMFFMolecule mol, int a1, int a2, int a3)
Returns the index of a row for a given molecule and three connected atoms which form an angle.double
ka(int index)
Returns 'ka' the force constant for a given index in the table.double
ka(MMFFMolecule mol, int a1, int a2, int a3)
Returns 'ka' given a molecule and three connected atoms which form an angle.int
length()
This function should return the total number of rows in a searchable table.double
theta(int index)
Returns 'theta0' the equilibrium angle for a given index in the table.double
theta(MMFFMolecule mol, int a1, int a2, int a3)
Returns 'theta0' the ideal angle given a molecule and three connected atoms which form an angle.
-
-
-
Constructor Detail
-
Angle
public Angle(Tables t, java.lang.String csvpath)
-
-
Method Detail
-
get
public int get(int row, int col)
Description copied from interface:Searchable
This should get an integer value given a column and row. The binary search function only searches columns containing integers for a value.- Specified by:
get
in interfaceSearchable
- Parameters:
row
- The row in the table.col
- The column in the row to return.- Returns:
- The value at 'col' in 'row'.
-
length
public int length()
Description copied from interface:Searchable
This function should return the total number of rows in a searchable table. This is normally just the length of the array.- Specified by:
length
in interfaceSearchable
- Returns:
- The number of elements that can be searched.
-
ka
public double ka(int index)
Returns 'ka' the force constant for a given index in the table.- Parameters:
index
- The row index in the table.- Returns:
- The force constant.
-
theta
public double theta(int index)
Returns 'theta0' the equilibrium angle for a given index in the table.- Parameters:
index
- The row index in the table.- Returns:
- The force constant.
-
index
public int index(MMFFMolecule mol, int a1, int a2, int a3)
Returns the index of a row for a given molecule and three connected atoms which form an angle.- Parameters:
mol
- The molecule that the atoms are in.a1
- Atom 1.a2
- Atom 2 (the central atom).a3
- Atom 3.- Returns:
- The index in the angle table, or -1 if no suitable entry was found.
-
theta
public double theta(MMFFMolecule mol, int a1, int a2, int a3)
Returns 'theta0' the ideal angle given a molecule and three connected atoms which form an angle.- Parameters:
mol
- The molecule that the atoms are in.a1
- Atom 1.a2
- Atom 2 (the central atom).a3
- Atom 3.- Returns:
- The value of 'theta' from the angle table or calculated empirically.
-
ka
public double ka(MMFFMolecule mol, int a1, int a2, int a3)
Returns 'ka' given a molecule and three connected atoms which form an angle.- Parameters:
mol
- The molecule that the atoms are in.a1
- Atom 1.a2
- Atom 2 (the central atom).a3
- Atom 3.- Returns:
- The value of 'ka' from the angle table or calculated empirically.
-
-