作业帮 > 综合 > 作业

matlab 总是报错,问题不难但就是解决不了.

来源:学生作业帮 编辑:灵鹊做题网作业帮 分类:综合作业 时间:2024/04/29 06:21:16
matlab 总是报错,问题不难但就是解决不了.
function [xR yR]=reference_1(t);
r=0.2165;
t=0:0.0001:0.5;
Phi=4*pi*t.^2;
x=r*cos(Phi);
y=r*sin(Phi)
x1=diff(x,t,2);
y1=diff(y,t,2);
plot(t,x1,'k');
hold on;
plot(t,y1,':k');
grid
这是报错信息,
Error using ==> diff
Difference order N must be a positive integer scalar.
Error in ==> reference_1 at 7
x1=diff(x,t,2)
matlab 总是报错,问题不难但就是解决不了.
这个到挺简单,主要原因是函数diff的使用方法问题,它本身是个关于符号运算的函数
所以中间的变量t是多余的

x1=diff(x,t,2);
y1=diff(y,t,2);
改为
x1=diff(x,2);
y1=diff(y,2);
问题将会得以解决
再问: 但是得到的图形,横坐标与纵坐标的刻度不是我想得到的,您还能帮忙解决下么。另外在0.5到1秒的时间内。Phi有所改变,怎么样和上述的那个合在一起,做成一个图形,求指教! function [xR yR]=reference_2(t); r=0.2165; t=0.5:0.0001:1; Phi=8*pi*t-4*pi*t.^2; x=r*cos(Phi); y=r*sin(Phi); x1=diff(x,2); y1=diff(y,2); plot(x1,'k'); hold on; plot(y1,':k'); grid