华南理工大学数学实验实验四
华南理工大学-数学实验报告一

fn = [fn,fn(i-1)+1/i];%定义fn =
end
Hn = [1/2];%定义Hn的初值为0.5
fori = 1:n
Hn = [Hn,fn(2*i)-fn(i)];
%定义Hn = -
end
plot(Hn)%显示函数Hn的曲线变化图
模块c:实现显示数列{Gn}曲线变化的功能
end
x = 1:n;
plot(x,Gn1,'b',x,Gn2,'r*')%显示拟合函数Gn1和原始函数Gn2的曲线图进行比较,确定两个函数的吻合程度。
运行结果(直接输出运行结果或者抓取Matlab运行结果的图片):
模块a:
模块b:
模块c:
模块d:
模块e:
问题回答:
(1)
由图可知,数列{Sn}的曲线随着n的增大而逐步增大,但是n越大,Sn的上升逐步趋缓。
《数学实验》报告
1.问题描述
讨论调和级数 的变化规律,
(1)画出部分和数列{Sn}变化的折线图,观察变化规律;
(2)引入数列{Hn}:Hn=S2n–Sn,作图观察其变化,猜测是否有极限
(3)引入数列{Gn}:Gn=S2n,作图观察其变化,寻找恰当的函数拟合;
(4)讨论部分和数列{Sn}的变化规律。
2.问题分析与实验过程
(2)
由图可知,数列{Hn}在刚开始时的上升幅度非常大,但是n增大到一定值后,Hn的上升趋缓,并逐步稳定。可以猜测数列{Hn}有极限。
(3)
由模块c显示的数列{Gn}的曲线变化,猜测Gn为一指数函数,设Gn=ln(a*n+b)。令Gn=e^Gn,然后进行一阶拟合。经一系列验证后,证明上述正确。
华南理工大学 2018-2019 学年度第二学期课程表

华南理工大学2018-2019 学年度第二学期课程表学院:电子与信息学院专业:信息工程年级:2017级(1)人数:39执行时间:2019年2月25日说明: 1.第一周模拟电子技术课程设计31401-402(甘伟明/赖丽娟);2.微机原理与接口课程设计在31312,实验时间由理论课老师指定(郭礼华)。
制表时间:2019年1月3日华南理工大学2018-2019 学年度第二学期课程表学院:电子与信息学院专业:信息工程年级:2017级(2)人数:38执行时间:2019年2月25日说明: 1.第一周模拟电子技术课程设计31403-404(袁炎成/张林丽);2.微机原理与接口课程设计在31312,实验时间由理论课老师指定(郭礼华)。
制表时间:2019年1月3日华南理工大学2018-2019 学年度第二学期课程表学院:电子与信息学院专业:信息工程年级:2017级(3)人数:39执行时间:2019年2月25日制表时间:2019年1月3日华南理工大学2018-2019 学年度第二学期课程表学院:电子与信息学院专业:信息工程年级:2017级(4)人数:37执行时间:2019年2月25日说明: 1.第二周模拟电子技术课程设计31403-404(袁炎成/张林丽);2.微机原理与接口课程设计在31312,实验时间由理论课老师指定(梁亚玲)。
制表时间:2019年1月3日华南理工大学2018-2019 学年度第二学期课程表学院:电子与信息学院专业:信息工程年级:2017级(5)人数:41执行时间:2019年2月25日说明: 1.第三周模拟电子技术课程设计31401-402(张林丽/吕念玲);2.微机原理与接口课程设计在31312,实验时间由理论课老师指定(傅娟)。
制表时间:2019年1月3日华南理工大学2018-2019 学年度第二学期课程表学院:电子与信息学院专业:信息工程年级:2017级(6)人数:31执行时间:2019年2月25日制表时间:2019年1月3日华南理工大学2018-2019 学年度第二学期课程表学院:电子与信息学院专业:信息工程年级:2017级(冯班)人数:49执行时间:2019年2月25日说明: 1.第四周电子线路基础课程设计31401-402(吕念玲/张林丽);2.微机原理与接口课程设计在31312,实验时间由理论课老师指定(林耀荣)。
华南理工大学-数学实验报告一

《数学实验》报告1. 问题描述讨论调和级数∑(1n ∞n=1)的变化规律,(1)画出部分和数列{Sn}变化的折线图,观察变化规律;(2)引入数列{Hn}:Hn=S2n – Sn ,作图观察其变化,猜测是否有极限 (3)引入数列{Gn }:Gn=S2n ,作图观察其变化,寻找恰当的函数拟合;(4)讨论部分和数列{Sn }的变化规律。
2. 问题分析与实验过程1n 随着n 的增大,其数值逐渐减少,因此可以猜测调和级数∑(1n∞n=1)曲线的变化趋势是逐步趋缓的。
根据这个,按照题目要求引入各种要求的数列,然后用MATLAB 进行求解,得出各个数列的曲线,然后进行分析得出结论。
在用MATLAB 求解时,把各个函数分成几个独立模块,方便调试。
程序:模块a :实现显示调和级数∑(1n∞n=1)曲线变化的功能function test2a(n)fn = [1]; %定义fn 的初值为1 for i = 2:nfn = [fn,fn(i-1)+1/i]; %定义fn = ∑(1n ∞n=1)endplot(fn) %显示函数fn 的曲线变化图模块b: 实现显示数列{Hn}的曲线变化的功能 function test2b(n)fn = [1]; %定义fn 的初值为1 for i = 2:2*nfn = [fn,fn(i-1)+1/i]; %定义fn = ∑(1n ∞n=1)endHn = [1/2]; %定义Hn 的初值为0.5 for i = 1:nHn = [Hn,fn(2*i)-fn(i)];%定义Hn = ∑(12∗n∞n=1) - ∑(1n∞n=1)endplot(Hn) %显示函数Hn 的曲线变化图模块c :实现显示数列{Gn}曲线变化的功能function test2c(n)Gn = [1.5]; %定义Gn 的初值为1.5 for i = 2:nGn = [Gn,Gn(i-1)+1/(2*i)+1/(2*i-1)];%定义Gn = ∑(12∗n ∞n=1)endplot(Gn) %显示函数Gn 的曲线变化图模块d:实现对数列{Gn}的拟合功能function y = test2d(n) Gn = [1.5]; for i = 2:nGn = [Gn,Gn(i-1)+1/(2*i)+1/(2*i-1)]; end xn = 1:n;Gn = exp(Gn); %令Gn = e ^(Gn)y = polyfit(xn,Gn,1) %对Gn = e ^(Gn)进行一阶拟合模块e :实现比较数据跟拟合数据吻合程度的功能function y = test2e(n) Gn1 = [];for i = 1:nGn1 = [Gn1,log(3.5621*i+0.8910)];%设置拟合函数Gn1 = log(3.5621*i+0.8910)endGn2 = [1.5];for i = 2:nGn2 = [Gn2,Gn2(i-1)+1/(2*i)+1/(2*i-1)];endx = 1:n;plot(x,Gn1,'b',x,Gn2,'r*') %显示拟合函数Gn1和原始函数Gn2的曲线图进行比较,确定两个函数的吻合程度。
219391689_大学数学课程引入数学演示实验的教学研究

效果& 同时%对数学演示实验进行分层次设计和建设%提供 线上线下结合
由"基本要求$和"较高要求$组成的"分层次$实验指导&
大学数学各课程根据实际情况设置至少 学时的线上
设计开发演示实验和教具%提升学习效果 实验教学环节%学生登录数学演示实验导学系统%观看演示
通过实物具体化这些知识与应用的结合点%通过教具 视频%进行仿真操作%自主学习相关知识点%通过实验流程
生动展示背后的抽象结论& 同时为了资源共享和服务大 了解定理内涵%为线下进行逻辑推导做好了实例准备&
众%将实物实验进行虚拟仿真化%设计开发相应的虚拟演 进入课堂教学
示实验%增设学生自主设计模块%通过反复尝试#多重设计 课堂教学增设实物教具演示环节%具体直观地展示各
+)
Copyright©博看网. All Rights Reserved.
通信#数字媒体#光电工程#智能医学等新科技前沿领域的 数学新型教学模式%具体教学改革措施如下!
图 数学演示实验教学体系
建设演示教学资源构建数学演示实验教学体系 提升学习效果& 使用数学演示实验的多为一二年级学生%
积极挖掘可演示的知识点%激发学习兴趣 他们掌握的计算机知识有限%因此在使用演示实验系统
科技风 年 月
创新教学
!"#!$%&$'(') *+&,-./&$01$21(3$&)%)($1%()
大学数学课程引入数学演示实验的教学研究
范秉理4刘玉婷4孔令臣4高 勃
北京交通大学!北京!#$$$''
摘4要大学数学教学中面临着教学内容抽象枯燥#学生学习兴趣不足等诸多难题" 本文介绍了为破解当前大学数 学教学中的困局!引入数学演示实验以来所做的教学改革研究情况" 教学应用实践表明!数学演示实验能激发学生学习 兴趣!提升课堂教学效果!学生学习成绩有明显提升"
华南理工大学-数学实验报告二

for i=1:n %每条边计算一次
q1=p(i,:); %目前线段的起点坐标
q2=p(i+1,:); %目前线段的终点坐标
d=(q2-q1)/3;
j=j+1;r(j,:)=q1; %原起点存入a
j=j+1;r(j,:)=q1+d; %新1点存入a
n=1; %存放线段的数量,初始值为1
for s=1:k %实现迭代过程,计算所有的结点的坐标
j=0;
for i=1:n %每条边计算一次
q1=l(i,:); %目前线段的起点坐标
q2=l(i+1,:); %目前线段的终点坐标
d=(q2-q1)/3;
j=j+1;e(j,:)=q1; %原起点存入a
j=j+1;e(j,:)=q1+d; %新1点存入a
程序:
function frat2(k) %显示等边三角形迭代k次后的图形
A=[cos(pi/3) sin(pi/3);-sin(pi/3) cos(pi/3)];
%用于计算新的结点
B=[cos(pi/3) -sin(pi/3);sin(pi/3) cos(pi/3)];
%用于计算新的结点
p=[0 0;10 0]; %存放结点坐标
B=[cos(pi/3)-sin(pi/3);sin(pi/3) cos(pi/3)];
得出这两个重要的曲线旋转公式。
感悟:
实现雪花的算法有多种,有时选择的算法虽然繁琐,往往却很好理解和方便调试错误。
d=(q2-q1)/3;
j=j+1;w(j,:)=q1; %原起点存入a
j=j+1;w(j,:)=q1+d; %新1点存入a
数值分析实验报告(华科书本实验4.1,附C++程序)

华中科技大学数值分析实验报告考生姓名考生学号班级指导老师路志宏2013年4月15日实验4.1实验目的:复化求积公式计算定积分试验题目:数值计算下列各式右端定积分的近似值。
(1)3221ln 2ln 321dx x -=--⎰; (2)12141dx x π=+⎰; (3)1023ln 3x dx =⎰; (4)221x e xe dx =⎰;实验要求:(1)若用复化梯形公式、复化Simpson 公式和复化Gauss-Legendre I 型公式做计算,要求绝对误差限为71102ε-=⨯,分别利用他们的余项对每种算法做出步长的事前估计。
(2)分别用复化梯形公式、复化Simpson 公式和复化Gauss-Legendre I 型公式做计算。
(3)将计算结果与精确解做比较,并比较各种算法的计算量。
实验内容:1.公式介绍(1)复化梯形公式: []110(x )(x )2n n k k k h T f f -+==+∑=11(a)2(x )(b)2n k k h f f f -=⎡⎤++⎢⎥⎣⎦∑;余项:2''(f)()12n b a R h f η-=-; (2)复化Simpson 公式:11210(x )4(x )(x )6n n k k k k h S f f f -++=⎡⎤=++⎣⎦∑=111201(a)4(x )2(x )(b)6n n k k k k h f f f f --+==⎡⎤+++⎢⎥⎣⎦∑∑; 余项:4(4)(f)()()1802n b a h R f η-=-; (3)复化Gauss-Legendre I 型公式:11120(x)(x (x 2n bk k ak h f dx f f -++=⎡⎤≈++⎢⎥⎣⎦∑⎰;余项:(22)21()()()()(22)!n b G n a f R f x x dx n ηρω++=+⎰; 2.步长估计(1)1221f x -=-;则可以得到:2(2)1234(3x 1)(x 1)f-+=-;(2)152max 27f =;(4)1552424()(x 1)(x 1)f =-+-;(4)15808max 243f =估计步长:71(f)102n R ε-≤=⨯;将上述结果分别带入到复化梯形公式、复化Simpson 公式和复化Gauss-Legendre I 型公式的余项中可以得到:复化梯形公式:45.581610h -≤⨯;1792n ≥;复化Simpson 公式:0.0498h ≤;21n ≥;复化Gauss-Legendre I 型公式:0.0549h ≤;19n ≥;(2)2241f x =+;则可以得到:2(2)2238(3x 1)(x 1)f -=+;(2)2max 8f =;42(4)2596(5x 10x 1)(x 1)f -+=+;(4)2max 96f =估计步长:71(f)102n R ε-≤=⨯;将上述结果分别带入到复化梯形公式、复化Simpson 公式和复化Gauss-Legendre I 型公式的余项中可以得到: 复化梯形公式:42.738610h -≤⨯;3652n ≥; 复化Simpson 公式:0.0350h ≤;29n ≥;复化Gauss-Legendre I 型公式:0.0388h ≤;26n ≥;(3)33x f =;则可以得到:(2)233(ln 3)x f =;(2)23max 3(ln3)x f =;(4)433(ln 3)x f =;(4)43max 3(ln3)x f =估计步长:71(f)102n R ε-≤=⨯;将上述结果分别带入到复化梯形公式、复化Simpson 公式和复化Gauss-Legendre I 型公式的余项中可以得到: 复化梯形公式:44.070710h -≤⨯;2457n ≥; 复化Simpson 公式:0.0758h ≤;14n ≥;复化Gauss-Legendre I 型公式:0.0838h ≤;12n ≥;(4)4x f xe =;则可以得到:(2)42x x f e xe =+;(2)24max 4f e =;(4)44x x f e xe =+;(4)24max 6f e =估计步长:71(f)102n R ε-≤=⨯;将上述结果分别带入到复化梯形公式、复化Simpson 公式和复化Gauss-Legendre I 型公式的余项中可以得到: 复化梯形公式:41.424810h -≤⨯;7019n ≥; 复化Simpson 公式:0.0424h ≤;24n ≥;复化Gauss-Legendre I 型公式:0.0469h ≤;22n ≥;3.C++编程计算结果(1)区间逐次分半求积法:依据“事后误差法”,将区间逐次分半进行计算,并利用前后两次计算结果来判断误差的大小。
数学教学大纲-华南理工大学

数学实验课程名称:数学实验英文名称:Experiments in Mathematics课程代码:140099学分:2课程总学时:48实验学时:32(其中,上机学时:32)课程性质:☑必修□选修是否独立设课:☑是□否课程类别:☑基础实验□专业基础实验□专业领域实验含有综合性、设计性实验:☑是□否面向专业:机械与汽车工程学院、土木与交通学院、电子与信息学院、自动化科学与工程学院、电力学院、计算机科学与工程学院、创新班等各专业先修课程:微积分、线性代数、概率统计大纲编制人:课程负责人:温旭辉实验室负责人:黄平一、教学信息教学的目标与任务:本课程的目的是培养学生运用数学知识解决实际问题的能力。
本课程以实际问题为试验内容,借助计算机和数学软件,由学生自己设计和动手,来体验解决实际问题的全过程,同时培养学生进行数值计算与数据处理的能力。
在实验中去学习、探索和发现数学规律,激发学生学习数学的兴趣。
教学基本要求:学生掌握数学实验的基本思想与方法,深入理解数学基本概念和基本理论,熟悉Matlab 等常用的数学软件,以问题为载体,通过上机实验,在老师的指导下,探索建立模型解决问题的方法,观察实验结果,在失败与成功中获得真知。
考核方式:本课程不设专门的考试,评定成绩的主要依据是实验报告。
实验报告必须包括:实验内容、实验过程(方法和步骤)、实验结果、对结果讨论。
每一个实验都需要完成相应的实验报告。
二、教学资源(一)实验指导书与参考书1. 李尚志等.《数学实验》. 北京:高等教育出版社,1999.2. 萧树铁.《大学数学-数学实验》. 北京:高等教育出版社,1999.3. 李卫国.《高等数学实验课》. 北京:高等教育出版社,2000.4. 谢云荪等.《数学实验》. 北京:科学出版社,2000.(二)多媒体教学资源(课程网站、课件等资料)1. 温旭辉,数学实验课件(PPT),h t t p://222.16.42.167/m t l a b c e n t e r/2. 华南理工大学数学技术实验教学中心,h t t p://222.16.42.167/m t l a b c e n t e r/。
华工数学实验报告 特征值与特征向量

《数学实验》报告学院: 电子信息学院专业班级: 信息工程电联班学号:姓名:实验名称: 特征根与特征方程实验日期: 2016/05/31特征根与特征方程1.实验目的掌握特征值、特征向量、特征方程、矩阵的对角化等概念与理论; 掌握将矩阵化为相似对角矩阵的方法;理解由差分方程x k+1=Ax k;提高对离散动态系统的理解与分析能力。
2.实验任务1.当捕食者-被捕食者问题中的捕食系数p就是 0、125时,试确定该动态系统的演化(给出xk的计算公式)。
猫头鹰与森林鼠的数量随时间如何变化?该系统趋向一种被称为不稳定平衡的状态。
如果该系统的某个方面(例如出生率或捕食率)有轻微的变动,系统如何变化?2.杂交育种的目的就是培养优良品种,以提高农作物的产量与质量。
如果农作物的三种基因型分别为AA,Aa,aa。
其中AA为优良品种。
农场计划采用AA型植物与每种基因型植物相结合的方案培育植物后代,已知双亲基因型与其后代基因型的概率。
问经过若干年后三种基因型分布如何?要求: (1)建立代数模型,从理论上说明最终的基因型分布。
(2)用MATLAB求解初始分布为0、8,0、2,0时,20年后基概率父体-母体基因型AA-AA AA-Aa AA-aa Aa-Aa Aa-aa aa-aa后代基因型AA11/201/400Aa01/211/21/20aa0001/41/21 3.实验过程3、1实验原理1、特征值与特征向量2、特征值与特征向量的求法3、矩阵的对角化4、离散线性动态系统5、eig命令3、2算法与编程3、2、1clear, clca = -20*100;b = -a;c = a;d = b; p = 0、1;n = 100;xlabel('|\lambda| >1,|u|<1')axis([0 b 0 d]),grid on,hold onx = linspace(a,b,30);A = [0、5 0、4;-0、125 1、1];[pc,lambda] = eig(A);[Y,I] = sort(diag(abs(lambda)),'descend');temp = diag(lambda);lambda = temp(I)pc = pc(:,I)pc = -pc;z1 = pc(2,1)/pc(1,1)*x;z2 = pc(2,2)/pc(1,2)*x;h = plot(x,z1),set(h,'linewidth',2),text(x(7),z1(7)-100,'v1')h = plot(x,z2),set(h,'linewidth',2),text(x(20),z2(20)-100,'v2')button = 1;while button == 1[xi yi button] = ginput(1);plot(xi,yi,'go'),hold onX0 = [xi;yi];X = X0;for i=1:nX = [A*X, X0];h = plot(X(1,1),X(2,1),'R、',X(1,1:2),X(2,1:2),'r-'); hold ontext(X0(1,1),X0(2,1),'x0')quiver([X(1,2),1]',[X(2,2),1]',[X(1,1)-X(1,2),0]',[X(2, 1)-X(2,2),0]',p)set(h,'MarkerSize',6),grid,endend3、2、2clear;A=[1 0、5 0;0 0、5 1;0 0 0];X=[0、8;0、2;0];for i=1:20X=A*X;endX20=XX=[0、8;0、2;0];C=[1 1 1]';n=0;while norm(X-C,'fro')>1、0e-16 C=X;n=n+1;X=A*X;endformat long;X,n结果分析1、2、>>X20 =0、9999998092651370、48630 X =1、00000、00000 n =524.实验总结与实验感悟通过本次实验,我了解了掌握特征值、特征向量、特征方程、矩阵的对角化等概念与理论;掌握将矩阵化为相似对角矩阵的方法;理解由差分方程xk+1=Axk;提高对离散动态系统的理解与分析能力。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2.1 实验原理 1、Koch曲线的产生 Koch曲线是通过图形迭代的方式产生的,其迭代规则为: 对一条线段, 先将其分成三等份,然后将中间的一段替换成以此为底边的等 边三角形的另外两条边。无限迭代下去,最终得到的就是Koch曲线。 2、Koch雪花的产生 Koch雪花是通过对K似。如下所述: 对一个等边三角形,每条边按照上面所述的Koch曲线的迭代规则进行迭代, 1
实验四
地 点: 计算中心
迭代与分形
202 房; 实验台号: 评 分: 刘小兰 03
实验日期与时间: 预习检查纪录: 电子文档存放位置: 电子文档文件名:
2018 年 4 月 25 日
实验教师:
信息工程 4 班-03-陈邦栋实验四.doc
批改意见:
1. 实验目的
- 了解分形几何的基本理论; - 了解通过迭代方式,产生分形图的方法; - 了解分形几何的简单应用。
plot(p(:,1),p(:,2)); %显示各结点的连线图 fill(p(:,1),p(:,2),'b'); %填充颜色 axis off %不要坐标轴 axis equal %各坐标轴同比例 set(findobj(gcf,'type','patch'),'edgecolor','none') %不显示这些正方形的边界 area(s)=polyarea(p(:,1),p(:,2)); %计算每次迭代后 Koch 雪花的面积 end figure(2) hold on; range=1:k; plot(range,area,'go',range,area,'r','linewidth',2); %画出 Koch 雪花的面积值和面积曲线 axis([1 k 50 80]); xlabel('迭代次数'); ylabel('Koch 雪花的面积'); legend('面积大小','面积曲线'); %固定坐标轴的范围
2.3 实验结果
在MATLAB中运行以上的程序,可以得到效果图如下,图1中 (a)~(f) 分别 为不同迭代次数下产生的效果图,图2为不同迭代次数下Koch雪花的面积: 3
(a)
(b)
(c)
(d)
(e)
(f)
4
图 1 不同迭代次数产生的效果图 (a)迭代次数为 1;(b)迭代次数为 2;(c)迭代次数为 3; (d)迭代次数为 4;(e)迭代次数为 5;(f)迭代次数为 6。
set(gcf,'color','w');
3.2 实验结果 6
在MATLAB中运行以上的程序,可以得到效果图如下:
图 3 分形树叶迭代效果图
4 实验总结和实验感悟 本次实验中,我明白了对于一个程序,虽然使用迭代可以很容易的得到我们 想要的结果,并且代码也不会很长,但是随着迭代次数的增长,程序的运算量将 会增长的越来越快, 对于普通的电脑来说,一般会出现电脑很卡或者直接内存不 足的问题。因此,虽说迭代的代码比较简洁,但是取而代之的是计算机的运算时 间。但是随着计算机硬件的不断发展,加上算法的不断优化,以后的迭代程序将 会越来越快。
7
j=j+1;r(j,:)=q1; j=j+1;r(j,:)=q1+d; j=j+1;r(j,:)=q1+d+d*A'; j=j+1;r(j,:)=q1+2*d; end n=4*n; p=[r;q2]; figure(1) hold on;
%原终点作为下条线段的起点,在迭代下条线段时存入 r %全部线段迭代一次后,线段数量乘 4 %重新装载本次迭代后的全部结点 %同一幅图画出不同迭代次数的效果图
每条边都会产生一条Koch曲线,三条边的Koch曲线叠加起来的分形图就叫做 Koch雪花。 3、Koch雪花的面积计算 经过k次迭代的Koch雪花的面积计算公式为:
S (k ) =
i =0
k
i 3 1 i 3 N 4 3
2
(1)
其中,N为初始的等边三角形的边长。 在 MATLAB 仿 真 中 , 我 们 可 以 直 接 使 用 计 算 封 闭 图 形 面 积 的 函 数 polyarea(X,Y),其基本的语法所示: A = polyarea(X,Y) A = polyarea(X,Y,dim) 其中,A = polyarea(X,Y) 返回向量 X 和 Y 中顶点所指定多边形的面积。 如果 X 和 Y 是大小相同的矩阵,则 polyarea 返回 X 和 Y 的各列所定义多 边形的面积。如果 X 和 Y 是多维数组,则 polyarea 返回 X 和 Y 第一个非 单一维度中的多边形的面积。A = polyarea(X,Y,dim) 沿着标量 dim 指定的维度 进行运算。
close all; %关闭已经打开的所有图片 clear,clc; %清空工作区和命令行窗口 k=6; %迭代次数,修改该值可以得到不同的效果图 area=zeros(1,k); %存放不同迭代次数下的 Koch 雪花的面积 p=[0 0;5 5*sqrt(3);10 0;0 0];%存放结点坐标,每行一个点,初始值为两结点的
2
坐标 n=3; for s=1:k j=0; %存放线段的数量,初始值为 1 %实现迭代过程,计算所有的结点的坐标 A=[cos(pi/3) -sin(pi/3);sin(pi/3) cos(pi/3)]; %用于计算新的结点
%以下根据线段两个结点的坐标,计算迭代后它们之间增加的三个 %结点的坐标,并且将这些点的坐标按次序存暂时放到 r 中 for i=1:n q1=p(i,:); q2=p(i+1,:); d=(q2-q1)/3; %每条边计算一次 %目前线段的起点坐标 %目前线段的终点坐标 %原起点存入 r %新 1 点存入 r %新 2 点存入 r %新 3 点存入 r
2.2 算法与编程 2.2.1 算法描述 根据上面所述的迭代原理,在等边三角形的三条边上分别按照 Koch曲线的 迭代规律进行迭代,即可形成Koch雪花。Koch曲线的迭代规律为将一条线段三 等份, 并将中间段用以该段为边的等边三角形的另外两边替代。每次迭代在原图 形的每条边上重新生成一个边长为原边长三分之一的小等边三角形。在仿真中, 每次迭代产生的结点的坐标都可以得到并保存,因此可以利用 MATLAB自带的 计算封闭图形的函数polyarea(X, Y),计算Koch雪花的面积。 2.2.2 编程
5
3.问题2
(选做)自己构造生成元(要有创意) ,按照图形迭代的方式产生分形图, 用计算机编制程序绘制出它的图形
3.1 编程
close all; clear,clc; %关闭已经打开的所有图片 %清空工作区和命令行窗口
x=[0.5;0.5]; %初始点的设置 plot(x(1),x(2),'.'); %绘制初始点 p=[0.89 0.92 0.98 1];%用于概率判断分类的数组 b1=[0;1.6]; b2=[0;1.6]; b3=[0;0.44]; b4=[0;0]; %构造变换矩阵 A1=[0.8,0.02;-0.02,0.8]; A2=[0.2,-0.25;0.23,0.22]; A3=[-0.15,0.28;0.5,0.3]; A4=[0,0;0,0.2]; %开始迭代,修改 i 可以修改迭代次数 for i=1:10000 r=rand; %产生随机数 if r<p(1) %依照随机概率进行分类 x=A1*x+b1; elseif r<p(2) x=A2*x+b2; elseif r<p(3) x=A3*x+b3; else x =A4*x+b4; end plot(x(1),x(2),'g');%画出迭代产生的点 hold on; %绘制在同一张图片上 end axis off; axis equal %不显示坐标轴 %各坐标轴同比例 %设置图象背景为白色
80 面积大小 面积曲线
75
Koch雪花的面积
70
65
60
55
50
1
2
3
迭代次数
4
5
6
图 2 不同迭代次数下 Koch 雪花的面积
2.3 结果分析
迭代与分形的运算过程比较复杂,当迭代次数比较小的时候,程序运行比较 快,但是当迭代次数比较大时,程序运行时间会比较长,甚至可能死机。由公式 (1)的极限值可以知道,当迭代次数取无限大的时候,Koch雪花的总面积将趋于 无穷大,但在实验中,由于实验硬件的限制,测试的迭代次数比较小,加上随着 迭代次数的增大,Koch雪花的面积增长速度越来越慢,因此如图2所示效果并不 明显。从图1的(e)和(f)可以看出,迭代5次和迭代6次的效果图在肉眼看起来并没 有太大的区别,因此,在本次试验中,设置迭代次数为无限大的做法也是没有意 义的,只会增加计算机的负载。