📄 untitled21.m
字号:
%用来画图,左除值,与W,B都有关,并且与才采点,采样范围有关\
w=10;
B=1;
row1=20;%采样区间采样点数
t1=linspace(-pi/60,pi/60,row1)
A1=matrixA(row1,7,t1) % 定义一个15*7大的A矩阵,用于解Ax=G
%[U S V]=svd(A1)% 对A进行svd分解,得到U S V
G1=matrixG(row1,t1) %定义一个15*1大的G矩阵,
%S(1,1)=0;
%S(2,2)=0;
%S(3,3)=0;
%S(4,4)=0;
%S(5,5)=0;
%S(6,6)=0;
%S(7,7)=0;%本来matlab中有此函数(对奇异值进行取舍的函数),但今日已忘,赶它日当前往博库书城查《matlab数值计算范例教程》
%t=linspace(pi/(60*B),pi/2,15);
%t=linspace(-pi,pi,20);
%X=inv(A1'*A1)*(A1')*G1
X=A1\G1 %svd中已去掉两个小的奇异值。分别为S(6,6)=0,S(7,7)=0
row2=300;%比较范围采样点数
t2=linspace(-2*pi,2*pi,row2)
A2=matrixA(row2,7,t2)
p=A2*X
%subplot(1,2,1);
%t=linspace(-pi,pi,20);
plot(t2,p,'r')
hold on
%title('经过SVD后得到的图形')
%t=linspace(-pi*2,pi*2,500);
%y=(2/pi)*((sin((B*t)/2)./t).^2).*cos(w*t)
G2=matrixG(row2,t2)
plot(t2,G2)
%subplot(1,2,2);
%title('不经过SVD后的原来的图形')
%plot(t,p,'r',t,y)
xlabel('t');
ylabel('y值');
title('在-pi和pi之间采样60个点')
hold off
%legend('红:SVD值,绿:原方程值')
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -