Uses of Class
solvers.queueingnet.treeAlgorithms.Node
Packages that use Node
Package
Description
Tree based exact algorithms of JMVA: TreeMVA and TreeConvolution, which reduce the complexity of the exact solution of large closed models.
TreeMVA algorithm of JMVA, the tree based version of the exact Mean Value Analysis.
TreeConvolution algorithm of JMVA, the tree based version of the convolution algorithm.
-
Uses of Node in solvers.queueingnet.treeAlgorithms
Fields in solvers.queueingnet.treeAlgorithms declared as NodeModifier and TypeFieldDescriptionprotected NodeNode.leftChildThis node's left child.protected NodeNode.parentThis node's parent node.protected NodeNode.rightChildThis node's right child.Methods in solvers.queueingnet.treeAlgorithms that return NodeModifier and TypeMethodDescriptionNode.clone()Creates a clone of this node.TreePlanter.createTreeWithClonedStation(int m) Creates a copy of the current tree with station m cloned as an additional leaf node.TreePlanter.createTreeWithRemovedStation(int m) Creates a copy of the current tree with the node for station m removed.Node.leftChild()Returns the left child node.Merges this node with another node by combining the stations.Node.parent()Returns the parent node.Node.rightChild()Returns the right child node.TreePlanter.rootClone()Creates and returns a clone of the planted tree's root node.TreePlanter.treeRoot()Gets the planted tree's root node.Methods in solvers.queueingnet.treeAlgorithms with parameters of type NodeModifier and TypeMethodDescriptionprotected doubleComplexityEvaluator.calculateFcsToPcsRatio(Node root) Gets the ratio of fully covered classes to partially covered classes in the network.protected intComplexityEvaluator.calculateNumberOfPcs(Node root) intClassCoverageUtils.calculateSubnetWeight(Node n) Calculates the weight of a subnetwork by implementing equation (10) from the LamLien83 paper.abstract voidTreeTraverser.computeSubnetNode(Node node, PopulationVector pv) Abstract method which an extending class will override to define subnetwork node computations.abstract ThreadTreeTraverserMulti.getComputeLeafNodeThread(Node node, PopulationVector pv) Abstract method which an extending class will override to define leaf node computations.protected abstract ComplexityEvaluator.ComplexityBundleComplexityEvaluator.getLeafNodeComplexity(Node node, PopulationVector pv) Gets the complexity of a leaf node computation in the tree algorithm.protected abstract ComplexityEvaluator.ComplexityBundleComplexityEvaluator.getSubnetNodeComplexity(Node node, PopulationVector pv) Gets the complexity of a subnetwork node computation in the tree algorithm.abstract ThreadTreeTraverserMulti.getSubnetNodeThread(Node node, PopulationVector pv) Abstract method which an extending class will override to define subnetwork node computations.protected ComplexityEvaluator.ComplexityBundleComplexityEvaluator.getTreeComplexity(Node node, PopulationVector pv) Gets the complexity of running the tree algorithm over the specified tree.intComplexityEvaluator.getTreeWithBestComplexity(Node[] roots, PopulationVector pv) Determines which tree from a list has the best complexity characteristics.abstract voidTreeTraverser.initLeafNode(Node node, PopulationVector pv) Abstract method which an extending class will override to define leaf node computations.voidTreeTraverser.iterativeTraverse(Node root, PopulationVector pv) Iteratively traverses a tree from the specified node in a post-order fashion, performing computations at each node.Merges this node with another node by combining the stations.<T extends Comparable<?>>
voidPrints the specified node and then its children recursively.voidPrints a tree from specific root node.voidTreeTraverser.recursiveTraverse(Node node, PopulationVector pv) Recursively traverses a tree from the specified node in a post-order fashion, performing computations at each node.voidNode.setLeftChild(Node leftChild) Sets the left child node.voidSets this parent.voidNode.setRightChild(Node rightChild) Sets the right child node.voidTreeTraverserMulti.traverse(Node node, PopulationVector pv) Runs a recursive multi-threaded traversal and waits for the result.abstract booleanComplexityEvaluator.treeHasAcceptableComplexity(Node root, PopulationVector pv) Determines if the tree algorithm for the specified tree has better complexity characteristics than the standard/sequential algorithm for the same network. -
Uses of Node in solvers.queueingnet.treeAlgorithms.tmva
Methods in solvers.queueingnet.treeAlgorithms.tmva with parameters of type NodeModifier and TypeMethodDescriptionvoidSingleThreadTMVASolver.computeSubnetNode(Node node, PopulationVector pv) Method to run at the parent's of leaf nodes in the TMVA tree.voidTMVACore.computeSubnetNode(Node ab) Computes the TMVA results at a subnet node.MultiThreadTMVASolver.getComputeLeafNodeThread(Node node, PopulationVector pv) Computes results at a leaf node by creating a suitable thread to run the computation.protected ComplexityEvaluator.ComplexityBundleTMVAComplexityEvaluator.getLeafNodeComplexity(Node node, PopulationVector pv) Gets the complexity of a leaf node computation in the TMVA algorithm.protected ComplexityEvaluator.ComplexityBundleTMVAComplexityEvaluator.getSubnetNodeComplexity(Node node, PopulationVector pv) Gets the complexity of a subnetwork node computation in the TMVA algorithm.MultiThreadTMVASolver.getSubnetNodeThread(Node node, PopulationVector pv) Computes results at a subnetwork node by creating a suitable thread to run the computation.voidSingleThreadTMVASolver.initLeafNode(Node node, PopulationVector pv) Method to run at leaf nodes in the TMVA tree.voidTMVACore.initLeafNode(Node node) Initialises the specified leaf node, using the formulas in Hoyme's paper.StandardMVASolver.sequentialMVA(Node node, PopulationVector N) IThreadedTMVASolver.solve(Node node, PopulationVector N) Solves the network rooted at the specified node.MultiThreadTMVASolver.solve(Node node, PopulationVector N) Solves the network rooted at the specified node using TMVA.SingleThreadTMVASolver.solve(Node node, PopulationVector N) Solves the network rooted at the specified node.StandardMVASolver.solve(Node node, PopulationVector N) Solves the network rooted at the specified node.booleanTMVAComplexityEvaluator.treeHasAcceptableComplexity(Node root, PopulationVector pv) Determines if the TMVA for the specified tree has better complexity characteristics than the standard/sequential MVA algorithm for the same network. -
Uses of Node in solvers.queueingnet.treeAlgorithms.treeConvolution
Methods in solvers.queueingnet.treeAlgorithms.treeConvolution with parameters of type NodeModifier and TypeMethodDescriptionIThreadedTCSolver.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.voidConvolutionCore.computeLeafNodeGArray(Node n, PopulationVector popVec, boolean backup) Computes the g-array at the specified leaf node by implementing Eq.voidConvolutionLayer.computeLeafNodeGArray(Node node, PopulationVector popVec) Wraps the computation of leaf node g-arrays so that the solvers do not need direct access to the convolution core.voidSingleThreadTCSolver.computeSubnetNode(Node node, PopulationVector pv) Computes results at subnetwork node by delegating to the convolution layer.voidConvolutionCore.computeSubnetNodeGArray(Node node, PopulationVector popVec, boolean backup) Computes the g-array at the specified subnet (non-leaf) node.voidConvolutionLayer.computeSubnetNodeGArray(Node node, PopulationVector popVec) Wraps the computation of subnet node g arrays so that the solvers do not need direct access to the convolution core.voidConvolutionCore.feedbackFilter(Node parentNode, PopulationVector parentPcMax, PopulationVector popVec, boolean backup) Implements equation (6) from Lam/Lien for combining two leaf node stations, more efficient than normal convolution if one is a fixed-rate station.MultiThreadTCSolver.getComputeLeafNodeThread(Node node, PopulationVector pv) Computes results at leaf node by creating an appropriate thread to run the computation.protected ComplexityEvaluator.ComplexityBundleTCComplexityEvaluator.getLeafNodeComplexity(Node n, PopulationVector popVec) Gets the complexity of a leaf node computation in the tree convolution algorithm.protected ComplexityEvaluator.ComplexityBundleTCComplexityEvaluator.getSubnetNodeComplexity(Node n, PopulationVector popVec) Gets the complexity of a subnetwork node computation in the tree convolution algorithm.MultiThreadTCSolver.getSubnetNodeThread(Node node, PopulationVector pv) Computes results at subnetwork node by creating an appropriate thread to run the computation.voidSingleThreadTCSolver.initLeafNode(Node node, PopulationVector pv) Computes results at leaf node by delegating to the convolution layer.protected BigDecimalConvolutionCore.leafNodeDelayInitalCondition(PopulationVector p, PopulationVector popVec, Node n) Computes the g-array at the specified leaf node representing a delay station.booleanTCComplexityEvaluator.treeHasAcceptableComplexity(Node root, PopulationVector pv) Determines if the tree convolution algorithm for the specified tree has better complexity characteristics than the standard/sequential algorithm for the same network.