问题标签 [finite-element-analysis]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
126 浏览

c - Calloced 内存似乎为 NULL

哪些可能的情况可以使以下代码执行if以下代码段中的条件?就我而言,我无法说明该if语句执行的任何原因。

我正在使用在一个非常大的程序中间进行此检查的 FEM 代码。有趣的事实是,当我运行代码时,它会显示异常行为。有时程序就在这里停止。有时它工作得很好。值得一提的是,当程序以粗网格运行时,即当Nod要计算的节点数量较少时,程序运行良好。但是当使用精细的网格时,不幸的是程序崩溃了。该程序在具有 128GB 内存的迷你工作站中运行。该程序占用 1GB(左右)的 RAM。

0 投票
1 回答
177 浏览

image - 图像修复中偏微分方程方法的有限元方法

如何遍历损坏的灰度图像来修复其中的所有损坏像素而不检查未损坏的像素?

任何帮助将不胜感激。

PS我有一个算法可以通过插入周围的像素来修复损坏的像素,但是我不能在整个图像上使用这个算法,因为它需要太长时间。

这是算法(伪代码):

其中error是Ek,α是一个系数,Ik是第k次迭代的图像。

0 投票
0 回答
178 浏览

parallel-processing - mpirun 模式下的 PETSC 时间步进


亲爱的,我是学习 PETSC 的大一新生。我基于 PETSC 库编写了一个非常简单的一维扩散问题代码(只是简单的 FDM 代码)。我想在每个时间步中使用 PETSC 的并行求解器。这是伪代码:

这段代码在顺序模式下工作得很好(矩阵和向量都基于 MPI 类型),但是当我尝试使用 mpirun -np 4 ./a.out 时,结果完全错误。我猜 mpirun 使时间步长循环也并行,但我不确定。

所以,我的问题是:

  1. 如何在循环中使用 PETSC 的并行求解器,或者换句话说,如何在顺序时间步长中使用并行求解器或 mpirun?

  2. 我是否可以使用mpirun -np 4 ./myapp并行求解器,但对于时间步进和结果输出,它们仍然是顺序的?在仿真中,时间步长和结果输出必须一一执行,所以我只需要并行求解器,而不是整个程序。

谢谢!

0 投票
1 回答
413 浏览

numeric - 两种材质的圆形网格 - Gmsh

我有以下 .geo 用于 GMSH:

我已经准确地绘制了我想要构建的几何图形,但不知何故 Gmsh 只是在平面表面 2 内进行网格划分。这段代码有什么问题吗?

0 投票
1 回答
118 浏览

mesh - GMSH 中 2D 和 3D 元素之间的节点不一致

我正在尝试制作立方体的四面体网格。我遇到的问题是一些用于生成三角形面的节点然后不用于生成任何四面体元素。有没有办法避免这种情况?这是代码。

谢谢简

0 投票
1 回答
1702 浏览

visualization - Paraview:合并多个 .stl 并保存为单个 (.stl)

如何合并多个 (.stls) 并保存为单个 (.stl) 文件?

我想将以下所有(.stls)保存为 Paraview 中的单个(.stl)文件。

在此处输入图像描述

0 投票
1 回答
1323 浏览

mesh - 使用 VTK api 渲染网格

我正在制作一个更简单的查看器来阅读和可视化网格。

VTK 对我来说是新的,我首先试图找出为查看器设置网格数据的最佳/最有效的方法。我看到有很多使用 C++ 的 VTK 示例,但其中很多是转换为 vtk 格式或渲染原语。

我对转换为 vtk 格式不感兴趣,我只是将我的网格数据设置为vtk 非结构化网格vtk 多边形数据集并渲染它。

我做了一个小测试。下面的代码正确呈现,但这是设置数据集的最有效方法吗?如果我设置N_SQUARES为 1 000 000,它可以工作,但三角形循环似乎很慢。

0 投票
1 回答
3114 浏览

python - 是否可以使用脚本从 Abaqus CAE 的材料库中导入材料?

我正在开发 Abaqus 6.14 插件,它可以帮助我完成我用 Python 编写的工程师论文。根据Abaqus 脚本参考指南,可以通过调用从输出数据库(*.odb 文件)导入材料:

然而,由于 Abaqus 允许用户从相对轻量级的材料库(*.lib 文件)导出/导入材料并在模型之间共享它们,我想从这些而不是从通常庞大的 *.odb 文件中导入材料。

当然,这可以轻松地手动完成,尽管我想使用我的插件减少重复工作的数量,因为我需要在非常相似的模型上运行数十次模拟,但使用不同的材料和一些其他参数。我知道我也可以在模板 *.cae 文件中提供必要的材料,尽管如果我必须手动将新材料导入到数十个模型中或者我必须更新现有材料的属性,这可能会非常不方便。

我正在寻找一种解决方法,允许使用 Python 脚本将材料从材料库导入 Abaqus mdb 模型,但如果仅存在这种解决方法,则避免实现自定义 *.lib 文件解析器。

0 投票
1 回答
312 浏览

fortran - 为 Fortran 中的有限元方法构建自适应网格(2D 三角形和 3D 四面体)的程序

我正在编写有限元方法的 Fotran 代码,我需要一些程序来在我的程序中生成自适应网格(即:没有读/写输入/输出文件)。该网格用于计算后验误差。

我尝试使用三角形软件,但它是用 C 语言编写的,我在从 fortran 调用时遇到了问题(创建接口......)。

最好,我正在寻找 Fortran90 或更高版本的东西,但如果是用 Fortran 77 编写的,我可以使用它。

0 投票
1 回答
139 浏览

geometry - 曲面到四面体网格

有人知道从几何对象表面生成四面体网格的方法吗?

我在 3D 空间中只有 1D 和 2D 元素(节点、线、三角形),并想从中生成四面体。

我知道这并不总是可能的,但我认为如果线条和三角形正在构建一个有效的表面,它应该是可能的。

感谢您的任何提示....