爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 6815|回复: 12

[求助] 求强人指导---为什么print出来的相关系数绝对值会大于1呢?????

[复制链接]

新浪微博达人勋

发表于 2013-5-3 12:45:13 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册 新浪微博登陆

x
!---------子程序:计算相关系数-----
subroutine xiangguan(a,b,r,sa,sb,avea,aveb)
        parameter (nx=180,ny=89,m=54,undef=32767)
real a(nx,ny,m),b(m),sa(nx,ny),sb,sab(nx,ny),r(nx,ny),avea(nx,ny),aveb,t(nx,ny)

do k=1,m
do j=1,ny
do i=1,nx
if(a(i,j,k)/=undef)then
avea(i,j)=avea(i,j)+a(i,j,k)/m
else
avea(i,j)=undef
endif
enddo
enddo
aveb=aveb+b(k)/m
enddo

do k=1,m
do j=1,ny
do i=1,nx
if(a(i,j,k)/=undef)then
sa(i,j)=sa(i,j)+(a(i,j,k)-avea(i,j))**2/m
sab(i,j)=sab(i,j)+(a(i,j,k)-avea(i,j))*(b(k)-aveb)/m
else
sa(i,j)=undef
sab(i,j)=undef
endif
enddo
enddo
sb=sb+(b(k)-aveb)**2/m
enddo

do j=1,ny
do i=1,nx
if(sa(i,j)/=undef)then
r(i,j)=sab(i,j)/(sqrt(sa(i,j))*sqrt(sb))
else
r(i,j)=undef
endif
if((abs(r(i,j))>=1).and.(r(i,j)/=undef))then
write(*,*)r(i,j),i,j,sa(i,j),sb,sab(i,j)
endif
enddo
enddo


end

密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2013-5-3 12:45:49 | 显示全部楼层
真悲剧 发帖还扣金币。。。。。。。。。。。。。。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2013-5-3 13:11:37 | 显示全部楼层
相关系数大于1肯定是你的算法哪里出了问题,这种楼主自己细心检查程序与算法的对应关系。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2013-5-3 13:13:19 | 显示全部楼层

能帮忙看看吗??对应了好多遍 我都是用协方差除以两个的标准差的乘积。。。。O(∩_∩)O谢谢啦
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2013-5-3 13:14:13 | 显示全部楼层
做个霸气的木头 发表于 2013-5-3 13:11
相关系数大于1肯定是你的算法哪里出了问题,这种楼主自己细心检查程序与算法的对应关系。

而且我第一次调用没有问题 第二次就有问题啦。。。。。。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2013-5-3 13:54:33 | 显示全部楼层
dzxconan 发表于 2013-5-3 13:14
而且我第一次调用没有问题 第二次就有问题啦。。。。。。

很可能是某个值赋值的时候出了问题,你检查一下赋值的顺序,看看逻辑上有没有错误
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2013-5-3 14:55:14 | 显示全部楼层
topmad 发表于 2013-5-3 13:54
很可能是某个值赋值的时候出了问题,你检查一下赋值的顺序,看看逻辑上有没有错误

O(∩_∩)O谢谢啦~~我想应该是第二次忘了给初值 它的第一次的值还在吧???
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2013-5-3 15:41:45 | 显示全部楼层
应该没有赋初值的问题吧,楼主这个程序一个初值都没赋啊
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2013-5-3 16:14:01 | 显示全部楼层
river 发表于 2013-5-3 15:41
应该没有赋初值的问题吧,楼主这个程序一个初值都没赋啊

程序我还没有看   你再看看是不是算法上面的问题 过程中间涉及到的一些单位还是什么东西  细心一点
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2013-5-3 20:51:05 | 显示全部楼层
topmad 发表于 2013-5-3 16:14
程序我还没有看   你再看看是不是算法上面的问题 过程中间涉及到的一些单位还是什么东西  细心一点

嗯嗯 初值问题下回要细心 O(∩_∩)O谢谢~~
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表