自由边界条件下克拉尼图形的模拟

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

课程设计

题目:自由边界条件下克拉尼图形的模拟

学院:物理工程学院

姓名:文美乐

专业:应用物理1203班

学号:121410020322

t=0:pi/20:4*pi; %0到4pi,每隔Pi/20取一个数

x=0:0.1*pi:4*pi; %0到4pi,每次增加0.1pi

m=moviein(40); %定义一个40列的矩阵m,以存储40帧画面,每列对应一帧画面for i=1:40;

y=sin(x+t(i));

plot(x,y ,'o');

m(:,i)=getframe; %依次将40帧画面存入矩阵m

end

movie(m,10,20) %将40帧画面演示10次,每秒20帧画面

图形:

t=0:pi/20:4*pi; %0到4pi,每隔Pi/20取一个数

x=0:0.1*pi:4*pi; %0到4pi,每次增加0.1pi

m=moviein(40); %定义一个40列的矩阵m,以存储40帧画面,每列对应一帧画面for i=1:40 ;

y1=sin(x+t(i));

y2=sin(x-t(i));

y=y1+y2;%两列行波叠加

plot(x,y1,x,y2,x,y);

m(:,i)=getframe; %依次将40帧画面存入矩阵m

end

movie(m,10,20) %将40帧画面演示10次,每秒20帧画面

图形:

t=[0:pi/20:4*pi];%0到4*pi,每隔pi/20取一个数

x=[0:0.1*pi:4*pi];%0到4*pi,每次增加0.1*pi

y=x;

[X,Y]=meshgrid(x,y);%定义数组x,y,

m=moviein(40); %定义一个40列的矩阵m,以存储40帧画面,每列对应一帧画面for i=1:40 ;

Z=sin(X+t(i))+sin(X-t(i));%定义z函数

mesh(X,Y,Z);%画三维图

m(:,i)=getframe; %依次将40帧画面存入矩阵m

end

movie(m,10,20) %将40帧画面演示10次,每秒20帧画面

图形:

双原子

clear;clc %清除窗口

A=[1,-1;-1,1];

[w,v]=eig(A) %矩阵A的特征值w,特征向量v

t=[0:pi/20:2*pi]; %0到2pi,每隔Pi/20取一个数

z1=w(1)*cos(v(4)*t); %第一个小球的位移

z2=w(4)*cos(v(4)*t); %第二个小球的位移

figure;

hold on;

box on;

r = 0.1; %小球半径

xr1 = r*cos(t)+0.2; yr1 = r*sin(t)+z1(1); %第一个小球xr2 = r*cos(t)-0.2; yr2 = r*sin(t)+z2(1); %第二个小球hb1 = fill(xr1, yr1, 'r'); %绘制第一个小球

hb2 = fill(xr2, yr2, 'y'); %绘制第二个小球

axis([-1 7 -1.2 1.2]); %坐标轴范围设置

axis equal; %坐标轴属性设置

for i = 1 : length(t)

set(hb1,'YData',r*sin(t)+z1(i)) ;

%移动第一个小球

set(hb2,'YData',r*sin(t)+z2(i));

% 移动第二个小球

pause(0.05);%延时播放

end

图形:

十原子运动

clc;

clear all;

A=[1 -1 0 0 0 0 0 0 0 0;-1 2 -1 0 0 0 0 0 0 0;0 -1 2 -1 0 0 0 0 0 0;0 0 -1 2 -1 0 0 0 0 0;0 0 0 -1 2 -1 0 0 0 0;0 0 0 0 -1 2 -1 0 0 0;0 0 0 0 0 -1 2 -1 0 0;0 0 0 0 0 0 -1 2 -1 0;0 0 0 0 0 0 0 -1 2 -1;0 0 0 0 0 0 0 0 -1 1];

[W,V]=eig(A) %矩阵A的特征值w,特征向量v

lin=5;

w1=(W(1,lin));

w2=(W(2,lin));

w3=(W(3,lin));

w4=(W(4,lin));

w5=(W(5,lin));

w6=(W(6,lin));

w7=(W(7,lin));

w8=(W(8,lin));

w9=(W(9,lin));

w10=(W(10,lin)); %振幅w

v1=sqrt(V(1,1));

v2=sqrt(V(2,2));

v3=sqrt(V(3,3));

v4=sqrt(V(4,4));

v5=sqrt(V(5,5));

v6=sqrt(V(6,6));

v7=sqrt(V(7,7));

v8=sqrt(V(8,8));

v9=sqrt(V(9,9));

v10=sqrt(V(10,10)); %频率v

t=linspace(0,2*pi);

z1=w1*cos(v10*t);

z2=w2*cos(v10*t);

z3=w3*cos(v10*t);

z4=w4*cos(v10*t);

z5=w5*cos(v10*t);

z6=w6*cos(v10*t);

z7=w7*cos(v10*t);

z8=w8*cos(v10*t);

z9=w9*cos(v10*t);

z10=w10*cos(v10*t); %十个小球分别的位移

figure;

hold on;

box on;

r=0.1;

xr1=r*cos(t)-1.8;yr1=r*sin(t)+t(1);

xr2=r*cos(t)-1.4;yr2=r*sin(t)+t(1);

xr3=r*cos(t)-1.0;yr3=r*sin(t)+t(1);

xr4=r*cos(t)-0.6;yr4=r*sin(t)+t(1);

xr5=r*cos(t)-0.2;yr5=r*sin(t)+t(1);

xr6=r*cos(t)+0.2;yr6=r*sin(t)+t(1);

xr7=r*cos(t)+0.6;yr7=r*sin(t)+t(1);

xr8=r*cos(t)+1;yr8=r*sin(t)+t(1);

xr9=r*cos(t)+1.4;yr9=r*sin(t)+t(1);

xr10=r*cos(t)+1.8;yr10=r*sin(t)+t(1); %十个小球分别得初始位置hb1=fill(xr1,yr1,'r');

hb2=fill(xr2,yr2,'r');

hb3=fill(xr3,yr3,'r')

hb4=fill(xr4,yr4,'r')

hb5=fill(xr5,yr5,'r');

hb6=fill(xr6,yr6,'r');

hb7=fill(xr7,yr7,'r');

相关文档
最新文档