Matlab简单实例学习
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Matlab 程序代码
绘制
1.5sin(7.75)7.75
t
y e t -=
的函数图象。
fv
clear;
t=0:0.02:10;
f1=10/sqrt(7.75).*exp(-1.5*t); f2=sin(sqrt(7.75).*t); y=f1.*f2;
plot(t,y,'-k',t,y,'ok');
xlabel('t');ylabel('y(t) ');title('函数图像') axis([-2 10 -0.5 2])
拉氏变换
clear; clc;
syms s t fs1 fs2 fs3 ft1 ft2 ft3; L=1,C=0.1,R=[1.5 3 5];
h1=1/(L*C*s^2+R(1)*C*s+1); h2=1/(L*C*s^2+R(2)*C*s+1);
h3=1/(L*C*s^2+R(3)*C*s+1);
fs1=h1*(1/s);
fs2=h2*(1/s);
fs3=h3*(1/s);
ft1=ilaplace(fs1,s,t);
ft2=ilaplace(fs2,s,t);
ft3=ilaplace(fs3,s,t);
ezplot(t,ft1);
hold on;
ezplot(t,ft2);
hold on;
ezplot(t,ft3);
信号编码
对[1 1 0 1 1 1 0 1 0 0 1]进行编码。clear;
clc;
c=[1 1 0 1 1 1 0 1 0 0 1]
for i=1:length(c)
if i==1
d1(i)=0;d2(i)=0;
elseif i==2
d1(i)=c(i-1);d2(i)=c(i-1);
elseif i==3
d1(i)=mod(c(i-1)+c(i-2),2);
d2(i)=c(i-1);
else
d1(i)=mod(c(i-1)+c(i-2),2);
d2(i)=mod(c(i-1)+c(i-3),2);
end
end
d1
d2
迭代法
使用一般迭代法求解方程的23x
解。
x e
第一根:
clear;
clc;
x0=10;err=1;
while (err>10^-6)
F1=x0;
F2=log(3*x0^2);
err=abs(F1-F2);
x0=F2;
end
x0
第二根:
clear;
clc;
x=1;err=1;
while (err>10^-6)
F1=x;
F2=sqrt(exp(x)/3);
err=abs(F1-F2);
x=F2;
end
x
第三根:
clear;
clc;
x=10;err=1;
while (err>10^-6)
F1=x;
F2=-sqrt(exp(x)/3);
err=abs(F1-F2);
x=F2;
end
x
牛顿迭代法
使用牛顿迭代法求解方程32
-+-=的解。
x x x
24360
syms x fx fx1;
fx=2*x^3-4*x^2+3*x-6;
fx1=diff(fx)
err=1;k=1;x0=1.5;
while (err>10^-6 && k<=1000)
x1=x0-(subs(fx,x,x0))/(subs(fx1,x,x0))
x0=x1;
err=abs(x0-x1)
k=k+1;
end
k
x0
牛顿迭代法求解
使用牛顿迭代法求解方程312sin1
-=-的解。
x x x
第一解:
syms x fx fx1;
fx=x.^3-sin(x)-12*x+1;
fx1=diff(fx);
err=1;k=1;x0=-4;
while (err>10^-6 && k<=1000)
x1=x0-(subs(fx,x,x0))/(subs(fx1,x,x0));
err=abs(x0-x1);
x0=x1;
k=k+1;
end
k
x0
第二解:
syms x fx fx1;
fx=x.^3-sin(x)-12*x+1;
fx1=diff(fx);
err=1;k=1;x0=0;
while (err>10^-6) && (k<=1000)
x1=x0-(subs(fx,x,x0))/(subs(fx1,x,x0));
err=abs(x0-x1);
x0=x1;
k=k+1;
end
k
x0
第三解:
syms x fx fx1;
fx=x.^3-sin(x)-12*x+1;