Package jline.lang

Class Network

All Implemented Interfaces:
Serializable

public class Network extends Model implements Serializable
A queueing network model
See Also:
  • Constructor Details

    • Network

      public Network(String modelName)
  • Method Details

    • serialRouting

      public static RoutingMatrix serialRouting(List<JobClass> jobClasses, Node... nodes)
    • serialRouting

      public static RoutingMatrix serialRouting(List<JobClass> jobClasses, List<Node> nodes)
    • serialRouting

      public static RoutingMatrix serialRouting(JobClass jobClass, Node... nodes)
    • serialRouting

      public static RoutingMatrix serialRouting(JobClass jobClass, List<Node> nodes)
    • serialRouting

      public static RoutingMatrix serialRouting(Node... nodes)
    • serialRouting

      public static RoutingMatrix serialRouting(List<Node> nodes)
    • tandem

      public static Network tandem(Matrix lambda, Matrix D, SchedStrategy[] strategy, Matrix S)
    • tandemFcfsInf

      public static Network tandemFcfsInf(Matrix lambda, Matrix D)
    • tandemFcfsInf

      public static Network tandemFcfsInf(Matrix lambda, Matrix D, Matrix Z)
    • tandemFcfsInf

      public static Network tandemFcfsInf(Matrix lambda, Matrix D, Matrix Z, Matrix S)
    • tandemPsInf

      public static Network tandemPsInf(Matrix lambda, Matrix D)
    • tandemPsInf

      public static Network tandemPsInf(Matrix lambda, Matrix D, Matrix Z)
    • tandemPs

      public static Network tandemPs(Matrix lambda, Matrix D, Matrix S)
    • tandemFcfs

      public static Network tandemFcfs(Matrix lambda, Matrix D, Matrix S)
    • tandemPsInf

      public static Network tandemPsInf(Matrix lambda, Matrix D, Matrix Z, Matrix S)
    • cyclic

      public static Network cyclic(Matrix N, Matrix D, SchedStrategy[] strategy, Matrix S)
    • cyclicPs

      public static Network cyclicPs(Matrix N, Matrix D, Matrix S)
    • cyclicFcfs

      public static Network cyclicFcfs(Matrix N, Matrix D, Matrix S)
    • cyclicPsInf

      public static Network cyclicPsInf(Matrix N, Matrix D, Matrix S)
    • cyclicPsInf

      public static Network cyclicPsInf(Matrix N, Matrix D, Matrix Z, Matrix S)
    • cyclicFcfsInf

      public static Network cyclicFcfsInf(Matrix N, Matrix D, Matrix Z)
    • cyclicFcfsInf

      public static Network cyclicFcfsInf(Matrix N, Matrix D, Matrix Z, Matrix S)
    • main

      public static void main(String[] args)
    • initFromAvgTable

      public void initFromAvgTable(NetworkAvgTable nt)
    • initFromAvgQLen

      public void initFromAvgQLen(Matrix AvgQLen)
    • getClassChain

      public Chain getClassChain(JobClass jobClass)
    • getClassChainIndex

      public int getClassChainIndex(JobClass jobClass)
    • getChains

      public List<Chain> getChains()
    • setChecks

      public void setChecks(boolean doChecks)
    • getSize

      public int[] getSize()
    • hasOpenClasses

      public boolean hasOpenClasses()
    • hasProductFormSolution

      public boolean hasProductFormSolution()
    • getJobClassIndex

      public int getJobClassIndex(JobClass jobClass)
    • getJobClassFromIndex

      public JobClass getJobClassFromIndex(int inIdx)
    • getIndexOpenClasses

      public List<Integer> getIndexOpenClasses()
    • getIndexStatefulNodes

      public List<Integer> getIndexStatefulNodes()
    • hasClosedClasses

      public boolean hasClosedClasses()
    • getIndexClosedClasses

      public List<Integer> getIndexClosedClasses()
    • hasClasses

      public boolean hasClasses()
    • getClasses

      public List<JobClass> getClasses()
    • getNodes

      public List<Node> getNodes()
    • getStations

      public List<Station> getStations()
    • addNode

      public void addNode(Node node)
    • addRegion

      public void addRegion(List<Node> nodes)
    • setInitialized

      public void setInitialized(boolean initStatus)
    • getNumberOfNodes

      public int getNumberOfNodes()
    • getNumberOfStations

      public int getNumberOfStations()
    • getNumberOfStatefulNodes

      public int getNumberOfStatefulNodes()
    • getNumberOfClasses

      public int getNumberOfClasses()
    • getClassByName

      public JobClass getClassByName(String name)
    • getStationByName

      public Station getStationByName(String name)
    • getClassByIndex

      public JobClass getClassByIndex(int index)
    • getStationByIndex

      public Station getStationByIndex(int index)
    • getStationIndexes

      public List<Integer> getStationIndexes(int index)
    • addJobClass

      public void addJobClass(JobClass jobClass)
    • getNodeByName

      public Node getNodeByName(String name)
    • getNodeByIndex

      public Node getNodeByIndex(int idx)
    • getNodeByStatefulIndex

      public Node getNodeByStatefulIndex(int idx)
    • getNodeIndex

      public int getNodeIndex(Node node)
    • getNodeIndex

      public int getNodeIndex(String name)
    • getStatefulNodeIndex

      public int getStatefulNodeIndex(Node node)
    • getStatefulNodeFromIndex

      public Node getStatefulNodeFromIndex(int inIdx)
    • getStationIndex

      public int getStationIndex(Node node)
    • getStationFromIndex

      public Node getStationFromIndex(int inIdx)
    • link

      public void link(RoutingMatrix routing)
    • relink

      public void relink(RoutingMatrix routing)
    • unLink

      public void unLink()
    • addLink

      public void addLink(Node sourceNode, Node destNode)
    • addLink

      public void addLink(int sourceNodeIdx, int destNodeIdx)
    • addLinks

      public void addLinks(Node[][] links)
    • getState

      public State getState()
    • hasInitState

      public boolean hasInitState()
    • isLimitedLoadDependent

      public boolean isLimitedLoadDependent()
    • initDefault

      public void initDefault()
    • isStateValid

      public boolean isStateValid()
    • summary

      public void summary()
    • clearCaches

      public void clearCaches()
    • generateClassLinks

      protected void generateClassLinks()
    • getClassLinks

      public int getClassLinks(Node node, JobClass jobClass)
    • getCsMatrix

      public Matrix getCsMatrix()
    • setCsMatrix

      public void setCsMatrix(Matrix csMatrix)
    • getConnectionMatrix

      public Matrix getConnectionMatrix()
    • setConnectionMatrix

      public void setConnectionMatrix(Matrix connection)
    • getForkJoins

      public Matrix getForkJoins()
    • getHasStruct

      public boolean getHasStruct()
    • setHasStruct

      public void setHasStruct(boolean hasStruct)
    • getStruct

      public NetworkStruct getStruct()
    • setStruct

      public void setStruct(NetworkStruct sn)
    • getStruct

      public NetworkStruct getStruct(boolean wantInitialState)
    • refreshStruct

      public void refreshStruct(boolean hardRefresh)
    • sanitize

      public void sanitize()
    • getNodeTypes

      public List<NodeType> getNodeTypes()
    • getClassNames

      public List<String> getClassNames()
    • getNodeNames

      public List<String> getNodeNames()
    • getReferenceStations

      public Matrix getReferenceStations()
    • getReferenceClasses

      public Matrix getReferenceClasses()
    • getIndexSourceNode

      public int getIndexSourceNode()
    • getSource

      public Source getSource()
    • getSink

      public Sink getSink()
    • getIndexSinkNode

      public int getIndexSinkNode()
    • getNumberOfJobs

      public Matrix getNumberOfJobs()
    • getStationServers

      public Matrix getStationServers()
    • getLimitedLoadDependence

      public Matrix getLimitedLoadDependence()
    • getLimitedClassDependence

      public Map<Station,SerializableFunction<Matrix,Double>> getLimitedClassDependence()
    • getRoutingStrategyFromNodeAndClassPair

      public RoutingStrategy getRoutingStrategyFromNodeAndClassPair(Node node, JobClass c)
    • setSn

      public void setSn(NetworkStruct sn)
    • refreshPriorities

      public void refreshPriorities()
    • refreshProcesses

      public void refreshProcesses(List<Integer> statSet, List<Integer> classSet)
    • refreshJobs

      public void refreshJobs()
    • refreshRates

      public boolean[] refreshRates(List<Integer> statSet, List<Integer> classSet)
    • refreshProcessTypes

      public void refreshProcessTypes(List<Integer> statSet, List<Integer> classSet)
    • getProcessType

      public ProcessType getProcessType(Distribution distr)
    • refreshProcessPhases

      public void refreshProcessPhases(List<Integer> statSet, List<Integer> classSet)
    • refreshLST

      public void refreshLST(List<Integer> statSet, List<Integer> classSet)
    • refreshProcessRepresentations

      public void refreshProcessRepresentations()
    • refreshScheduling

      public void refreshScheduling()
    • getStationScheduling

      public Map<Station,SchedStrategy> getStationScheduling()
    • refreshChains

      public void refreshChains(boolean propagate)
    • refreshRoutingMatrix

      public void refreshRoutingMatrix(Matrix rates)
    • printRoutingMatrix

      public void printRoutingMatrix()
    • getRoutingMatrix

      public Network.routingMatrixReturn getRoutingMatrix(Matrix arvRates, int returnVal)
    • refreshCapacity

      public void refreshCapacity()
    • refreshLocalVars

      public void refreshLocalVars()
    • refreshSync

      public void refreshSync()
    • sub_rr_wrr

      public double sub_rr_wrr(int ind, int jnd, int r, int s, Matrix linksmat, Map<Node,Matrix> state_before, Map<Node,Matrix> state_after)
    • refreshPetriNetNodes

      public void refreshPetriNetNodes()
    • sub_jsq

      public double sub_jsq(int ind, int jnd, int r, int s, Matrix linksmat, Map<Node,Matrix> state_before, Map<Node,Matrix> state_after)
    • getAvgHandles

      public SolverAvgHandles getAvgHandles()
    • getTranHandles

      public SolverTranHandles getTranHandles()
    • initFromMarginal

      public void initFromMarginal(Matrix n)
    • getAvgQLenHandles

      public Map<Station,Map<JobClass,Metric>> getAvgQLenHandles()
    • getAvgUtilHandles

      public Map<Station,Map<JobClass,Metric>> getAvgUtilHandles()
    • getAvgRespTHandles

      public Map<Station,Map<JobClass,Metric>> getAvgRespTHandles()
    • getAvgTputHandles

      public Map<Station,Map<JobClass,Metric>> getAvgTputHandles()
    • getAvgArvRHandles

      public Map<Station,Map<JobClass,Metric>> getAvgArvRHandles()
    • getAvgResidTHandles

      public Map<Station,Map<JobClass,Metric>> getAvgResidTHandles()
    • getTranQLenHandles

      public Map<Station,Map<JobClass,Metric>> getTranQLenHandles()
    • getTranUtilHandles

      public Map<Station,Map<JobClass,Metric>> getTranUtilHandles()
    • getTranTputHandles

      public Map<Station,Map<JobClass,Metric>> getTranTputHandles()
    • getDemands

      public Ret.snGetDemands getDemands()
    • getProductFormParameters

      public Ret.snGetProductFormParams getProductFormParameters()
    • getProductFormChainParameters

      public Ret.snGetProductFormChainParams getProductFormChainParameters()
    • getDemandsChain

      public Matrix getDemandsChain()
    • hasFork

      public boolean hasFork()
    • hasJoin

      public boolean hasJoin()
    • getJobClasses

      public List<JobClass> getJobClasses()
    • initRoutingMatrix

      public RoutingMatrix initRoutingMatrix()
    • getAttribute

      public NetworkAttribute getAttribute()
    • getLogPath

      public String getLogPath()
    • setLogPath

      public void setLogPath(String logPath)
    • getRegions

      public List<FiniteCapacityRegion> getRegions()
    • addItemSet

      public void addItemSet(ItemSet itemSet)
      Adds an item set to the current list of items
      Parameters:
      itemSet - - the item set to be added
    • resetHandles

      public void resetHandles()
    • resetModel

      public void resetModel(boolean resetState)
    • reset

      public void reset()
    • reset

      public void reset(boolean resetState)
    • resetNetwork

      public void resetNetwork()
    • resetNetwork

      public List<Node> resetNetwork(boolean deleteCSNodes)
      Resets the topology of the current network
      Parameters:
      deleteCSNodes - - flag to indicate whether to delete the class switch nodes
    • resetStruct

      public void resetStruct()
      Resets the struct of a given network
    • getIndexSourceStation

      public int getIndexSourceStation()
      Gets the station index of the source
      Returns:
      -
    • getUsedLangFeatures

      public FeatureSet getUsedLangFeatures()
      Returns the language features used by the given network
      Returns:
      - the language features used by the given network
    • setUsedLangFeature

      public void setUsedLangFeature(String feature)
    • setJoinNodeStrategy

      public void setJoinNodeStrategy(int nodeIdx, JobClass jobClass, JoinStrategy joinStrategy)
    • setJoinNodeRequired

      public void setJoinNodeRequired(int nodeIdx, JobClass jobClass, int njobs)
    • setNodeRouting

      public void setNodeRouting(int nodeIdx, JobClass jobClass, RoutingStrategy routingStrategy)
    • view

      public void view()
    • jsimgView

      public void jsimgView()
    • jsimwView

      public void jsimwView()
    • hasFCFS

      public boolean hasFCFS()
    • hasHomogeneousScheduling

      public boolean hasHomogeneousScheduling(SchedStrategy strategy)
    • hasPS

      public boolean hasPS()
    • hasDPS

      public boolean hasDPS()
    • hasGPS

      public boolean hasGPS()
    • hasPSPrio

      public boolean hasPSPrio()
    • hasDPSPrio

      public boolean hasDPSPrio()
    • hasGPSPrio

      public boolean hasGPSPrio()
    • hasINF

      public boolean hasINF()
    • hasSIRO

      public boolean hasSIRO()
    • hasHOL

      public boolean hasHOL()
    • hasLCFS

      public boolean hasLCFS()
    • hasLCFSPR

      public boolean hasLCFSPR()
    • hasSEPT

      public boolean hasSEPT()
    • hasLEPT

      public boolean hasLEPT()
    • hasSJF

      public boolean hasSJF()
    • hasLJF

      public boolean hasLJF()
    • hasMultiClassFCFS

      public boolean hasMultiClassFCFS()
    • hasMultiClassHeterFCFS

      public boolean hasMultiClassHeterFCFS()
    • hasMultiServer

      public boolean hasMultiServer()
    • hasSingleChain

      public boolean hasSingleChain()
    • hasMultiChain

      public boolean hasMultiChain()
    • hasSingleClass

      public boolean hasSingleClass()
    • hasMultiClass

      public boolean hasMultiClass()
    • hasClassSwitching

      public boolean hasClassSwitching()
    • getLinkedRoutingMatrix

      public Map<JobClass,Map<JobClass,Matrix>> getLinkedRoutingMatrix()
    • getNumberOfChains

      public int getNumberOfChains()
    • getStatefulNodes

      public List<StatefulNode> getStatefulNodes()
    • getStatefulNodeNames

      public List<String> getStatefulNodeNames()
    • getStatefulNodeIndex

      public int getStatefulNodeIndex(String name)
    • getStationNames

      public List<String> getStationNames()
    • getStationIndex

      public int getStationIndex(String name)
    • getClassIndex

      public int getClassIndex(JobClass jobclass)
    • getClassSwitchingMask

      public Matrix getClassSwitchingMask()
    • getClassIndex

      public int getClassIndex(String name)
    • initFromMarginalAndStarted

      public void initFromMarginalAndStarted(Matrix n, Matrix s)
    • initFromMarginalAndRunning

      public void initFromMarginalAndRunning(Matrix n, Matrix s)