求matlab大神解释一下这个程序每一步的含义,越详细越好,跪谢(悬赏可再加)

clc;
clear all;
close all;
n=input('n=')
T0=0.01;
A=1;
t=[0:0.0001:0.05];
z=square(2*pi*100*t);
x=0;
pi=3.1415926;
w0=2*pi/T0;
for i=1:n
fw(i)=(2*i-1)*w0;
a(i)=4*A/(pi*(2*i-1));
y(i,:)=a(i)*sin(fw(i)*t);
fai(i)=0;
x=x+y(i,:);
figure(1)
a=1:100
subplot(n,1,i);
plot(t,y(i,:));xlabel('时间/s');ylabel('振幅')
title(['方波',num2str(a(i)),'次谐波'])
end;
figure(2);
subplot(2,1,1);
plot(t,z);
xlabel('时间/s');
axis([-0,0.05,-2,2]);
ylabel('振幅')
title('方波')
subplot(2,1,2);
plot(t,x);
xlabel('时间/s');
ylabel('振幅');
title([num2str(a(i)),'次谐波合成图'])
主要是方波的分解和合成,n是输入要分解成几次谐波,后面的就都不太懂了。尤其是那个循环里面。_(:зゝ∠)_

clc;%清理窗口显示内容
clear %清除工作间变量
close all;%关闭所有图形
n=input('n=');%命令窗中手动输入,2,3,………谐波次数
T0=0.01;%周期
A=1;%振幅
t=0:0.0001:0.05;%时间
z=square(2*pi*100*t);%方波脉冲
x=0;%均值,0
pi=3.1415926;
w0=2*pi/T0;%周期数,频率
for i=1:n
fw(i)=(2*i-1)*w0;%每次谐波频率
a(i)=4*A/(pi*(2*i-1));%每次谐波的振幅
y(i,:)=a(i)*sin(fw(i)*t);%信号
fai(i)=0;%相位,没用到,可去掉
x=x+y(i,:);%合成信号
figure(1)%生成第一图窗
a=1:100;%定义无效,可去掉
subplot(n,1,i);%生成子图
plot(t,y(i,:));%画子图
xlabel('时间/s');ylabel('振幅')%x,y轴名称
title(['方波',num2str(a(i)),'次谐波'])%图形名称
end;
figure(2);%生成第二图形窗
subplot(2,1,1);%生成子图
plot(t,z);%画子图
xlabel('时间/s');%x轴名称
axis([-0,0.05,-2,2]);%设置轴范围
ylabel('振幅')%y轴名称
title('方波')%子图名称
subplot(2,1,2);%生成第二子图
plot(t,x);%画子图
xlabel('时间/s');%x轴名称
ylabel('振幅');%y轴名称
title([num2str(a(i)),'次谐波合成图'])%子图名称
温馨提示:内容为网友见解,仅供参考
无其他回答

求大神帮忙给这段matlab程序加上注释,跪谢,急求!
f=imread('cameraman.tif'); % 读图f=im2double(f); % 转化为double型数据[r c]=size(f);%设置矩阵的行列数,图的大小h=fspecial('gaussian',[r c],0.5); % 模糊核g=imfilter(f,h,'circular'); % 图像模糊a=0.1;b=0.000000000001;n=a+b*randn(r,c); % 噪声,均值为0.1...

有谁可以帮忙给这个MATLAB程序加一下注释啊,跪谢
clear;%清空变量 clc;%清空显示 close all;%关闭所有图窗口 global immagine n_bands h_bands n_arcs h_radius h_lato n_sectors matrice num_disk%定义多个全局变量 n_bands=4;h_bands=20;n_arcs=16;h_radius=12;%以上四个简单赋值 h_lato=h_radius+(n_bands*h_bands*2)+16;%也是赋值...

有谁可以帮忙给这个MATLAB程序加一下注释啊,跪谢
h_radius=12;%以上四个简单赋值 h_lato=h_radius+(n_bands*h_bands*2)+16;%也是赋值,关系就是先乘后加 if mod(h_lato,2)==0%判断,满足条件则执行下面减1操作,否则不执行。h_lato=h_lato-1;end n_sectors=n_bands*n_arcs;%赋值 matrice=zeros(h_lato);%定义h_lato行h_lato列的...

matlab怎样用代码画出附件图片中的这个图啊,求大神帮忙,作业实在是木 ...
(1)看题意和机器人避障有关,你的问题只要求画图,所以其他没多考虑;(2)部分颜色配色可能不很准确;(3)原图中的相关标注不确定你是否需要,做起来又比较繁琐,所以暂时没做。首先绘制黑白方格 for i = 0 : 15,for j = -6 : 1 : 5 if rem(i+j,2) ~= 0 color = 'k';else co...

求Matlab大神帮我看下如何能优化这个程序!!!
我在matlab里试了一下 tic;for i = 1 : 10000for j = 1 : 10000endendtoc;单单是这样的空循环已经需要30分钟以上了。我可以让你自身的代码不出现循环。只调用build-in function或者需要一个额外下载的mex function。但我不保证30分钟之内算完。还有个问题是,如果两跳线段在不画延长线的情况下...

matlab 已知一系列离散的频域解,如何求时域解 跪谢!!!
1. 程序不一定能帮你。程序只管运行,但是你还是不知道其原理,所以无法判断是否正确。对于FFT的理解,需要深入的分析公式。2. 如何得到幅度为1的复正弦波?用ifft(u,1024)是正确的,这个时候得到的时域波形为1024个点。关键是u是多少 2.1 如果u是[1024,0,0,…,0],1023个0,那么得到...

matlab一个简单的fmincon()函数使用,就是想设定好上下限,就是错误,求...
可这样改:对r进行优化 function optimizerfmincon ra=15;lb=14;ub=16;A=[];b=[];Aeq=[];beq=[];Opt=fmincon(@Goalfunc,ra,A,b,Aeq,beq,lb,ub)Opt=fminunc(@Goalfunc,15,A,b,Aeq,beq,lb,ub)目标函数 function f=Goalfunc(ra)tic f=ra(1)^2;toc ...

各位大神,请问已知xyz数据,matlab如何拟合xyz方程?最好能给出程序和曲...
使用interp2函数,如图:x,y,z数据可替换,是我所上传附件的书中的内容

dx\/dt=y,dy\/dt=-sinx,求大神帮忙编一个MATLAB的程序,用龙格库塔法解这个...
function dx=dfun(t,x) %函数名为dfun,参数为t与xdx=[x(2);-sin(x(1))]; %以向量形式表示方程 输入:clearts=-15:0.05:15; %步长取0.05x0=[1,0]; %设定参数初值options=odeset('reltol',1e-6,'abstol',1e-9); %提高精度[t,x]=ode45(@dfun,ts,x0,options...

...求三个圆共同的相交面积。如何用MATLAB程序仿真
if (x1(n)*x1(n)+y1(n)*y1(n))<1 % 计算落点到坐标原点的距离,判别落点是否在圆内 m=m+1; % 如果落入圆中,计数器加1 end plot(p1,q1,'.',x,y,'-k',[-1 -1 1 1 -1],[-1 1 1 -1 -1],'-k');axis equal; % 坐标纵横比例相同 axis([-2 2 -2 2]);...

相似回答