24小时热门版块排行榜    

CyRhmU.jpeg
查看: 1445  |  回复: 5

suzhiping

新虫 (小有名气)

[求助] 求助matlab问题

t=2.06;
m=6e5;
f=2e-15;
c=0.082;
x_v=0.2:0.01:0.4;
syms x y;
f=((1-x)*(m^(1/t)-y^(1/t)))/(m^(1/t)+(1-c)/c*(y^(1/t)))+x*(f^(1/t)-m^(1/t))/(f^(1/t)+(1-c)/c*(y^(1/t)));
for i=1:length(x_v)
    ff=subs(f,x,x_v(i));
    y_v(i)=double(solve(ff));
end
plot(x_v,abs(y_v));

请问各位大侠上面的程序运行为什么总是报错:In an assignment  A(I) = B, the number of elements in B and I must be the same. 应该怎么改。谢谢!
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

suzhiping

新虫 (小有名气)

x_v=1.2:0.01:1.4时可以画出曲线
x_v=0.2:0.01:1.4时显示出错
2楼2012-04-24 16:33:17
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zjliu1265

至尊木虫 (正式写手)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
xiegangmai: 金币+2, 谢谢应助! 2012-04-25 00:16:22
suzhiping: 金币+20, ★★★★★最佳答案, 10 2012-04-25 20:54:02
应该是在[0.2,1.2]这个区间有多解存在,你可以按下面的方式取第一个解:
t=2.06;
m=6e5;
f=2e-15;
c=0.082;
x_v=0.2:0.01:0.4;
syms x y;
f=((1-x)*(m^(1/t)-y^(1/t)))/(m^(1/t)+(1-c)/c*(y^(1/t)))+x*(f^(1/t)-m^(1/t))/(f^(1/t)+(1-c)/c*(y^(1/t)));
for i=1:length(x_v)
    ff=subs(f,x,x_v(i));
    rx=double(solve(ff));
    y_v(i)=rx(1);
end
plot(x_v,abs(y_v));
3楼2012-04-24 17:18:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

luxujie3

金虫 (著名写手)

【答案】应助回帖


感谢参与,应助指数 +1
xiegangmai: 金币+1, 谢谢参与! 2012-04-25 00:16:30
我觉得是你的自变量跟函数值的个数不匹配
4楼2012-04-24 19:23:01
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

luoheng27

木虫 (小有名气)

【答案】应助回帖


感谢参与,应助指数 +1
xiegangmai: 金币+1, 谢谢参与! 2012-04-25 22:52:08
solve(ff)这个函数得到的解不止一个(应该是两个或四个复数),你可以先把“solve(ff)”这个语句在matlab主窗口中运行,查看ans的结果,然后找到与你问题实际情况相符的解,
5楼2012-04-25 11:17:27
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yunrong293

木虫 (小有名气)

也学习学习
6楼2012-04-25 15:20:44
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 suzhiping 的主题更新
信息提示
请填处理意见