找回密码
 注册
楼主: lixl-imech

[新闻动态] 发布OpenCFD-SC 二维源代码 (更新:Mach 6 钝锥的完整算例及详细说明)

  [复制链接]
发表于 2013-1-19 18:25:53 | 显示全部楼层

佩服

李老师奉献精神着实令人钦佩,有大师风范。今后会向李老师多多请教。
发表于 2013-3-10 22:26:12 | 显示全部楼层
下载看一下,楼主辛苦了!
发表于 2013-3-26 22:22:31 | 显示全部楼层
支持
发表于 2013-3-29 09:30:15 | 显示全部楼层
谢谢李老师
发表于 2013-4-18 09:19:55 | 显示全部楼层
这真的要赞一下
发表于 2013-4-18 09:27:53 | 显示全部楼层
ding
 楼主| 发表于 2013-6-9 08:55:34 | 显示全部楼层
原帖由 dushuxiaogongzi 于 2013-6-1 22:28 发表
李老师好:
我键入make后,显示mpif90 -fast   -c opencfd2d.f90
                                 f951:错误:无法识别的命令行选项“-fast”
                    make:  ***[opencfd2d.o]错误  1
我用的Lin ...


有些编译器不支持 -fast 选项。 可改为 -O2 或 -O3 编译选项。

评分

1

查看全部评分

发表于 2013-8-16 09:11:00 | 显示全部楼层
原帖由 ch06 于 2011-3-19 22:12 发表
在window xp下有编译成功的吗?执行build时,一下493个错误
都是类似这样的错误
error LNK2001: unresolved external symbol _MPI_BCAST@24
是mpi的库没找着吗?
我看external dependencies里有mpif.h,而且我将 ...


今天试着在win7下编译成功了。
发表于 2013-8-16 10:46:37 | 显示全部楼层
  1. # npx0 npy0    LAP      
  2.   2     2      4  
复制代码


好像只能4核,9核,16核这样算。

8核的cpu,如果设定为2  4   8,好像不让算。
发表于 2013-8-16 15:16:28 | 显示全部楼层
非常感谢李老师这样的奉献精神。
发表于 2013-8-21 07:05:10 | 显示全部楼层
原帖由 莫口 于 2010-11-3 20:34 发表
不过DNS,没有机器啊……
自己的电脑也用不了……


4核的机器可以跑。
发表于 2013-8-22 10:12:06 | 显示全部楼层
原帖由 shirazbj 于 2013-8-16 10:46 发表
# npx0 npy0    LAP      
  2     2      4  

好像只能4核,9核,16核这样算。

8核的cpu,如果设定为2  4   8,好像不让算。


原来lap最大是5. 还以为是2*4呢,呵呵。
发表于 2013-8-23 07:37:34 | 显示全部楼层
原帖由 shirazbj 于 2013-8-22 10:12 发表


原来lap最大是5. 还以为是2*4呢,呵呵。


没事写了个求lap最大值的代码,可以把lap设成找到的最大值maxLAP。

首先在opencfd2d.f90的subroutine read_parameter里声明新变量:


  1. !------------------------------------
  2. ! bjStart
  3. !------------------------------------          
  4.           integer nLAP,aLAP(100),maxLAP
  5. !------------------------------------
  6. ! bjEnd
  7. !------------------------------------          
复制代码


然后在读完opencfd2d.in后,找最大值:


  1. !------------------------------------
  2. ! bjStart
  3. !------------------------------------          
  4. !------------------------------------
  5. ! Hoam-OpenCFD V1.7.2 使用手册
  6. ! 表4 差分方法描述符
  7. !------------------------------------          
  8.           nLAP=13
  9.           
  10.           aLAP(1)=3
  11.           aLAP(2)=3
  12.           aLAP(3)=3
  13.           aLAP(4)=4
  14.           aLAP(5)=4
  15.           aLAP(6)=4
  16.           aLAP(7)=4
  17.           aLAP(8)=4
  18.           aLAP(9)=3
  19.           aLAP(10)=3
  20.           aLAP(11)=3
  21.           aLAP(12)=3
  22.           aLAP(13)=3
  23.           
  24.           maxLAP=0
  25.           do j=1,3
  26.              do i=1,3
  27.                if aLAP(NUM_Methodx(i,j))>maxLAP then
  28.                       maxLAP=aLAP(NUM_Methodx(i,j))
  29.                    endif
  30.                  enddo  
  31.           enddo
  32.           
  33.           do j=1,3
  34.              do i=1,3
  35.                if aLAP(NUM_Methody(i,j))>maxLAP then
  36.                       maxLAP=aLAP(NUM_Methody(i,j))
  37.                    endif
  38.                  enddo  
  39.           enddo
  40. !------------------------------------
  41. ! bjEnd
  42. !------------------------------------          
复制代码


最后把原来的 nparameter(7)=LAP语句,替换为:

  1. !------------------------------------
  2. ! bjStart
  3. !------------------------------------          
  4.           nparameter(7)=maxLAP         
  5. !------------------------------------
  6. ! bjEnd
  7. !------------------------------------          
复制代码

[ 本帖最后由 shirazbj 于 2013-8-23 07:42 编辑 ]
发表于 2013-8-24 20:18:37 | 显示全部楼层
原帖由 lixl-imech 于 2011-4-12 16:12 发表
压缩文档中是Mach 6 钝锥绕流问题的完整算例及详细的步骤说明,供学习OpenCFD使用。 该算例使用Hoam-Opencfd2d 1.5.2 计算,该软件的源代码在本贴的主贴中下载。
   下图为计算得到的压力分布图。


opencfd2d.in里Num_Method_x有0,20,21,但1.7.2使用手册里没介绍。不知道是什么?
发表于 2013-8-26 08:33:22 | 显示全部楼层
  1.         if(T(i,j) .lt. 0) then
  2.             print*, " T < 0 !!! Computation Stop ! "
  3.             print*, i_offset(npx)+i-1, j_offset(npy)+j-1 , T(i,j)
复制代码


出现(T(i,j)<0,怎么调呀?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表