7
Fumiya Nozaki 2014/04/27,1 st ed. OpenFOAM v2.3.0 回転領域を含む計算 Keywords: OpenFOAM SRF MRF

OpenFOAM -回転領域を含む流体計算 (Rotating Geometry)-

Embed Size (px)

DESCRIPTION

This slide is describing how to set up the OpenFOAM simulations including rotating geometries. The SRF (Single Rotating Frame) is covered and MRF (Multiple Reference Frame).will be covered in it.

Citation preview

Page 1: OpenFOAM -回転領域を含む流体計算 (Rotating Geometry)-

Fumiya Nozaki

2014/04/27,1st ed.

OpenFOAM v2.3.0

回転領域を含む計算

Keywords: • OpenFOAM • SRF • MRF

Page 2: OpenFOAM -回転領域を含む流体計算 (Rotating Geometry)-

2

回転体周りの流れ場の計算|分類

計算領域全体が回転領域

計算領域に回転領域と静止領域の両方が存在

http://www.pumped101.com/pumpintro.pdf

例)インペラ単独の解析

例)インペラとボリュートとを併せた解析

インペラ(回転領域)

ボリュート(静止領域)

1

2

Page 3: OpenFOAM -回転領域を含む流体計算 (Rotating Geometry)-

3

計算領域全体が回転領域の計算

回転領域と一緒に回転する座標系で計算することにより,定常計算として取り扱うことが可能です.

Single rotating frame (SRF)

SRFSimpleFoam

Page 4: OpenFOAM -回転領域を含む流体計算 (Rotating Geometry)-

4

SRFSimpleFoam | 概要

SRFSimpleFoamの支配方程式 (定常,非圧縮)

𝒖𝑅 ∙ 𝛻 𝒖𝑅 + 2𝜴 × 𝒖𝑅 + 𝜴× 𝜴 × 𝒓 = −𝛻𝑝 + 𝛻 ∙ 𝜈𝑒𝑓𝑓 𝛻𝒖𝑅 + 𝛻𝒖𝑅

𝑇

𝛻 ∙ 𝒖𝑅 = 0

𝒖 = 𝒖𝑅 + 𝜴 × 𝒓

𝜴 :角速度

回転軸

𝒓

慣性座標系での流速

回転座標系での流速

コリオリ力 遠心力

Page 5: OpenFOAM -回転領域を含む流体計算 (Rotating Geometry)-

5

SRFSimpleFoam | 設定

constant ディレクトリの『SRFProperties』ファイルで回転速度に関する設定を行います.

/*--------------------------------*- C++ -*----------------------------------*¥ | ========= | | | ¥¥ / F ield | OpenFOAM: The Open Source CFD Toolbox | | ¥¥ / O peration | Version: 2.3.0 | | ¥¥ / A nd | Web: www.OpenFOAM.org | | ¥¥/ M anipulation | | ¥*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class dictionary; location "constant"; object SRFProperties; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // SRFModel rpm; axis ( 0 0 1 ); rpmCoeffs { rpm 5000; } // ************************************************************************* //

回転速度を,1分当たりの回転の回数 (RPM)で指定

回転軸ベクトル

5000 rpm ⇒ 5000 ∗ 2π 60 = 523.6 [rad/s]

Page 6: OpenFOAM -回転領域を含む流体計算 (Rotating Geometry)-

6

SRFSimpleFoam | 実装

𝒖𝑅 ∙ 𝛻 𝒖𝑅 + 2𝜴 × 𝒖𝑅 + 𝜴× 𝜴 × 𝒓 = −𝛻𝑝 + 𝛻 ∙ 𝜈𝑒𝑓𝑓 𝛻𝒖𝑅 + 𝛻𝒖𝑅

𝑇

𝛻 ∙ 𝒖𝑅 = 0

// Relative momentum predictor

tmp<fvVectorMatrix> UrelEqn (

fvm::div(phi, Urel)

+ turbulence->divDevReff(Urel)

+ SRF->Su() ==

fvOptions(Urel) );

UrelEqn.H

Foam::tmp<Foam::DimensionedField<Foam::vector, Foam::volMesh> >

Foam::SRF::SRFModel::Su() const {

return Fcoriolis() + Fcentrifugal(); }

SRFModel.H

2.0*omega_ ^ Urel_ omega_ ^ (omega_ ^ mesh_.C())

126行 147行

慣性座標系での流速 (Uabs) の計算

Urel + SRF->U()

SRFSimpleFoam.C

omega_ ^ (mesh_.C() - axis_*(axis_ & mesh_.C()))

Page 7: OpenFOAM -回転領域を含む流体計算 (Rotating Geometry)-

7

計算領域に回転領域と静止領域の両方が存在する計算

To be continued.