Сравниваем результаты функций и ставим их в качестве матрицы MATLAB - PullRequest
0 голосов
/ 23 февраля 2011

Допустим, я получаю время выполнения двух функций в Matlab, у меня есть цикл для получения разных измерений:

for i = 0: 100
    Start1   = tic;
    somefunction1;
    Total1   = toc(Start1);

    Start2   = tic;
    somefunction2;
    Total2   = toc(Start2);
end;

Как бы я получил mtarix с результатами, такими как:

iteration times1      times2
  1       someval1     someval1
  2       someval2     someval2
  3       someval3     someval2
 ...

Могут ли они быть вставлены в другую матрицу?Как?

----------------------------------- РЕДАКТИРОВАТЬ Я сделал предложение, и оно работает:

N = 100;
Total = zeros(N,2);
for i = 1: N
    Start1     = tic;
    %somefun1
    Total(i,1) = toc(Start1);
    Start2     = tic;
    %somefun2
    Total(i,2) = toc(Start2);
end;

1 Ответ

2 голосов
/ 23 февраля 2011

Объедините Total1 и Total2 в одну матрицу.

N = 100;
Total = zeros(N,2);
...
Total(i,1) = toc(Start1);
...
Total(i,2) = toc(Start2);

Я бы сохранил итерацию как отдельный вектор:

iteration = 1:N;

Затем вы можете построить результаты, например:

plot(iteration,Total)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...