设为首页收藏本站

LUPA开源社区

 找回密码
 注册
文章 帖子 博客

开源新探索:Linux上的开源物理

2013-4-27 13:00| 发布者: joejoe0332| 查看: 2081| 评论: 0|原作者: 开源中国社区|来自: 开源中国社区

摘要:   我的最近几篇文章介绍了很多科学研究相关的软件。不过有一个重要领域我没有详细介绍,那就是关于讲授下一代计算科学的相关资源。为了填补这一部分的空白,你可以看一下开源物理学项目提供的代码。这个项目由美国 ...

  我的最近几篇文章介绍了很多科学研究相关的软件。不过有一个重要领域我没有详细介绍,那就是关于讲授下一代计算科学的相关资源。为了填补这一部分的空白,你可以看一下开源物理学项目提供的代码。这个项目由美国物理教师协会 (AAPT) 和国家科协基金会(NSF)提供支持,它包括一些用于模拟和分析的软件包。

  开源物理首先提供了可用于不同的物理系统仿真的Java程序的整个套件。因为这些仿真程序是用Java写的,因而可以在Linux以外的系统中运行。覆盖到的类别包括天文学、电磁学、经典力学、量子力学、光学和相对论。在项目的主站点,你可以通过搜索或者按主题浏览来找到一个仿真程序。仿真程序打包成.jar文件,你可以下载它们,然后简单的用下面的命令去运行:

java -jar filename.jar

  这样可以在你的桌面上运行仿真程序。不过由于这些是Java程序,所以你也可以把他们放到web站点上,使得它们在浏览器中运行。这意味着你可以在你的科学网站中包含它们,在你解释某个系统的时候可以让用户看相应的仿真。

图 1. 示例:开始模拟沿斜面下滑,同时弹出相关的介绍资料。

  有的仿真程序可以让你修改参数来改变仿真运行时的细节。这些参数可能是质量、速率或者磁场强度等。如果你用到的仿真程序有可以修改的参数,那么会有一个选项让你把模型的细节保存到一个数据文件。你可以通过点击 File→Save Model来保存。数据文件是一个XML文件,所以用文本编辑器直接修改的话还是相对比较清晰的。之后你可以通过点击File→Load Module来加载这些参数到仿真程序。这样,你就可以通过把XML数据文件共享给别人来共享你开发的模型。

图 2. 保存运行模型,用来分享给其他人

  当你熟悉完预打包的那些仿真程序之后,你可能想了解还有哪些你可以建模和分析的系统。开源物理为此提供了一个叫做Easy Java Simulations (EJS)的系统。这个Java程序提供了一个漂亮而简单的界面,让你去实现原型、测试和分发你自己的仿真程序。EJS对于教学非常适用,因为它可以实现相对复杂的仿真程序,而对编程并不需要了解太多。

  EJS 比我上面提到的仿真器要大一点,所以除了下载一个jar文件之外,你还要下载一个zip文件。zip文件下载完成之后,你需要把它解压缩到你的机器上。进入刚才解压出来的文件夹然后运行:

java -jar EjsConsole.jar

  它会弹出一个终端窗口。在终端窗口中你可以设置一些初始化变量并启动一个或者更多的EJS实例。之后会打开一个供建模和编辑的工具,你可以用它来定义你的物理系统和你想模拟的细节。你可以在编辑工具中运行这些模型,因此你可以将你的想法模拟出来看看结果是否与你所想的一致。如果你对模拟结果感到满意,编辑工具还提供了允许你将整个仿真环境打包为一个包来和其他人分享的选项。这是很棒的功能,特别当你是在为一个班级编写代码的时候。因为你可以为你的仿真定制你所要教授的特定物理系统环境,然后将其打包分发给你的学生。


酷毙
1

雷人

鲜花

鸡蛋

漂亮

刚表态过的朋友 (1 人)

  • 快毕业了,没工作经验,
    找份工作好难啊?
    赶紧去人才芯片公司磨练吧!!

最新评论

关于LUPA|人才芯片工程|人才招聘|LUPA认证|LUPA教育|LUPA开源社区 ( 浙B2-20090187 浙公网安备 33010602006705号