newton法分形图

方程:z^6-1=0;

%f为求解的方程,df是导数,使用的时候用funchandler定义
%res是目标分辨率,iter是循环次数,(xc,yc)是图像的中心,xoom是放大倍数
%参数视自己需求增加或减少
function newton(f,df,res,iter,xc,yc,xoom)
%一些乱糟糟的初始化
eol=1e-5;
x0=xc-2.5/xoom;x1=xc+2.5/xoom;
y0=yc-2.5/xoom;y1=yc+2.5/xoom;
x=linspace(x0,x1,res);
y=linspace(y0,y1,res);
[xx,yy]=meshgrid(x,y);
z=xx+yy*1i;
kk=zeros(res,res);
tic
%对每个点进行牛顿迭代
%这个代码并行度很差,因为要对每个点单独进行一次牛顿迭代,执行速度非常慢
%明天的r参数染色我会加入并行化的算法
for m=1:res
for n=1:res
k=0;
t=z(m,n);
ff=f(t);
while (k<=iter)&&(abs(ff)>eol)
t=t-f(t)/df(t);
ff=f(t);
k=k+1;
end;
kk(m,n)=k;
end;
end;
colormap hsv;
image(x,y,kk);
axis square;
toc
end

调用:

>> [email protected](z)(z^6-1);
>> [email protected](z)(6*z^5);
>> newton(f,df,1024,20,0,0,1);
Elapsed time is 23.129369 seconds.

参考链接:

http://tieba.baidu.com/p/1469535720?pn=1

时间: 2024-10-11 00:31:17

newton法分形图的相关文章

Levenberg-Marquardt迭代(LM算法)-改进Newton法

                  1.前言                                    a.对于工程问题,一般描述为:从一些测量值(观测量)x 中估计参数 p?即x = f(p),                                 其中,x为测量值构成的向量,参数p为待求量,为了让模型能适应一般场景,这里p也为向量.                                 这是一个函数求解问题,可以使用Guass-Newton法进行求解,LM算法

MATLAB用二分法、不动点迭代法及Newton迭代(切线)法求非线性方程的根

一.实验原理 二.实验步骤 三.实验过程 1.(程序) (1)二分法:求   在区间(1,2)之间的根,取 (a)bipart.m: function [x,m]=bipart(fun,a0,b0,tol) a=a0;b=b0; m=1+round(round(log((b-a)/tol))/log(2)); for k=1:m p=(a+b)/2; if fun(p)*fun(b)<0 a=p; else b=p; end x=p; end end (b)fun1.m: function f=

递归的逻辑(4)——递归与分形

<最强大脑>第四季的一期节目中,挑战者余彬晶挑战的项目是"分形之美".这是一个数学推理项目,章子怡女神和不懂球的胖子都一脸迷茫. 分形的概念 分形(Fractal)一词,是曼德布罗特创造出来的,其原意具有不规则.支离破碎等意义,分形几何学是一门以非规则几何形态为研究对象的几何学.由于不规则现象在自然界是普遍存在的,因此分形几何又称为描述大自然的几何学. 分形通常被定义为"一个粗糙或零碎的几何形状,可以分成数个部分,且每一部分都(至少近似地)是整体缩小后的形状,即具

一张图让你了解LBS基于位置的服务

LBS--基于位置的服务.LBS作为移动互联网时代的基础服务,已成为人们日常生活中不可或缺的部分.据统计将近80%的应用与LBS有关,LBS已经成为移动互联网应用的标配功能.作为一个LBS应用开发者,你了解大家都在用什么平台吗?哪些功能是同道中人最看重的?又该如何选择LBS开放平台呢? 您可能还会对这些文章感兴趣! 怎样安排时间读书 张图让你知道如何提升网站的第一眼印象 一张图看懂财务报表分析 一图读懂马云余额宝的商业玩法 一组图让你看懂阿里巴巴 一张图看懂微博与Twitter到底有何不同! 一

递归算法——BOX FRACTAL 盒分形(POJ2083)

问题 盒分形定义如下: 1度的盒分形为: X 2度的盒分形为: X X X X X 如果B(n-1)表示n-1度的盒分形,则n度的盒分形递归定义如下: B(n-1) B(n-1) B(n-1) B(n-1) B(n-1) 请画出n度的盒分形的图形 输入 每行给出一个不大于7的正整数.输入的最后一行以-1表示输入结束 输出 对于每个测试用例,出书用'X'标记的盒分形.在每个测试用例后输出包含一个短划线"-"的一行. 分析 n度的盒分形的规模为3^(n-1),即n度的盒分形图为一个长宽为3

C#与数据结构--图的遍历

C#与数据结构--图的遍历 8.2 图的存储结构 图 的存储结构除了要存储图中各个顶点的本身的信息外,同时还要存储顶点与顶点之间的所有关系(边的信息),因此,图的结构比较复杂,很难以数据元素在存储区 中的物理位置来表示元素之间的关系,但也正是由于其任意的特性,故物理表示方法很多.常用的图的存储结构有邻接矩阵.邻接表.十字链表和邻接多重表. 8.2.1  邻接矩阵表示法 对于一个具有n个顶点的图,可以使用n*n的矩阵(二维数组)来表示它们间的邻接关系.图8.10和图8.11中,矩阵A(i,j)=1

以邻接表作为存储结构的图的深度优先遍历和广度优先遍历(c++版)

一.图的存储 用邻接表法存储图,存储结构分为两部分,一部分为存储图的所有顶点的数组,另一部分为挂载在数组的每个元素后面的用来表示顶点的邻接点的链表. 1.存储顶点的结构单元为: class vnode { public: string nodename; bool visted;//进行图的遍历时用于标记图是否被访问过 node *next; vnode() { visted = false; next = NULL; } }; 链表的结构单元为: class node { public: st

数据结构:图(1)

一.图的基本概念 1.有向图 若图G中的每条边都是有方向的,则称G为有向图(Digraph). 2.无向图 若图G中的每条边都是没有方向的,则称G为无向图(Undigraph). 3.连通图的生成树 一个极小的连通子图,它含有图中全部的n个顶点,但只有足以构成一棵树的n-1条边. 二.图的存储结构 1.数组表示法 用两个数组分别存储数据元素(顶点)的信息和数据元素之间的关系(边或弧)的信息. 2.邻接表表示法 对于图G中的每个顶点vi,该方法把所有邻接于vi的顶点vj链成一个带头结点的单链表,这

hdu2768Cat vs. Dog (反建法,最大独立集)

Cat vs. Dog Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 1520 Accepted Submission(s): 570 Problem Description The latest reality show has hit the TV: ``Cat vs. Dog''. In this show, a bunch of c