# copyright Barry L. Nelson and Michael R. Taaffe 2001 with(linalg): MapPhInfMCNSymbolic := proc(A, vA, lambda, R, B, mu, K, Pr) # # this procedure returns a symbolic representation # of the first and second moment differential # equations for a [Map_t/Ph_t/Infinity]^K network # with R different arrival processes # # initial conditions for the queue are empty and idle # # this version is designed to work with Maple V release 5 # # last update 1/26/01 # # Inputs: # A = Markov chain transition matrix for the arrival process # [vector of matrices of dimension R] # vA = number of absorbing states in Map representation # [vector of numbers of dimension R] # lambda = arrival rate vector # [vector of vectors of dimension R] # R = number of distinct Ph arrival processes # B = Markov chain transition matrix for the service process # [vector of matrices of dimension K] # mu = service rate vector # [vector of vectors of dimension K] # Pr = Markov routing probabilities # local r, deq, initial, temp; if R = 1 then RETURN(MapPhInfNetSymbolic(A, vA, lambda, B, mu, K, Pr)); else deq := vector(R); temp := MapPhInfNetSymbolic(A[1], vA[1], lambda[1], B, mu, K, Pr[1]); deq[1] := temp; for r from 2 to R do temp := MapPhInfNetSymbolic(A[r], vA[r], lambda[r], B, mu, K, Pr[r]); deq[r] := temp; od; RETURN(deq); fi; end;