public class Restart
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
private long[] |
co2C
Current moment CO2 amount.
|
private long[] |
co2P
Previous moment CO2 amount.
|
private int |
counterCo2 |
private double |
currentTime |
private java.util.List<java.lang.Double> |
deltaTimeBetweenTwoAttachments |
private java.util.List<java.lang.Double> |
deltaTimePerAtom |
(package private) static java.nio.charset.Charset |
ENCODING |
private boolean |
extraOutput
Attribute to control the output of data every 1% and nucleation.
|
private boolean |
extraOutput2
Attribute to control the output of extra data of delta time between two attachments and between
an atom is deposited and attached to an island.
|
private java.lang.String |
folder |
private boolean |
isCatalysis |
private boolean |
isConcerted |
private int |
iteration |
static int |
MAX_DIMS |
private java.io.PrintWriter |
outCatalysis |
private java.io.PrintWriter |
outData |
private java.io.PrintWriter[] |
outDataAe |
private java.lang.String |
outDataFormat |
private java.io.PrintWriter |
outDeltaAttachments |
private java.io.PrintWriter |
outPerAtom |
private java.io.PrintWriter |
outTof |
private double |
previousTime |
Constructor and Description |
---|
Restart() |
Restart(boolean extraOutput,
boolean extraOutput2)
Creates a restart object to be used to write extra data files.
|
Restart(boolean catalysisOutput,
java.lang.String restartFolder) |
Restart(java.lang.String restartFolder) |
Modifier and Type | Method and Description |
---|---|
private java.lang.String |
addFolderAndSuffix(java.lang.String fileName,
java.lang.String suffix)
Normalises fileName with the folder and proper suffix.
|
private void |
createFolder(java.lang.String restartFolder) |
void |
flushCatalysis() |
void |
flushExtra() |
java.io.PrintWriter |
getExtraWriter() |
java.io.PrintWriter[] |
getExtraWriters() |
static java.lang.String |
getGitRevision() |
static java.lang.String |
getJarBaseDir()
Returns the base location of the JAR file (or the main executable instead).
|
java.lang.String |
getPsdScript(java.lang.String inputFileName,
java.lang.String outputFileName,
float min,
float max,
int sizeX,
int sizeY) |
private void |
initCatalysis(int simulationNumber) |
private void |
initConcerted(int simulationNumber) |
java.util.ArrayList<java.util.ArrayList> |
readDataTextFile(java.lang.String fileName)
Reads a file to a ArrayList of unknown size aimed to be like array[][].
|
java.lang.String |
readFile(java.lang.String fileName) |
float[][] |
readPsdText2D(int dimensions,
int[] sizes,
java.lang.String fileName) |
float[][] |
readSurfaceBinary2D(java.lang.String fileName) |
float[][] |
readSurfaceBinary2D(java.lang.String fileName,
int factor)
Reads a surface from a (binary) file and it reduces it surface by the given factor.
|
float[][] |
readSurfaceText2D(int dimensions,
int[] sizes,
java.lang.String fileName) |
float[][] |
readSurfaceText2D(java.lang.String fileName) |
void |
reset() |
void |
resetCatalysis() |
void |
writeCatalysisAdsorptionDataText(int simulationNumber,
double[][] data) |
void |
writeExtra2Output(AbstractGrowthLattice lattice,
AbstractGrowthAtom atom,
float coverage,
double time,
double diffusionRate) |
void |
writeExtraCatalysisOutput(double time,
float[] coverages,
long[] steps,
long[] co2,
int[] sizes) |
void |
writeExtraOutput(AbstractGrowthLattice lattice,
float coverage,
int nucleations,
double time,
double adsorptionRate,
double diffusionRate,
long simulatedSteps,
double sumProbabilities) |
void |
writePsdBinary(int dimensions,
int[] sizes,
float[][] data,
int simulationNumber)
Writes float data to a file called "psd[number].mko".
|
void |
writePsdBinary(int dimensions,
int[] sizes,
float[][] data,
java.lang.String fileName) |
void |
writePsdText1D(float[] data,
java.lang.String fileName) |
void |
writePsdText2D(int dimensions,
int[] sizes,
float[][] data,
int simulationNumber)
Function to print to text file each PSD result.
|
void |
writePsdText2D(int dimensions,
int[] sizes,
float[][] data,
java.lang.String fileName) |
void |
writeSurfaceBinary(int dimensions,
int[] sizes,
float[][] data,
int simulationNumber)
Writes float data to a file called "surface[number].mko".
|
void |
writeSurfaceBinary2D(float[][] data,
int simulationNumber) |
void |
writeSurfaceHexagonal(int dimensions,
int[] sizes,
float[][] data,
int simulationNumber) |
void |
writeSurfaceStationary(float[][] data) |
void |
writeSurfaceText2D(int dimensions,
int[] sizes,
float[][] data,
int simulationNumber) |
void |
writeSurfaceText2D(int dimensions,
int[] sizes,
float[][] data,
java.lang.String fileName) |
void |
writeSvg(int simulationNumber,
AbstractLattice lattice) |
void |
writeTextString(java.lang.String data,
java.lang.String fileName) |
void |
writeXyz(int simulationNumber,
AbstractLattice lattice) |
public static final int MAX_DIMS
private java.lang.String folder
static final java.nio.charset.Charset ENCODING
private int iteration
private int counterCo2
private boolean extraOutput
private boolean extraOutput2
private final boolean isCatalysis
private final boolean isConcerted
private java.lang.String outDataFormat
private java.io.PrintWriter outData
private java.io.PrintWriter[] outDataAe
private java.io.PrintWriter outDeltaAttachments
private java.io.PrintWriter outPerAtom
private java.io.PrintWriter outCatalysis
private java.io.PrintWriter outTof
private java.util.List<java.lang.Double> deltaTimeBetweenTwoAttachments
private java.util.List<java.lang.Double> deltaTimePerAtom
private double currentTime
private double previousTime
private long[] co2P
private long[] co2C
public Restart()
public Restart(java.lang.String restartFolder)
public Restart(boolean extraOutput, boolean extraOutput2)
extraOutput
- extraOutput2
- public Restart(boolean catalysisOutput, java.lang.String restartFolder)
public static java.lang.String getJarBaseDir()
public static java.lang.String getGitRevision()
public java.lang.String getPsdScript(java.lang.String inputFileName, java.lang.String outputFileName, float min, float max, int sizeX, int sizeY)
public void writePsdBinary(int dimensions, int[] sizes, float[][] data, int simulationNumber)
dimensions
- sizes
- data
- simulationNumber
- public void writePsdBinary(int dimensions, int[] sizes, float[][] data, java.lang.String fileName)
public void writeSurfaceBinary(int dimensions, int[] sizes, float[][] data, int simulationNumber)
dimensions
- sizes
- data
- simulationNumber
- public void writeSurfaceBinary2D(float[][] data, int simulationNumber)
public void writePsdText2D(int dimensions, int[] sizes, float[][] data, int simulationNumber)
dimensions
- sizes
- data
- simulationNumber
- public void writePsdText1D(float[] data, java.lang.String fileName)
public void writePsdText2D(int dimensions, int[] sizes, float[][] data, java.lang.String fileName)
public void writeSurfaceText2D(int dimensions, int[] sizes, float[][] data, int simulationNumber)
public void writeSurfaceText2D(int dimensions, int[] sizes, float[][] data, java.lang.String fileName)
public void writeSurfaceHexagonal(int dimensions, int[] sizes, float[][] data, int simulationNumber)
public void writeSurfaceStationary(float[][] data)
public void writeTextString(java.lang.String data, java.lang.String fileName)
public void writeCatalysisAdsorptionDataText(int simulationNumber, double[][] data)
public void writeXyz(int simulationNumber, AbstractLattice lattice)
public void writeSvg(int simulationNumber, AbstractLattice lattice)
public void writeExtraOutput(AbstractGrowthLattice lattice, float coverage, int nucleations, double time, double adsorptionRate, double diffusionRate, long simulatedSteps, double sumProbabilities)
public void writeExtra2Output(AbstractGrowthLattice lattice, AbstractGrowthAtom atom, float coverage, double time, double diffusionRate)
public void writeExtraCatalysisOutput(double time, float[] coverages, long[] steps, long[] co2, int[] sizes)
public java.io.PrintWriter getExtraWriter()
public java.io.PrintWriter[] getExtraWriters()
public float[][] readSurfaceBinary2D(java.lang.String fileName, int factor) throws java.io.FileNotFoundException
fileName
- factor
- how much we want to reduce the surface. A number greater than onejava.io.FileNotFoundException
public float[][] readSurfaceBinary2D(java.lang.String fileName) throws java.io.FileNotFoundException
java.io.FileNotFoundException
public float[][] readPsdText2D(int dimensions, int[] sizes, java.lang.String fileName) throws java.io.FileNotFoundException
java.io.FileNotFoundException
public float[][] readSurfaceText2D(int dimensions, int[] sizes, java.lang.String fileName) throws java.io.FileNotFoundException
java.io.FileNotFoundException
public float[][] readSurfaceText2D(java.lang.String fileName) throws java.io.FileNotFoundException
java.io.FileNotFoundException
public java.util.ArrayList<java.util.ArrayList> readDataTextFile(java.lang.String fileName) throws java.io.FileNotFoundException
fileName
- java.io.FileNotFoundException
public java.lang.String readFile(java.lang.String fileName)
public void flushExtra()
public void resetCatalysis()
public void flushCatalysis()
public void reset()
private void initCatalysis(int simulationNumber)
private void initConcerted(int simulationNumber)
private void createFolder(java.lang.String restartFolder)
private java.lang.String addFolderAndSuffix(java.lang.String fileName, java.lang.String suffix)
fileName
- input file name.suffix
- suffix to be added.