pipe.modules.predatorInvariantAnalysis
Class Analysis

java.lang.Object
  extended bypipe.modules.predatorInvariantAnalysis.Analysis

public class Analysis
extends java.lang.Object


Field Summary
private  java.util.Vector arcSources
           
private  java.util.Vector arcTargets
           
private  java.util.Vector arcValues
           
private  int[][] b
           
private  int bCols
           
private  int bRows
           
private  int[][] c
           
private  int[][] cminus
           
private  int[][] cplus
           
private  int currCColNum
           
private  int currCRowNum
           
 int exCopyCol
           
 int exCopyRow
           
 int[][] extend
           
private  int extendCols
           
 int[][] extendCopy
           
private  int extendRows
           
(package private)  javax.swing.JFrame frame
           
 InvariantDialog invariantDialog
           
(package private)  javax.swing.JLabel jLabel1
           
private  boolean pCovered
           
private  java.util.Vector placeMarkings
           
private  java.util.Vector placeNames
           
private  int placeNum
           
 java.util.Vector subnetArcSource
           
 java.util.Vector subnetArcTarget
           
 java.util.Vector subnetArcWeight
           
private  boolean tCovered
           
private  int[][] tinvars
           
private  int tranNum
           
private  java.util.Vector transitionNames
           
 
Constructor Summary
Analysis()
           
 
Method Summary
 void addArcSourceTarget(java.lang.String arcSource, java.lang.String arcTarget)
           
 void addArcValue(int value)
           
private  int[][] addColumnToB()
           
 void addDataToC(java.lang.String arcSource, java.lang.String arcTarget, boolean tranTarget, int theValue)
           
 void addPlaceName(java.lang.String placeName)
           
 void addSubnetArcsToC()
           
 void addToPlaceMarkings(java.lang.Integer marking)
           
 void addTransitionName(java.lang.String transitionName)
           
private  java.util.Vector algorithm1_1()
           
private  void arrayInitialisation()
           
private  void clearAllArrays()
           
 void clearAllVectors()
           
private  int[][] copyB()
           
private  void deleteColsWithoutMinimalSupport()
           
private  void deleteColumn(int[][] array, int colNum, int totalColNum)
           
 void deleteExtendedColumn(int colNum)
           
private  void divideByGCD(int[][] array, int colNum)
           
 void executeAlgorithm()
           
 void executeAlgorithm(boolean transpose)
           
 void fillC()
           
private  int firstNonZeroColumn(int h)
           
private  int firstNonZeroRowC()
           
private  int gcd(int x, int y)
           
private  void generateArray(int[][] array, int rows, int col)
           
private  java.lang.String generateCoveredString()
           
 void generateCPlusCMinus()
           
 void generateExtend()
           
private  int[][] generateInitialiseZeroArray(int[][] array, int rows, int col)
           
private  java.lang.String generatePinvarDisplay(boolean equation)
           
private  java.lang.String generateTinvarDisplay(boolean equation)
           
private  void generatingDisplay()
           
private  int getGCD(int[][] array, int colNum)
           
 java.lang.String getModuleName()
           
private  void identityMatrix(int[][] array)
           
private  void initialiseArray(int[] array, int value)
           
private  void initialiseC(int[][] array)
           
private  void initialiseExtend()
           
private  void initialiseTranspose()
           
private  void initialiseZero(int[][] ar)
           
private  void linearCombination(int j, int k, int alpha, int beta)
           
private  void linearCombToNewColumn(int j, int k, int h, int newCol)
           
private  boolean modulus1_1b(int[] pplus, int[] pminus)
           
private  boolean nonZero()
           
private  void phase2()
           
private  void phase2(boolean transpose)
           
private  int pMinusCombine(int h)
           
private  int pPlusCombine(int h)
           
private  void print2DArray(int[][] array)
           
private  void print2DArray(int[][] array, int rowNum, int colNum)
           
private  boolean rowWithNegativeElementB()
           
private  int rowWithNegativeElementBNumber()
           
 void runModule()
           
private  void setPPlusAndPMinus(int[][] array, int h, int[] pPlus, int[] pMinus)
           
 void setUpVariables()
           
private  int sign(int x)
           
private  void substituteColumns1(int h, int k)
           
private  void substituteColumns2(int h, int k)
           
 void testAlgorithm()
           
private  void tinvars()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

placeNames

private java.util.Vector placeNames

transitionNames

private java.util.Vector transitionNames

arcSources

private java.util.Vector arcSources

arcTargets

private java.util.Vector arcTargets

arcValues

private java.util.Vector arcValues

placeMarkings

private java.util.Vector placeMarkings

subnetArcSource

public java.util.Vector subnetArcSource

subnetArcTarget

public java.util.Vector subnetArcTarget

subnetArcWeight

public java.util.Vector subnetArcWeight

placeNum

private int placeNum

tranNum

private int tranNum

c

private int[][] c

cplus

private int[][] cplus

cminus

private int[][] cminus

b

private int[][] b

tinvars

private int[][] tinvars

extendCols

private int extendCols

extendRows

private int extendRows

currCColNum

private int currCColNum

currCRowNum

private int currCRowNum

bRows

private int bRows

bCols

private int bCols

pCovered

private boolean pCovered

tCovered

private boolean tCovered

extend

public int[][] extend

extendCopy

public int[][] extendCopy

exCopyRow

public int exCopyRow

exCopyCol

public int exCopyCol

jLabel1

javax.swing.JLabel jLabel1

frame

javax.swing.JFrame frame

invariantDialog

public InvariantDialog invariantDialog
Constructor Detail

Analysis

public Analysis()
Method Detail

generateArray

private void generateArray(int[][] array,
                           int rows,
                           int col)

generateInitialiseZeroArray

private int[][] generateInitialiseZeroArray(int[][] array,
                                            int rows,
                                            int col)

initialiseC

private void initialiseC(int[][] array)

identityMatrix

private void identityMatrix(int[][] array)

initialiseZero

private void initialiseZero(int[][] ar)

clearAllArrays

private void clearAllArrays()

tinvars

private void tinvars()

initialiseTranspose

private void initialiseTranspose()

initialiseExtend

private void initialiseExtend()

initialiseArray

private void initialiseArray(int[] array,
                             int value)

algorithm1_1

private java.util.Vector algorithm1_1()

nonZero

private boolean nonZero()

deleteExtendedColumn

public void deleteExtendedColumn(int colNum)

modulus1_1b

private boolean modulus1_1b(int[] pplus,
                            int[] pminus)

linearCombination

private void linearCombination(int j,
                               int k,
                               int alpha,
                               int beta)

firstNonZeroRowC

private int firstNonZeroRowC()

firstNonZeroColumn

private int firstNonZeroColumn(int h)

arrayInitialisation

private void arrayInitialisation()

executeAlgorithm

public void executeAlgorithm()

executeAlgorithm

public void executeAlgorithm(boolean transpose)

phase2

private void phase2()

phase2

private void phase2(boolean transpose)

deleteColumn

private void deleteColumn(int[][] array,
                          int colNum,
                          int totalColNum)

linearCombToNewColumn

private void linearCombToNewColumn(int j,
                                   int k,
                                   int h,
                                   int newCol)

divideByGCD

private void divideByGCD(int[][] array,
                         int colNum)

getGCD

private int getGCD(int[][] array,
                   int colNum)

gcd

private int gcd(int x,
                int y)

addColumnToB

private int[][] addColumnToB()

setPPlusAndPMinus

private void setPPlusAndPMinus(int[][] array,
                               int h,
                               int[] pPlus,
                               int[] pMinus)

rowWithNegativeElementB

private boolean rowWithNegativeElementB()

rowWithNegativeElementBNumber

private int rowWithNegativeElementBNumber()

copyB

private int[][] copyB()

sign

private int sign(int x)

pPlusCombine

private int pPlusCombine(int h)

pMinusCombine

private int pMinusCombine(int h)

substituteColumns1

private void substituteColumns1(int h,
                                int k)

substituteColumns2

private void substituteColumns2(int h,
                                int k)

addTransitionName

public void addTransitionName(java.lang.String transitionName)

addPlaceName

public void addPlaceName(java.lang.String placeName)

addArcSourceTarget

public void addArcSourceTarget(java.lang.String arcSource,
                               java.lang.String arcTarget)

addArcValue

public void addArcValue(int value)

addSubnetArcsToC

public void addSubnetArcsToC()

addDataToC

public void addDataToC(java.lang.String arcSource,
                       java.lang.String arcTarget,
                       boolean tranTarget,
                       int theValue)

getModuleName

public java.lang.String getModuleName()

clearAllVectors

public void clearAllVectors()

runModule

public void runModule()

generateCPlusCMinus

public void generateCPlusCMinus()

generateExtend

public void generateExtend()

deleteColsWithoutMinimalSupport

private void deleteColsWithoutMinimalSupport()

addToPlaceMarkings

public void addToPlaceMarkings(java.lang.Integer marking)

print2DArray

private void print2DArray(int[][] array)

print2DArray

private void print2DArray(int[][] array,
                          int rowNum,
                          int colNum)

testAlgorithm

public void testAlgorithm()

fillC

public void fillC()

setUpVariables

public void setUpVariables()

generatingDisplay

private void generatingDisplay()

generateTinvarDisplay

private java.lang.String generateTinvarDisplay(boolean equation)

generatePinvarDisplay

private java.lang.String generatePinvarDisplay(boolean equation)

generateCoveredString

private java.lang.String generateCoveredString()