首页/文章/ 详情

EasyVEM:在浏览器里画几何、生成网格并完成 VEM 计算

1天前浏览3

不需要安装大型软件,也不需要预先生成网格。打开浏览器,画出几何,EasyVEM 就能基于背景网格自动构造计算网格,并继续完成边界条件设置、求解和结果显示。

EasyVEM 中的几何与计算网格  

为什么做 EasyVEM?

在有限元或虚拟元方法的学习、研究和程序验证中,我们经常需要走完一套完整流程:建立几何、划分网格、定义材料、添加边界条件、求解,再查看结果。

其中,几何处理和网格生成往往占据了不少时间。对于需要频繁修改模型、测试算法或演示数值方法的人来说,如果每次都要在多个软件之间切换,原本简单的算例也会变得繁琐。

EasyVEM 正是为这个场景设计的。

它是一款基于网页的二维虚拟元计算工具。用户可以直接在画布中绘制多边形几何,程序根据背景网格切分出计算网格。之后,几何、网格、物理场、边界条件、求解和后处理都在同一个页面内完成。

目前程序可以跨平台运行,在Windows, Mac, 手机端都可以直接操作计算。对于教学演示、简单算例和算法验证,打开网页即可开始建模。

从任意绘制的轮廓到计算网格

EasyVEM 的建模过程很直接:在画布中依次点击几何顶点,闭合多边形后,程序会自动调用当前背景网格生成计算网格。

当前支持三种背景网格:

  • Cartesian grid (笛卡尔网格)
  • Triangular grid (三角形网格)
  • Hexagonal grid (六边形网格)

通过裁剪背景网格,可以直接得到用于计算的多边形网格,而虚拟元法最适合求解多边形网格。

EasyVEM 中的裁剪网格  

通过调整网格尺寸,可以快速比较不同离散尺度下的结果。绘图时还可以启用 Snap to grid,使节点自动对齐背景网格;节点坐标也可以在表格中直接修改。

当前支持的三类问题

EasyVEM 当前提供以下物理接口:

Poisson Equation (泊松方程)

用于求解二维泊松方程,可设置扩散系数、源项、Dirichlet 边界条件和 Neumann 边界条件。

其控制方程为:

 

边界条件可写为:

 

其中,     为待求标量场,     为扩散系数,     为源项,     为边界外法向量,     和      分别表示给定的场值与法向通量。

EasyVEM 求解泊松方程  

Linear Elasticity (线弹性)

采用一阶虚拟元格式,材料参数使用杨氏模量 E 和泊松比 ν,并支持平面应力与平面应变模型。

小变形线弹性的平衡方程、应变关系和本构关系分别为:

 
 

相应的位移和力边界条件为:

 

其中,     为位移,     为小应变张量,     为 Cauchy 应力,     为体力,     是由     、     以及平面应力或平面应变假设确定的弹性张量。

EasyVEM 求解线弹性力学  

Hyperelasticity (超弹性)

采用一阶虚拟元格式和经典 Neo-Hookean 本构,材料参数使用 Lamé 参数 λ 和剪切模量 μ。求解过程采用固定载荷步和 Newton 迭代,并可实时查看每一步的非线性残差。

在参考构形      中,有限变形平衡方程写为:

 

其中,变形梯度、右 Cauchy-Green 张量和体积比为:

 

EasyVEM 当前采用可压缩 Neo-Hookean 模型,其二阶 Piola-Kirchhoff 应力为:

 

参考构形下的边界条件为:

 

这里,     和      分别为第一、第二 Piola-Kirchhoff 应力,     为参考构形的边界外法向量。由于材料和几何关系均为非线性,程序通过增量加载和 Newton 迭代求解平衡方程。

EasyVEM 求解泊松方程  
EasyVEM 求解泊松方程  

在 Model 页面切换物理接口时,当前控制方程会直接显示在参数区,便于确认正在求解的问题。

求解完成后,结果立即显示

点击 Compute 后,程序会在浏览器中完成组装和求解,并自动切换到结果视图。

EasyVEM 泊松方程计算结果  

网格和计算结果均可导出为 JSON 文件,便于进一步检查、调试或在其他程序中处理。

一个典型计算只需要五步

  1. 选择 Poisson Equation、Linear Elasticity 或 Hyperelasticity。
  2. 在画布中绘制并闭合二维多边形。
  3. 调整背景网格类型和尺寸,生成计算网格。
  4. 选择边或节点,添加边界条件与载荷。
  5. 点击 Compute,查看并导出结果。

从几何到结果,整个过程都在同一个浏览器页面中完成。

它适合谁?

EasyVEM 目前更适合作为轻量级计算、教学演示和研究验证工具:

  • 希望直观了解虚拟元方法基本流程的学生;
  • 需要快速构造多边形网格和简单算例的研究人员;
  • 想比较泊松方程、线弹性和超弹性离散结果的开发者;
  • 需要在课堂、会议或网页中演示 VEM 计算过程的教师和工程师。

当前版本聚焦二维单连通多边形区域,力学部分采用一阶格式。较大规模模型仍建议使用桌面端程序或专业计算平台,并对关键结果进行独立验证。

为什么叫 EasyVEM?

这个名字表达了项目最直接的目标:让 VEM 的建模与计算过程更容易接近、更方便操作,也更适合通过网页分享。

EasyVEM 并不试图替代大型通用仿真软件。它更像一个轻量、透明、可以快速试算的 VEM 工作台:少一些安装和前处理,多一些对几何、网格、边界条件与计算结果本身的关注。

在线体验

体验地址:[https://vemhub.github.io/EasyVEM/]

如果你正在学习虚拟元方法,或者希望用浏览器快速建立一个二维 VEM 算例,欢迎试用 EasyVEM,也欢迎反馈你最希望加入的功能。

作者简介

徐兵兵,香港科技大学博士后。主要研究方向:虚拟元法,非线性力学仿真,接触力学,软件开发。


来源:易木木响叮当
非线性几何处理通用UM材料控制
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2026-09-29
最近编辑:1天前
易木木响叮当
硕士 有限元爱好者
获赞 278粉丝 414文章 450课程 2
点赞
收藏
作者推荐
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习计划 福利任务
下载APP
联系我们
帮助与反馈