6S辐射传输模型的包装器,可以轻松运行具有各种输入参数的模拟,并以易于处理的形式生成输出。
项目描述
简介
Py6S是6S辐射传输模型的Python接口。它允许您使用简单的Python语法运行许多6S模拟,而不是处理相当晦涩的6S输入和输出文件。Py6S不仅使6S的使用更加容易,还增加了一些新功能
能够轻松快速地运行许多模拟,无需手动编辑输入文件
能够在许多波长和/或角度上运行,并轻松绘制结果
能够导入真实世界数据来参数化6S,从探空仪测量和AERONET太阳光度计测量
Py6S被设计成易于使用,并遵循“最小惊讶原则”。更多详细信息请参阅本文档的其余部分,但以下快速代码示例应能给您一个Py6S能做什么的印象
# Import the Py6S module from Py6S import * # Create a SixS object s = SixS() # Set the wavelength to 0.675um s.wavelength = Wavelength(0.675) # Set the aerosol profile to Maritime s.aero_profile = AeroProfile.PredefinedType(AeroProfile.Maritime) # Run the model s.run() # Print some outputs print(s.outputs.pixel_reflectance, s.outputs.pixel_radiance, s.outputs.direct_solar_irradiance) # Run the model across the VNIR wavelengths, and plot the result wavelengths, results = SixSHelpers.Wavelengths.run_vnir(s, output_name='pixel_radiance') SixSHelpers.Wavelengths.plot_wavelengths(wavelengths, results, "Pixel radiance ($W/m^2$)")
这将产生以下结果
0.283 112.095 667.589
后面是一个包含显示每个波长的结果的图表的图像。
要使用Py6S,您还需要编译和安装6S可执行文件。请按照文档中的安装说明进行操作,以了解如何在Windows、OS X或Linux上完成此操作。
Py6S 在一篇期刊文章中被描述,如果 Py6S 用于生成科学报告/出版物输出,则应引用该文章。
本项目是我在南安普顿大学攻读博士学位的一部分。代码是开源的,在 LGPL 许可下发布,可在 Github 上找到。
我非常欢迎收到反馈、错误报告和功能建议,请通过robin@rtwilson.com给我发邮件。
项目详情
关闭
Py6S-1.9.2.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 2378ef027bbd3ead67cec47e9a14cf799b3bd851bc7833fbd44e2440666c0ff3 |
|
MD5 | 6bf02f4d93c3e57aee0157174752c49d |
|
BLAKE2b-256 | 6e47d1931df56bb48f6982574f56b8589c0c43291ce06baa1118dbb979d1d57d |