Info
La pregunta está cerrada. Vuélvala a abrir para editarla o responderla.
The loop is causing time out so i want to convert it to matrix operations.
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
I ave re written my doubts so please consider it now,
for i = 2 : LenRxDiv
UsedAnt = currAnt(i-1);
%UsedAnt = currAnt(1:LenRxDiv);
StartTime = currTime(i-1);
%StartTime[1:LenRxDiv] = currTime(1:LenRxDiv);
%check for intersection with CQI
IntersLen = min([(ActTimeStop - StartTime) (currTime(i) - ActTimeStart) repmat((currTime(i) - StartTime),NumActReg,1) (ActTimeStop - ActTimeStart)], [], 2);
%IntersLen[1:LenRxDiv] = min([(ActTimeStop[1:LenRxDiv] - StartTime[1:LenRxDiv]) (currTime[1:LenRxDiv] - ActTimeStart[1:LenRxDiv]) repmat((currTime[1:LenRxDiv] - StartTime[1:LenRxDiv]),NumActReg[1:LenRxDiv],1) (ActTimeStop[1:LenRxDiv] - ActTimeStart[1:LenRxDiv])], [], 2);
UtilHSDPA(UsedAnt) = UtilHSDPA(UsedAnt) + sum(IntersLen(IntersLen>0));
UtilAll(UsedAnt) = UtilAll(UsedAnt) + currTime(i) - StartTime;
end
These are the values of above code:
when i = 2
LenRxDiv : 1*1 double = 725590
UsedAnt :1*1 double = 2
IntersLen : 120936 * 1 double = -5238 -88277/3 .... ..... ..... .....
StartTime :1*1 double = 2046467740
ActTimeStop : 120936 * 1 double = 2046462502 .... .... ...... .....
ActTimeStart : 12093 * 1 double = 2046462502 .... .... .... ....
CurrTime(i) : 725590 * 1 double = 20464627740 ..... .... .....
NumActReg : 1 * 1 double = 120936
UtilHSDPA(UsedAnt) : 1 * 4 double = 0 0 0 0
so now could someone please explain how can remove the loop from above code since its causing timeout and can it be converted into matrix manipulation.
6 comentarios
Respuestas (0)
La pregunta está cerrada.
Ver también
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!