public class BasicGrowthAtom extends AbstractGrowthAtom
Modifier and Type | Field and Description |
---|---|
static byte |
EDGE |
static byte |
ISLAND |
static byte |
KINK |
private BasicGrowthAtom[] |
neighbours |
static byte |
TERRACE |
private static BasicGrowthTypesTable |
TYPE_TABLE |
ARMCHAIR_EDGE, BULK, CORNER, SICK, ZIGZAG_EDGE, ZIGZAG_WITH_EXTRA
Constructor and Description |
---|
BasicGrowthAtom(int id,
short iHexa,
short jHexa) |
Modifier and Type | Method and Description |
---|---|
boolean |
areTwoTerracesTogether() |
AbstractGrowthAtom |
chooseRandomHop() |
void |
clear()
Resets current atom; TERRACE type, no neighbours, no occupied, no outside and no probability.
|
java.util.List |
getAllNeighbours() |
BasicGrowthAtom |
getNeighbour(int pos) |
byte |
getNewType(int addToNeighbour)
Calculates the new atom type when adding or removing a neighbour.
|
int |
getOrientation()
For the orientation they are only available two position.
|
byte |
getTypeWithoutNeighbour(int position)
Returns the type of the neighbour atom if current one would not exist.
|
boolean |
isEligible() |
boolean |
isPartOfImmobilSubstrate() |
void |
obtainRateFromNeighbours() |
double |
probJumpToNeighbour(int ignored,
int position) |
void |
setNeighbour(AbstractGrowthAtom a,
int pos) |
double |
updateOneBound(int pos) |
addOccupiedNeighbour, addProbability, addRate, addToSumRate, areTwoTerracesTogetherInPerimeter, compareTo, equalRate, equals, getAngle, getAttributes, getBondsProbability, getBondsProbability, getCartesianPosition, getCartesianSuperCell, getDepositionPosition, getDepositionTime, getEdgeRate, getHops, getId, getiHexa, getIslandNumber, getjHexa, getMultiAtomNumber, getMultiplier, getOccupiedNeighbours, getProbability, getProbability, getProbability, getRate, getSumRate, getType, hashCode, initialiseRates, isInnerPerimeter, isIsolated, isOnList, isOuterPerimeter, isOutside, isVisited, remove, removeMultiAtomNumber, removeMultiAtoms, resetPerimeter, resetProbability, setAngle, setAttributes, setBondsProbability, setBondsProbability, setCartesianPosition, setCartesianSuperCell, setDepositionPosition, setDepositionTime, setHops, setInnerPerimeter, setIslandNumber, setMultiAtomNumber, setMultiplier, setOnList, setOuterPerimeter, setOutside, setProcceses, setRate, setSumRate, setType, setVisited, swapAttributes, toString, updateRate
getNumberOfNeighbours, getPos, getProbabilities, getRealType, isOccupied, isOnList, isRemoved, setList, setNeighbour, setNumberOfNeighbours, setOccupied, setProbabilities, setRemoved, unRemove
public static final byte TERRACE
public static final byte EDGE
public static final byte KINK
public static final byte ISLAND
private static final BasicGrowthTypesTable TYPE_TABLE
private final BasicGrowthAtom[] neighbours
public int getOrientation()
getOrientation
in class AbstractGrowthAtom
public void setNeighbour(AbstractGrowthAtom a, int pos)
setNeighbour
in class AbstractGrowthAtom
public BasicGrowthAtom getNeighbour(int pos)
getNeighbour
in class AbstractGrowthAtom
public java.util.List getAllNeighbours()
getAllNeighbours
in class AbstractGrowthAtom
public double updateOneBound(int pos)
updateOneBound
in class AbstractGrowthAtom
pos
- position of the neighbourpublic boolean isEligible()
public boolean isPartOfImmobilSubstrate()
isPartOfImmobilSubstrate
in class AbstractGrowthAtom
public byte getNewType(int addToNeighbour)
addToNeighbour
- variation of the number of the number of neighbours. Must be -1, 0 or 1public byte getTypeWithoutNeighbour(int position)
getTypeWithoutNeighbour
in class AbstractGrowthAtom
position
- position is the original one; has to be inverted.public boolean areTwoTerracesTogether()
areTwoTerracesTogether
in class AbstractGrowthAtom
public AbstractGrowthAtom chooseRandomHop()
chooseRandomHop
in class AbstractGrowthAtom
public void obtainRateFromNeighbours()
obtainRateFromNeighbours
in class AbstractGrowthAtom
public double probJumpToNeighbour(int ignored, int position)
probJumpToNeighbour
in class AbstractGrowthAtom
public void clear()
clear
in interface IElement
clear
in class AbstractGrowthAtom