简介
SBDART(平面平行辐射传输模式)是一种软件工具,用来计算地球大气和表面在无云和多云条件下的平面平行辐射传输。对于该程序的一般性描述和评论请参阅Ricchiazzi在1998年的说明。
网络上搜索可以找到其在线版本或者Matlab版本,遗憾的是这两种都已经无法使用。下面将对离线版本进行编译使用。SBDART是由FORTRAN编写的辐射传输模型,在安装前需要配置FORTRAN开发环境,在上一篇博文中已经有详细的介绍。接下来将围绕SBDART的安装和测试进行。
下载与编译安装
下载
打开Github搜索SBDART,第一个就可以看到paulricchiazzi发布的程序。
点开可以看到自带了安装说明,安装方法是比较简单的,前提是所需的编译环境都以安装好,否则编译室不可能过的。下载后解压可以看到:
编译安装
(1) 打开终端,设置工作路径,在终端中输入下面命令,回车
cd 解压后的SBDART-master路径
(2) 输入make,回车,进行编译,约5秒钟编译结束,如果提示需要命令行工具就安装即可,或者terminal中执行:xcode-select --install 然后点击 “安装”。
编译完成可以看到生成的sbdart程序。
(3) 测试,因为是Fortran的可执行程序,因此,终端中输入./sbdart就可以调用该程序。
(4) 打开TestRuns文件,修改其中的sbdart程序路径后就可以运行。
通过Python代码生成UI,通过图形交互的方式使用SBDART
MacOS自带了Python2.7,就不需要重新安装Python以及配置环境了。打开RunRT文件夹找到,RunRT.py文件,修改第29行代码,将变量sbdartexe的值赋值为刚才编译生成的sbdart绝对路径。
接下来在终端输入如下命令
生成UI界面
例子
例1
计算波长0.25至1微米区间,大气顶和表面(大气底)辐照度。
INPUT文件参数:
$input
idatm=4, isat=0, wlinf=.25, wlsup=1.0, wlinc=.005, iout=1,
$end
效果:
例2
#!/local/gnu/bin/bash
############################################################
# shell script for Example 2
# vary optical depth and surface albedo
############################################################
#
rm -f sbchk.2
foralbconin0.2.4.6.81 ;do for tcloud in 0 1 2 4 8 16 32 64 ; do echo "
&INPUT
tcloud=$tcloud
albcon=$albcon
idatm=4
isat=0
wlinf=.55
wlsup=.55
isalb=0
iout=10
sza=30
/" > INPUT
sbdart >> sbchk.2
效果:
例3
rm -f sbchk.3
for tcloud in 0 1 5 ; do
echo " &INPUT
tcloud=$tcloud
zcloud=8
nre=10
idatm=4
sza=95
wlinf=4
wlsup=20
wlinc=-.01
iout=1
/" > INPUT
sbdart >> sbchk.3
done
效果: