楼主: 521425
1665 2

大侠帮我看看程序哪出了问题 [推广有奖]

  • 0关注
  • 0粉丝

硕士生

55%

还不是VIP/贵宾

-

威望
0
论坛币
2655 个
通用积分
2.4000
学术水平
0 点
热心指数
1 点
信用等级
0 点
经验
964 点
帖子
65
精华
0
在线时间
279 小时
注册时间
2010-6-28
最后登录
2024-11-29

楼主
521425 发表于 2010-8-31 09:03:38 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
下面程序运行时总是提示endp出错
library maxlik;
#include maxlik.ext;
fname="c:\gauss7.0\examples\crisp.w";
range="c5:c1331";
{bp,names}=import(fname,range,1);
var=vcx(bp);
u=(bp-meanc(bp))^2;
maxset;
_max_active={1,1,1};
_max_gradtol=1e-5;
_max_algorithm=5;
_max_linesearch=5;
_max_maxiters=1000;
_max_maxtry=5;
_max_randradious=1e-3;
_max_covpar=3;
__output=1;
iv=0.001|0.97|0.02;
{est,fname,grad,cov,retcode}=maxlik(u,1,&lr,iv);
proc lr(miv,u);
local a0,a1,a2,h,t,ll;
a0=miv[1]; a1=miv[2]; a2=miv[3];
if a0<=0; ll=1000000; goto skip; endif;
if a1<0; ll=-1000000; goto skip; endif;
if a2<0; ll=-1000000; goto skip; endif;
if (a1+a2)>1; ll=-1000000; goto skip; endif;
h=zeros(rows(u),1);
h[1]=a0+(a1+a2)*var;
t=2;
do until t>rows(u);
h[t]=a0+a1*h[t-1]+a2*u[t-1];
t=t+1;
endo;
ll=-.5*ln(2*pi)-.5*ln(h[2:rows(u)])-.5*(u[2:rows(u)]./h[2:rows(u)]);
skip;
endp;
__title="garch(1,1) estimates";
print maxprt(est,fmax,grad,cov,retcode);
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:Algorithm Examples Library include example 程序 大侠

沙发
foxmonkey 发表于 2010-8-31 09:29:25
只是本科学过编程,现在早忘记了。不过,找错的好办法之一是逐句修改试运行,也就是排错法,早年老师教的方法,挺管用。

藤椅
lmfactory 发表于 2010-9-3 14:58:44
至少,if a2<0, 这一句符号应该为“;”而不是“,”吧 ...
另外,你的似然函数没有返回值,须在endp; 前面加上 retp(ll);  
其他错误确实只能逐行调试才能知道

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2025-12-30 02:38