Lettuce 开源项目使用教程
1. 项目目录结构及介绍
Lettuce 是一个基于 PyTorch 和 Lattice Boltzmann 方法的计算流体动力学(CFD)框架。项目的目录结构如下:
lettuce/
├── AUTHORS.rst
├── LICENSE
├── README.rst
├── codeclimate.yml
├── gitignore
├── native_cuda_synopsis.md
├── readthedocs.yaml
├── requirements.txt
├── requirements_dev.txt
├── setup.cfg
├── setup.py
├── versioneer.py
├── docs/
├── examples/
├── lettuce/
├── tests/
└── source/
└── img/
目录结构介绍
- AUTHORS.rst: 项目贡献者列表。
- LICENSE: 项目许可证文件,采用 MIT 许可证。
- README.rst: 项目的基本介绍和使用说明。
- codeclimate.yml: CodeClimate 配置文件,用于代码质量分析。
- gitignore: Git 忽略文件配置。
- native_cuda_synopsis.md: 关于 CUDA 加速的说明文档。
- readthedocs.yaml: ReadTheDocs 配置文件,用于文档构建。
- requirements.txt: 项目依赖文件。
- requirements_dev.txt: 开发环境依赖文件。
- setup.cfg: 项目安装配置文件。
- setup.py: 项目安装脚本。
- versioneer.py: 版本管理脚本。
- docs/: 项目文档目录。
- examples/: 项目示例代码目录。
- lettuce/: 项目核心代码目录。
- tests/: 项目测试代码目录。
- source/img/: 文档中的图片资源目录。
2. 项目启动文件介绍
Lettuce 项目的启动文件主要是 setup.py
和 examples/
目录下的示例脚本。
setup.py
setup.py
是 Python 项目的标准安装脚本,用于配置项目的安装选项和依赖。通过运行以下命令可以安装 Lettuce:
pip install .
示例脚本
在 examples/
目录下,Lettuce 提供了多个示例脚本,帮助用户快速上手。例如:
- 00_simplest_TGV.py: 最简单的 Taylor-Green Vortex 示例。
import torch
import lettuce as lt
flow = lt.TaylorGreenVortex(
lt.Context(dtype=torch.float64), # for running on cpu: device='cpu'
resolution=128,
reynolds_number=100,
mach_number=0.05,
stencil=lt.D2Q9
)
simulation = lt.Simulation(
flow=flow,
collision=lt.BGKCollision(tau=flow.units.relaxation_parameter_lu),
reporter=[]
)
mlups = simulation(num_steps=1000)
print("Performance in MLUPS:", mlups)
3. 项目配置文件介绍
Lettuce 项目的配置文件主要包括 setup.cfg
和 requirements.txt
。
setup.cfg
setup.cfg
是 Python 项目的配置文件,用于配置项目的安装选项、测试选项等。以下是 setup.cfg
的部分内容:
[metadata]
name = lettuce
version = 0.1.0
description = Computational Fluid Dynamics based on PyTorch and the Lattice Boltzmann Method
author = Mario Christopher Bedrunka
author_email = mario.bedrunka@tu-dortmund.de
license = MIT
requirements.txt
requirements.txt
列出了项目运行所需的依赖包。用户可以通过以下命令安装这些依赖:
pip install -r requirements.txt
开发环境依赖
对于开发者,还可以安装 requirements_dev.txt
中的依赖:
pip install -r requirements_dev.txt
通过以上配置文件和示例脚本,用户可以快速了解和使用 Lettuce 项目。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考