Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
回复
 
主题工具 显示模式
旧 2008-06-17, 10:27   #1
djliu2006
初级会员
 
注册日期: 2008-06-16
年龄: 43
帖子: 1
声望力: 0
djliu2006 正向着好的方向发展
默认 [求助]一复杂函数的画图问题!

我现在做的是把函数f(x,y)做成关于xy的三维图.我用写程序计算的时候,不知道为什么总是无法把xy带如数值计算.具体的函数如附件所示
麻烦Matlab高手帮忙指点下这个小程序.
我是matlab新手,不会写程序,自己忙了几天总是出问题,我的做法是把函数z=fun(s,x,y)写成M文件函数,其中的s就是我要积分的变量.
function f=f1(s,x,y)
syms s x y
f=sin(s)^2*exp((x*sin(s)^2+y*cos(s)^2)/sqrt(1+sin(s)));
之后我就是想对对函数进行积分
Q = quad(@(s)f1(s,x,y),0,2)
用的是上述函数,本来打算求完积分后就直接
做Q的图象,可是提示有错误,不知道程序哪里有问题
提示的错误是
??? Error: File: C:\Documents and Settings\Administrator\桌面\Untitled2.m Line: 1 Column: 11
"identifier" expected, "(" found.
麻烦Matlab高人帮小弟看看.
谢谢!
上传的图像
文件类型: jpg 函数.jpg (10.5 KB, 20 次查看)
djliu2006 当前离线   回复时引用此帖
旧 2008-06-17, 12:49   #2
watcher
高级会员
 
注册日期: 2008-04-02
年龄: 47
帖子: 175
声望力: 21
watcher 正向着好的方向发展
默认

function f=f1(s,x,y)
syms s x y%去掉这一行
f=sin(s).^2.*exp((x.*sin(s).^2+y.*cos(s).^2)./sqrt(1+sin(s).^2));

至于你贴出来的错误,由于不知道Untitled2.m文件的内容,也没法说清,不过看提示,估计是拼写方面的问题了。
watcher 当前离线   回复时引用此帖
旧 2008-06-19, 01:23   #3
fanxing39
高级会员
 
注册日期: 2007-12-02
年龄: 44
帖子: 303
声望力: 31
fanxing39 是一位成功的新星fanxing39 是一位成功的新星fanxing39 是一位成功的新星fanxing39 是一位成功的新星
默认

主程序:clear
clc
[x,y]=meshgrid(-10:0.5:10);
[m,n]=size(x);
for i=1:m
for j=1:n
P(i,j)=quad(@(s)fun2(s,x(i,j),y(i,j)),0,2);
end
end
surf(P)

副程序:function f=fun2(s,x,y)
f=sin(s).^2.*exp((x.*sin(s).^2+y.*cos(s).^2)./sqrt(1+sin(s)));
上传的图像
文件类型: jpg untitled.JPG (30.7 KB, 15 次查看)
fanxing39 当前离线   回复时引用此帖
旧 2008-06-19, 01:27   #4
fanxing39
高级会员
 
注册日期: 2007-12-02
年龄: 44
帖子: 303
声望力: 31
fanxing39 是一位成功的新星fanxing39 是一位成功的新星fanxing39 是一位成功的新星fanxing39 是一位成功的新星
默认

上面的方法是
1.先产生x,y的网格矩阵
2.将(x,y)每个点的 f(x,y)利用quad (数值积分)进行求解
3. surf (P) 画出曲面图


程序里用了2个for 循环,这个是我不希望看到的,但是又没有找到更好的方法,这里修改下的话,运算速度才比较快!
fanxing39 当前离线   回复时引用此帖
回复

主题工具
显示模式

发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码


相似的主题
主题 主题作者 版面 回复 最后发表
[资料]SIMULINK学习资料汇总贴(不断更新中) yesman MATLAB论坛 17 2010-08-03 10:56
求教高手解一个积分,小女子拜求:) angel4296 MATLAB论坛 0 2008-09-16 17:49
[求助]曼彻斯特解码 lxysbyp MATLAB论坛 1 2008-08-27 20:52
请问这个方程可以用MATLAB解没有? thb296 MATLAB论坛 6 2008-04-28 19:02
Model-Based Design with Production Code Generation for Steer-by-Wire System Developme TechnicalArticles MATLAB技术文章 0 2008-01-06 16:32


所有时间均为北京时间。现在的时间是 18:35


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.