matlab的Koch雪花程序怎样写啊?(不要Koch曲线的程序)选修了matlab,实在弄不懂这个软件

来源:学生作业帮助网 编辑:作业帮 时间:2024/11/13 04:09:19

matlab的Koch雪花程序怎样写啊?(不要Koch曲线的程序)选修了matlab,实在弄不懂这个软件
matlab的Koch雪花程序怎样写啊?(不要Koch曲线的程序)
选修了matlab,实在弄不懂这个软件

matlab的Koch雪花程序怎样写啊?(不要Koch曲线的程序)选修了matlab,实在弄不懂这个软件
我正好收集了一个曲线程序,从mathworks主页下载的.修改一下吧.
把以下程序存为koch.m
>>koch(5)
运行.
%KOCH:Plots 'Koch Curve' Fractal
%
% koch(n) plots the 'Koch Curve' Fractal after n iterations
% e.g koch(4) plots the Koch Curve after 4 iterations.
% (be patient for n>8,depending on Computer speed)
%
% The 'kline' local function generates the Koch Curve co-ordinates using
% recursive calls,while the 'plotline' local function is used to plot
% the Koch Curve.
%
% Copyright (c) 2000 by Salman Durrani (dsalman@wol.net.pk)
%--------------------------------------------------------------------
function []=koch(n)
if (n==0)
x=[0;1];
y=[0;0];
line(x,y,'Color','b');
axis equal
set(gca,'Visible','off')
else
levelcontrol=10^n;
L=levelcontrol/(3^n);
l=ceil(L);
kline(0,0,levelcontrol,0,l);
axis equal
set(gca,'Visible','off')
set(gcf,'Name','Koch Curve')
end
%--------------------------------------------------------------------
function kline(x1,y1,x5,y5,limit)
length=sqrt((x5-x1)^2+(y5-y1)^2);
if(length>limit)
x2=(2*x1+x5)/3;
y2=(2*y1+y5)/3;
x3=(x1+x5)/2-(y5-y1)/(2.0*sqrt(3.0));
y3=(y1+y5)/2+(x5-x1)/(2.0*sqrt(3.0));
x4=(2*x5+x1)/3;
y4=(2*y5+y1)/3;
% recursive calls
kline(x1,y1,x2,y2,limit);
kline(x2,y2,x3,y3,limit);
kline(x3,y3,x4,y4,limit);
kline(x4,y4,x5,y5,limit);
else
plotline(x1,y1,x5,y5);
end
%--------------------------------------------------------------------
function plotline(a1,b1,a2,b2)
x=[a1;a2];
y=[b1;b2];
line(x,y);
%--------------------------------------------------------------------
还有一个,正在修改
function snow
p=[0;0];
q=[1;0];
n=3
koch2(p,q,n)
hold off
axis equal
function koch2(p,q,n)
if (n==0)
plot([p(1);q(1)],[p(2);q(2)]);
hold on;
else
c = q-p;
c = [-c(2); c(1)];
c = (p+q)/2 + c/sqrt(12); % 求出「向左侧翘起 1/3」的顶点座标向量 c
a = (2*p+q)/3; % 求出从 p 到 q 的 1/3 处端点座标向量 a
b = (p+2*q)/3; % 求出从 p 到 q 的 2/3 处端点座标向量 b
koch2(p,a,n-1); % 对 pa 线段做下一回合
koch2(a,c,n-1); % 对 ac 线段做下一回合
koch2(c,b,n-1); % 对 cb 线段做下一回合
koch2(b,q,n-1); % 对 bq 线段做下一回合
end

matlab的Koch雪花程序怎样写啊?(不要Koch曲线的程序)选修了matlab,实在弄不懂这个软件 matlab解答对一个等边三角形,每条边按照Koch曲线的方式进行迭代,产生的分形图称为Koch雪花.编制程序绘制出它的图形,并计算Koch雪花的面积,以及它的分形维数. matlab 雪花koch 这个程序哪儿错了、、?function koch(p,q,n)if (n==0)plot([p(1);q(1)],[p(2);q(2)]);hold on;elsec = q-p;c = [-c(2);c(1)];c = (p+q)/2+c/sqrt(12); % 求出「向左侧翘起 1/3」的顶点座标向量 ca = (2*p+q)/3; % 求出 matlab画出雪花曲线function y=koch(x1,x2,y1,y2,n)if n>1koch(x1,y1,(2*x1+x2)/3,(2*y1+y2)/3,n-1);koch((2*x1+x2)/3,(2*y1+y2)/3,(x1+x2)/2+(y1-...y2)*sqrt(3)/6,(y1+y2)/2+(x2-x1)*sqrt(3)/6,n-1);koch((x1+x2)/2+(y1-y2)*sqrt(3)/6,(y1+y2)/2+(x2-...x1)*sqr 求matlab画koch雪花曲线的方法在matlab7.0环境下可运行的.ps:添加两个问题,1,第N条曲线长度是否存在极限?理由?2.第n条曲线围城的面积为An,是否存在极限,理由? 请问用matlab进行谐波分析,用的是fft加窗插值算法.加窗的程序我会写,插值的程序怎样写?你会吗? 求下题的MATLAB程序 最小二乘法的matlab程序 求下式的Matlab程序 高斯列主元消元法的matlab程序 Matlab程序应该怎么写? 用Matlab求(d^3(xe^x))/dx^3的程序怎么写啊! 这个公式的MATLAB程序该怎么写 用matlab画椭圆?如的程序怎么写? matlab中的求和图中的两个式子的matlab的程序该怎么写, a*cos(c*b)-c.*sin(c*b)=0在MATLAB中该怎样写命令?能迭代出c的表达式吗?怎样写程序? simpson公式的matlab程序 kruskal算法的Matlab程序