Class Cell11

java.lang.Object
  extended byCell11

public class Cell11
extends java.lang.Object

Each instance is a cell within a cellular autonome. This class describes the properties of each cell.


Field Summary
 double cellStress
          Cell stress variable
 boolean isRuptured
          Question: Has cell ruptured during this timestep?
 int[] neighbour
          Array of nearest neighbours cell ids
 double overFlowStress
          Stress to be passed onto adjacent cells
 double ruptureStress
          Rupture threshold
static boolean useAsymmetric
          Question: Use assymetric redistribution rule?
static boolean usePeriodicBC
          Question: Use peroiodic boundary conditions?
 
Constructor Summary
Cell11(int newI, int newJ)
          The Cell object with a unique (x,y) position in a lattice
 
Method Summary
 double getCellStrength()
          Returns the cell strength
 double getCellStress()
          Returns the cell stress
 int getNeighbour(int i)
          Returns the ith neighbour
 double getOverFlowStress()
          Returns the overflow stress for that cell
 double getProximityToFailure()
          Sets isRuptured true for this timestep
 void incrementStress(double stressIncrement, double percentageNoise)
          Increment the cells stress using arguments
 void initiateRupture()
           
 boolean isCellRuptured()
           
 boolean isCellStressFlagged()
           
 boolean isStressAboveThreshold()
           
 void paint(java.awt.Graphics g2, int type, int cellWidth, int xOffset, int yOffset)
          Method describing how top draw a cell
 void propagateStress(double overFlowStressIncrement)
           
static void setAutonomeCellParameters(int newNx, int newNeighbourNumber, double newMaxStrength, double newMinStrength, double newBeta, boolean newUsePeriodicBC, double newMaxRelaxStressFactor)
          Sets the static runtime parameters For next run use:
 void setCellNotRuptured()
          Method to reset the cell as being not ruptured
 void setCellStressZero()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

neighbour

public int[] neighbour
Array of nearest neighbours cell ids


cellStress

public double cellStress
Cell stress variable


ruptureStress

public double ruptureStress
Rupture threshold


overFlowStress

public double overFlowStress
Stress to be passed onto adjacent cells


isRuptured

public boolean isRuptured
Question: Has cell ruptured during this timestep?


usePeriodicBC

public static boolean usePeriodicBC
Question: Use peroiodic boundary conditions?


useAsymmetric

public static boolean useAsymmetric
Question: Use assymetric redistribution rule?

Constructor Detail

Cell11

public Cell11(int newI,
              int newJ)
The Cell object with a unique (x,y) position in a lattice

Parameters:
newI - The x lattice position
newJ - The y lattice position
Method Detail

setAutonomeCellParameters

public static void setAutonomeCellParameters(int newNx,
                                             int newNeighbourNumber,
                                             double newMaxStrength,
                                             double newMinStrength,
                                             double newBeta,
                                             boolean newUsePeriodicBC,
                                             double newMaxRelaxStressFactor)
Sets the static runtime parameters For next run use:

Parameters:
newNx - Lattice dimension (Number of cells along each axis)
newMaxStrength - Maximum cell strength
newMinStrength - Minimum cell strength
newBeta - Conservation factor
newUsePeriodicBC - Question: Use periodic BC?
newMaxRelaxStressFactor - Percentage range over which the stress is to be reset above zero

setCellNotRuptured

public void setCellNotRuptured()
Method to reset the cell as being not ruptured


incrementStress

public void incrementStress(double stressIncrement,
                            double percentageNoise)
Increment the cells stress using arguments

Parameters:
stressIncrement - Value to increment stress by
percentageNoise -

getOverFlowStress

public double getOverFlowStress()
Returns the overflow stress for that cell


getProximityToFailure

public double getProximityToFailure()
Sets isRuptured true for this timestep


getCellStress

public double getCellStress()
Returns the cell stress


getCellStrength

public double getCellStrength()
Returns the cell strength


propagateStress

public void propagateStress(double overFlowStressIncrement)
Parameters:
overFlowStressIncrement -

initiateRupture

public void initiateRupture()

isCellStressFlagged

public boolean isCellStressFlagged()
Returns:

setCellStressZero

public void setCellStressZero()

isStressAboveThreshold

public boolean isStressAboveThreshold()

isCellRuptured

public boolean isCellRuptured()

getNeighbour

public int getNeighbour(int i)
Returns the ith neighbour

Parameters:
i - the ith of 4 neighbours
Returns:
the ith neighbour

paint

public void paint(java.awt.Graphics g2,
                  int type,
                  int cellWidth,
                  int xOffset,
                  int yOffset)
Method describing how top draw a cell

Parameters:
g2 -
type -
xOffset -
yOffset -
cellWidth - Width to draw cell