matlab matlab中输入参数太多的数目不足

只需一步,快速开始
扫一扫,访问微社区
查看: 17258|回复: 4|关注: 0
matlab基础源程序——为什么会出现“输入参数的数目不足”
<h1 style="color:# 麦片财富积分
新手, 积分 5, 距离下一级还需 45 积分
function dx=duhe(t,x)
s=sqrt(x(1)^2+x(2)^2);
dx=[a-b*x(1)/s;-b*x(2)/s];
ts=0:0.5:7;
x0=[0,10];
[t,x]=ode45(@duhe,ts,x0);
这是源程序
错误使用 duhe (line 3)
输入参数的数目不足。
这是结果。
以上是直接复制粘贴参考书里面的源程序。但是死活不正确。
求指教!!!
<h1 style="color:# 麦片财富积分
这个需要顶一顶吗?
论坛优秀回答者
<h1 style="color:#82 麦片财富积分
关注者: 371
看来你对matlab完全小白,根本不知道该怎么样应用这个程序。将前面四行编辑,单独保存成一个文件duhe,然后在命令窗口运行后面四行。
<h1 style="color:# 麦片财富积分
看来你对matlab完全小白,根本不知道该怎么样应用这个程序。将前面四行编辑,单独保存成一个文件duhe,然后 ...
原来如此。命令行和脚本有什么不同吗?
ps:以前玩的都是c++。matlab才刚开始学23333
论坛优秀回答者
<h1 style="color:#82 麦片财富积分
关注者: 371
你也可以将后四行编辑保存成一个m文件运行,前面四行是一个单独的函数,完整的应该是function dx=duhe(t,x)
a=1;b=2;
s=sqrt(x(1)^2+x(2)^2);
dx=[a-b*x(1)/s;-b*x(2)/s];
end复制代码
只是matlab可以省略最后的end
站长推荐 /3
车辆动力学工具箱介绍:一款集成3D虚拟环境的汽车仿真产品
MATLAB中文论坛是全球最大的 MATLAB & Simulink 中文社区。用户免费注册会员后,即可下载代码,讨论问题,请教资深用户及结识书籍作者。立即注册加入我们吧!
MATLAB官方社交平台
MATLAB中文论坛微社区24小时热门版块排行榜&&&&
(初入文坛)
在线: 56.9小时
虫号: 2318750
注册: 性别: MM专业: 化学反应工程
Matlab错误求助(输入参数的数目不足)
下面这段程序错在哪里?应该怎么改?
function Cha5demo4
T0 = 180;&&
R = 8.315;
k0 = [5.7.9.6.264E+8];
Ea = [386 ];
C0 = [1 0 0 0 0];
tspan = [0:1:300];
opt=odeset('reltol',1e-4)
[t,T] = ode23(@Ramp,tspan,T0,opt)
[t,C] = ode45(@MassEquations,tspan,C0,opt,k0,Ea,R,T)
plot(t,C(:,1),'r-',t,C(:,2),'k:',t,C(:,3),'b-.',t,C(:,4),'k--');
xlabel('Time (s)');
ylabel('Concentration (kmol/m^3)');
legend('A','B','C','D')
function dTdt = Ramp(t,T)
dTdt = 1/6;
function dCdt = MassEquations(t,tspan,C,k0,Ea,R,T)
& &&&for i=1:4
& && && &k(i) = k0(i)*exp(-Ea(i)./(R.*(T+273.15)));
rA = -(k(1)+k(2))*C(1);
rB = k(1)*C(1)-k(3)*C(2);
rC = k(2)*C(1)-k(4)*C(3);
rD = k(3)*C(2)-k(4)*C(4);
rE = k(4)*C(3);
dCdt = [rA; rB; rC; rD; rE];
& 猜你喜欢
已经有3人回复
已经有1人回复
已经有157人回复
已经有130人回复
已经有0人回复
已经有2人回复
已经有0人回复
已经有5人回复
已经有62人回复
已经有1人回复
已经有0人回复
& 本主题相关价值贴推荐,对您同样有帮助:
已经有3人回复
已经有63人回复
已经有13人回复
已经有7人回复
已经有7人回复
已经有4人回复
已经有6人回复
已经有4人回复
已经有10人回复
已经有7人回复
已经有9人回复
已经有10人回复
已经有4人回复
已经有4人回复
已经有4人回复
已经有5人回复
已经有5人回复
已经有5人回复
已经有6人回复
已经有15人回复
已经有19人回复
已经有6人回复
已经有3人回复
已经有4人回复
已经有6人回复
已经有4人回复
已经有11人回复
已经有4人回复
(初入文坛)
在线: 56.9小时
虫号: 2318750
注册: 性别: MM专业: 化学反应工程
求助啊,有木有高手来指点一下
相关版块跳转
第一性原理
我要订阅楼主
的主题更新
小木虫,学术科研互动社区,为中国学术科研免费提供动力
违规贴举报删除请发送邮件至:
广告投放与宣传请联系 李想 QQ:
QQ:&&邮箱:
Copyright &
MuChong.com, All Rights Reserved. 小木虫 版权所有只需一步,快速开始
扫一扫,访问微社区
查看: 5294|回复: 6|关注: 0
s-function提示输入参数的数目不足
<h1 style="color:# 麦片财富积分
新手, 积分 7, 距离下一级还需 43 积分
关注者: 1
第一次用s-function编程,扰动观察法最大功率跟踪程序如下:
function[sys,x0,str,ts]=POMPPT(t,x,u,flag)
switch flag,
[sys,x0,str,ts]=mdlInitializeS%初始化
sys=mdlUpdate(t,x,u);%更新
sys=mdlOutputs(t,x,u);%计算输出
case{l,4,9}
error(['Unhandled flag =',num2str(flag)]);%错误处理
function [sys,x0,str,ts]=mdlInitializeSizes
sizes.NumContStates=0;%连续状态数量为0
sizes.NumDiscStates=3; %离散状态数量为3
sizes.NumOutputs=2;%输出量2个
sizes.NumInputs=2;%输入量2个
sizes.DirFeedthrough=1;%直接馈通1个
sizes.NumSampleTimes=1;%采样时间1个
sys=simsizes(sizes);
x0=[0 0 0.5];%x1表示电压,x2表示电流,x3表示占空比,其初值为0.5
ts=[le-4 0];%采样时间为0.1ms,无偏移量
function sys=mdlUpdate(t,x,u)%P&O算法
sys(l)=u(l);
sys(2)=u(2);
if(x(l)*x(2)-u(l)*u(2)&0)
& & if(x(l)&u(l))
& && &&&sys(3)=x(3)-0.001;
& && &&&sys(3)=x(3)+0.001;
elseif(x(l)*x(2)-u(l)*u(2)&0)
& & if(x(l)&u(l))
& && &&&sys(3)=x(3)+0.001;
& && &&&sys(3)=x(3)-0.001;
& & sys(3)=x(3);
if(x(3)&0.9)%占空比最大值为0.9
& & sys(3)=0.9;
if(x(3)&0.1)%占空比最小值为0.1
& & sys(3)=0.1;
function sys=mdlOutputs(t,x,u)
sys(1)=x(2);& &
sys(2)=x(3);
应该是没有附加变量的,然后用level 2 s-function导入程序,附加变量不写,但是提示输入参数的数目不足,求教是哪一步出问题了?
论坛优秀回答者
<h1 style="color:#7 麦片财富积分
关注者: 50
就用s-function啊,为什么要用L2?
<h1 style="color:# 麦片财富积分
关注者: 1
就用s-function啊,为什么要用L2?
你指的是level 1?之前用了也是一样的
<h1 style="color:# 麦片财富积分
关注者: 1
就用s-function啊,为什么要用L2?
不用level 2也是一样的
QQ截图59.png (21.8 KB, 下载次数: 0)
20:33 上传
<h1 style="color:# 麦片财富积分
关注者: 1
自己顶一下
论坛优秀回答者
<h1 style="color:#7 麦片财富积分
关注者: 50
自己顶一下
英雄,我被你玩死了。。。
你这个问题确实很奇怪,我也查了很久
最后知道是什么原因不
你的1e-4是le-4,是Le-4,不是数字,是小写的字母L啊。。
<h1 style="color:# 麦片财富积分
关注者: 1
英雄,我被你玩死了。。。
你这个问题确实很奇怪,我也查了很久
最后知道是什么原因不
对不住,我最后自己也查出来了,因为计算那部分是pdf里面复制的,郁闷.......
站长推荐 /3
车辆动力学工具箱介绍:一款集成3D虚拟环境的汽车仿真产品
MATLAB中文论坛是全球最大的 MATLAB & Simulink 中文社区。用户免费注册会员后,即可下载代码,讨论问题,请教资深用户及结识书籍作者。立即注册加入我们吧!
MATLAB官方社交平台
MATLAB中文论坛微社区Matlab,如何实现输入参数及输出参数的个数可变?
function varargout = Test(a, b, varargin)
& if (nargin == 2)
& & fprintf('共有%d个输入参数.\n',
& & varargout{1} =
& & varargout{2} =
& elseif (nargin == 3)
& & fprintf('共有%d个输入参数.\n',
& & varargout{1} =
& & varargout{2} =
& & varargout{3} =
varargin{1};
在matlab命令窗口中,输入[x,y,z] = Test(1, 2, 3),则可得以下运行结果:
共有3个输入参数.
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。Matlab 函数输入不确定多个参数的使用 - 简书
Matlab 函数输入不确定多个参数的使用
nargin: number of function arguments,即函数输入参数个数。
只要你的函数重载逻辑没有出错,那么就可以通过查看nargin的数值来实现你说的设置缺省值等功能。
看下nargin的帮助就知道了。
nargin是用来判断输入变量个数的函数,这样就可以针对不同的情况执行不同的功能。通常可以用它来设定一些默认值。如下例所示:
函数文件 examp.m
function fout=examp(a,b,c)
if nargin==1
elseif nargin==2
elseif nargin==3
fout=(a*b*c)/2;
另外一例:
function [x0, y0] = myplot(x, y, npts, angle, subdiv)
Plot a function.
% MYPLOT(x, y, npts, angle, subdiv)
The first two input arguments are
% the other three have default values ...if nargin
& 5, subdiv = 20; endif nargin
& 4, angle = 10; endif nargin
& 3, npts = 25; end ...if nargout == 0
plot(x, y)else
注:%x,y是两个变量,npt,angle,subdiv这三个参数具有默认值,不需要输入。if nargin & 5, subdiv = 20; end如果输入变量的个数小于5个,那么给subdiv赋默认值。
if nargin & 4, angle = 10; end如果输入变量的个数小于4个,那么给angle赋默认值。
......详细用法 在matlab窗口中输入 help nargin
37 视频滤镜 在配置编译FFmpeg时可以通过--disable-filters来禁止所有滤镜的编译。也可以配置编译脚本来输出所有包含进编译的滤镜信息。 下面是当前可用的视频滤镜介绍。 alphaextract 把输入视频作为灰度视频来提取透明通道,它通常和alphame...
本系列文章面向深度学习研发者,希望通过Image Caption Generation,一个有意思的具体任务,深入浅出地介绍深度学习的知识。本系列文章涉及到很多深度学习流行的模型,如CNN,RNN/LSTM,Attention等。本文为第8篇。 作者:李理 目前就职于环信,...
《ilua》速成开发手册3.0 官方用户交流:iApp开发交流(1) iApp开发交流(2) iApp开发交流(3) iApp开发交流(4) iApp开发交流(5) iApp游戏开发交...
?开启? 【iAPP实现进入界面执行逐一显】 〖 15:22:14〗 《//首先开一个线程,因为你有这么多的stop要执行,其次必须使用ufusui(),否则可能不会显示你的字体。切记:文字必须设置“text=”,否则很尴尬,还有我这里的8,14是两个文...
《ijs》速成开发手册3.0 官方用户交流:iApp开发交流(1) iApp开发交流(2) iApp开发交流(3) iApp开发交流(4) iApp开发交流(5) iApp游戏开发交流...
早上5:13起床。因为前一晚早睡,所以起床的时间自然就变得好早。 起来之后已经慢慢养成冥想的习惯了。因为今天起得很早,而且有好好利用时间,所以做了不少事情。 练字,把天赋营漏下的两课笔记做到手账本上,然后去跑步。做笔记的时候,做到第二课一半的时候觉得有点累有了晚上再回来补上...
欲望穿过的地方寸草不生许邻 初识萧寒是在一场酒局上,真正的酒局,一伙性情中人,可以说脏话,可以宣泄对世界的不满,哪怕席间坐着美女也没关系,所有人都是真实的,不用虚伪的掩饰什么。没人劝酒,想喝就喝,不想喝,一口都不泯也没人怪罪,但谁都不端着,都喝的畅快。 酒过三巡,留下憾事三...
自从有了我的个人博客,每当看到其他人的个人博客的好的东西时,总是想要拿为己用,问过几次,人家的答复往往是WordPress模板自带的,于是也就没有结果了。但是很多东西真的很吸引你,比如他们的站内搜索,他们的视频播放,音频播放,rss的站内显示,友情链接的随机显示等等,但往往...
世间到底多少作品在说孤独这件事?既然每个人都带着孤独来到这个世界,短暂停留之后又带着孤独离开这个世界,恐怕不管曾有多少人诉说过,未来的人大概还要继续言说吧。在这无数喧嚣的孤独中,《心是孤独的猎手》尤其令人不能忽视。 主角名叫辛格先生,镇上所有的人却都爱找他倾诉心事,并且坚信...}

我要回帖

更多关于 matlab输入的参数不足 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信