Объясните строку «Раскраска набора Мандельброта в Matlab» 13 - PullRequest
0 голосов
/ 30 апреля 2018

Предисловие к бывшему посту

У меня был вопрос, связанный с этим постом 4 года назад "Раскрашивание набора Мандельброта в Matlab" , но у меня недостаточно репутации, чтобы комментировать сообщение.

Код Крис Тейлор , указанный в сообщении, был следующим:

function mandelbrot(n, niter)

x0 = -2;   x1 = 1;
y0 = -1.5; y1 = 1.5;
[x,y] = meshgrid(linspace(x0, x1, n), linspace(y0, y1, n));

c = x + 1i * y;
z = zeros(size(c));
k = zeros(size(c));

for ii = 1:niter
  z   = z.^2 + c;
  k(abs(z) > 2 & k == 0) = niter - ii;
end

figure,
imagesc(k),
colormap hot
axis square

Вопросы

У меня было два, если быть точным:

  1. Для чего нужна матрица k?
  2. Что на самом деле означает строка k(abs(z) > 2 & k == 0) = niter - ii;

Sidenotes, не особо важные для вопросов

Еще две быстрые вещи, во-первых, если есть какой-либо другой способ задать вопрос по конкретному сообщению, пожалуйста, дайте мне знать. Я бы прокомментировал сам ответ, но у меня недостаточно репутации, чтобы сделать это, и я также не хотел представлять «ответ», который на самом деле не был ответом на должность этого человека. Второй вопрос: могу ли я просто спросить автора ответа (Криса Тейлора), что означает эта часть его кода? Если нет, то есть ли способ пометить их так, чтобы они могли это видеть?

Спасибо!

...