Skip to content
  • 最新
  • 版块
  • 东岳流体
  • 随机看[请狂点我]
皮肤
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • 默认(不使用皮肤)
  • 不使用皮肤
折叠
CFD中文网

CFD中文网

  1. CFD中文网
  2. OpenFOAM
  3. 编译overWaveDyMFoam失败请求援助

编译overWaveDyMFoam失败请求援助

已定时 已固定 已锁定 已移动 OpenFOAM
26 帖子 7 发布者 13.4k 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
回复
  • 在新帖中回复
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • J 离线
    J 离线
    Joann
    写于 最后由 编辑
    #1

    大家好,因为看了这个大佬的帖子数值波浪水池构建工具waves2FOAM的安装与使用,帖子的后面提到了融合waves2Foam和有重叠网格功能的overInterFoam的overWaveDyMFoam。我想尝试编译overWaveDyMFoam,但是wmake后并没有出现.o文件,说明编译没有成功。在编译前我先在waves2Foam的bin终端source bashrc。然后到solvers1912/overWaveDyMFoam的终端wmake。
    编译时中间出现了一次error,但是编译没有停止,error如下图:
    4b47bfe0-af34-4da1-aca7-364899931923-image.png
    编译停止时如下图:
    d1efc3da-d920-4247-b698-6d7c8be648ac-image.png
    请问遇到当前这种情况,应该怎么做才能编译成功,对于报错的error没有头绪,求助指点。

    Hello, CFD. Hello, OpenFOAM.

    1 条回复 最后回复
  • J 离线
    J 离线
    Joann
    写于 最后由 编辑
    #2

    上面的问题是因为c文件里90行include的文件里已经有include某个文件了,92行又重新include了,我就把92行的注释掉了。又重新去bin进行了source后又wmake,虽然有了.o文件,但是出现了这样的can not find,不懂为什么
    0c6fab8c-11af-41ac-abbd-b9c4e71a8dfa-image.png

    Hello, CFD. Hello, OpenFOAM.

    1 条回复 最后回复
  • 李东岳李 在线
    李东岳李 在线
    李东岳 管理员
    写于 最后由 编辑
    #3

    如果库文件有了,编译求解器找不到,你看你求解器的Make/options里面,应该没指定库文件路径

    http://dyfluid.com/index.html
    需要帮助debug算例的看这个 https://cfd-china.com/topic/8018

    J 1 条回复 最后回复
  • J 离线
    J 离线
    Joann
    在 中回复了 李东岳 最后由 编辑
    #4

    @李东岳 我检查了options,在make/options里有 -lwaves2Foam 和 -lwaves2FoamSampling
    95a7d956-7ed8-4414-bdae-0d51feca50ee-image.png

    Hello, CFD. Hello, OpenFOAM.

    1 条回复 最后回复
  • J 离线
    J 离线
    Joann
    写于 最后由 编辑
    #5

    编译貌似成功了,问题解决了,我先在waves2Foam里Allwclean,然后再Allwmake,之前我只是在solvers1912/overWaveDyMFoam里进行wmake,因为一直没有编译成功我就试试在整个waves2Foam里编译,然后等了一会编译结束没有看到有异常。
    现在准备去设置一个小case测试一下overWaveDyMFoam,希望顺利。

    Hello, CFD. Hello, OpenFOAM.

    Z liujmL 2 条回复 最后回复
  • Z 离线
    Z 离线
    zwj
    在 中回复了 Joann 最后由 编辑
    #6

    @Joann 您好,我也在尝试结合 waves2foam 和 overinterdymfoam 。但是当我运行一个案例时,入口处 alpha.water 和U的边界条件需要设置为零梯度才能跑。跑算例的过程会出现计算发散,不知道是不是和inter Foam自带的波浪库冲突了。

    1 条回复 最后回复
  • liujmL 离线
    liujmL 离线
    liujm
    在 中回复了 Joann 最后由 liujm 编辑
    #7

    @Joann @zwj 各位好,请问问题解决了吗,我在编译的过程中也出现了这种问题,在编译的过程中,提示我找不到/usr/bin/ld中的-lwaves2foam,请问我需要先正常编译waves2foam,然后再编译成overwavedymfoam吗?

    1 条回复 最后回复
  • C 离线
    C 离线
    chenboyao
    写于 最后由 编辑
    #8

    @liujm 你对照当前的wave2foam中waveFoam求解器和interFoam求解器,然后你看看修改了哪儿,你就把修改的地方复制到overInterDyMFoam中,在把修改好的文件复制到wave2Foam存放求解器的地方,重新编译一下wave2foam就行

    liujmL 1 条回复 最后回复
  • C 离线
    C 离线
    chenboyao
    写于 最后由 编辑
    #9

    @liujm ,这个是我按照wave2Foam中的waveFoam求解重新编译的waveDymFoam,可以下载放到waveFoam求解器地址solver2206_PLUSE中,重新编译一下就行
    waveDyMFoam_2206.rar

    liujmL 1 条回复 最后回复
  • liujmL 离线
    liujmL 离线
    liujm
    在 中回复了 chenboyao 最后由 编辑
    #10

    @chenboyao 首先非常感谢你的分享!我就是按照您说的这些步骤逐个文件进行对照修改的,编译过程中提示error /usr/bin/ld找不到-lwavefoam这样的提示,后来还出现了.C文件中的红色error,我先参考这个文件学习一下,不懂的地方还望指点!:146:

    1 条回复 最后回复
  • liujmL 离线
    liujmL 离线
    liujm
    在 中回复了 chenboyao 最后由 编辑
    #11

    @chenboyao 在 编译overWaveDyMFoam失败请求援助 中说:

    @liujm 你对照当前的wave2foam中waveFoam求解器和interFoam求解器,然后你看看修改了哪儿,你就把修改的地方复制到overInterDyMFoam中,在把修改好的文件复制到wave2Foam存放求解器的地方,重新编译一下wave2foam就行

    @chenboyao

    Hello, 我说下我的编译方法,避免出错,您看看哪里有问题:

    • 把multiphase/interFoam/overInterDyMFoam文件夹复制到solvers1912_PLUS目录下(与原有waveFoam同级),并将overInterDyMFoam改名为overWaveDyMFoam。

    • 在overWaveDyMFoam.C的基础上对照waveFoam.C,填补缺少的代码。

    做到第二步时我有两点疑问:

    • 您提供的文件中没有完全将waveFoam.C中的代码补充到overWaveDyMFoam.C中,例如部分头文件以及如下等代码。请问略去的代码是不需要吗?
    #include "readDyMControls.H"
    phi = mesh.Sf() & Uf();
    MRF.update();
    
    • 两个文件夹中的部分同名文件也有较大区别,例如correctPhi.H等,这些该如何处理?对于waveFoam中有的文件,而overWaveDyMFoam没有的文件,是否应该复制到后者处?
    C P 3 条回复 最后回复
  • 李东岳李 在线
    李东岳李 在线
    李东岳 管理员
    写于 最后由 编辑
    #12

    找不到-lwavefoam这样的提示

    我插一句,你这个是lib库就没编译好,不是求解器的事情。是库就没有编译好。

    http://dyfluid.com/index.html
    需要帮助debug算例的看这个 https://cfd-china.com/topic/8018

    liujmL 1 条回复 最后回复
  • C 离线
    C 离线
    chenboyao
    在 中回复了 liujm 最后由 编辑
    #13

    @liujm 在 编译overWaveDyMFoam失败请求援助 中说:

    @chenboyao 在 编译overWaveDyMFoam失败请求援助 中说:

    @liujm 你对照当前的wave2foam中waveFoam求解器和interFoam求解器,然后你看看修改了哪儿,你就把修改的地方复制到overInterDyMFoam中,在把修改好的文件复制到wave2Foam存放求解器的地方,重新编译一下wave2foam就行

    @chenboyao

    Hello, 我说下我的编译方法,避免出错,您看看哪里有问题:

    • 把multiphase/interFoam/overInterDyMFoam文件夹复制到solvers1912_PLUS目录下(与原有waveFoam同级),并将overInterDyMFoam改名为overWaveDyMFoam。

    • 在overWaveDyMFoam.C的基础上对照waveFoam.C,填补缺少的代码。

    做到第二步时我有两点疑问:

    • 您提供的文件中没有完全将waveFoam.C中的代码补充到overWaveDyMFoam.C中,例如部分头文件以及如下等代码。请问略去的代码是不需要吗?
    #include "readDyMControls.H"
    phi = mesh.Sf() & Uf();
    MRF.update();
    
    • 两个文件夹中的部分同名文件也有较大区别,例如correctPhi.H等,这些该如何处理?对于waveFoam中有的文件,而overWaveDyMFoam没有的文件,是否应该复制到后者处?

    其实你应该拷贝我这个文件到solve2206_PLUS中后,你编译文件之前需要
    cd wave2foam/src/bin
    ./barsh

    然后进去到solvee2206_PLUS中我的这个文件,然后
    wmake
    就可以了

    1 条回复 最后回复
  • C 离线
    C 离线
    chenboyao
    在 中回复了 liujm 最后由 编辑
    #14

    @liujm 在 编译overWaveDyMFoam失败请求援助 中说:

    @chenboyao 在 编译overWaveDyMFoam失败请求援助 中说:

    @liujm 你对照当前的wave2foam中waveFoam求解器和interFoam求解器,然后你看看修改了哪儿,你就把修改的地方复制到overInterDyMFoam中,在把修改好的文件复制到wave2Foam存放求解器的地方,重新编译一下wave2foam就行

    @chenboyao

    Hello, 我说下我的编译方法,避免出错,您看看哪里有问题:

    • 把multiphase/interFoam/overInterDyMFoam文件夹复制到solvers1912_PLUS目录下(与原有waveFoam同级),并将overInterDyMFoam改名为overWaveDyMFoam。

    • 在overWaveDyMFoam.C的基础上对照waveFoam.C,填补缺少的代码。

    做到第二步时我有两点疑问:

    • 您提供的文件中没有完全将waveFoam.C中的代码补充到overWaveDyMFoam.C中,例如部分头文件以及如下等代码。请问略去的代码是不需要吗?
    #include "readDyMControls.H"
    phi = mesh.Sf() & Uf();
    MRF.update();
    
    • 两个文件夹中的部分同名文件也有较大区别,例如correctPhi.H等,这些该如何处理?对于waveFoam中有的文件,而overWaveDyMFoam没有的文件,是否应该复制到后者处?

    我这个代码对应的OpenFOAM版本是2206,不知道1912版本适不适配

    liujmL 1 条回复 最后回复
  • liujmL 离线
    liujmL 离线
    liujm
    在 中回复了 李东岳 最后由 编辑
    #15

    @李东岳 嗯嗯 现在不存在这个报错了

    1 条回复 最后回复
  • liujmL 离线
    liujmL 离线
    liujm
    在 中回复了 chenboyao 最后由 编辑
    #16

    @chenboyao waveDyMFoam_2206.rar 这个好像不是waveDyMFoam的包。编译思路我大概理解了,请问可以添加联系方式吗?我也打算作风机方面的研究。liujm87@mail2.sysu.edu.cn

    liujmL 1 条回复 最后回复
  • liujmL 离线
    liujmL 离线
    liujm
    在 中回复了 liujm 最后由 liujm 编辑
    #17

    @liujm 在 编译overWaveDyMFoam失败请求援助 中说:

    @chenboyao 抱歉回错了 waveDyMFoam_2206.rar 这个好像不是overWaveDyMFoam的包。编译思路我大概理解了,请问可以添加联系方式吗?我也打算作风机方面的研究。liujm87@mail2.sysu.edu.cn

    C 1 条回复 最后回复
  • C 离线
    C 离线
    chenboyao
    在 中回复了 liujm 最后由 编辑
    #18

    @liujm 可以加个好友,莫得问题,你把你的QQ或者微信放到这上面,我看到会加你的,我经常过来看CFD中文网

    liujmL 1 条回复 最后回复
  • liujmL 离线
    liujmL 离线
    liujm
    在 中回复了 chenboyao 最后由 编辑
    #19

    @chenboyao 抱歉好久没有看回复,这是我的微信号JiamingLiu1997

    1 条回复 最后回复
  • P 离线
    P 离线
    pb
    在 中回复了 liujm 最后由 编辑
    #20

    @liujm 在 编译overWaveDyMFoam失败请求援助 中说:

    @chenboyao 在 编译overWaveDyMFoam失败请求援助 中说:

    @liujm 你对照当前的wave2foam中waveFoam求解器和interFoam求解器,然后你看看修改了哪儿,你就把修改的地方复制到overInterDyMFoam中,在把修改好的文件复制到wave2Foam存放求解器的地方,重新编译一下wave2foam就行

    @chenboyao

    Hello, 我说下我的编译方法,避免出错,您看看哪里有问题:

    • 把multiphase/interFoam/overInterDyMFoam文件夹复制到solvers1912_PLUS目录下(与原有waveFoam同级),并将overInterDyMFoam改名为overWaveDyMFoam。

    • 在overWaveDyMFoam.C的基础上对照waveFoam.C,填补缺少的代码。

    做到第二步时我有两点疑问:

    • 您提供的文件中没有完全将waveFoam.C中的代码补充到overWaveDyMFoam.C中,例如部分头文件以及如下等代码。请问略去的代码是不需要吗?
    #include "readDyMControls.H"
    phi = mesh.Sf() & Uf();
    MRF.update();
    
    • 两个文件夹中的部分同名文件也有较大区别,例如correctPhi.H等,这些该如何处理?对于waveFoam中有的文件,而overWaveDyMFoam没有的文件,是否应该复制到后者处?

    hello, 我下载了@chenboyao在本网站提供的rar包,也发现他在waveDyMFoam。C文件中缺少了这几行代码,以及externalWave->step();
    请问是这几行代码不需要吗?

    liujmL 1 条回复 最后回复

  • 登录

  • 登录或注册以进行搜索。
  • 第一个帖子
    最后一个帖子
0
  • 最新
  • 版块
  • 东岳流体
  • 随机看[请狂点我]