LINE Solver
MATLAB API documentation
Loading...
Searching...
No Matches
infer_get_qlen_arrival.m
1function ql = infer_get_qlen_arrival(data)
2% INFER_GET_QLEN_ARRIVAL Compute queue lengths at arrival from cell data.
3%
4% Wrapper around infer_compute_ql_at_arrival for the legacy cell-based
5% data format. Assumes data is available in standard format where
6% data{3,k} contains arrival times (in ms) and data{4,k} contains
7% response times for class k.
8%
9% Inputs:
10% data - cell array in standard format (6 x K+1)
11%
12% Returns:
13% ql - 1 x K cell array, each cell is numSamples(k) x K matrix
14%
15% Copyright (c) 2012-2026, Imperial College London
16% All rights reserved.
17
18K = size(data,2) - 1;
19
20% Collect all samples across classes
21at = [];
22rt = [];
23class = [];
24numObs = zeros(1, K);
25for k = 1:K
26 numObs(k) = size(data{3,k}, 1);
27 at = [at; data{3,k}/1000]; % convert ms to secs
28 rt = [rt; data{4,k}];
29 class = [class; k * ones(numObs(k), 1)];
30end
31
32% Compute queue lengths using shared utility
33n = length(at);
34jobid = (1:n)';
35ql_unsorted = infer_compute_ql_at_arrival(at, jobid, rt, jobid, class, K);
36
37% Split into per-class cell arrays in original order
38ql = cell(1, K);
39counter = 0;
40for k = 1:K
41 ql{k} = ql_unsorted(counter+1:counter+numObs(k), :);
42 counter = counter + numObs(k);
43end
44
45end