public abstract class EnergyFunction
extends java.lang.Object
Constructor and Description |
---|
EnergyFunction() |
Modifier and Type | Method and Description |
---|---|
abstract double |
calculateEnergy(Atom referenceAtom,
Atom otherAtom,
double bondFactor,
float distance,
float currentTemperature)
Return the Energy between the pair of passed Atoms.
|
abstract java.lang.String |
getButtonName()
Return the name for the RadioButton of this Algortihm here
|
abstract float |
getCutoff(Atom reference,
Atom other,
float defaultCutoff)
Used to get the cutoff between this pair of atoms if "Autocutoff" is
activated.
|
abstract javax.swing.JComponent |
getGui()
Here you may return the gui for this.
|
abstract double |
getLowestPossibleReturnValue()
Should return the lowest value possible that could be a result of the
calculateEnergy method.
|
abstract double |
getScaleFactor()
Return a scale factor for your Energy Values.
|
abstract java.lang.String |
getTooltip()
Return a tooltip for this algorithm's Button
|
abstract void |
MembersUpdated(Atom[] allAtoms)
Gets called everytime when any atoms have been added, or removed from the
model during runtime
|
abstract void |
setMembranePackingAlgorithm(MembranePackingAlgorithm algo)
Gets called at startup and passes a reference to the underLying
MembraneAlgortihm
|
public abstract double calculateEnergy(Atom referenceAtom, Atom otherAtom, double bondFactor, float distance, float currentTemperature)
referenceAtom
- the first atomotherAtom
- the second atombondFactor
- the constraintFactor set in the controlPaneldistance
- the distance between these atomscurrentTemperature
- the current temperature of the simulated annealing processpublic abstract double getScaleFactor()
public abstract java.lang.String getButtonName()
public abstract java.lang.String getTooltip()
public abstract javax.swing.JComponent getGui()
public abstract void setMembranePackingAlgorithm(MembranePackingAlgorithm algo)
algo
- the instance of the currently performing MembranePackingAlgorithmpublic abstract void MembersUpdated(Atom[] allAtoms)
allAtoms
- the new list of atoms that should be used by nowpublic abstract float getCutoff(Atom reference, Atom other, float defaultCutoff)
reference
- the first atomother
- the second atompublic abstract double getLowestPossibleReturnValue()