声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 6412|回复: 4

[编程技巧] 如何给已经用syms 定义的参数 变量 赋值

[复制链接]
发表于 2009-3-19 00:15 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
如题 程序如下
    syms x y a b;
    f=x^2+y^3+x*(x*y-x)^(1/2)
    df_x=diff(f,x);
    df_y=diff(f,y);
    D=df_x*a+df_y*b;
    c=input('entre 1 or 2')
    if c==1
       x=2;y=4;
       a=input('a=?');
       b=input('b=?');
       DD=D/f
    end
    if c==2
       x=2;y=4;
       DD=D/f;
       figure(1)
       ezmeshc(DD,a,b);
    end

这个程序c==1时 , DD只显示公式含 变量 x,y。并没有把我在if 里赋的值代入公式算出具体值,为什么?
当 c==2时 , 我想画的是 DD,a,b 的三维关系图。但是也报错,错误如下:

??? Error using ==> ezgraph3 (ezplot3s)
Cannot plot in 4 dimensions

Error in ==> C:\MATLAB6p5\toolbox\matlab\specgraph\ezgraph3.m
On line 30  ==>    ezplot3s(Npts,f{:},domain,surfstyle,flabel,fargs,'st');

Error in ==> C:\MATLAB6p5\toolbox\matlab\specgraph\ezmeshc.m
On line 55  ==> ezgraph3('meshc',f,varargin{:});

Error in ==> C:\MATLAB6p5\toolbox\symbolic\@sym\ezmeshc.m
On line 53  ==>    ezmeshc(F,y,z,varargin{3:end});

Error in ==> C:\Documents and Settings\stagiaire\Bureau\simulation\hqhq.m
On line 18  ==>        ezmeshc(DD,a,b);

是不是也是因为带不进去 x y 的值引起的这个错误?
谢谢:@)
回复
分享到:

使用道具 举报

发表于 2009-3-19 17:11 | 显示全部楼层
help subs

论坛发帖有最小长度限制了,呵呵

评分

1

查看全部评分

 楼主| 发表于 2009-3-20 00:24 | 显示全部楼层
用syms 定义的变量,是不是就必须用  subs 才能带入值呢?
发表于 2009-3-20 09:56 | 显示全部楼层

回复 板凳 hanihaoma 的帖子

subs是比较便捷的方式,如果非要其他的方法可能也有(现在想到的可以用feval或者eval),但是应该是比较麻烦的了。

[ 本帖最后由 sogooda 于 2009-3-20 09:57 编辑 ]

评分

1

查看全部评分

 楼主| 发表于 2009-3-20 16:22 | 显示全部楼层
收到 ,谢谢啦。
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-17 11:32 , Processed in 0.085118 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表