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. interFoam的曲率计算

interFoam的曲率计算

已定时 已固定 已锁定 已移动 OpenFOAM
2 帖子 2 发布者 2.1k 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
回复
  • 在新帖中回复
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • A 离线
    A 离线
    anubis
    写于 最后由 编辑
    #1
    void Foam::interfaceProperties::calculateK()
    {
        const fvMesh& mesh = alpha1_.mesh();
        const surfaceVectorField& Sf = mesh.Sf();
    
        // Cell gradient of alpha
        const volVectorField gradAlpha(fvc::grad(alpha1_, "nHat"));
    
        // Interpolated face-gradient of alpha
        surfaceVectorField gradAlphaf(fvc::interpolate(gradAlpha));
    
        // gradAlphaf -=
        //    (mesh.Sf()/mesh.magSf())
        //   *(fvc::snGrad(alpha1_) - (mesh.Sf() & gradAlphaf)/mesh.magSf());
    
        // Face unit interface normal
        surfaceVectorField nHatfv(gradAlphaf/(mag(gradAlphaf) + deltaN_));
        // surfaceVectorField nHatfv
        // (
        //     (gradAlphaf + deltaN_*vector(0, 0, 1)
        //    *sign(gradAlphaf.component(vector::Z)))/(mag(gradAlphaf) + deltaN_)
        // );
        correctContactAngle(nHatfv.boundaryFieldRef(), gradAlphaf.boundaryField());
    
        // Face unit interface normal flux
        nHatf_ = nHatfv & Sf;
    
        // Simple expression for curvature
        K_ = -fvc::div(nHatf_);
    
        // Complex expression for curvature.
        // Correction is formally zero but numerically non-zero.
        /*
        volVectorField nHat(gradAlpha/(mag(gradAlpha) + deltaN_));
        forAll(nHat.boundaryField(), patchi)
        {
            nHat.boundaryField()[patchi] = nHatfv.boundaryField()[patchi];
        }
    
        K_ = -fvc::div(nHatf_) + (nHat & fvc::grad(nHatfv) & nHat);
        */
    }
    

    interFoam在计算曲率的时候应该是调用了这个函数, 我想问一下这里被注释掉的这段complex expression什么时候可以用? 有没有原始文献可以参考。

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

    或许可以把方程写出来对比一下嘛?

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

    1 条回复 最后回复

  • 登录

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