如何使用插件自定义模型开发器的工作流程

2020年 1月 3日

插件或插件程序是对 COMSOL Multiphysics 软件中的用户自定义功能的扩展,即用户可以创建和打包自定义功能。通过使用插件自动执行常见的仿真任务,可以降低仿真错误,提高仿真效率。用户可以使用 App 开发器中强大的用户界面和编程工具创建插件。

编者注:本博客更新于 2024 年 7 月 22 日,以反映 COMSOL Multiphysics® 软件 6.2 版本的新特征和新功能。

设置表单和方法调用

插件由三部分组成:方法、表单和功能区选项卡,这三部分都是通过 App 开发器创建的。在早期版本的 COMSOL® 软件中,方法编辑器只包含创建仿真 App 的功能,但经过最近几次版本更新后,新版本软件中的方法编辑器也可以创建插件,即使用方法和表单创建插件。这样就能创建从用户自定义界面访问的用户自定义功能,从而增强模型开发器中的建模工作流程。接下来让我们简要回顾一下什么是方法和表单,先从方法开始。

方法是用户在 App 开发器中使用方法编辑器创建的基于 Java® 编程语言的程序。通过这些程序,用户能够创建执行复杂操作的自定义功能,例如结果评估和可视化。若想要学习如何使用方法,用户不必阅读用户手册,只需在用户界面上单击 录制代码,然后在模型开发器中执行想要的操作,最后停止录制,并修改自动生成的编程代码。

COMSOL Multiphysics 中 App 开发器的方法编辑器的截图。
方法编辑器可用于编写模型开发器树节点的标准用法中未涵盖的操作。

当然,您可以使用多个方法来表示自定义工作流程中的各种任务。您还可以在 App 开发器中使用表单编辑器创建自己的专用用户界面来规划您的工作流程。这样的用户界面可以在模型开发器中以 设置表单 或模态框的形式使用。

 App 开发器中的表单编辑器的截图。
表单编辑器可用于创建包含表单和表单对象(如输入框、按钮和组合框)的用户界面。

在这些精选的博客中了解更多有关创建方法、表单和仿真 App 的内容。

早期版本的 COMSOL Multiphysics® 不允许用户在会话之间或不同用户之间重复使用模型开发器中使用的方法和表单。当然,这样的需求可以通过创建一个仿真 App来实现。现在,在新版本的软件中用户可以创建插件、方法集合、表单和功能区选项卡,并将它们存储在一个插件库中,以便在新的仿真会话中重复使用。COMSOL Multiphysics 还提供了一些内置的插件库。对于内置的插件,您可以通过查看其 App 开发器的设置,包括表单、方法和功能区选项卡,来快速了解如何创建自己的插件。接下来,让我们来看看如何基于方法和设置表单创建插件。

在 COMSOL Multiphysics® 中创建插件

创建插件与创建仿真 App 类似,但有一些区别。插件没有自己的 图形 窗口,而是使用模型开发器中的主 图形 窗口。对于任何类型的模型,插件都应该能够正常工作或者能给出受控的错误信息。要创建一个插件,您可以从在 App 开发器中创建表单开始,然后单击功能区中的 插件定义 来创建插件,如下图所示。

插件定义按钮的截图
功能区中的 插件定义 按钮。

右键单击 App 树中的 插件定义 节点,然后选择 表单定义

App 开发器的特写视图,显示了插件定义按钮下的表单定义被选中。
为插件创建表单定义。

下图为 表单定义 的设置窗口。在这里,您可以为插件表单添加标签,也可以选择插件使用的表单。标签 将显示在用户定义的插件库中。您可以选择将该表单作为模型树中的 设置表单 显示,还是作为 对话框 显示。允许多个设置表单 复选框用于允许在模型树中有多个 设置表单 实例。描述 框中的内容将显示在插件库中,并在功能区中选择插件时作为工具提示显示。

表单定义的设置窗口的截图,描述框的内容已展开
表单定义 的设置窗口

单击 插件定义 节点,查看其 设置 窗口,如下图所示。

插件定义设置窗口的截图
插件定义 的设置窗口。

文件名 是插件的 MPH 文件在用户自定义的插件库中的位置。如果您希望与同事共享该插件,可以将其放在共享网络驱动器上。 标签 将显示在 插件库 窗口中。唯一标识符 是插件的标识,对于任何 COMSOL Multiphysics 会话都是唯一的。唯一标识符建议采用类似于 < company name > . < Add-in name > 的格式,例如, my_company.my_add-in。您可以在创建的插件中应用 编辑密码,该密码与插件根节点 设置 窗口中的编辑密码不同。

要创建插件(一种特殊类型的MPH 文件),请单击 创建插件 按钮。

创建插件按钮的截图
创建插件 按钮。

插件库和插件的使用

要使用 插件库 中的插件,首先需要启动它。在模型开发器的 开发工具 选项卡中,单击 插件库 即可。

插件库按钮的屏幕截图
插件库 按钮。

在插件列表中,选择要启用的插件的复选框。

插件库的特写视图,图中显示已选中了colored_selections,image_to_curve 和 planar_cut selected。
插件库 窗口。

启用插件后,单击 开发工具 选项卡中的 插件 按钮时,就会显示相应的插件。

从开发工具选项卡选择插件后的屏幕截图
开发工具 选项卡访问插件。

下图显示了一个内置插件的 设置表单

模型开发器的特写视图,突出显示了图像到曲线插件的设置窗口,并在设置窗口中展开显示了 Image 和 Contour 的部分。
图像到曲线 插件的设置窗口。

如果您需要查看和编辑某个内置插件的 App 开发器设置,可以打开相应的 MPH 文件。在 Windows® 系统的安装文件中,内置插件库位于:

C:\Program Files\COMSOL\COMSOL62\Multiphysics\addins.

单击 插件库 窗口底部的 添加用户插件库 按钮,即可浏览用户定义的插件库。

添加用户插件库按钮的屏幕截图
添加用户插件库 按钮。

用户自定义的插件库将与软件内置的插件库一起显示,如下图所示。

用户定义的插件库的屏幕截图
用户定义的插件库。

创建和编辑插件的工作流程

在创建和编辑插件时,您会发现同时打开两个 COMSOL Multiphysics 会话非常有用:

  1. 一个会话用于显示原始插件的 MPH-文件,在这个会话中您主要在App开发器中工作
  2. 另一个会话用于在模型开发器中测试插件

在使用模型开发器测试插件时,请确保测试多种模型,包括不同空间维度的模型以及包含多个模型组件的模型。使用 刷新插件 按钮可以确保您使用的插件始终是最新版本。

刷新插件按钮的截图
刷新插件。

仿真 App 和插件之间的一些区别

仿真 App 和插件之间有许多相似之处,但也有一些重要的区别,下表对二者之间的差别进行了总结。

条目 仿真 App 插件
目标对象 任何人 仿真专家
开发工作 简单(适用于简单的 App) 更详细
模型 嵌入式模型 任意用户定义的模型
图形 多个图形窗口 COMSOL Desktop® 图形窗口
可与…一起使用 已编译的独立仿真 App, COMSOL Server™, COMSOL Multiphysics COMSOL Multiphysics

仿真 App 通常是围绕一个您可以完全控制的嵌入式模型构建的,而插件则需要适用于用户提出的任何模型和仿真场景。因此,创建插件通常比创建仿真 App 需要更多的工作。当然,这也取决于所处理的仿真任务的复杂程度。

例如,一个插件的维护需要检查诸如以下这些项目:

  • 是否有多个模型组件
  • 当前组件的空间维度:0D、1D、 2D 或 3D
  • 某些项是否为空
  • 名称是否唯一,以避免命名冲突

内置插件库中的示例也说明了这一点。

内置插件库

软件内置的插件库提供了多个插件示例,您可以从这些示例开始,快速学习如何创建自己的插件。这些示例演示了如何创建包含自定义方法、设置表单和功能区选项卡的插件。如果您想要查看和编辑内置插件的设置,可以打开相应的 MPH 文件,在 Windows® 安装系统中,该文件位于:C:\Program Files\COMSOL\COMSOL62\Multiphysics\addins.

一个平面切割插件的屏幕截图
一个使用了内置的平面切割插件的模型。

在模型开发器中使用了内置的图像到曲线插件的屏幕截图
一个使用了内置的图像到曲线插件的模型。

您可以查看 App 开发器简介 文档 ,了解有关创建插件的更多信息。
 

Microsoft 和 Windows 是微软公司在美国和/或其他国家的注册商标或商标。
Oracle 和 Java 是 Oracle 和/或其关联公司的注册商标。


评论 (0)

正在加载...
浏览 COMSOL 博客