>> phi=(1+sqrt(5))/2

phi =

1.6180

>> format long

>> phi

phi =

1.618033988749895

>> p=[1 -1 -1];   %表示多项式 x^2-x-1%

>> r=roots(p)

r =

-0.618033988749895

1.618033988749895

>> syms x

>> r=solve(1/x==x-1)     %直接求解方程不用转换多项式%

r =

1/2 - 5^(1/2)/2

5^(1/2)/2 + 1/2

>> pretty(r)

/ 1   sqrt(5) \

| - - ------- |

| 2      2    |

|             |

| sqrt(5)   1 |

| ------- + - |

\    2      2 /

>>  phi=r(1)   %获取第一个元素%

phi =

1/2 - 5^(1/2)/2

>> vpa(phi,50)  %变精度%

ans =

-0.61803398874989484820458683436563811772030917980576

>> phi=double(phi)

phi =

-0.618033988749895

>> f=@(x)1./x-(x-1)  %必须用./数组除算符%

f =

@(x)1./x-(x-1)

>> ezplot(f,[0,4])  %easyplot%

>>  phi=fzero(f,1)  %找零点%

phi =

1.618033988749895

>> phi=(1+sqrt(5))/2;

>> x=[0 phi phi 0 0];  %x包含5个元素%

>> y=[0 0 1 1 0];

>> u=[1 1];

>> v=[0 1];

>> plot(x,y,'b',u,v,'b--')   %x-y是蓝色实线,u-v是蓝色虚线%

>> text(phi/2,1.05,'\phi')   %标识字符,不同位置的标识字符%

>> text((1+phi)/2,-.05,'\phi-1')

>> text(-.05,.5,'1')

>> text(.5,-.05,'1')

>> axis equal  %使x,y方向坐标相等%

>> axis off   %使坐标消失%

>> set(gcf,'color','white')  %背景色设为白色%

以下保存在m文件中

function goldfract(n)

%GOLDFRACT   Golden ratio continued fraction.

%  GOLDFRACT(n) displays n terms.

%   Copyright 2014 Cleve Moler

%   Copyright 2014 The MathWorks, Inc.

p = '1';

for k = 1:n

p = ['1+1/(' p ')'];    %p的6级截断连分式,不断循环%

end

p

p = 1;

q = 1;

for k = 1:n

s = p;

p = p + q;

q = s;

end

p = sprintf('%d/%d',p,q)    %q/p,相当于q+p/p,不断循环%

format long

p = eval(p)     %和上面的p相等,但是是十进制表达%

format short

err = (1+sqrt(5))/2 - p   %phi和p之间的误差%

命令窗口输入

goldfract2(6)

结果输出

p =

1+1/(1+1/(1+1/(1+1/(1+1/(1+1/(1))))))

p =

21/13

p =

1.615384615384615

err =

0.0026

斐波那契数

function f = fibonacci(n)

f = zeros(n,1);   %(n*1的零向量)%

f(1) = 1;

f(2) = 2;

for k = 3:n

f(k)=f(k-1)+f(k-2);

end

fibonacci(12)

ans =

1

2

3

5

8

13

21

34

55

89

144

233

生成第n个斐波那契数

function f = fibnum(n)

if n <= 1

f=1;

else

f= fibnum(n-1) + fibnum(n-2);

end

>>fibnum(12)

ans =

233

>> n=40;

>> f= fibonacci(40)   %注意这里不用;%

f =

1

2

3

5

8

13

21

34

55

89

144

233

377

610

987

1597

2584

4181

6765

10946

17711

28657

46368

75025

121393

196418

317811

514229

832040

1346269

2178309

3524578

5702887

9227465

14930352

24157817

39088169

63245986

102334155

165580141

>> f(2:n) ./ f(1:n-1)

ans =

2.0000

1.5000

1.6667

1.6000

1.6250

1.6154

1.6190

1.6176

1.6182

1.6180

1.6181

1.6180

1.6180

1.6180

1.6180

1.6180

1.6180

1.6180

1.6180

1.6180

1.6180

1.6180

1.6180

1.6180

1.6180

1.6180

1.6180

1.6180

1.6180

1.6180

1.6180

1.6180

1.6180

1.6180

1.6180

1.6180

1.6180

1.6180

1.6180

>> phi=1.6180

phi =

1.6180

>> f(2:n) ./ f(1:n-1) - phi

ans =

0.3820

-0.1180

0.0487

-0.0180

0.0070

-0.0026

0.0010

-0.0004

0.0002

-0.0000

0.0001

0.0000

0.0000

0.0000

0.0000

0.0000

0.0000

0.0000

0.0000

0.0000

0.0000

0.0000

0.0000

0.0000

0.0000

0.0000

0.0000

0.0000

0.0000

0.0000

0.0000

0.0000

0.0000

0.0000

0.0000

0.0000

0.0000

0.0000

0.0000

>> format long e

>> n = (1:40)';

>> f = (phi.^(n+1) - (1-phi).^(n+1))/(2*phi-1)    %.^代表的是数组幂%

%没有使用 ./ 是因为 (2*phi-1) 是标量,当除数为标量时,数组 ./ 的作用和矩阵右除 / 一样%

f =

1.000000000000000e+00

1.999924000000001e+00

2.999848000000001e+00

4.999620005776002e+00

7.999240017328002e+00

1.299848005198357e+01

2.099711212707026e+01

3.399460429456987e+01

5.499012064111847e+01

8.898214134576197e+01

1.439680827377117e+02

2.329434614407314e+02

3.769006026041551e+02

6.098263603418171e+02

9.866983185001744e+02

1.596478332038606e+03

2.583101661466575e+03

4.179458661151946e+03

6.762364006892249e+03

1.094150502918595e+04

1.770335509641367e+04

2.864402857121741e+04

4.634603821264375e+04

7.498788983768976e+04

1.213304057514294e+05

1.963125965094915e+05

3.176337811500838e+05

5.139314579022405e+05

8.315410988849569e+05

1.345433497996397e+06

2.176911399757839e+06

3.522242644808389e+06

5.698988599299847e+06

9.220963553667231e+06

1.491951902983353e+07

2.413978179027069e+07

3.905816693665795e+07

6.319611410351259e+07

1.022513126194834e+08

1.654426238183241e+08

>> f = round(f)

f =

1

2

3

5

8

13

21

34

55

89

144

233

377

610

987

1596

2583

4179

6762

10942

17703

28644

46346

74988

121330

196313

317634

513931

831541

1345433

2176911

3522243

5698989

9220964

14919519

24139782

39058167

63196114

102251313

165442624

实现分形蕨

function fern

%FERN 分形蕨的MATLAB 实现

%不会自动停止

shg   %显示图形窗%

clf reset

set(gcf,'color','white','menubar','none',...'numbertitle','off','name','Fractal Fern')

x=[.5;.5];   %起点坐标%

h = plot(x(1),x(2),'.');

darkgreen = [0 2/3 0];   %采用RGB三元组定义颜色%

set(h,'markersize',1,'color',darkgreen,'erasemode','none');

axis([-3 3 0 10])

axis off

stop = uicontrol('style','toggle','string','stop',...'background','white');   %在图形左下角标示stop键%

drawnow

p = [.85 .92 .99 1.00];

A1 = [ .85 .04; -.04 .85]; b1 = [0; 1.6];   %定义四个反射变量%

A2 = [ .20 -.26; .23 .22]; b2 = [0; 1.6];

A3 =[-.15 .28; .26 .24]; b3 = [0; .44];

A4 = [ 0 0; 0 .16];

cnt = 1;    %初始化绘图点%

tic        %开启秒表计时器%

while ~get(stop,'value')

r = rand;

if r < p(1)

x = A1*x + b1;

eleseif r < p(3)

x = A3*x + b3;

else

x = A4*x;

end

set(h,'xdata',x(1),'ydata',x(2));

cnt = cnt +1;   %使计数器加一%

drawnow

end

t = toc;   %记录时间%

s = sprintf('%8.0f points in %6.3f seconds',cnt,t);

text(-1.5,-0.5,s,'forntweight','bold');

set(stop,'stytle','pushbutton','string','close',...'callback','close(gcf)')

matlab程序作分形蕨,matlab学习第一天笔记相关推荐

  1. jacobi matlab程序,jacobi迭代法实验MATLAB程序数值分析

    jacobi迭代法实验MATLAB程序数值分析 例1. 求线性方程组 得近似解.精确解为x*=[3,2,1]'. 解:对方程进行移项就得 记为Ax=b,或写为x=B0 x+f,其中 取初始值,代入原方 ...

  2. MATLAB程序详细解析,遗传算法——matlab代码解析

    遗传算法--matlab代码解析 本文为学习B站老哥数学建模课程之后的一点笔记,图片源自web,代码源自老哥程序包,侵权删. 详细的遗传算法原理不再赘述,百度即可找到. 算法定义 遗传算法(GA)是模 ...

  3. 分形吧matlab,几个分形的matlab实现

    几个分形的matlab 实现 摘要:给出几个分形的实例,并用matlab 编程实现方便更好的理解分形,欣赏其带来的 数学美感 关键字:Koch 曲线 实验 图像 一.问题描述: 从一条直线段开始,将线 ...

  4. 脉动风时程matlab程序,脉动风时程matlab程序

    脉动风时程matlab程序 根据风的记录,脉动风可作为高斯平稳过程来考虑.观察n个具有零均值的平稳高斯过程,其谱密度函数矩阵为: s11( )s12( ) s( )s( ) 22 S( ) 21 .. ...

  5. vb.net 调用matlab程序 绘图,vbnet调用matlab

    \\然后参考该 类库的文档,在类里引用 matlab 的命名空间 装 matlab ,添加引用[VB.Net] Matlab = CreateObject("matlab.applicati ...

  6. fdtd算法的matlab程序,FDTD算法的Matlab程序

    <FDTD算法的Matlab程序>由会员分享,可在线阅读,更多相关<FDTD算法的Matlab程序(6页珍藏版)>请在人人文库网上搜索. 1.* 5= T$h;O % 3-D ...

  7. 线性规划单纯形法的matlab程序,线性规划单纯形法的MATLAB实现_数学专业.doc

    摘要:运筹学有着长远的发展历史,并且不断地发展变化出许多分支理论,线性规划是运筹学中专研较早,发展比较快速,对现实社会作用涵盖面广,理论系统趋于成熟的一个重要分支,虽然其只是运筹学的一小部分,但是作用 ...

  8. 用matlab程序表示三角形序列,MATLAB程序举例带注释

    1.绘制云图 Ex=18 En=2 He=0.2 hold on for i=1:1000 Enn=randn(1)*He+En; x(i)=randn(1)*Enn+Ex; y(i)=exp(-(x ...

  9. fdtd算法的matlab程序,一维FDTD的matlab程序(最新整理)

    <一维FDTD的matlab程序(最新整理)>由会员分享,可在线阅读,更多相关<一维FDTD的matlab程序(最新整理)(2页珍藏版)>请在人人文库网上搜索. 1.一维 FD ...

最新文章

  1. 什么是Hive?它有哪些特点和特性?
  2. 英特尔5G基带发布时间提前半年以上,但2019款iPhone支持5G仍有点悬
  3. oracle cbo 查询展开,Oracle CBO几种基本的查询转换详解
  4. php+curl+restapi,php – cURL适用于我的REST API,但不是Guzzle
  5. 配电技术——配电线路系统电气设备详解
  6. unity 编辑器扩展 扩展摄像机的属性查看器
  7. java中date加1s_是否有一个java库将描述时间度量(例如“1d 1m 1s”)的字符串转换为毫秒?...
  8. 从零开始学习ASP.NET MVC 入门
  9. 新建站点的mysql数据库_lAMP下新建维护站点全过程
  10. 高速信号传输约翰逊 pdf_智芯文库 | 高速数字电路的设计与仿真
  11. 50 招教你防止黑客入侵,适用于入门小白到专业人员
  12. 将JavaScript函数作为参数传递
  13. 矩阵运算_如何理解矩阵对矩阵求导?
  14. 12-ubuntu:010 Editor
  15. 动态链接库劫持--libc
  16. 彻底搞懂单例模式的懒汉式饿汉式 双检索 线程安全问题
  17. 第二证券|沪指缩量跌0.25%,地产、医药板块强势,钠电池概念表现亮眼
  18. 加密聊天解决方案——木星文
  19. PyQt5 QTreeView
  20. 计算机考试wps题型,2016年计算机一级WPS上机考试指导

热门文章

  1. wireshark/The NPF driver isn’t running./Unable to load WinPcap (wpcap.dll)
  2. vue : 无法加载文件 C:\Users\lihongjie\AppData\Roaming\npm\vue.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 htt ps:/go.micr
  3. data augment
  4. 2022腾讯云年终双十一活动攻略汇总!
  5. 我的世界核电工艺量子计算机,我的世界工业2模组核电教程之搭建反应堆
  6. 中华英才网后续难雄起
  7. 六大计算机应用领域,人工智能领域六大分类
  8. java-接口之运动员教练员综合案例
  9. 计算机软件保护对象,计算机软件著作权保护的对象是什么
  10. Paging3 分页库的使用