Hello Netgen

Hello Netgen

eryar@163.com

摘要Abstract:本文主要介绍如何对下载的Netgen源码进行编译生成Netgen程序和程序开发所需要的库nglib。

关键字Key Words:Netgen, nglib, Mesh Generator, OpenCascade, Triangulation

一、引言 Introduction

NETGEN是一个二维/三维自动网格剖分工具,并且遵循LGPL开源协议。即可以作为一个带有用户界面的单独程序使用,也可以作为C++的库文件被其它程序链接。Netgen可以跨平台,支持Unix/Linux和Windows。

Netgen最早为奥地利科学家Joachim Schoberl编写的网格剖分程序,是网格划分技术中极为先进与完善的,在3D网格划分领域更是具有极大的优势。可以从sourceforge上获取最新版本的Netgen5.1,网址是:http://sourceforge.net/projects/netgen-mesher/,如下图所示:

wps_clip_image-25141

Figure 1.1 Netgen Mesh Generator on SourceForge.net

本文主要介绍如何对下载的Netgen源码进行编译生成Netgen程序和程序开发所需要的库nglib。

二、Netgen的安装 Installing Netgen

根据机器的配置选择32位或64位的安装程序,和普通软件的安装一样,下一步直到完成,安装好之后就可以使用了。

wps_clip_image-10040

Figure 2.1 Netgen 5.1

安装完成后,在程序的开始菜单中会生成链接,如下图所示:

wps_clip_image-12057

Figure 2.2 Netgen in Start menu

选择Netgen 5.1即可启动程序,测试一下效果,如下图所示:

wps_clip_image-16360

Figure 2.3 Mesh generated by Netgen

三、Netgen的编译 Compiling Netgen

如果需要在程序中使用Netgen,就需要编译Netgen来生成程序开发使用Netgen的库nglib。编译Netgen需要第三方库的支持,必须的第三方库有:

l pthread-w32

l TclTkTixTogl

l zlib

其中pthread-w32和TclTkTixTogl的库都可以从Netgen的SourceForge上的AdditionalFiles中下载得到。若需要对IGES或STEP文件的读写,还需要安装OpenCascade。

wps_clip_image-19601

Figure 3.1 3rdparty library for Netgen

原来没发现Netgen在这里把这些第三方库都提供了,尝试自己编译Tcl、Tk和Togl,前两个已经编译成功了,编译到Togl时也没找到什么资料,就放弃了,浪费了时间。直接根据需要下载Visual Studio对应的第三方库文件,再下载好zlib,很快就可以编译成功了。最好按如下方式来组织这些第三方库:

wps_clip_image-5

Figure 3.2 Default location of 3rdparty library for Netgen

配置好第三方库,直接选择windows文件夹中的Visual Studio解决方案进行编译基本上没什么问题了。最多再修改下头文件的目录或库文件的目录。为了使最后生成完整的程序,还需要修改下后处理的批处理文件:postBuild_netgen.bat,将其中的路径与机器上的netgen路径对应:

wps_clip_image-21838

Figure 3.3 Modify the post build bat file to copy files

这样在编译链接完成后,会自动将所需要的文件复制到一个文件夹,还是很方便的。如图所示,生成了netgen-instNoOCC_Win32和nglib-instNoOcc-Win32:

wps_clip_image-21172

Figure 3.4 Build Netgen and nglib without OpenCascade

库nglib的编译和Netgen的方法一样,也需要修改下后处理的批处理文件postBuild_nglib.bat,会自动把程序开发所需要的库和头文件复制到一个文件夹下面,方便程序使用。

使用编译好的Netgen生成的网格如下图所示:

wps_clip_image-15922

Figure 3.5 Shaft mesh generated by Netgen

wps_clip_image-32345

Figure 3.6 Box and sphere mesh generated by Netgen

四、结论 Conclusion

通过编译Netgen并结合OpenCascade来学习网格剖分在几何造型中可视化的应用。

五、参考资料 References

1. Netgen User Manual,

2. Netgen 算法说明

NETGEN An advancing front 2D/3D-mesh generator based on abstract rules

http://www.asc.tuwien.ac.at/~schoeberl/wiki/publications/netgen_org.pdf

3. zhouschina的博客http://blog.youkuaiyun.com/zhouschina/article/details/9050373

 

PDF Version: Hello Netgen

转载于:https://my.oschina.net/eryar/blog/347782

03-19
<think>好的,我现在需要处理用户关于Netgen的查询。用户想了解Netgen网格生成工具或者Netgen CMS的使用方法。首先,我需要确认Netgen的两个不同产品,避免混淆。 首先,Netgen作为网格生成工具,是一个开源的软件,用于有限元分析中的网格生成。我应该先介绍它的基本信息,比如开发者、主要功能、支持的格式等。然后分步骤说明使用方法,比如安装、几何导入、网格生成、调整参数、导出等。同时需要提及支持的输出格式和常见问题,比如复杂几何的处理。 接着,Netgen CMS可能是指内容管理系统,但根据公开资料,Netgen CMS是基于Symfony框架的PHP CMS,专注于企业级应用。这里需要说明其特点,如灵活性、可扩展性,以及使用步骤,比如环境配置、项目创建、内容建模、模板开发、部署等。还要提到它的模块化设计和集成能力。 在回答过程中,要确保每个部分结构清晰,分点说明。同时,生成的相关问题需要覆盖安装、学习资源、与其他工具的比较、适用场景等,帮助用户进一步探索。注意引用标识的添加,比如关于有限元分析的引用[^1]。 需要检查是否有混淆两者的可能性,确保用户能明确区分两个不同的Netgen产品。另外,确认提供的步骤和示例准确,比如安装命令是否正确,是否有过时的信息。可能还需要提到社区支持和文档资源,帮助用户解决问题。 最后,确保使用中文回答,数学公式正确应用LaTeX格式,但在这个问题中可能涉及较少数学内容,主要关注软件使用指导。保持回答真实可靠,结构符合用户要求。</think>### Netgen 网格生成工具 Netgen 是一款开源的自动化网格生成工具,主要用于有限元分析(FEA)中的三维几何体网格划分。其核心功能包括: 1. **几何导入**:支持 STEP、IGES、STL 等格式的几何模型导入。 2. **参数化网格生成**:通过设定网格密度、曲率自适应等参数控制网格质量。 3. **输出格式**:生成适用于 FEA 软件(如 CalculiX、OpenFOAM)的网格文件(如 .vol、.mesh)。 #### 使用方法示例 ```bash # 安装(Linux) sudo apt-get install netgen # 命令行生成网格 netgen -geofile=input.step -meshfile=output.vol -batch ``` 调整网格参数时可通过图形界面修改曲率细化阈值或最小单元尺寸[^1]。 --- ### Netgen CMS Netgen CMS 是一个基于 Symfony PHP 框架的企业级内容管理系统,特点包括: 1. **内容建模**:通过自定义字段类型和内容关系实现灵活的数据结构。 2. **多站点管理**:支持单一后台管理多个独立站点。 3. **API 驱动**:提供 RESTful API 实现前后端分离。 #### 基础操作步骤 1. **环境配置** ```bash composer create-project netgen/content-api-project my_cms ``` 2. **内容类型定义** 通过 YAML 配置文件定义字段(如文本、图片、富文本)。 3. **模板开发** 使用 Twig 引擎编写动态页面模板。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值