我的程序是这样的s=0+eps:0.01:1000; %s从0变到1000y=vectorize('(-.115*((c
来源:学生作业帮 编辑:神马作文网作业帮 分类:综合作业 时间:2024/11/12 07:31:03
我的程序是这样的
s=0+eps:0.01:1000; %s从0变到1000
y=vectorize('(-.115*((cos(.943e-2*s^(1/2))-11.6*s^(1/2)*sin(.943e-2*s^(1/2)))*cos(1.36*s^(1/2))+40.4*(-.892e-4*sin(.943e-2*s^(1/2))/s^(1/2)-.104e-2*cos(.943e-2*s^(1/2)))*s^(1/2)*sin(1.36*s^(1/2)))*cos(.379e-1*s^(1/2))-.115*(261.*(-.323e-1*cos(.943e-2*s^(1/2))+.374*s^(1/2)*sin(.943e-2*s^(1/2)))*sin(1.36*s^(1/2))/s^(1/2)+6.45*(-.469e-2*sin(.943e-2*s^(1/2))/s^(1/2)-.546e-1*cos(.943e-2*s^(1/2)))*cos(1.36*s^(1/2)))*s^(1/2)*sin(.379e-1*s^(1/2)))*cos(.121*s^(1/2))') %将所有乘号和除号改成点乘和点除
plot(s,y);
grid on
可是却出错
Error using ==> plot
Error in color/linetype argument
Error in ==> gaidiancheng at 3
plot(s,y); 说我什么画的什么有错,不怎么懂,若是不自己手改成点乘和点除的话好像不会出现这个错误,请高手指教,
s=0+eps:0.01:1000; %s从0变到1000
y=vectorize('(-.115*((cos(.943e-2*s^(1/2))-11.6*s^(1/2)*sin(.943e-2*s^(1/2)))*cos(1.36*s^(1/2))+40.4*(-.892e-4*sin(.943e-2*s^(1/2))/s^(1/2)-.104e-2*cos(.943e-2*s^(1/2)))*s^(1/2)*sin(1.36*s^(1/2)))*cos(.379e-1*s^(1/2))-.115*(261.*(-.323e-1*cos(.943e-2*s^(1/2))+.374*s^(1/2)*sin(.943e-2*s^(1/2)))*sin(1.36*s^(1/2))/s^(1/2)+6.45*(-.469e-2*sin(.943e-2*s^(1/2))/s^(1/2)-.546e-1*cos(.943e-2*s^(1/2)))*cos(1.36*s^(1/2)))*s^(1/2)*sin(.379e-1*s^(1/2)))*cos(.121*s^(1/2))') %将所有乘号和除号改成点乘和点除
plot(s,y);
grid on
可是却出错
Error using ==> plot
Error in color/linetype argument
Error in ==> gaidiancheng at 3
plot(s,y); 说我什么画的什么有错,不怎么懂,若是不自己手改成点乘和点除的话好像不会出现这个错误,请高手指教,
你的y在vectorize后会变成一个符号变量,故plot报错,而不用vectorize,y就是直接计算后面表达式的数值,因此不会出现这个问题.
在plot(s,y);前加上y=eval(y);将y计算成数值再画图就行了.eval(y),相当于将所有乘号和除号改成点乘和点除后的表达式输入到matlab命令窗口中,再执行一遍
再问: 谢谢哦,我还想问一个问题,就是其实我的这个y是通过一个式子算出来的,本来我想直接在那个程序中 输入y1=vectorize('y') 就是把y中所有乘号和除号改成点乘和点除 但是结果就是出来 y 而不是那个式子,不知道我有没有表达清楚~~~~谢谢~~
再答: 例: >> y = 'x^2' %假设y的表达式是x^2 y = x^2 >> y1 = vectorize(y) %将y代表的函数(y=x^2)点乘化 y1 = x.^2 >>y1 = vectorize('y') %将'y'点乘化,此时'y' 代表一个函数,它的表达式为y = y y1 = y %你想问的是这个吗
再问: 嗯嗯,是呢,就是说不要打引号就出来了是吧~~~~·谢谢~~
在plot(s,y);前加上y=eval(y);将y计算成数值再画图就行了.eval(y),相当于将所有乘号和除号改成点乘和点除后的表达式输入到matlab命令窗口中,再执行一遍
再问: 谢谢哦,我还想问一个问题,就是其实我的这个y是通过一个式子算出来的,本来我想直接在那个程序中 输入y1=vectorize('y') 就是把y中所有乘号和除号改成点乘和点除 但是结果就是出来 y 而不是那个式子,不知道我有没有表达清楚~~~~谢谢~~
再答: 例: >> y = 'x^2' %假设y的表达式是x^2 y = x^2 >> y1 = vectorize(y) %将y代表的函数(y=x^2)点乘化 y1 = x.^2 >>y1 = vectorize('y') %将'y'点乘化,此时'y' 代表一个函数,它的表达式为y = y y1 = y %你想问的是这个吗
再问: 嗯嗯,是呢,就是说不要打引号就出来了是吧~~~~·谢谢~~
求下面的程序的结果~void main( ){Stack S;Char x,y;InitStack(S);X=’c’;y
当执行下面程序段后,变量S的值是? s=0 c=1 for i=1 to 10 c=c*-1 s=s+c*i next
一道数学程序框图题,某程序框图如图所示,该程序运行后输出的k的值是?第一步k=0,s=0,第二步 若k小于1000,则S
用matlab求微分方程y''=58.8siny y(0)=pi/4,y'(0)=0.我的程序是这样的:(看补充)
一个物体从静止到以加速度3m/s²运动2s,2s末,该物体的速度是:A.0m/s B.2m/s C.3m/s
c语言程序设计:从键盘输入n的值,计算S=1+2+3+.+n的值!程序尽可能的简单!
用C语言编写程序计算S的值,其中s=1+2+3+.+100
用VF编写程序,已知:S=1+3+5+7+9+…,求S不大于1000的最大值.答案是961.请亲测再传程序...
程序框图下边的S=0 题:开始:矩形框 K=0 S=0 判断:S<100?否:输出k是:S=S+2^S k=k+1 然后
已知s=1/2gt^2,从3s到3.1s的平均速度是__________
求教我的程序哪里出错了 变步长梯形法求数值积分用c语言实现 f(x)=sin(x)/x 0到1的积分 急待
用C语言程序计算从1加到100的程序是怎样的?