计算化学公社

标题: 问个matlab的小问题 [打印本页]

作者
Author:
zyj19831206    时间: 2017-5-11 21:29
标题: 问个matlab的小问题
按照书编写了一个matlab小程序,但是运行却出现错误,希望各位帮忙下:
>> demo_interp2
尝试将 SCRIPT interp2 作为函数执行:
D:\MATLAB\bin\interp2.m

出错 demo_interp2 (line 6)
z0=interp2(x,y,z,xf,yf);z1=interp2(x,y,z,xf,yf,'nearest');



程序全部代码:
[x,y]=meshgrid(0:0.2:1,0:0.2:1);
z=sin(2*pi*x).*cos(2*pi*y);
subplot(221);surf(x,y,z);
xi=[0:0.05:1];yi=[0:0.05:1];
[xf,yf]=meshgrid(xi,yi);
z0=interp2(x,y,z,xf,yf);z1=interp2(x,y,z,xf,yf,'nearest');
z2=interp2(x,y,z,xf,yf,'linear');z3=interp2(x,y,z,xf,yf,'cubic');
subplot(222);surf(xf,yf,z1);title('二维最近邻插值');
subplot(223);surf(xf,yf,z2);title('二维线性插值');
subplot(224);surf(xf,yf,z3);title('二维三次插值');


作者
Author:
brothers    时间: 2017-5-12 09:50
看了一遍没问题,运行也没问题啊
BTW,程序写的太挤了,哈哈
作者
Author:
zyj19831206    时间: 2017-5-12 17:39
brothers 发表于 2017-5-12 09:50
看了一遍没问题,运行也没问题啊
BTW,程序写的太挤了,哈哈

我放在D盘,怎么会出问题呢?
作者
Author:
brothers    时间: 2017-5-12 18:35
zyj19831206 发表于 2017-5-12 17:39
我放在D盘,怎么会出问题呢?

没看出有什么问题,直接在command window运行很正常,写成脚本运行也没问题
作者
Author:
kyuu    时间: 2017-8-30 19:16
因为你根本就没有声明函数,你的代码为脚本代码,只能通过执行.m文件的方式执行demo_interp2.m
在文件开头部分用
function []=function_name()
代码
的形式来定义函数之后
你才能用demo_interp2的形式调用和执行函数
作者
Author:
unforgivable    时间: 2017-9-14 11:37
你的demo_interp2前面有两个小尖括号,你应该把这个也运行了吧,直接运行下面的一段程序,把demo_interp2删掉




欢迎光临 计算化学公社 (http://bbs.keinsci.com/) Powered by Discuz! X3.3