用于执行与网格收敛性研究相关的计算的python程序

convergence的Python项目详细描述


用于执行与网格关联的计算的python程序 收敛性研究。

简介

这是verify.f90的一个端口,是nasa提供的一个程序 检查空间(网格)收敛教程。

http://www.grc.nasa.gov/WWW/wind/valid/tutorial/spatconv.html

已做了其他更改以反映中的建议:

Celik,I.B.,Ghia,U.,&Roache,P.J.(2008年)。估算程序 以及CFD应用中由于离散化而产生的不确定性报告。 美国机械工程师协会流体工程学报,130(7)。

此代码由Mathew Topper在2009年至2011年间编写,作为 Supergen海洋研究联合会项目。那时我还年轻 会做很多不同的事情。我正在更新这个代码 使主类和函数更易于使用和集成 其他项目。注意这个地方。

安装

该包不需要依赖项,但当前仅可用 对于Python2.7。

可以通过下载源代码并使用 终端或命令提示如下:

cd /path/to/convergence
python setup.py install

也可以从pypi下载包,同样使用终端或 命令提示:

pip install convergence

基本用法

该包提供了一个命令行接口,它是 目前唯一合理的)使用包的方法。输入数据必须是 以空格分隔的文本文件,第一列为网格间距 第二列是感兴趣的指标。一个例子可以是 在源代码的data文件夹中找到。

然后可以按如下方式执行程序:

grid-convergence /path/to/data/file

默认情况下,程序的结果会写入名为 verify_report.txt在调用目录中。文件名可以是 使用-o-out命令行选项更改。格式 文件如下:

--- VERIFY: Performs verification calculations ---

Number of grids to be examined = 3

     Grid Size     Quantity

     1.000000      0.970500
     2.000000      0.968540
     4.000000      0.961780


Discretisation errors for fine grids:

       Grids |     e_approx |     e_extrap |      f_exact |   gci_coarse |
 =========================================================================
       1 2 3 |     0.002020 |     0.000824 |     0.971300 |     0.003555 |
 -------------------------------------------------------------------------

       Grids |     gci_fine |            p |          r21 |          r32 |
 =========================================================================
       1 2 3 |     0.001031 |     1.786170 |     2.000000 |     2.000000 |
 -------------------------------------------------------------------------


Discretisation errors for coarse grids:

       Grids |     e_approx |     e_extrap |      f_exact |   gci_coarse |
 =========================================================================
       1 2 3 |     0.006980 |     0.002842 |     0.971300 |     0.012287 |
 -------------------------------------------------------------------------

       Grids |     gci_fine |            p |          r21 |          r32 |
 =========================================================================
       1 2 3 |     0.003562 |     1.786170 |     2.000000 |     2.000000 |
 -------------------------------------------------------------------------


Asympototic ratio test:

           Grids | Asymptotic ratio |
 ====================================
           1 2 3 |         0.997980 |
 ------------------------------------


--- End of VERIFY ---

在第一个表中显示输入数据。第二张表显示 每三个网格和第二个表的精细分析结果 显示了每三个项目的粗略分析结果。最后一张表显示 渐近比率。

表格的标题具有以下含义:

  • 网格:正在分析的三个网格
  • {STR 1 } EyAdxx:近似相对误差
  • e_extrap:外推相对误差
  • f精确:估计的零网格间距值
  • gci_粗略:粗略网格收敛指数
  • gci_精细精细网格收敛索引
  • p:收敛顺序
  • r21:中细网格间距的比率
  • r32:粗网格与中网格间距的比率

已知分析结果

如果收敛性研究中存在已知的零间距值,则 可以使用-a-analytic将值添加到分析中。 命令行选项。为了说明这一点,基本示例现在变成:

grid-convergence /path/to/data/file -a 0.12345

其他标题现在出现在精细和粗略分析表中 具有以下含义:

  • e_分析:分析相对误差
  • f_analytic:分析零网格间距值
  • f_delta:分析值和估计值之间的差异 网格间距值

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
Java中ArrayList的超简单问题   Java 8在一段时间后过期   java如何创建具有用户定义维度的矩阵,并使用从上到下、从左到右的递增值填充它?   java从JDBC重启mysql   带有sqlite的java LiveData未更新UI   带有JDialog的java小程序在Mac OSX中未正确隐藏   java ActionListener无法从公共类引用数组?   java Apache Digester:NoSuchMethodException:没有这样的可访问方法   安卓中数据库中的java数据没有以正确的格式检索   java快速排序实现:使用random pivot时几乎排序   安卓 Java:高效的ArrayList过滤?   java如何在单独的文件中制作GUI程序   jasper报告如何从JSP或Java代码在JasperReport中传递参数值?