Uses of Class
solvers.dataStructures.BigRational
Packages that use BigRational
Package
Description
Basis representations of the MoM and CoMoM exact solution algorithms of JMVA.
Control logic of the JMVA solvers.
Data structures shared by the JMVA solvers (tuples, positions, lists and matrices).
Block Triangular Form (BTF) of the linear systems arising in the MoM and CoMoM algorithms, as described in the method of moments literature.
Macro blocks of the Block Triangular Form linear system decomposition used by the JMVA MoM and CoMoM solvers.
Micro blocks of the Block Triangular Form linear system decomposition used by the JMVA MoM and CoMoM solvers.
Top level blocks of the Block Triangular Form linear system decomposition used by the JMVA MoM and CoMoM solvers.
Simple linear system solvers used by JMVA.
Matrix implementation of the simple linear system solvers used by JMVA.
Linear system solver used by the exact JMVA solution algorithms.
Queueing network model of JMVA: stations, classes, service demands and visits used by the exact and approximate solution algorithms.
TreeConvolution algorithm of JMVA, the tree based version of the convolution algorithm.
Utilities of the JMVA solvers, such as the processing capacity checker used to verify that the workload can be processed by the network.
-
Uses of BigRational in solvers.basis
Fields in solvers.basis declared as BigRationalModifier and TypeFieldDescriptionprotected BigRational[]Basis.basisThe vectors in which to store the basis valuesprotected BigRational[]Basis.previous_basisMethods in solvers.basis that return BigRationalModifier and TypeMethodDescriptionBasis.getNewValue(int index) abstract BigRationalBasis.getNormalisingConstant()Returns the Normalising Constant for the current computed populationCoMoMBasis.getNormalisingConstant()Returns the Normalising Constant for the current computed populationBasis.getOldValue(int index) Methods in solvers.basis with parameters of type BigRational -
Uses of BigRational in solvers.control
Methods in solvers.control that return BigRationalModifier and TypeMethodDescriptionMoMSolverDispatcher.getNormalisingConstant()Returns the value of the normalising constant as a BigRational. -
Uses of BigRational in solvers.dataStructures
Classes in solvers.dataStructures that implement interfaces with type arguments of type BigRationalModifier and TypeClassDescriptionclassThis class is a representation of rational numbers.Fields in solvers.dataStructures declared as BigRationalModifier and TypeFieldDescriptionstatic final BigRationalBigRational.MINUS_ONEThis is a variable equal to minus one.static final BigRationalBigRational.ONEThis is a variable equal to one.static final BigRationalBigRational.ZEROThis is a variable equal to zero.Methods in solvers.dataStructures that return BigRationalModifier and TypeMethodDescriptionBigRational.abs()Returns a BigRational object equal to the absolute value of this BigRational.BigRational.add(BigRational b) Adds this number (a) to another (b)BigRational.copy()Returns a copy of the current BigRational.BigRational.divide(BigRational b) Divides this number (a) by another (b)EnhancedVector.getAsBigRational(int index) Returns the number in a specific index of the EnhancedVector as a BigRational object.QNModel.getDelayAsBigRational(int r) Returns the delay (think time) of a class as a BigRational object .QNModel.getDemandAsBigRational(int k, int r) Returns the service demand of a class at a queue as a BigRational object.BigRational[][]QNModel.getMeanQueueLengths()Returns the computed mean queue lengths Q of the current model.QNModel.getMeanThroughputs()Returns the computed mean throughputs X of the current model.QNModel.getNormalisingConstant()Returns the computed normalising constant G.BigRational.mod(BigInteger m) Returns (this mod m), allowing for negative numbers or zeros as results.BigRational.modNormal(BigInteger m) Returns (this mod m), allowing for positive numbers or zeros as results.BigRational.multiply(BigInteger b) Multiplies this number (a) with another (b)BigRational.multiply(BigRational b) Multiplies this number (a) with another (b)BigRational.negate()Negates this number (a)BigRational.pow(int n) Computes this number raised to the power of anotherBigRational.reciprocal()Return the reciprocal (1/a) of this number (a)BigRational.subtract(BigRational b) Subtracts a number (b) from this one (a)Methods in solvers.dataStructures with parameters of type BigRationalModifier and TypeMethodDescriptionBigRational.add(BigRational b) Adds this number (a) to another (b)intBigRational.compareTo(BigRational b) Compares the BigRational with another.BigRational.divide(BigRational b) Divides this number (a) by another (b)booleanBigRational.greaterOrEqualThan(BigRational b) Checks whether this number is greater than or equal to another.booleanBigRational.greaterThan(BigRational b) Checks whether this number is greater than another.BigRational.multiply(BigRational b) Multiplies this number (a) with another (b)voidQNModel.setNormalisingConstant(BigRational G) Stores the normalising constant (G) in the model description object (QNModel).voidQNModel.setPerformanceMeasures(BigRational[][] Q, BigRational[] X) Stores the performance measures (mean throughputs X and mean queue lengths Q) in the model description object (QNModel).booleanBigRational.smallerOrEqualThan(BigRational b) Checks whether this number is smaller than or equal to another.booleanBigRational.smallerThan(BigRational b) Checks whether this number is smaller than another.BigRational.subtract(BigRational b) Subtracts a number (b) from this one (a) -
Uses of BigRational in solvers.linearSystem.btf
Methods in solvers.linearSystem.btf with parameters of type BigRationalModifier and TypeMethodDescriptionvoidBTFLinearSystem.multiply(BigRational[] lhs_result, BigRational[] rhs_result) Multiplies the matrices by the values in the previous and current bases.abstract voidComponentBlock.multiply(BigRational[] result) Carries out the appropriate matrix multiplication operation for the blockabstract voidComponentBlock.solve(BigRational[] rhs) Makes the block carry out its role in the solution of the linear system -
Uses of BigRational in solvers.linearSystem.btf.macroBlocks
Fields in solvers.linearSystem.btf.macroBlocks declared as BigRationalMethods in solvers.linearSystem.btf.macroBlocks that return BigRationalModifier and TypeMethodDescriptionBlockMatrix.get(int row, int col) SparseBlock.get(int row, int col) SparseBlockMatrix.get(int row, int col) Methods in solvers.linearSystem.btf.macroBlocks with parameters of type BigRationalModifier and TypeMethodDescriptionvoidBlockMatrix.multiply(BigRational[] result) voidMacroBlock.multiply(BigRational[] result) voidSecondaryMacroBlock.multiply(BigRational[] result) voidSparseBlock.multiply(BigRational[] result) voidSparseBlockMatrix.multiply(BigRational[] result) voidBlockMatrix.solve(BigRational[] rhs) voidMacroBlock.solve(BigRational[] rhs) voidSecondaryMacroBlock.solve(BigRational[] rhs) voidSparseBlock.solve(BigRational[] rhs) voidSparseBlockMatrix.solve(BigRational[] rhs) voidBlockMatrix.write(int row, int col, BigRational value) voidSparseBlock.write(int row, int col, BigRational value) voidSparseBlockMatrix.write(int row, int col, BigRational value) -
Uses of BigRational in solvers.linearSystem.btf.microBlocks
Fields in solvers.linearSystem.btf.microBlocks declared as BigRationalModifier and TypeFieldDescriptionprotected BigRational[][]MatrixMicroBlock.arrayThe underlying arrayMethods in solvers.linearSystem.btf.microBlocks that return BigRationalModifier and TypeMethodDescriptionprotected BigRationalMatrixMicroBlock.multiplyRow(int index) LUP_Decomposition.test_solve(BigRational[] b) Solve Method used for unit testing.Methods in solvers.linearSystem.btf.microBlocks with parameters of type BigRationalModifier and TypeMethodDescriptionvoidB1MicroBlock.multiply(BigRational[] result) voidB2MicroBlock.multiply(BigRational[] result) voidCMicroBlock.multiply(BigRational[] result) voidMatrixMicroBlock.multiply(BigRational[] result) voidB1MicroBlock.solve(BigRational[] rhs) voidB2MicroBlock.solve(BigRational[] rhs) voidCMicroBlock.solve(BigRational[] rhs) voidLUP_Decomposition.solve(BigRational[] rhs) Solve method called by XMicroBlock, uses basis values and temporary basis rhsvoidXMicroBlock.solve(BigRational[] rhs) voidYMicroBlock.solve(BigRational[] rhs) voidXMicroBlock.solve2(BigRational[] rhs) Alternative solve that uses the simple linear system solverLUP_Decomposition.test_solve(BigRational[] b) Solve Method used for unit testing.Constructors in solvers.linearSystem.btf.microBlocks with parameters of type BigRationalModifierConstructorDescriptionLUP_Decomposition(CoMoMBasis basis, Position position, BigRational[][] A, boolean in_place) -
Uses of BigRational in solvers.linearSystem.btf.topLevelBlocks
Methods in solvers.linearSystem.btf.topLevelBlocks with parameters of type BigRationalModifier and TypeMethodDescriptionvoidATopLevelBlock.multiply(BigRational[] result) voidTopLevelBlock.multiply(BigRational[] result) voidATopLevelBlock.solve(BigRational[] rhs) voidTopLevelBlock.solve(BigRational[] rhs) -
Uses of BigRational in solvers.linearSystem.simple
Methods in solvers.linearSystem.simple that return BigRationalModifier and TypeMethodDescriptionSimpleLinearSystem.multiplylhs()SimpleLinearSystem.multiplyrhs()Multiply methods for testing purposes -
Uses of BigRational in solvers.linearSystem.simple.matrix
Methods in solvers.linearSystem.simple.matrix that return BigRationalModifier and TypeMethodDescriptionabstract BigRationalMatrix.get(int row, int col) Returns value a (row, col)StandardMatrix.get(int row, int col) abstract BigRational[][]Matrix.getArray()Returns the matrix as a BigRational[][] arrayBigRational[][]StandardMatrix.getArray()StandardMatrix.getDeterminatnt()abstract BigRational[]Matrix.multiply()Multiplies the previous basis by the matrixStandardMatrix.multiply()Methods in solvers.linearSystem.simple.matrix with parameters of type BigRationalModifier and TypeMethodDescriptionabstract voidMatrix.write(int row, int col, BigRational v) Writes value v at position (row,col) in matrixvoidStandardMatrix.write(int row, int col, BigRational v) -
Uses of BigRational in solvers.linearSystemSolver
Fields in solvers.linearSystemSolver declared as BigRationalModifier and TypeFieldDescriptionprotected BigRational[][]Solver.AHolds the initial version of A, as calling solve(..) destroys A's contents (the calculations are performed in-place).protected BigRational[]Solver.bThe vector b of the linear system Ax = b.protected BigRational[][]Solver.cleanAHolds the initial version of A, as calling solve(..) destroys A's contents (the calculations are performed in-place).protected static final BigRationalSolver.EPSILONIt is used to determine wheter the matrix A is singular.Methods in solvers.linearSystemSolver that return BigRationalModifier and TypeMethodDescriptionModularSolverParallelTask.getDetRes()Returns the value of the residual determinant.ModularSolverParallelTask.getyRes()The array of the semi-combined residual solutions.ModularSolver.solve(BigRational[] bInput) Solves the linear system using residual systems solved by Gaussian eliminationSimpleSolver.solve(BigRational[] b) Solves the linear system using Gaussian elimination with partial pivotingSolver.solve(BigRational[] b) Solves the linear system.SolverInterface.solve(BigRational[] b) Gaussian elimination linear system solver with partial pivoting.Methods in solvers.linearSystemSolver with parameters of type BigRationalModifier and TypeMethodDescriptionvoidModularSolver.initialise(BigRational[][] A, List<Tuple<Integer, Integer>> UList, Set<Integer> uncomputables, int maxA, BigInteger maxb, BigRational maxG) voidSolver.initialise(BigRational[][] A) Initialises the solver object.voidSolver.initialise(BigRational[][] A, List<Tuple<Integer, Integer>> UList, Set<Integer> uncomputables) Initialises the solver object, taking into account a list of positions of A that may need to be updated when requested.voidSolver.initialise(BigRational[][] A, List<Tuple<Integer, Integer>> UList, Set<Integer> uncomputables, int maxA, BigInteger maxb, BigRational maxG) Initialises the solver object, taking into account a list of positions of A that may need to be updated when requested.voidSolverInterface.initialise(BigRational[][] A) Initialises the solver object.voidSolverInterface.initialise(BigRational[][] A, List<Tuple<Integer, Integer>> UList, Set<Integer> uncomputables) Initialises the solver object, taking into account a list of positions of A that may need to be updated when requested.voidModularSolverParallelTask.prepare(BigRational[][] Amod, BigRational[] b, Set<Integer> rowsToSkip, Set<Integer> columnsToSkip) Initialises a ModularSolverParallelTask object for solving a residual linear system Ax=b.ModularSolver.solve(BigRational[] bInput) Solves the linear system using residual systems solved by Gaussian eliminationSimpleSolver.solve(BigRational[] b) Solves the linear system using Gaussian elimination with partial pivotingSolver.solve(BigRational[] b) Solves the linear system.SolverInterface.solve(BigRational[] b) Gaussian elimination linear system solver with partial pivoting. -
Uses of BigRational in solvers.queueingnet
Fields in solvers.queueingnet declared as BigRationalModifier and TypeFieldDescriptionprotected BigRationalQNSolver.GThe normalising constant is stored here after it has been computed.Fields in solvers.queueingnet with type parameters of type BigRationalModifier and TypeFieldDescriptionprotected Map<Integer, BigRational> RecursiveSolver.factorialThe factorials for some numbers are pre-computed for efficiency reasons.protected Map<PopulationVector, Map<MultiplicitiesVector, BigRational>> RecursiveSolver.GmapHere is stored every normalising constant computed.Methods in solvers.queueingnet that return BigRationalModifier and TypeMethodDescriptionConvolutionSolver.compute(MultiplicitiesVector m, PopulationVector p) Computes any normalising constant using a simple recursion and taking advantage of any already computed and stored value.protected BigRationalRECALNonRecursiveSolver.compute(MultiplicitiesVector finalm, PopulationVector finalp) Computes any normalising constant non-recursively and by taking advantage of any already computed and stored value.protected BigRationalRECALSolver.compute(MultiplicitiesVector m, PopulationVector p) Computes any normalising constant using a simple recursion and taking advantage of any already computed and stored value.protected BigRationalRecursiveSolver.compute(MultiplicitiesVector m, PopulationVector p) Computes any normalising constant using a simple recursion and taking advantage of any already computed and stored value.protected BigRationalRGFSolver.compute(MultiplicitiesVector m, PopulationVector p, int q, BigRational[][] load) protected BigRationalRecursiveSolver.findG(MultiplicitiesVector m, PopulationVector p) Searches for a normalising constant in the memory.protected BigRationalRecursiveSolver.initialConditionFor(PopulationVector n) Returns the initial condition corresponding to a particular PopulationVector object.protected BigRationalRecursiveSolver.recallG(MultiplicitiesVector m, PopulationVector p) Searches for a normalising constant in the memory.Methods in solvers.queueingnet with parameters of type BigRationalModifier and TypeMethodDescriptionprotected BigRationalRGFSolver.compute(MultiplicitiesVector m, PopulationVector p, int q, BigRational[][] load) protected voidRecursiveSolver.storeG(MultiplicitiesVector m, PopulationVector p, BigRational Gval) Stores a computed normalising constant value for future re-use.protected voidRecursiveSolver.storeG(MultiplicitiesVector m, PopulationVector p, BigRational Gval, Map<PopulationVector, Map<MultiplicitiesVector, BigRational>> map) Stores at a particular Map<PopulationVector, Map<MultiplicitiesVector, BigRational>> data structure a computed normalising constant value for future re-use.Method parameters in solvers.queueingnet with type arguments of type BigRationalModifier and TypeMethodDescriptionprotected voidRecursiveSolver.storeG(MultiplicitiesVector m, PopulationVector p, BigRational Gval, Map<PopulationVector, Map<MultiplicitiesVector, BigRational>> map) Stores at a particular Map<PopulationVector, Map<MultiplicitiesVector, BigRational>> data structure a computed normalising constant value for future re-use. -
Uses of BigRational in solvers.queueingnet.treeAlgorithms.treeConvolution
Methods in solvers.queueingnet.treeAlgorithms.treeConvolution that return BigRationalModifier and TypeMethodDescriptionBigRational[][]IThreadedTCSolver.calculateMeanQueueLengths(PopulationVector p) Calculates per class and per station mean queue lengths using methods outlined in LamLien83 paper.BigRational[][]MultiThreadTCSolver.calculateMeanQueueLengths(PopulationVector p) Calculates per class and per station mean queue lengths using methods outlined in LamLien83 paper.BigRational[][]SingleThreadTCSolver.calculateMeanQueueLengths(PopulationVector p) Calculates per class and per station mean queue lengths using methods outlined in LamLien83 paper.IThreadedTCSolver.calculateThroughputs(PopulationVector p) Calculates per class throughputs using methods outlined in LamLien83 paper.MultiThreadTCSolver.calculateThroughputs(PopulationVector p) Calculates per class throughputs using methods outlined in LamLien83 paper.SingleThreadTCSolver.calculateThroughputs(PopulationVector p) Calculates per class throughputs using methods outlined in LamLien83 paper.IThreadedTCSolver.computeG(Node node, PopulationVector pv) Compute G using postorder tree traversal.MultiThreadTCSolver.computeG(Node node, PopulationVector pv) Computes G using postorder tree traversal.SingleThreadTCSolver.computeG(Node node, PopulationVector pv) Computes G using postorder tree traversal.ConvolutionLayer.computeGmPlusStoreMultiple(Node cloneParent, PopulationVector p, int m) Calculates Gm+(n-1_k) by storing multiple g arrays, one for each partially covered class in pc.ConvolutionLayer.computeGmPlusStoreSingle(Node cloneParent, PopulationVector p, int m) Calculates Gm+(n-1_k) using first method from section 4.2 in Lam/Lien paper.ConvolutionLayer.computeGNminusOneMethod1(Node root, int k, PopulationVector pv) Computes the normalisation constant G(N - 1_k) for the specified class k, required to calculate the chain throughputs. -
Uses of BigRational in solvers.utilities
Methods in solvers.utilities that return BigRationalModifier and TypeMethodDescriptionstatic BigRationalMiscMathsFunctions.computeFactorial(int n) Computes the factorial for a given number and returns the result as a BigRational.static BigRational[]MiscMathsFunctions.createBigRationalArray(int[] s) Transforms an array of ints to an array of BigRationals.static BigRational[][]MiscMathsFunctions.createBigRationalArray(int[][] d) Transforms an array of ints to an array of BigRationals.static BigRational[]MiscMathsFunctions.matrixVectorMultiply(BigRational[][] A, BigRational[] v) Multiplies a two-dimensional matrix of BigRationals with a one-dimensional one.static BigRational[]MiscMathsFunctions.matrixVectorMultiplyJ(BigRational[][] A, BigRational[] v) Methods in solvers.utilities that return types with arguments of type BigRationalModifier and TypeMethodDescriptionstatic Map<Integer, BigRational> MiscMathsFunctions.computeFactorials(int n) Computes the factorials up to a given number and returns them as a Map<Integer,BigRational>.Methods in solvers.utilities with parameters of type BigRationalModifier and TypeMethodDescriptionstatic voidMiscMathsFunctions.dotprintMatrix(BigRational[][] A) static BigRational[]MiscMathsFunctions.matrixVectorMultiply(BigRational[][] A, BigRational[] v) Multiplies a two-dimensional matrix of BigRationals with a one-dimensional one.static BigRational[]MiscMathsFunctions.matrixVectorMultiplyJ(BigRational[][] A, BigRational[] v) static voidMiscMathsFunctions.printMatrix(BigRational[] A) Prints a 1-dimensional matrix.static voidMiscMathsFunctions.printMatrix(BigRational[][] A) Prints a 2-dimensional matrixstatic voidMiscMathsFunctions.printPrettyMatrix(BigRational[] A) Prints a 1-dimensional matrix of BigRationals as doubles.static voidMiscMathsFunctions.printPrettyMatrix(BigRational[][] A) Prints a 2-dimensional matrix of BigRationals as doubles.