BALL::LennardJones Class Reference
[Force Field Parameters]

Lennard Jones parameter section. More...

#include <lennardJones.h>

Inheritance diagram for BALL::LennardJones:
Inheritance graph
[legend]

List of all members.


Public Types

Enums
enum FormatType { A_B_FORMAT, EPSILON_R_FORMAT, SLATER_KIRKWOOD_FORMAT }

Public Member Functions

virtual bool extractSection (ForceFieldParameters &parameters, const String &section_name)
Reads a parameter section from an INI file.
virtual bool extractSection (Parameters &parameters, const String &section_name)
Reads a parameter section from an INI file.
bool hasParameters (Atom::Type I, Atom::Type J) const
Queries whether a parameter set is defined for the given atom types.
Values getParameters (Atom::Type I, Atom::Type J) const
Returns the parameters for a given atom type combination.
bool assignParameters (Values &parameters, Atom::Type I, Atom::Type J) const
Assign the parameters for a given atom type combination.
Constructors and Destructors
LennardJones ()
Default constructor.
LennardJones (const LennardJones &lj)
Copy constructor.
virtual ~LennardJones ()
Destructor.
virtual void clear ()
Clear method.
Assignment
const LennardJones & operator= (const LennardJones &lj)
Assignment operator.
Predicates
bool operator== (const LennardJones &lj) const
Equality operator.

Protected Attributes

Size number_of_atom_types_
std::vector< float > A_
std::vector< float > B_
std::vector< float > N_
std::vector< float > Aij_
std::vector< float > Bij_
std::vector< bool > is_defined_
FormatType format_
std::vector< String > names_

Detailed Description

Lennard Jones parameter section.

This section reads parameters for a Lennard Jones potental (usually a 6-12 Potential). Parameters may be given in three different formats (no mixing of formats is allowed).

If the Slater-Kirkwood format is used, the values for $A_{ij}$ and $B_{ij}$ are calculated as follows (see e.g. Brooks et al., J. Comput. Chem, 4(2):187-217 (1983))

\[ B_{ij} = \frac{3}{2} \left(\frac{1}{4 \pi \varepsilon_0}\right)^\frac{1}{2} \frac{e \hbar \sqrt{m_e} \alpha_i \alpha_j}{\sqrt{\frac{\alpha_i}{N_i} + \sqrt{\frac{\alpha_j}{N_j}}}} \]

\[ A_{ij} = \frac{1}2{} B_{ij} (R_i + R_j)^6 \]


Member Function Documentation

bool BALL::LennardJones::assignParameters ( Values & parameters,
Atom::Type I,
Atom::Type J
) const

Assign the parameters for a given atom type combination.

If no parameters are defined for this combination, false is returned and nothing is changed.

virtual bool BALL::LennardJones::extractSection ( Parameters & parameters,
const String & section_name
) [virtual]

Reads a parameter section from an INI file.

This method reads the section given in section_name from ini_file, interprets (if given) a format line, reads the data from this section according to the format, and builds some datastructures for fast and easy acces to the data.

Parameters:
parameters the parameters defining the inifile to be read from
section_name the name of the section to be read (without the squared brackets)
Returns:
bool - true if the section could be read, false otherwise

Reimplemented from BALL::ParameterSection.

virtual bool BALL::LennardJones::extractSection ( ForceFieldParameters & parameters,
const String & section_name
) [virtual]

Reads a parameter section from an INI file.

This method reads the section given in section from ini, interprets (if given) a format line, reads the data from this section according to the format, and builds some datastructures for fast and easy access to this data.


Generated on Thu Aug 6 18:30:38 2009 for BALL by doxygen 1.5.8