走进科学

作者:Joey Bernard

在之前的文章中,我介绍了几种可以用来模拟各种物理过程的库或专业应用程序。 但有时您可能希望能够同时以交互模式模拟几个不同的过程。 这在教育场景中尤其有用,在这些场景中,您试图学习这些过程是如何工作的。 因此,在本文中,我将介绍 KDE 项目 Edu 部分的一个名为 Step 的应用程序。KDE Project

一个主要的限制是模拟仅在二维中运行。 除此之外,您可以模拟几乎任何您能想象到的系统。 您可以创建由通过刚性杆或弹簧连接的粒子组成的离散系统。 您可以将外部重力或电力应用于您的系统。 其中有一个分子动力学部分,允许您模拟气体和液体,包括冷凝和蒸发,并且在您的数字中支持单位和误差值。 提供了几种求解器来处理实际计算,因此您应该能够找到最适合您的特定应用程序的求解器。

要安装 Step,您的发行版的软件包管理系统中应该有一个可用的软件包。 例如,对于基于 Debian 的发行版,您可以使用以下命令安装 Step


sudo apt-get install step

需要注意的是,Step 是 KDE 项目的一部分。 因此,如果您在不同的桌面环境(例如 GNOME 或 Unity)上安装它,您还需要安装大量的 KDE 支持库。 它可以在其他桌面环境中正常运行,因此您实际上不需要运行 KDE。

要启动 Step,您可以在桌面的菜单系统中找到它,或者打开终端窗口并运行 step 命令。 启动后,您将获得一个全新的空项目,您可以在其中构建您的模拟。

图 1. 当您启动 Step 时,您会获得一个空白的新项目来开始您的模拟。

在窗口的中心是主窗格,其中显示了您的粒子和力系统。 左侧是元素调色板,您可以使用它来构建您想要建模的系统。 在右侧,您可以看到一系列窗格,这些窗格提供了关于整个系统的信息,以及关于特定选定元素的详细信息。

看到所有这些功能并且必须从完全空白的画布开始可能会让人望而生畏。 幸运的是,Step 附带了许多教程,引导您完成在 Step 中构建和模拟系统的最初步骤。 您可以通过单击菜单项 文件→打开教程 来访问它们。 这会弹出一个对话框窗口,您可以在其中选择和加载五个提供的教程之一。 当您选择一个时,您会得到一个元素系统以及对您可以跟随的活动的描述,以帮助您更多地了解 Step 的每个部分。

图 2. Step 附带了一组教程,引导您了解一些可用的功能。

当您想要继续开发自己的模型时,可以使用几个示例项目,这些项目涵盖了大量的物理系统。 您可以从菜单项 文件→示例→打开示例 中访问它们。 这将弹出一个对话框,您可以在其中选择和加载系统,例如双摆模型。

图 3. Step 附带了许多示例项目,例如双摆。

这些示例提供了一个起点,您可以对其进行修改以创建自己的模型。 为了进行更改,您可以选择主窗格中的相关元素,也可以从右侧的顶部窗格中选择。 这两个步骤都将在右侧的中间窗格中填充该元素的详细信息。 然后您可以继续进行修改。 例如,对于粒子,您可以更改位置、速度或质量。 构建好自己的系统后,您可以通过单击 文件→另存为 将其保存为 Step 文件。

到目前为止,我所描述的只是设置物理系统的模型。 我尚未介绍任何物理过程的模拟。 要开始模拟,请单击窗口顶部的“模拟”按钮(就在菜单栏下方)。 您应该注意到旁边有一个按钮(带有一个向下箭头),可让您设置模拟的速度。 这使您可以看到系统的运动,这对于试图理解系统将如何运行非常有启发性。

然而,有时这还不够好。 您可能需要使用数字来跟踪模拟中各种元素正在做什么。 幸运的是,Step 提供了三个测量对象:仪表、图形和示踪器。 例如,让我们添加一个仪表来监视双摆示例中第一个粒子的速度。

图 4. 您可以添加元素,例如仪表,来跟踪模拟中元素的行为。

首先单击对象调色板中的仪表选项。 然后 Step 会要求您选择此仪表的显示位置。 创建仪表后,您仍然需要配置它,以便它监视某个对象的某个属性。 您可以右键单击仪表并选择 配置仪表,或者您可以从右侧的顶部窗格中选择仪表对象。

在屏幕截图给出的示例中,我选择了 particle1 对象的速度。 当您第一次这样做时,您可能会注意到仪表实际上没有显示任何内容。 不要忘记您还需要选择属性的索引。 在这种情况下,您需要将其从默认值 0 更改为 1。

一旦您开始创建自己的系统,您可能会认为默认求解器不合适。 每个求解器都有好坏之分,具体取决于系统的细节和约束。 涉及的数值分析的细节太多,无法在如此短的文章中涵盖,但您应该知道您对此有一定的控制权。 您可以从右侧的顶部窗格中选择 solver1 对象。 中间的属性窗格允许您从 16 个可用的求解器中选择求解器类型。 您应该能够选择一个以及其其他属性,该属性适合您的模拟。

我在这里只介绍了 Step 中可用的最基本元素,但希望您已经看到了足够多的内容来激发您进一步玩它的兴趣——特别是如果您需要一个好的工具来向您的学生教授这些类型的物理过程。 当他们可以摆弄相关参数并查看它们有什么影响时,他们会对它们有更直观的感受。

加载 Disqus 评论