You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1.4 KiB
1.4 KiB
IGATrimGauss
等几何分析(IGA)中裁剪 NURBS 曲面上的高斯积分点计算。在裁剪曲面上生成背景网格并计算高精度数值积分规则,用于 IGA 有限元装配。
功能
- 裁剪 NURBS 曲面的读取与处理
- 裁剪区域背景网格生成
- 裁剪单元上的高斯积分点计算
- 多种稀疏线性求解器(CHOLMOD、Eigen)
依赖
- libigl:几何处理与可视化(GLFW)
- Eigen3:线性代数
- SuiteSparse:CHOLMOD 稀疏求解器
- spdlog:日志输出
- fmt:字符串格式化
- MshIO:网格文件读写
编译
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release ..
make
目录结构
.
├── src/
│ ├── main.cpp # 主程序入口
│ ├── readnurbs.cpp # NURBS 曲面读取
│ ├── Config.cpp # 配置参数
│ ├── CreateBgMesh.cpp # 背景网格生成
│ ├── drawstuff.cpp # 可视化(OpenGL)
│ └── LinSysSolver/ # 线性求解器(CHOLMOD、Eigen)
├── cmake/
├── external/
│ ├── glm/ # OpenGL 数学库
│ └── MshIO/ # 网格 IO
└── CMakeLists.txt
相关方向
- 等几何分析(Isogeometric Analysis, IGA)
- 裁剪曲面数值积分
- NURBS 几何处理
作者
李采月