Daisyworld功能错误,论据不足

2次(最后30天)
PI吹笛
PI吹笛 在2015年22月
回答: shanza沙古尔2020年5月11日
您好,我希望使用Daisyworld的matlab模型(我在下面发布了该模型的文本),但我一直收到相同的错误:“函数错误输入参数不足”,并且没有给出错误的行指示和更多信息。该模型来自一篇博士论文的附录,并且被广泛使用(Wittwer 2005).我已经尝试了所有我能想到的方法(虽然我担心这是有限的)手动添加“上限”和“下限”值,例如,玩弄它们的值,什么都没有!有人能帮我吗?我将不胜感激。
下面的代码:
作用dworldD(下限,上限)
S=1000;
Q = 15;
黑色= 0.25;
裸= 0.5;
白色= 0.75;
死亡= 0.1;
lowgrowthK = 278;
highgrowthK = 313;
startarea = 0.01;
数= 100;
%计算的时间步数(元3十亿多年的numba)
长度=(上下)*数目;
如果长度〜=圆(长)
长度= ROUND(长度);
J = ABS(长度);
别的J = ABS(长度);
结尾
如果长度> 0
跳=(上部* S - 低级* S)/(长度-1);
E(1,1)=低级* S;
为了a=2:长度
E(A,1)= E((A-1),1)+跳跃;
结尾
结尾
%允许日晒整个Daisyworld被降低
如果长度<0
跳=(低级* S-上部* S)/(J + 1);
E(1,1)=低级* S;
为了A = 2:J-
E(a,1)=E((a-1),1)-跳跃;
结尾
结尾
如果长度<0
长度= ABS(长度);
结尾
SB = 5.669 * 10 ^ -8;
%菊花区域初始化为1%,以允许生长开始
Ablack = startarea;
一株白色= startarea;
%开始迭代针对每个时间步骤
为了一个= 1:长度
%计算bareground与地球反照率的区域
ABARE = 1-Ablack-一株白色;
Ap=Abare*裸露+白色*白色+黑色*黑色;
%计算发射&本地临时工
Temission =((E(A,1)/ SB)×(1-AP))^ 0.25;
Trock =((E(A,1)/ SB)*(1-裸))^ 0.25;
Tblack=q*(Ap黑色)+淡紫色;
Twhite = Q *(AP-白色)+ Temission;
%计算雏菊生长-定义生长并添加以前的雏菊覆盖
betab =β(lowgrowthK,highgrowthK,Tblack);
betaw=贝塔(低生长厚度、高生长厚度、Twhite);
growthb = Ablack *(betab * ABARE死亡);
growthw = *一株白色(betaw * ABARE死亡);
Ablack = Ablack + growthb;
Awhite=Awhite+growthw;
%保证没有负/太区
如果Ablack
Ablack = startarea;
结尾
如果Ablack>1
Ablack=1;
结尾
如果阿维特
一株白色= startarea;
结尾
如果一株白色> 1
一株白色= 1;
结尾
%存储结果
Temissionresults(1,A)= Temission;
Ablackresults(1,A)= Ablack;
Awhiteresults(1,a)=Awhite;
Trock结果(1,a)=Trock;
Apresults(1,A)=鸭;
growthbresults(1,A)= growthb;
growthwresults(1,A)= growthw;
结尾

答复(2)

杰夫·海斯
杰夫·海斯 在2015年22月
PI - 你是如何调用这个函数?因为如果你是刚刚运行的程序虽然MATLAB编辑器(即按下绿色按钮)或调用命令行的功能
dworldD
然后返回错误消息
错误使用dworldD(第13行)
不是足够的输入参数。
有意义的,因为我(和你)不提供任何输入参数。我不知道输入的参数应该是什么,但你必须提供给他们。就像是
世界银行(1.42,6.78),;
但是,当我这样做时,我观察到另一条错误消息
错误使用测试版
许多输入参数。
这告诉我我的 贝塔 在R2014a中,不需要将三个输入参数作为
betab =β(lowgrowthK,highgrowthK,Tblack);
betaw=贝塔(低生长厚度、高生长厚度、Twhite);
2评论
杰夫·海斯
杰夫·海斯 在2015年22月
我浏览了一些旧的(和在线的)MATLAB文档,但找不到该版本的定义 贝塔 函数,它接受三个输入参数(甚至可以追溯到R2006a之前)。因此,除了与代码作者联系之外,我不知道下一步应该做什么。
我没看到 //www.tatmou.com/matlabcentral/fileexchange/35008-generation-of-random-variates/content/beta.m 在FileExchange上,这似乎表明 betainc 可以改为使用…但这可能会导致其他问题。
也许有人在论坛上的其他人知道为什么 贝塔 在同一时间,花了三个参数。

登录发表评论。


shanza沙古尔
shanza沙古尔 2020年5月11日
假如你解决这个问题?现在我面临着同样的问题。你能帮助我吗。

社区宝藏狩猎

找到Matlab Central中的宝藏,并发现社区如何帮助您!

开始打猎吧!