JavaGenes, NASA Ames. Written largely by Al Globus

gov.nasa.javaGenes.forceFields
Class Tersoff

java.lang.Object
  extended bygov.nasa.javaGenes.forceFields.Potential
      extended bygov.nasa.javaGenes.forceFields.Tersoff

public class Tersoff
extends Potential

Implements the Tersoff potential. Derived from "Modeling solid-state chemistry: Interatomic potentials for multicomponent systems," J. Tersoff, Physical Review B, 15 March 1989, volume 39, number 8, pages 556-558.


Field Summary
protected  AlleleTemplate alleles
           
protected  Chromosome chromosome
           
protected  AtomicSpecies[] elements
           
protected  Species2IndexMap speciesMap
           
 
Fields inherited from class gov.nasa.javaGenes.forceFields.Potential
STILLINGER_WEBER, TERSOFF
 
Constructor Summary
Tersoff()
          only use for C, Si
Tersoff(AtomicSpecies[] elementsIn)
           
 
Method Summary
 double cutOffDistance(int s1, int s2)
           
 void evolve_c2d2betaN_Only()
           
 void evolveSiOnly()
           
 AlleleTemplate getAlleles()
           
 Chromosome getChromosome()
           
 double getEnergy(MultiBodiesForOneEnergy bodies)
          Calculate the energies for a set of multi-bodies.
 Species2IndexMap getSpecies2IndexMap()
           
 void initialize()
          must be called before anything else.
 void initializeCSi()
           
 void mustModel(ManyMultiBodiesForOneEnergy bodies)
           
 void setChromosome(Chromosome chromosome)
          put the chromosome parameters in for future getEnergy calls
 
Methods inherited from class gov.nasa.javaGenes.forceFields.Potential
getCutoff, getCutoff, getEnergy, getEnergy, getEnergy, getForce, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

alleles

protected AlleleTemplate alleles

chromosome

protected Chromosome chromosome

elements

protected AtomicSpecies[] elements

speciesMap

protected Species2IndexMap speciesMap
Constructor Detail

Tersoff

public Tersoff(AtomicSpecies[] elementsIn)

Tersoff

public Tersoff()
only use for C, Si

Method Detail

getSpecies2IndexMap

public Species2IndexMap getSpecies2IndexMap()

mustModel

public void mustModel(ManyMultiBodiesForOneEnergy bodies)
Overrides:
mustModel in class Potential

getAlleles

public AlleleTemplate getAlleles()
Specified by:
getAlleles in class Potential

getChromosome

public Chromosome getChromosome()

initialize

public void initialize()
must be called before anything else.


initializeCSi

public void initializeCSi()

evolve_c2d2betaN_Only

public void evolve_c2d2betaN_Only()

evolveSiOnly

public void evolveSiOnly()

setChromosome

public void setChromosome(Chromosome chromosome)
put the chromosome parameters in for future getEnergy calls

Specified by:
setChromosome in class Potential
Parameters:
chromosome - use this chromosome to establish the parameters of the potential

getEnergy

public double getEnergy(MultiBodiesForOneEnergy bodies)
Calculate the energies for a set of multi-bodies. PERFORMANCE: doesn't optimize for repeditive two-body calculations. That's not in the inner loop so might not matter that much.

Overrides:
getEnergy in class Potential

cutOffDistance

public double cutOffDistance(int s1,
                             int s2)

JavaGenes, NASA Ames. Written largely by Al Globus