声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1877|回复: 14

[编程技巧] 怎样 plot 偏导数图像

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

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

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

x
举例说明, 程序如下:
  global a; global b; global c
  d= a^2+2b+c^3;
  derive_a=diff(d,a);  derive_b=diff(d,b);  derive_c=diff(d,c);
  figure(1);   plot(a,d,'r')
  
这样plot 什么都不显示,请问有类似情况的朋友可以帮下忙吗?谢谢啦。

[ 本帖最后由 ChaChing 于 2009-3-12 08:15 编辑 ]
回复
分享到:

使用道具 举报

发表于 2009-3-11 08:32 | 显示全部楼层
先看下本版规则!
发表于 2009-3-11 09:28 | 显示全部楼层
你的偏导方程是什么
 楼主| 发表于 2009-3-11 16:41 | 显示全部楼层
偏导方程,就和上面的类似啊。
发表于 2009-3-11 17:08 | 显示全部楼层
去看看符号计算工具箱吧,保证可以找到你需要的
 楼主| 发表于 2009-3-11 21:00 | 显示全部楼层
符号计算工具箱,在哪里看啊?谢谢
看了规则了,但还是不知道违反了哪条。:@(

[ 本帖最后由 ChaChing 于 2009-6-22 23:09 编辑 ]
发表于 2009-3-11 21:26 | 显示全部楼层

回复 7楼 hanihaoma 的帖子

出错提示?:@)
 楼主| 发表于 2009-3-11 21:35 | 显示全部楼层
clear all; close all;  clc
  global a;  global b;  global c
  d= a^2+2*b+c^3;
  derive_a=diff(d,a);   derive_b=diff(d,b);   derive_c=diff(d,c);
  figure(1);  plot(a,d,'r')

重新写 了下, 没有错误啊,就是plot 不出图。程序本人没有报错。:@Q

[ 本帖最后由 ChaChing 于 2009-3-12 08:57 编辑 ]
发表于 2009-3-11 22:26 | 显示全部楼层
a, b,c 是什么?
你这样求导之后是一个空的阵,是不是求偏导搞错了?并没有定义符号?

[ 本帖最后由 无水1324 于 2009-3-11 22:29 编辑 ]

评分

1

查看全部评分

 楼主| 发表于 2009-3-11 22:38 | 显示全部楼层
a b c 就是任意变量啊, 但是我要是a=linspace(1,10000,10000);
                                                               b=linspace(1,10000,10000);
                                                               c=linspace(1,10000,10000);这样定义变量
程序就报错了
??? Error using ==> diff
Difference order N must be a positive integer scalar.

Error in ==> c:\documents and settings\stagiaire\bureau\wijiz.m
On line 9  ==>   derive_a=diff(d,a);
发表于 2009-3-12 09:02 | 显示全部楼层
或许1F的程序打错了, 但的确有报错!
除了出错代码和出错提示外, 看了那麽久, 还是不确定楼主要的!?
如无水点出的, plot(a,d,'r')画什...? 可能个人水平有限吧

看看以下是否LZ要的
syms a b c
d=a^2+2*b+c^3;
derive_a=diff(d,a); derive_b=diff(d,b); derive_c=diff(d,c);
figure; ezplot(derive_a); figure; ezplot(derive_b); figure; ezplot(derive_c);

评分

1

查看全部评分

 楼主| 发表于 2009-3-12 20:56 | 显示全部楼层
:@)  问题描述的可能不太清楚,但就是变量定义的问题,如果 abc 要是没有定义的话,直接用plot 不出图,但是用
ezplot 就可以搞定了。 谢。问题解决。答案看楼上。
 楼主| 发表于 2009-3-12 21:10 | 显示全部楼层
晕又出问题了。??? Error using ==> char
Cell elements must be character arrays.

Error in ==> C:\MATLAB6p5\toolbox\matlab\specgraph\ezplot.m
On line 138  ==>             fmsg = char(f);

Error in ==> C:\MATLAB6p5\toolbox\symbolic\@sym\ezplot.m
On line 47  ==>    ezplot(f.s);

Error in ==> C:\Documents and Settings\stagiaire\Bureau\simulation\sensibilite.m
On line 50  ==>            ezplot(derive_ro_fluid_f0)

如果需要源程序,我可以附上来。这个错误,是怎么回事啊?怎么还牵扯到 ezplot,m 内部了。

[ 本帖最后由 ChaChing 于 2009-3-12 22:26 编辑 ]
发表于 2009-3-12 21:27 | 显示全部楼层
lz很明显不知道符号计算和数值计算的区别
 楼主| 发表于 2009-3-12 22:19 | 显示全部楼层
:@D  是不清楚,还请指教。

我这个问题,大概弄清楚了,应该是 隐函数画图问题。 我用的是 matlab 6.5  我的公式里 ,用syms 定义了五个变量。
用 ezplot 报错,错误在15楼。还请主任来帮忙看下。

[ 本帖最后由 ChaChing 于 2009-3-12 22:30 编辑 ]
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

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

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

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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