简介

目录后一页

下面我们讨论的是 Gmsh 所附带的例子。这些例子使用 C 和 C++ 的方式进行了比较详细的注释, Gmsh 的各种用法被逐渐引进来, 我们从 t1.geo 开始1

为了使用 Gmsh 来运行这些例子,我们有两种方案(事实上,运 行的方式根据操作系统的不同会有更多的不一样,我们假设您是 在一个类 UNIX 操作系统的 Shell 中来运行)。第一种运行 Gmsh 的方式是交互式的图形界面方式,您只需要在命令行下键入

$ gmsh

就可以了。软件会打开两个窗口:一个是图形窗口,其中有一个 位于底部的状态条;另一个是菜单窗口,其中有一个菜单条和一 些和上下文有关的按钮。您选择 File->Open 菜单,就能够去选择 打开 t1.geo 这个文件。为了能够产生网格,您在 Module 菜单中 选择 Mesh ,然后在上下文相关的按钮中选择您想要的维数,其 中 1D 会在所有的线上分布网格、2D 会将所有的表面上产生网格、 3D 会在所有的立体中产生网格。您再选择保存,就能够将获得的 网格存储起来。您还可以在菜单中选择存储的形式。存储的文件 的文件名一般是输入文件的主文件名加上和存储格式有关的扩展 名。2

另外一个交互式运行 Gmsh 的方法更加方便,您可以直接在命令行 上加参数运行

$ gmsh t1.geo 3 4

另一个运行 Gmsh 的模式是非交互的模式。在这种模式下,没有 图形界面,所有的操作都是非交互的。比如您想对于第一个例子 产生二维的网格,您可以敲入

$ gmsh t1.geo -2

如果您想基于一个已有的背景网格 'bgmesh.pos' 来产生出网格,您 就可以使用

$ gmsh t1.geo -2 -bgm -bgmesh.pos 5

Gmsh 能够同时读入好几个文件。第一个文件定义了这个项目,其他 文件都被附加在其后。您可以使用 File->Merge 菜单来将这些文件 合并到一起,当然,命令行也能做这件事情。这个功能对于后处理 是有用的。比如,使用命令

$ gmsh t1.geo view1.pos view2.pos

就能够将后处理视图 'view1.pos' 和 'view2.pos' 与第一个例子 't1.geo' 合并起来。在 Post-Processing 模块中,会出现两个按钮, 分别叫做 "a scalar map" 和 "a vector map"。左键点击按钮就会 看到相应的视图,右键点击则会出现该视图的选项。如果您希望 对于一个视图的选项的修改能够应用到所有的视图上,选择 'Apply next change to all views' 或者 'Force same options for all view' 就可以了,这些功能在菜单 Options->Post-proccessing 中。6


[1] 这个说明中没有解释网格和后处理文件的格式。请在 FORMATS 文 件中找到相应的内容。

[2] 几乎所有的交互式命令都有快捷键。您在菜单 Help->Shortcuts 可 以看到这些快捷键都是什么。

[3] 扩展名 .geo 可以去掉。

[4] 虽然直接在输入文件中定义变量和点非常方便,如果您通过交互 的方式来定义曲线、表面和立体会觉得更加方便。请在模块 Geometry 中根据上下文相关按钮来完成这样的操作。比如您想加入一条样 条曲线,您可以选择下面的按钮序列:Elementary->Add->New->Spline。 然后在图形窗口的状态条中就会被要求选择一系列的点,然后 点击 'e' 完成选择(点击 'q' 取消)。当整个的交互式命令完成 后,您打开的文件的尾部就会添加上一个字符串来描述这条曲线。

[5] 如果您想使用背景网格,请阅读 'bgmesh.pos' 中的注释。

[6] 所有的交互式输入的选项也都能够通过文本输入文件实现。所有 的有效选项以及它们当前的值,能够使用选择菜单 File->Save as

->Geometry->Gmsh current options 来存储到文件中。直接点击状态 条上的问号 '?' 也能达到同样的效果。如果您想将现在的选项保存 起来作为缺省的偏好设置,以便将来启动 Gmsh 时使用,请使用 Options->Save options now 菜单。

目录后一页