public class CatalysisAtom extends AbstractGrowthAtom
| Modifier and Type | Field and Description |
|---|---|
private CatalysisAtomAttributes |
attributes |
static byte |
BR |
static byte |
C |
static byte |
CO |
private int |
coCusWithCoCus
Current atom is CO^CUS and it has as many CO^CUS neighbours.
|
static byte |
CUS |
private boolean |
eligible |
private byte |
latticeSite
Bridge or CUS.
|
private CatalysisAtom[] |
neighbours |
static byte |
O |
static byte |
O2 |
private int |
occupiedNeighbours |
private double[][][] |
probabilities
Default rates to jump from one type to the other.
|
private CatalysisProcess[] |
processes |
private static BasicGrowthTypesTable |
TYPE_TABLE |
ARMCHAIR_EDGE, BULK, CORNER, EDGE, KINK, SICK, TERRACE, ZIGZAG_EDGE, ZIGZAG_WITH_EXTRA| Constructor and Description |
|---|
CatalysisAtom(int id,
short iHexa,
short jHexa) |
| Modifier and Type | Method and Description |
|---|---|
void |
addCoCusNeighbours(int value) |
boolean |
areTwoTerracesTogether() |
void |
checkImmobile()
Makes this atom "immobile" if it is surrounded by 4 neighbours.
|
AbstractGrowthAtom |
chooseRandomHop() |
void |
cleanCoCusNeighbours() |
void |
clear()
Resets current atom; TERRACE type, no neighbours, no occupied, no outside and no probability.
|
java.util.List |
getAllNeighbours() |
AbstractGrowthAtomAttributes |
getAttributes() |
int |
getCoCusNeighbours() |
byte |
getLatticeSite() |
CatalysisAtom |
getNeighbour(int pos) |
int |
getOrientation()
For the orientation they are only available two position.
|
double |
getProbability(int originType,
int targetType)
Dummy method.
|
CatalysisAtom |
getRandomNeighbour(byte process) |
byte |
getTypeWithoutNeighbour(int position)
Returns the type of the neighbour atom if current one would not exist.
|
void |
initialiseRates(double[][][] probabilities)
Default rates to jump from one type to the other.
|
boolean |
isEligible() |
boolean |
isIsolated()
Tells when current atom is completely surrounded.
|
boolean |
isPartOfImmobilSubstrate() |
void |
obtainRateFromNeighbours() |
double |
probJumpToNeighbour(int ignored,
int position) |
void |
setAttributes(AbstractGrowthAtomAttributes attributes) |
void |
setNeighbour(AbstractGrowthAtom a,
int pos) |
void |
swapAttributes(AbstractGrowthAtom a) |
java.lang.String |
toString() |
double |
updateOneBound(int pos) |
addOccupiedNeighbour, addProbability, addRate, addToSumRate, areTwoTerracesTogetherInPerimeter, compareTo, equalRate, equals, getAngle, getBondsProbability, getBondsProbability, getCartesianPosition, getCartesianSuperCell, getDepositionPosition, getDepositionTime, getEdgeRate, getHops, getId, getiHexa, getIslandNumber, getjHexa, getMultiAtomNumber, getMultiplier, getOccupiedNeighbours, getProbability, getProbability, getRate, getSumRate, getType, hashCode, initialiseRates, isInnerPerimeter, isOnList, isOuterPerimeter, isOutside, isVisited, remove, removeMultiAtomNumber, removeMultiAtoms, resetPerimeter, resetProbability, setAngle, setBondsProbability, setBondsProbability, setCartesianPosition, setCartesianSuperCell, setDepositionPosition, setDepositionTime, setHops, setInnerPerimeter, setIslandNumber, setMultiAtomNumber, setMultiplier, setOnList, setOuterPerimeter, setOutside, setProcceses, setRate, setSumRate, setType, setVisited, updateRategetNumberOfNeighbours, getPos, getProbabilities, getRealType, isOccupied, isOnList, isRemoved, setList, setNeighbour, setNumberOfNeighbours, setOccupied, setProbabilities, setRemoved, unRemovepublic static final byte CO
public static final byte O
public static final byte C
public static final byte O2
public static final byte BR
public static final byte CUS
private static final BasicGrowthTypesTable TYPE_TABLE
private int occupiedNeighbours
private final CatalysisAtom[] neighbours
private final byte latticeSite
private boolean eligible
private final CatalysisProcess[] processes
private double[][][] probabilities
private CatalysisAtomAttributes attributes
private int coCusWithCoCus
public AbstractGrowthAtomAttributes getAttributes()
getAttributes in class AbstractGrowthAtompublic void setAttributes(AbstractGrowthAtomAttributes attributes)
setAttributes in class AbstractGrowthAtompublic byte getLatticeSite()
public boolean isIsolated()
isIsolated in class AbstractGrowthAtompublic void initialiseRates(double[][][] probabilities)
probabilities - Default rates.public double getProbability(int originType,
int targetType)
getProbability in class AbstractGrowthAtomoriginType - targetType - public int getOrientation()
getOrientation in class AbstractGrowthAtompublic void setNeighbour(AbstractGrowthAtom a, int pos)
setNeighbour in class AbstractGrowthAtompublic java.util.List getAllNeighbours()
getAllNeighbours in class AbstractGrowthAtompublic CatalysisAtom getNeighbour(int pos)
getNeighbour in class AbstractGrowthAtompublic CatalysisAtom getRandomNeighbour(byte process)
public void addCoCusNeighbours(int value)
public void cleanCoCusNeighbours()
public int getCoCusNeighbours()
public double updateOneBound(int pos)
updateOneBound in class AbstractGrowthAtompos - position of the neighbourpublic boolean isEligible()
public boolean isPartOfImmobilSubstrate()
isPartOfImmobilSubstrate in class AbstractGrowthAtompublic byte getTypeWithoutNeighbour(int position)
getTypeWithoutNeighbour in class AbstractGrowthAtomposition - position is the original one; has to be inverted.public boolean areTwoTerracesTogether()
areTwoTerracesTogether in class AbstractGrowthAtompublic void checkImmobile()
public AbstractGrowthAtom chooseRandomHop()
chooseRandomHop in class AbstractGrowthAtompublic void obtainRateFromNeighbours()
obtainRateFromNeighbours in class AbstractGrowthAtompublic double probJumpToNeighbour(int ignored,
int position)
probJumpToNeighbour in class AbstractGrowthAtompublic void clear()
clear in interface IElementclear in class AbstractGrowthAtompublic void swapAttributes(AbstractGrowthAtom a)
swapAttributes in class AbstractGrowthAtompublic java.lang.String toString()
toString in class AbstractGrowthAtom