public abstract class CatalysisRates extends java.lang.Object implements IRates
Modifier and Type | Field and Description |
---|---|
private double[] |
adsorptionRates |
private double |
correctionFactor |
private double[] |
desorptionEnergiesCo |
private double[] |
desorptionEnergiesCoCusCoCus |
private double[][] |
desorptionEnergiesO2 |
private double[][][] |
diffusionEnergies |
private double[] |
diffusionEnergiesCoCusCoCus |
private double[] |
mass
Mass of molecule (kg/molecule).
|
private double[] |
mu
Chemical potential (eV).
|
private double |
prefactor |
private double[] |
pressures
Partial pressures in Pascal (Pa).
|
private double[] |
R
Molecular interdistance (m).
|
private double[][] |
reactionEnergiesCoO |
private double[] |
reactionEnergiesCoOCoCusCoCus |
private double[] |
reducedMass |
private double[] |
sigma
Symmetry number.
|
private float |
temperature
Temperature (K).
|
private double[] |
V
Vibrational frequency (Hz).
|
Constructor and Description |
---|
CatalysisRates(float temperature) |
Modifier and Type | Method and Description |
---|---|
private double |
computeAdsorptionRate(int sourceType)
Equation (3) of Reuter & Scheffler, PRB 73, 2006.
|
void |
computeAdsorptionRates()
Compute all adsorptions.
|
double |
getAdsorptionRate(int atomType)
Adsorption rate for CO or O.
|
double |
getDepositionRatePerSite() |
private double |
getDesorptionRate(byte type,
double energy)
mu_{A} = -K_{B} T log( k_{B} T / p_{A} * (2 pi m_{A} k_{B} T /
h^2)^(3/2) * (8 pi^2 I k_{B} T / sigma h^2) * 1/
( 1 - exp( -h v / k_{B} T ) )) )
|
double[] |
getDesorptionRates()
Only for Farkas and repulsion.
|
double[] |
getDesorptionRates(int type) |
double[] |
getDiffusionRates()
Only for Farkas and repulsion.
|
double[] |
getDiffusionRates(int type) |
double |
getEnergy(int i,
int j) |
double |
getIslandDensity(double temperature)
Returns the island density mono layer depending on the temperature.
|
private double |
getRate(int index)
Only for Farkas and repulsion.
|
private double |
getRate(int sourceType,
int sourceSite,
int destinationSite) |
double[] |
getRates(double temperature) |
double[] |
getReactionRates() |
double[] |
getReactionRates(boolean fake)
Only for Farkas and repulsion.
|
void |
setCorrectionFactor(double factor)
Scales prefactor.
|
void |
setDepositionFlux(double diffusionMl) |
void |
setDesorptionEnergiesCo(double[] desorptionEnergiesCo) |
void |
setDesorptionEnergiesCoCusCoCus(double[] desorptionEnergiesCoCusCoCus) |
void |
setDesorptionEnergiesO2(double[][] desorptionEnergiesO2) |
void |
setDiffusionEnergies(double[][][] diffusionEnergies) |
void |
setDiffusionEnergiesCoCusCoCus(double[] diffusionEnergiesCoCusCoCus) |
private void |
setPressure(byte type,
double pressure) |
void |
setPressureCO(double pressureCO)
Sets pressure for CO given in atmospheres and saved in Pa.
|
void |
setPressureO2(double pressureO)
Sets pressure for O2 given in atmospheres and saved in Pa.
|
void |
setReactionEnergiesCoO(double[][] reactionEnergiesCoO) |
void |
setReactionEnergiesCoOcoCusCoCus(double[] reactionEnergiesCoOCoCusCoCus) |
private double[][][] diffusionEnergies
private double[] desorptionEnergiesCo
private double[][] desorptionEnergiesO2
private double[][] reactionEnergiesCoO
private double[] desorptionEnergiesCoCusCoCus
private double[] reactionEnergiesCoOCoCusCoCus
private double[] diffusionEnergiesCoCusCoCus
private final double prefactor
private double correctionFactor
private final double[] mass
private final double[] pressures
private final double[] adsorptionRates
private final double[] mu
private final double[] R
private final double[] V
private final double[] reducedMass
private final double[] sigma
private final float temperature
public final void setCorrectionFactor(double factor)
factor
- 1.0 or 0.5public final void setDiffusionEnergies(double[][][] diffusionEnergies)
public final void setDiffusionEnergiesCoCusCoCus(double[] diffusionEnergiesCoCusCoCus)
public final void setDesorptionEnergiesCo(double[] desorptionEnergiesCo)
public final void setDesorptionEnergiesCoCusCoCus(double[] desorptionEnergiesCoCusCoCus)
public final void setDesorptionEnergiesO2(double[][] desorptionEnergiesO2)
public final void setReactionEnergiesCoO(double[][] reactionEnergiesCoO)
public final void setReactionEnergiesCoOcoCusCoCus(double[] reactionEnergiesCoOCoCusCoCus)
public double getDepositionRatePerSite()
getDepositionRatePerSite
in interface IRates
public void setDepositionFlux(double diffusionMl)
setDepositionFlux
in interface IRates
public double getIslandDensity(double temperature)
IRates
getIslandDensity
in interface IRates
temperature
- temperature in Kelvin.public void setPressureO2(double pressureO)
pressureO
- in atm.public void setPressureCO(double pressureCO)
pressureCO
- in atm.public double getAdsorptionRate(int atomType)
atomType
- CO or O.public double[] getDesorptionRates(int type)
public double[] getDesorptionRates()
public double[] getReactionRates()
public double[] getReactionRates(boolean fake)
fake
- fake parameter.public double[] getDiffusionRates(int type)
public double[] getDiffusionRates()
public void computeAdsorptionRates()
private void setPressure(byte type, double pressure)
private double getRate(int sourceType, int sourceSite, int destinationSite)
private double getRate(int index)
private double computeAdsorptionRate(int sourceType)
sourceType
- pressures
- temperature
- private double getDesorptionRate(byte type, double energy)
type
- energy
-