【发布时间】:2014-04-13 03:58:33
【问题描述】:
是计算功能代码。
我听说“escape”应该是4(2^2)。
因为如果 (z_r*z_r + z_i*z_i) 小于 4 它不会无穷大。
但在此代码中转义为1025^2。为什么 ?为什么1025^2?
function computeRow(task) {
var iter = 0; //iteration
var c_i = task.i; //
var max_iter = task.max_iter; // = 1024
var escape = task.escape * task.escape; //task.escape=1025
task.values = [];
for(var i = 0; i <task.width;i++) {
var c_r = task.r_min+(task.r_max - task.r_min) * i/ task.width;
var z_r = 0, z_i = 0;
for(iter = 0; z_r*z_r + z_i*z_i < escape && iter < max_iter; iter++) {
// z->z^2 + c ▲ i wonder about this
var tmp = z_r*z_r - z_i*z_i + c_r;
z_i = 2*z_r*z_i+c_i;
z_r = tmp;
}
if(iter == max_iter) {
iter = -1;
}
task.values.push(iter);
}
return task;}
【问题讨论】:
-
Escape 应该是2,但是你需要先了解计算基础。我在这里写了最重要部分的摘要:stackoverflow.com/questions/9253208/…
-
这是您自己的代码吗?只是因为你在问关于它的问题。您使用“任务”对象作为参数,但没有关于它的信息
标签: java javascript fractals mandelbrot