뉴턴 프랙탈

Newton fractal
Julia는 f(z) = z3 - 1대해 Newton의 방법과 관련된 유리 함수를 설정했다.

뉴턴 프랙탈복소 평면에서 설정된 경계로, 고정 다항식 p(Z) δ[Z] 또는 초월 함수에 적용되는 뉴턴의 방법에 의해 특징지어진다.그 유리 함수 z의 줄리아 세트 ↦은 z−.mw-parser-output .sfrac{white-space:nowrap}.mw-parser-output.sfrac.tion,.mw-parser-output.sfrac .tion{디스플레이:inline-block, vertical-align:-0.5em, font-size:85%;text-align:센터}.mw-parser-output.sfrac.num,.mw-parser-output.sfrac .den{디스플레이:블록, line-height:1em, 마진:00.1em}.mw-parse.그것은 뉴튼의 방법에 의해서 주어진다 R-output.sfrac .den{border-top:1px 고체}.mw-parser-output .sr-onlyᆬp(z)(z).(1보다 큰 순서의) 매력적인 주기가 없을 때, 복소 평면을 영역k G로 나눈다. 영역 G는 각각 다항식의 루트 θ, k = 1, …, deg(pk)와 관련된다.이런 식으로 뉴턴 프랙탈은 만델브로트 집합과 유사하며, 다른 프랙탈과 마찬가지로 단순한 설명에서 비롯된 복잡한 외관을 보인다.이는 (2차 수렴 영역 에서) 뉴턴 방법이 시작점의 선택에 매우 민감할 수 있다는 것을 보여주기 때문에 수치 분석과 관련이 있다.

복소 평면의 많은 점들은 다음과 같은 방식으로 다항식의 디그(p) 근 중 하나와 관련된다. n 점은 뉴턴의 반복n + 1 z:= z - p(zn)/p''(zn)의 시작 0 z로 사용되며, 일련의 1 z, z2, …를 산출한다. 만약 그 시퀀스가 루트 θk 수렴된다면, z는 G0 영역k 요소이다.그러나 적어도 2차 이상의 모든 다항식에 대해 뉴턴 반복이 어떤 근으로도 수렴되지 않는 점이 있다. 예는 다양한 근의 흡인력의 분지의 경계이다.열린 시작점 집합이 루트로 수렴되지 않는 다항식도 있습니다. 간단한 예는 z3 - 2z + 2입니다. 여기서 일부 점은 루트가 아닌 사이클 0, 1, 0, 1…에 의해 유인됩니다.

반복이 특정 루트 또는 주기(고정점이 아님)로 수렴되는 열린 집합은 반복에 대한 Fatou 집합입니다.이 모든 것의 결합에 대한 보완 집합은 줄리아 집합입니다.Fatou 집합은 공통 경계인 Julia 집합을 가지고 있습니다.따라서 Julia 집합의 각 점은 Fatou 집합의 각 누적점이 됩니다.Julia 집합의 프랙탈 구조를 일으키는 것은 바로 이 특성입니다(다항식의 정도가 2보다 클 때).

흥미로운 그림을 그리려면 먼저 d개의 복소점( (, …, ))1d 선택하고 다항식의 계수(p1, …, pd)를 계산할 수 있다.

( ) + - ++ + : ( - 1) ( - 2) ( z - d) ⋯ ( z - d )、 { p ( z ) =z^ { d } + p _ { d _ { d _ } + cdots + p } { d .

직사각형 격자의 경우

δ에 있는 지수k(m,n) k(m,n)를 찾아 각 점(m,n)색상k(m,n) f를 할당하여 M × N 래스터 그리드를 채운다.또한 색상은 거리 D(m,n)에 따라 달라질 수 있으며, 거리 D는 이전에 고정된 작은 일부 θ > 0에 대해 z - θk(m,n) < θ 되도록D번째 값 D로 정의된다.

뉴턴 프랙탈의 일반화

뉴턴의 반복의 일반화는

여기서 a는 임의의 복소수입니다.[1]특수 선택 a = 1은 뉴턴 프랙탈에 해당합니다.이 맵의 고정점은 a가 1을 중심으로 한 반지름 1의 디스크 내부에 있을 때 안정적입니다.가 이 디스크 외부에 있는 경우 고정점은 로컬적으로 불안정하지만 지도는 여전히 Julia 집합의 관점에서 프랙탈 구조를 나타냅니다.p가 d도의 다항식일 경우 a가 d를 중심으로 하는 반지름 d의 디스크 내부에 있으면 시퀀스n z는 유계된다.

더 일반적으로, 뉴턴의 프랙탈은 줄리아 집합의 특별한 경우이다.

노바 프랙탈

폴 더비셔가 [2][3]1990년대 중반에 발명한 노바 프랙탈은 뉴턴 프랙탈의 일반화이며 각 단계에서 [4]c를 더한다.

Nova 프랙탈의 "Julia" 변형은 이미지에서 c를 일정하게 유지하고 z를 픽셀 좌표로 초기화합니다0.Nova 프랙탈의 "Mandelbrot" 변형은 c를 픽셀 좌표로 초기화하고 z를 임계점으로 설정합니다0[5].

p(z) = z3 - 1 또는 p(z) = (z - 31)와 같이 일반적으로 사용되는 다항식은 z = 1에서 임계점으로 이어진다.

실행

뉴턴 프랙탈을 구현하려면 시작 함수와 그 미분 함수가 있어야 합니다.

함수의 세 가지 근원은 다음과 같습니다.

위에서 정의한 함수는 다음과 같이 의사 코드로 변환할 수 있습니다.

//z^3-1 플로트 2 기능. (플로트 2 z) {  돌아가다 cpow(z, 3) - 플로트 2(1, 0); //cpow는 복소수에 대한 지수 함수입니다. }  //3*z^2 플로트 2 파생상품 (플로트 2 z) {  돌아가다 3 * cmul(z, z); //cmul은 복소수 곱셈을 처리하는 함수입니다. } 

이제 주어진 함수를 사용하여 뉴턴 방법을 구현하는 문제일 뿐입니다.

플로트 2 뿌리.[3] = //다항식의 루트(해법) {  플로트 2(1, 0),   플로트 2(-.5, sqrt(3)/2),   플로트 2(-.5, -sqrt(3)/2) };   색. 색채[3] =  //루트별로 색상 할당 {     빨간.,     초록의,     파랑색 }  위해서 각각 화소 (x, y)   타깃, 하다: {  zx = 스케일이 있는 x 조정하다  화소 (스케일이 있는 로. 거짓말   만델브로트 X 규모. (-2.5, 1))     zy = 스케일이 있는 y 조정하다  화소 (스케일이 있는 로. 거짓말   만델브로트 Y 규모. (-2, 1))      플로트 2 z = 플로트 2(zx, zy); //z는 원래 픽셀 좌표로 설정됩니다.   위해서 (인트 반복 = 0;       반복 < > 최대 반복;       반복++;)  {   z -= cdiv(기능.(z), 파생상품(z)); //cdiv는 복소수를 나누는 함수입니다.          흘러가다 내구성 = 0.000001;            위해서 (인트 i = 0; i < > 뿌리..길이; i++)   {       플로트 2 차이 = z - 뿌리.[i];           //현재 반복이 루트에 충분히 가깝다면 픽셀에 색을 입힙니다.    한다면 (복근(차이.x) < > 내구성 & & 복근 (차이.y) < > 내구성)    {     돌아가다 색채[i]; //루트에 해당하는 색상을 반환합니다.    }   }        }          돌아가다 블랙입니다.; //솔루션을 찾을 수 없는 경우 } 

「 」를 참조해 주세요.

레퍼런스

  1. ^ Simon Tatham. "Fractals derived from Newton–Raphson".
  2. ^ Damien M. Jones. "class Standard_NovaMandel (Ultra Fractal formula reference)".
  3. ^ Damien M. Jones. "dmj's nova fractals 1995-6".
  4. ^ Michael Condron. "Relaxed Newton's Method and the Nova Fractal".
  5. ^ Frederik Slijkerman. "Ultra Fractal Manual: Nova (Julia, Mandelbrot)".

추가 정보