求几个mathematica制作的简单分形的公式
来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/04/30 16:20:56
求几个mathematica制作的简单分形的公式
Koch曲线程序koch.m
function koch(a1,b1,a2,b2,n)
%koch(0,0,9,0,3)
%a1,b1,a2,b2为初始线段两端点坐标,n为迭代次数
a1=0;b1=0;a2=9;b2=0;n=3;
%第i-1次迭代时由各条线段产生的新四条线段的五点横、纵坐标存储在数组A、B中
[A,B]=sub_koch1(a1,b1,a2,b2);
for i=1:n
for j=1:length(A)/5;
w=sub_koch2(A(1+5*(j-1):5*j),B(1+5*(j-1):5*j));
for k=1:4
[AA(5*4*(j-1)+5*(k-1)+1:5*4*(j-1)+5*(k-1)+5),BB(5*4*(j-1)+5*(k-1)+1:5*4*(j-1)+5*(k-1)+5)]=sub_koch1(w(k,1),w(k,2),w(k,3),w(k,4));
end
end
A=AA;
B=BB;
end
plot(A,B)
hold on
axis equal
%由以(ax,ay),(bx,by)为端点的线段生成新的中间三点坐标并把这五点横、纵坐标依次分别存%储在数组A,B中
function [A,B]=sub_koch1(ax,ay,bx,by)
cx=ax+(bx-ax)/3;
cy=ay+(by-ay)/3;
ex=bx-(bx-ax)/3;
ey=by-(by-ay)/3;
L=sqrt((ex-cx).^2+(ey-cy).^2);
alpha=atan((ey-cy)./(ex-cx));
if (ex-cx)
function koch(a1,b1,a2,b2,n)
%koch(0,0,9,0,3)
%a1,b1,a2,b2为初始线段两端点坐标,n为迭代次数
a1=0;b1=0;a2=9;b2=0;n=3;
%第i-1次迭代时由各条线段产生的新四条线段的五点横、纵坐标存储在数组A、B中
[A,B]=sub_koch1(a1,b1,a2,b2);
for i=1:n
for j=1:length(A)/5;
w=sub_koch2(A(1+5*(j-1):5*j),B(1+5*(j-1):5*j));
for k=1:4
[AA(5*4*(j-1)+5*(k-1)+1:5*4*(j-1)+5*(k-1)+5),BB(5*4*(j-1)+5*(k-1)+1:5*4*(j-1)+5*(k-1)+5)]=sub_koch1(w(k,1),w(k,2),w(k,3),w(k,4));
end
end
A=AA;
B=BB;
end
plot(A,B)
hold on
axis equal
%由以(ax,ay),(bx,by)为端点的线段生成新的中间三点坐标并把这五点横、纵坐标依次分别存%储在数组A,B中
function [A,B]=sub_koch1(ax,ay,bx,by)
cx=ax+(bx-ax)/3;
cy=ay+(by-ay)/3;
ex=bx-(bx-ax)/3;
ey=by-(by-ay)/3;
L=sqrt((ex-cx).^2+(ey-cy).^2);
alpha=atan((ey-cy)./(ex-cx));
if (ex-cx)
求一个简单的Mathematica程序
将mathematica中的公式使用TeXForm[]转化为LATEX时,mathematica会对公式做简单的简化,比
【30分】几个简单的高数习题,求详解.
Mathematica超简单的函数问题
求简单的小发明制作过程
求简单的科技小发明小制作
mathematica求积分的问题
如何运用Mathematica制作一个心形的数学函数图像?我要代码
高分求一段简单的mathematica程序,计算一个高阶多项式的解
孔明灯的简单制作
求帮忙用mathematica或其他软件画个简单的函数图形
Mathematica的求值问题,已知几个方程,怎么求一个表达式的值