![]() |
Матрица статей Список статей Всячина Контакты | ||||||||||||
|
Фрактал Ньютона Области с фрактальными границами
появляются при приближенном нахождении корней нелинейного уравнения
Пусть нам задана функция
Т. к. уравнение касательной к
Рассмотрим теперь комплексный случай. Рассмотрим уравнение
Пусть
program N3;
uses Graph, Crt;
type
Complex = Record
x : Real;
y : Real;
end;
const
iter = 50;
max = 1e+6;
min = 1e-6;
var
z, t, d : Complex;
p : Real;
x, y, n : Integer;
Cancel : Boolean;
gd, gm : Integer;
mx, my : Integer;
begin
Cancel := False;
Randomize;
gd := Detect;
InitGraph(gd,gm,'c:\bp\bgi');
Mx := GetMaxX div 2;
My := GetMaxY div 2;
for y := -my to my do
for x := -mx to mx do
begin
n := 0;
z.x := X * 0.005;
z.y := Y * 0.005;
d := z;
while (sqr(z.x)+sqr(z.y) < max) and (sqr(d.x)+sqr(d.y) > min)
and (n < iter) do
begin
t := z;
{z^3 - 1}
p := sqr(sqr(t.x)+sqr(t.y));
z.x := 2/3*t.x + (sqr(t.x)-sqr(t.y))/(3*p);
z.y := 2/3*t.y*(1-t.x/p);{}
d.x := abs(t.x - z.x);
d.y := abs(t.y - z.y);
Inc(n);
if keypressed then
Cancel := true;
end;
PutPixel(mx + x,my + y,16 - (n mod 16));
if cancel then exit;
end;
Readkey;
CloseGraph;
end.
Смотрите также: Ссылки:
|