OpenFOAM程序初步开发

2023-10-09 05:20
文章标签 程序 开发 初步 openfoam

本文主要是介绍OpenFOAM程序初步开发,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 1. OpenFOAM的基本术语
  • 2. 求解器及算例文件架构
    • 2.1 求解器架构
    • 2.2 算例文件架构
  • 3. 求解器的开发
  • 4. 各目录含义

1. OpenFOAM的基本术语

  • 一些重要环境变量:
$WM_PROJECT_DIR       ------OpenFOAM的系统目录
$WM_PROJECT_USER_DIR  ------OpenFOAM的用户目录
$FOAM_TUTORIALS       ------OpenFOAM的算例目录
$FOAM _SRC            ------OpenFOAM库的源代码目录
$FOAM_APP             ------OpenFOAM的求解器目录
$FOAM_APPBIN          ------OpenFOAM的求解器执行文件目录
$FOAM_RUN             ------用户的算例目录
  • 重要的shell命令:
run    =  cd to $FOAM_RUN
src    =  cd to $FOAM_SRC
app    =  cd to $FOAM_APP
util   =  cd to $FOAM_APP/utilities
sol    =  cd to $FOAM_APP/solvers
tut    =  cd to $FOAM_TUTORIALS

2. 求解器及算例文件架构

2.1 求解器架构

在这里插入图片描述

关于程序编译的一些基础操作,可查看 编译配置文件夹 Make。

2.2 算例文件架构

在这里插入图片描述

算例文件夹下包含了多面体网格数据(polyMesh),常量( constant ),离散格式(fvSchemes),代数求解器(fvSolution)时间步长( controlDict )以及初始条件(0)等一系列文件。

这一部分可参考OpenFOAM用户指南 4.1节

求解器位于其中的 applications( $FOAM_APP or app) 文件夹下,可以用以下命令打开查看:

cd $FOAM_APP/solvers   //或者直接输入 sol

3. 求解器的开发

这一部分可参考:

  1. How to add temperature to icoFoam
  2. https://www.zybuluo.com/daidezhi/note/385554
  3. https://www.zybuluo.com/gunshooter/note/1717324

4. 各目录含义

/bin:普通用户可以使用的命令
/boot:Linux启动时,需要的文件
/dev:设备文件
/etc:配置文件
/home:用户家目录
/lib:32位库文件
/lib64:64位库文件
/mdia:媒体文件
/mnt:挂载文件
/opt:第三方软件
/proc:虚拟化文件
/root:管理员的家目录
/run:进程文件
/sbin:超级用户可以使用的命令
/srv:压缩过的文件
/sys:系统文件
/tmp:临时文件
/usr:安装的软件,共享库
/var:可变数据,日杂文件

这篇关于OpenFOAM程序初步开发的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/170610

相关文章

Go语言开发实现查询IP信息的MCP服务器

《Go语言开发实现查询IP信息的MCP服务器》随着MCP的快速普及和广泛应用,MCP服务器也层出不穷,本文将详细介绍如何在Go语言中使用go-mcp库来开发一个查询IP信息的MCP... 目录前言mcp-ip-geo 服务器目录结构说明查询 IP 信息功能实现工具实现工具管理查询单个 IP 信息工具的实现服

将Java程序打包成EXE文件的实现方式

《将Java程序打包成EXE文件的实现方式》:本文主要介绍将Java程序打包成EXE文件的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录如何将Java程序编程打包成EXE文件1.准备Java程序2.生成JAR包3.选择并安装打包工具4.配置Launch4

Java程序进程起来了但是不打印日志的原因分析

《Java程序进程起来了但是不打印日志的原因分析》:本文主要介绍Java程序进程起来了但是不打印日志的原因分析,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Java程序进程起来了但是不打印日志的原因1、日志配置问题2、日志文件权限问题3、日志文件路径问题4、程序

使用Python开发一个带EPUB转换功能的Markdown编辑器

《使用Python开发一个带EPUB转换功能的Markdown编辑器》Markdown因其简单易用和强大的格式支持,成为了写作者、开发者及内容创作者的首选格式,本文将通过Python开发一个Markd... 目录应用概览代码结构与核心组件1. 初始化与布局 (__init__)2. 工具栏 (setup_t

Spring Shell 命令行实现交互式Shell应用开发

《SpringShell命令行实现交互式Shell应用开发》本文主要介绍了SpringShell命令行实现交互式Shell应用开发,能够帮助开发者快速构建功能丰富的命令行应用程序,具有一定的参考价... 目录引言一、Spring Shell概述二、创建命令类三、命令参数处理四、命令分组与帮助系统五、自定义S

SpringBoot实现微信小程序支付功能

《SpringBoot实现微信小程序支付功能》小程序支付功能已成为众多应用的核心需求之一,本文主要介绍了SpringBoot实现微信小程序支付功能,文中通过示例代码介绍的非常详细,对大家的学习或者工作... 目录一、引言二、准备工作(一)微信支付商户平台配置(二)Spring Boot项目搭建(三)配置文件

Python通过模块化开发优化代码的技巧分享

《Python通过模块化开发优化代码的技巧分享》模块化开发就是把代码拆成一个个“零件”,该封装封装,该拆分拆分,下面小编就来和大家简单聊聊python如何用模块化开发进行代码优化吧... 目录什么是模块化开发如何拆分代码改进版:拆分成模块让模块更强大:使用 __init__.py你一定会遇到的问题模www.

Spring Security基于数据库的ABAC属性权限模型实战开发教程

《SpringSecurity基于数据库的ABAC属性权限模型实战开发教程》:本文主要介绍SpringSecurity基于数据库的ABAC属性权限模型实战开发教程,本文给大家介绍的非常详细,对大... 目录1. 前言2. 权限决策依据RBACABAC综合对比3. 数据库表结构说明4. 实战开始5. MyBA

使用Python开发一个简单的本地图片服务器

《使用Python开发一个简单的本地图片服务器》本文介绍了如何结合wxPython构建的图形用户界面GUI和Python内建的Web服务器功能,在本地网络中搭建一个私人的,即开即用的网页相册,文中的示... 目录项目目标核心技术栈代码深度解析完整代码工作流程主要功能与优势潜在改进与思考运行结果总结你是否曾经

Spring Boot + MyBatis Plus 高效开发实战从入门到进阶优化(推荐)

《SpringBoot+MyBatisPlus高效开发实战从入门到进阶优化(推荐)》本文将详细介绍SpringBoot+MyBatisPlus的完整开发流程,并深入剖析分页查询、批量操作、动... 目录Spring Boot + MyBATis Plus 高效开发实战:从入门到进阶优化1. MyBatis