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. OpenFOAM中的binaryblock如何读取?

OpenFOAM中的binaryblock如何读取?

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

    各位大哥,我下载网上的tutorial到自己电脑上运行的时候,会出现下面的错误:

    --> FOAM FATAL IO ERROR: 
    Expected a ')' while reading binaryBlock, found on line 20 the word '�R'
    file: /home/Desktop/libAcoustics/Tutorials-4.1/monopole3D/constant/polyMesh/faces at line 20.
        From function Foam::Istream& Foam::Istream::readEnd(const char*)
        in file db/IOstreams/IOstreams/Istream.C at line 109.
    FOAM exiting
    

    错误出现在读取网格的时候,具体的网格形式是如下的.gz格式,我有用gzip -d *.gz把它们都解压,然后将controlDict中的writeformat改为了binary,但是结果还是出现上面的问题。:zoule: :zoule:
    d6a6ea60-b4b7-4358-b71d-af8f25f1e3f8-image.png

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

    我用notepad打开解压后的faces,发现就是从第20行的第一个“(”就开始报错了。
    92f40010-3acb-4e8e-b9c6-f23a1d86008f-image.png

    1 条回复 最后回复
  • F 离线
    F 离线
    Foamer24
    写于 最后由 编辑
    #3

    下面是我的controlDict文件,不知道读取网格的时候应该怎么设置读取binary格式?

    /*--------------------------------*- C++ -*----------------------------------*\
    | =========                 |                                                 |
    | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
    |  \\    /   O peration     | Version:  3.0.0                                 |
    |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
    |    \\/     M anipulation  |                                                 |
    \*---------------------------------------------------------------------------*/
    FoamFile
    {
        version     2.0;
        format      ascii;
        class       dictionary;
        location    "system";
        object      controlDict;
    }
    // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
    
    application     rhoPimpleFoam;
    
    startFrom       startTime; //latestTime;
    
    startTime       0;
    
    stopAt          endTime;
    
    endTime         0.1;
    
    deltaT          2.5e-6;
    
    writeControl    adjustableRunTime;
    
    writeInterval   5e-3;
    
    purgeWrite      200;
    
    writeFormat     binary; // ascii;
    
    writePrecision  9;
    
    writeCompression compressed;
    
    timeFormat      general;
    
    timePrecision   6;
    
    runTimeModifiable true;
    
    adjustTimeStep  false;
    
    maxCo           0.5;
    
    maxDeltaT       1e-5;
    
    functions
    {
           #include "probeControl"
           #include "fwhControl"
           #include "sphereAverage"
           #include "soundPressureSampling"
    }
    
    // ************************************************************************* //
    
    1 条回复 最后回复
  • 李东岳李 离线
    李东岳李 离线
    李东岳 管理员
    写于 最后由 编辑
    #4
    --> FOAM FATAL IO ERROR: 
    Expected a ')' while reading binaryBlock, found on line 20 the word '�R'
    file: /home/Desktop/libAcoustics/Tutorials-4.1/monopole3D/constant/polyMesh/faces at line 20.
        From function Foam::Istream& Foam::Istream::readEnd(const char*)
        in file db/IOstreams/IOstreams/Istream.C at line 109.
    FOAM exiting
    

    做什么出现的这种错误?

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

    F 1 条回复 最后回复
  • F 离线
    F 离线
    Foamer24
    在 中回复了 李东岳 最后由 编辑
    #5

    @东岳 您好!我从网上下载了一个俄罗斯人的例子,他们用的网格是二进制格式,我在读取网格的时候就出现了这个错误。不知道是不是我的centos7系统缺少某些打开binary的库,还是openfoam里面需要进行格式转换,或者是设置读取格式。:mianmo:

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

    可能你的操作系统位数和别人不一样。
    试下装一个和你目前系统位数不一样的虚拟机(或者用超算、别人的电脑)
    然后把case搬到这台机器上,在controlDict 里面writeFormat 改成 ascii,终端键入foamFormatConvert看看能不能转换

    F 1 条回复 最后回复
  • F 离线
    F 离线
    Foamer24
    在 中回复了 Jacobian 最后由 编辑
    #7

    @Jacobian 换了操作系统貌似可以啦

    1 条回复 最后回复

  • 登录

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