Bo Zhang's Homepage
..The universe is unfolding as it should..

2016-6-14

VisIt的新手入门笔记

归档于: 天文空间科学, 天文软件 @ 7:27 pm

之前介绍FLASH配置的时候提到过,FLASH中心开发过一组配套的IDL程序xflash3用于模拟数据的可视化。虽说基于Python的yt也可以从事类似工作,但毕竟自己比较熟悉的还要数IDL,所以在学习FLASH基本操作期间还是以xflash3绘图为主的。不过随后由于模拟相关的课题复杂又耗时,暂且将其先放到了一边。没有料到的是,最近重拾此道的时候却碰到了意外的麻烦:这组IDL应用只能应付二维数据,对本应更简单的一维曲线倒是无能为力。考虑自己的Python水平实在太菜,试水yt期间不明怪事频出,只好求助于另一根救命稻草——由美国能源部属下劳伦斯-利弗莫尔国家实验室开发的VisIt

VisIt是一套专门用于模拟数据交互式分析与动画生成的软件,也得到了FLASH中心的推荐。它可以输出一、二、三维各种静态图像或动画,支持各大主流数值模拟程序,最高可以支持10万个以上处理器的并行处理,在普通个人计算机上当然更是应付自如了。不过比较悲惨的是,对于Ubuntu系统来说,VisIt只支持64位版本,于是本人这个32位老古董就只能望之兴叹了。好在办公室的台式计算机安装了64位的Windows尚可一用,将初学心得记录于此。

在官方网站下载软件(最新版本是2.10版),正常安装不提。第一次启动时速度略慢,界面风格很复古。嗯,其实还是蛮对个人胃口的~

进入环境后,VisIt的图形界面由左侧的主窗口和右侧的可视化窗口组成,其中前者包括各种下拉式菜单、绘图控制面板以及记录区,后者是可视化图像输出的区域:

与大部分软件一样,点击主窗口文件菜单中的打开文件选项即可加载数据文件:

比较特殊的一是上图展示的文件分组菜单,可以选择开启(On)、关闭(Off)或智能分组(Smart),其中最后一种会将所选文件夹中可能的文件自动归类,并成批加载,对于模拟程序输出的时间序列来说还是比较方便的。如果只希望打开一个文件,选择Off就可以了。

另一个要注意的是文件类型的选择,VisIt自动支持各路主流数值模拟代码的输出文件,包括FLASH,也包括Gadget、Fluent、Enzo等,另外还可以读取FITS等天文研究专用格式。如果是FLASH的运行结果,当然要在这里选择FLASH了,否则软件会报错,而且往往不重启就无法修正:

文件选择就绪,还要确认是否需要并行处理可视化结果。倘或数据量不太大,用序列处理即可;如果是并行的话,还要设置使用的处理器数目之类:

数据文件成功加载完毕,主窗口中就会显示相应的文件(组)名。点击Add按钮,即可对数据进行可视化输出。比如本文这个例子针对的是FLASH输出的相对论性点爆炸一维模拟结果,所以绘制曲线即可。最右侧菜单中的选项表示相应HDF5文件中保存的各种物理量,具体含义请参见FLASH使用手册,其他模拟代码可能有所不同。

我们在这里选择“velx”,在相对论情形下等同于x方向相对光速的归一化速度。绘图结果如下:

此时点击主窗口中的播放、停止或前进后退按钮,即可播放动画。如果要保存当前帧,选择文件菜单中的“Save Window”即可。而若要输出整段动画或导入的所有帧,要使用文件菜单中的“Save movie”,然后再作相应设置:

VisIt一个比较实用的功能是所谓的“Node pick”模式,在可视化窗口中右单击鼠标,再点击“Mode”进行选择:

进入该模式后,只要在图像上单击任意点标定取样区,再从主窗口控制菜单中打开“Pick”对话框,就可以读取该点相应的数据了:

另一个会经常用到的地方是控制菜单中的“View”,可以在其中设置坐标轴范围或类型,还有三维图像的视角等信息,方便绘图,下面是对数轴效果:

当然用VisIt画画二维图也不错,三维就先免了,非大型机无力应对啊!

嘛嘛,到这里本人的目的是基本达成了。若要深入学习研究VisIt的功能,官网倒是提供了详实的指南,但这些文档至今还只停留在10年前发行的1.5版(据说这个团队压根就是懒得更新而已),所以还是查询本地的帮助文件为宜。

另一个推荐浏览的地方是官网的可视化界面展示,不过千万不要只顾得看美图,而忽视了一旁更重要的简介。这些文字虽短,却扼要地说明了VisIt的某些重要用途,可以带来意想不到的收获。

说来VisIt的功能还是很强大的。据某曾经在FLASH中心工作过的师兄称,他们有很多效果超炫的超新星爆发模拟图就是这套软件的功劳。至于号称配套的xflash3,据说实际上只是为了一些特定问题而开发的,通用性不算太好,现在FLASH团队对其并不重视,相应的更新也趋于停滞,所以还是暂且将其抛到一边吧。而yt嘛……好吧,在本人手中,它的画图结果连坐标轴范围都严重有问题,这让人怎么敢用得下去啊!

当然,VisIt的应用不仅限于天文学研究,还涵盖了工业设计、地理信息、影像医学等诸多领域。下图就是其中的一个例子,YF-17喷气式飞机的数值模型可视化,不同颜色标识马赫数的分布,其中还用到了新型三角形非结构化网格。这种网格可以更精确地逼近不规则的表面,在工业领域常见,但似乎天文界很少有人问津,也许是因为天文模拟的边界条件相对比较简单的缘故?

No Comments

No comments yet.

RSS feed for comments on this post.

Sorry, the comment form is closed at this time.

首页 | 天文 | 科学 | 摄影 | 模型 | CV | 版权声明 | 联系站长
京ICP备05002854号-2 Powered by WordPress Version 2.0.6
Licensed under Creative Commons Licenses

porno izle