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
4 帖子 2 发布者 4.5k 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
回复
  • 在新帖中回复
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • Y 离线
    Y 离线
    yang山青
    写于2018年1月19日 07:57 最后由 李东岳 编辑 2018年1月20日 09:41
    #1

    我想将我的边界根据边界条件的不同类型划分为不同的类型场,以便以后调用,但是现在的代码报错

        const GeometricField<vector, fvPatchField, volMesh>::Boundary& 
            uBCs = U.boundaryField();
    
        forAll(uBCs, patchi)
        {
            if (uBCs[patchi].type() == "farField") //inlet
            {
                gSurf_.boundaryField().set
                (
                    patchi, 
                    fvsPatchField<scalar>::New
                    (
                        "farField", mesh.boundary()[patchi], gSurf_
                    )
                );
            }
            else if (uBCs[patchi].type() == "bounceBack") //maxwellWall
            {
                gSurf_.boundaryField().set
                (
                    patchi, 
                    fvsPatchField<scalar>::New
                    (
                        "bounceBack", mesh.boundary()[patchi], gSurf_
                    )
                );
            }
        }
    

    错误原因是

    createFields.H: In function ‘int main(int, char**)’:
    createFields.H:160:13: error: passing ‘const Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh>::Boundary’ as ‘this’ argument discards qualifiers [-fpermissive]
                 );
    

    求解我这问题在哪啊

    1 条回复 最后回复
  • 李 在线
    李 在线
    李东岳 管理员
    写于2018年1月20日 01:42 最后由 编辑
    #2

    你第一段代码用在哪里了?

    把你createFields.H贴一下?

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

    Y 1 条回复 最后回复 2018年1月21日 06:39
  • Y 离线
    Y 离线
    yang山青
    在 2018年1月21日 06:39 中回复了 李东岳 最后由 编辑
    #3

    @李东岳 相关的createField.H

        volVectorField U
        (
            IOobject
            (
                "U",
                runTime.timeName(),
                mesh,
                IOobject::MUST_READ,
                IOobject::AUTO_WRITE
            ),
            mesh
        );
    
        surfaceScalarField gSurf_
        (
            IOobject
            (
                "gSurf",
                mesh.time().timeName(),
                mesh,
                IOobject::NO_READ,
                IOobject::NO_WRITE
            ),
            mesh,
            dimensionedScalar
            (
                "0", dimMass/pow3(dimLength), 0.0
            )
        );
    

    应该就这些了吧

    1 条回复 最后回复
  • 李 在线
    李 在线
    李东岳 管理员
    写于2018年1月25日 13:43 最后由 编辑
    #4

    你用的什么版本,试试把U.boundaryField()改为U.boundaryFieldRef()

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

    1 条回复 最后回复
2018年1月19日 07:57

4/4

2018年1月25日 13:43

2018年1月25日 13:43
  • 登录

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