Debian下编译安装TIMESAT总结

Debian下编译安装TIMESAT总结


发布日期: 1970-01-01 更新日期: 2015-02-03 编辑:giser 浏览次数: 5217

标签:

摘要: TIMESAT是用来对时间序列的遥感影像数据进行分析的程序,目前最新的版本是3.02。但是此版本只有Windows版本可以下载,而且没有源代码。目前可以获得的源代码版本为2.2。不论如何,这也比没有源代码强多了。 获得的TIMESAT分4个压缩包:TIMESA...

TIMESAT是用来对时间序列的遥感影像数据进行分析的程序,目前最新的版本是3.02。但是此版本只有Windows版本可以下载,而且没有源代码。目前可以获得的源代码版本为2.2。不论如何,这也比没有源代码强多了。 获得的TIMESAT分4个压缩包:TIMESATEVI.tar.gz、TIMESATLAI.tar .gz、TIMESATLSWI.tar.gz、TIMESATNDVI.tar.gz。 现在只编译了TIMESAT_EVI,其他的再补充。 首先解压缩:

    $ tar xfvz TIMESATEVI.tar.gz
    $ cd TIMESATEVI

这里要注意,我用gfortran编译TIMSAT一直有问题,后来换成了PGI。另外要注意的是,源代码包中提供的Makefile用到了一些环境变量,这都是需要 自已定义的,这里不多说。我直接进行编译,记录一下,备忘。

    $ /home/bk/.sysconf/usr/pgi/linux86-64/9.0-1/bin/pgf90 basis.f90 fitgauss.f90 fitlogistic.f90 fungauss.f90 funlogistic.f90 gauss.f90 linlsq.f90 marquardt.f90 median.f90 modweight.f90 phenology.f90 savgol.f90 season.f90 spike.f90 timesatEVI.f90 -L/usr/lib/hdf -lhdfeos -lgctp -lmfhdf -ldf -ljpeg -lz -lm -o timesatEVI.exe

这时会出现错误提示:

    PGF90-S-0038-Symbol, isnan, has not been explicitly declared (marquardt.f90)
    0 inform, 0 warnings, 1 severes, 0 fatal for marquardt

上网看了一下,这里是说找不到isnan函数。这个函数不是Fortran标准库里的函数,但是很多编译器都提供了,如Intel的Fortran编译器。PGI中我 没找到确切的资料,于是按照网上的方法,在marquardt.f90中添加内部函数,这到最后一句(结束语句)之前:

    contains
    logical function isnan(a)
    double precision a
    if (a.ne.a) then
    isnan = .true.
    else
    isnan = .false.
    end if
    return
    end function isnan

有点奇怪的语法,不过我对Fortran确实是不懂。 修改完成之后,再次运行编译命令,会完成编译,生成timesatEVI.exe文件。

关注公众号
获取免费资源

随机推荐


Copyright © Since 2014. 开源地理空间基金会中文分会 吉ICP备05002032号

Powered by TorCMS

OSGeo 中国中心 邮件列表

问题讨论 : 要订阅或者退订列表,请点击 订阅

发言 : 请写信给: osgeo-china@lists.osgeo.org