周期対称形状の流れ解析について

1,061 views
Skip to first unread message

Sakuma

unread,
Dec 12, 2010, 8:27:56 AM12/12/10
to OpenFOAM
OpenFOAM初心者のsakumaです。

MRFSimpleFoamを利用してファンの計算をしていますが,今の計算ではファン全体を
モデル化して計算しています。ファンの形状は周期対称の形状であるため,羽1枚分を
取り出して計算するような方法は,OpenFOAMにあるのでしょうか。

もしこのような計算方法があるようでしたら,どのように設定していくのか教えて頂きたく
思います。よろしくお願いいたします。

ohbuchi

unread,
Dec 14, 2010, 5:19:52 AM12/14/10
to OpenFOAM
こんばんは。
ターボポンプの解析を行っているものです。
メッシャに何を使うかや、周囲の形状がどうかに依存して
設定手順が異なりますが、基本的に可能です。
基本的には周期境界にcyclicを使うことになると思います。
メッシュをblockMeshで作る場合なら、cyclicで境界を定義
しておけば良いのですが、他のメッシャから変換して使う
場合には、createPatchユーティリティを使ってcyclicパッチ
をマージしなければなりません。

私の場合は、コミュニティ版を使っていますので、cyclicGgi
で定義しています。こちらの方が簡単に周期境界を定義
できます。

以上、ご参考まで。

Sakuma

unread,
Dec 14, 2010, 9:08:49 AM12/14/10
to OpenFOAM
ohbuchiさん ありがとうございます。sakumaです。

cyclicGgiをグーグルで引くと,CFD Onlineに色々と書かれていますが,
コミュニティ版のcyclicGgiはどの辺りを見ればよろしいでしょうか。
コミュニティ版とは,dev版を意味するのでしょうか。

モデル作成ですが,小生は通常snappyHexMeshを利用してメッシュを作
成しております。出来れば,snappyHexMeshを利用して周期対称のモデ
ルを作成したいと考えております。

よろしくご教授をお願いいたします。

ohbuchi

unread,
Dec 15, 2010, 5:43:42 AM12/15/10
to OpenFOAM
コニュニティ版は、いわゆるdev版のことです。最近1.6-extがでたので
dev版と呼ぶのはやめました。
下記のサイトからGit経由でダウンロードできます。

http://sourceforge.net/projects/openfoam-extend/

gitコマンドは下記の通りです。
git clone git://openfoam-extend.git.sourceforge.net/gitroot/openfoam-extend/OpenFOAM-1.6-ext

尚、最近リリースされた1.6-ext版にはcyclicGgiを使うチュートリアルも
含まれています。

以上、ご参考まで。

Sakuma

unread,
Dec 17, 2010, 9:26:03 AM12/17/10
to OpenFOAM
ohbuchiさん OpenFOAM初心者のsakumaです。

1.6-ext版はcyclicGgiが使えると言うことですので,まずはこの
バージョンをインストールしてみる事から始めたいと思います。

有益な情報を頂きありがとうごさいました。

Sakuma

unread,
Dec 25, 2010, 9:24:16 AM12/25/10
to OpenFOAM
ohbuchiさん OpenFOAM初学者のsakumaです。

やっと1.6-ext版を何とかインストールしました。ただ,paraViewはOpenFOAM 1.7.1についている
paraView381をsudo apt-get install paraviewopenfoam381で入れました。ありがとうございまし
た。

 1.6-ext版にはcyclicGgiを使うチュートリアがあるという事ですが,どのチュートリアルがそれに当たる
のでしょうか。findで探しても上手く見つけられませんでした。よろしくお願いします。



ohbuchi

unread,
Dec 25, 2010, 6:03:39 PM12/25/10
to OpenFOAM
incompressible/icoDyMFoam/turboPassageRotatingのことを言っていたのですが
overlapGgiの間違いでした。失礼しました。
cyclicGgiの使い方は、以下の通りです。

1 周期境界パッチ(PER1,PER2)をfaceZoneに登録する。
パッチをfaceSetに登録
>setSet -batch setBatch

<setBatchファイル>
  faceSet PER1_ZONE new patchToFace PER1
  faceSet PER2_ZONE new patchToFace PER2

 faceSetの内容をfaceZoneに登録
>setsToZones -noFlipMap

2 boundaryファイルに下記の様に記述
PER1
{
type cyclicGgi;
nFaces 396;
startFace 321780;
shadowPatch PER2;
zone   PER1_ZONE;
bridgeOverlap false;
rotationAxis (0 0 1);
rotationAngle 72;
separationOffset (0 0 0);
}
PER2
{
type cyclicGgi;
nFaces 396;
startFace 322176;
shadowPatch PER1;
zone PER2_ZONE;
bridgeOverlap false;
rotationAxis (0 0 1);
rotationAngle -72;
separationOffset (0 0 0);
}

nFace,startFaceはメッシュに応じて変わります。
rotationAxis,rotationAngleは周期角度に応じて設定してください。

0/p,U,k,epsilonなどもtype cyclicGgiで指定します。

以上、ご参考まで。

Sakuma

unread,
Dec 29, 2010, 10:24:56 AM12/29/10
to OpenFOAM
いつもありがとうごさいます。OpenFOAM初学者のsakumaです。

incompressible/icoDyMFoam/turboPassageRotatingを動かしてみました。
チュートリアルのAllrunでは,1CPUでの計算設定になっていましたので,4CPU
の並列計算にしようとAllrunを少し下記のように変更しました。
decomposeParDictはsimpleFoam/motorBikeからコピーして修正しています。

#!/bin/sh
# Source tutorial run functions
. $WM_PROJECT_DIR/bin/tools/RunFunctions

application="icoDyMFoam"

runApplication blockMesh
cp constant/polyMesh/boundary.org constant/polyMesh/boundary
runApplication regionCellSets
runApplication setsToZones -noFlipMap

$runApplication decomposePar

mpirun -np 4 icoDyMFoam -parallel > log.icoDyMFoam

$runApplication reconstructPar
rm -r processor0
rm -r processor1
rm -r processor2
rm -r processor3

#runApplication $application

これでAllrunを実施すると,icoDyMFoamに入ると次のエラーが出て,計算が止まります。

mpirun noticed that process rank 3 with PID 4196 on node SAKURA-MARU
exited on signal 11 (Segmentation fault).

icoDyMFoamは並列計算が出来ないのでしょうか?また,何かの設定が抜けているのでしょうか。

また,1CPUで計算が終わった結果をparaViewde見ますと, rAUという変数が表示できるようになっていますが,
これは何を意味するのでしょうか。

よろしくお願いいたします。


ohbuchi

unread,
Jan 3, 2011, 11:58:31 PM1/3/11
to OpenFOAM
こんにちは。

> #!/bin/sh
> # Source tutorial run functions
> . $WM_PROJECT_DIR/bin/tools/RunFunctions
>
> application="icoDyMFoam"
>
> runApplication blockMesh
> cp constant/polyMesh/boundary.org constant/polyMesh/boundary
> runApplication regionCellSets
> runApplication setsToZones -noFlipMap
>
> $runApplication decomposePar

ここで$は必要なのでしょうか?

> mpirun -np 4 icoDyMFoam -parallel > log.icoDyMFoam
>
> $runApplication reconstructPar

ここも$は不要ではないでしょうか?

> rm -r processor0
> rm -r processor1
> rm -r processor2
> rm -r processor3
>
> #runApplication $application
>
> これでAllrunを実施すると,icoDyMFoamに入ると次のエラーが出て,計算が止まります。
>
> mpirun noticed that process rank 3 with PID 4196 on node SAKURA-MARU
> exited on signal 11 (Segmentation fault).

rm processor0...3をコメントアウトして再度実行し、pcorssor0..3ディレクトリがちゃんと
生成されているか確かめてみてください。
並列計算の前段階ができていないために、ソルバでエラーを出力しているのではないか
と思います。

また、Allrunの前に、コマンドを一つ一つ手入力して動作を確かめることをお勧めします。

Sakuma

unread,
Jan 4, 2011, 7:55:48 AM1/4/11
to OpenFOAM
sakumaでございます。アドバイスをありがとうございます。

$の件ですが,端末でコマンドを打つ場合に$を付けてコマンドを実施すると,
端末にエコーバックがあり,エラー等がある場合にチェックをしています。
ご指摘を頂きましたように無くても問題なく動きます。

コマンドを1つずつ実施してみました。
$runApplication blockMesh
cp constant/polyMesh/boundary.org constant/polyMesh/boundary
$runApplication regionCellSets
$runApplication setsToZones -noFlipMap
$runApplication decomposePar

processor0,1,2,3と4並列計算のためのホルダまでは作成できました。

mpirun -np 4 icoDyMFoam -parallelのコマンドを実施すると,mpirunのエラーが出ます。
/
*---------------------------------------------------------------------------
*\
| =========
| |
| \\ / F ield | OpenFOAM Extend Project: Open source
CFD |
| \\ / O peration | Version: 1.6-
ext |
| \\ / A nd | Web: www.extend-project.de
|
| \\/ M anipulation
| |
\*---------------------------------------------------------------------------
*/
Build : 1.6-ext-f3a01becc315
Exec : icoDyMFoam -parallel
Date : Jan 04 2011
Time : 21:14:12
Host : SAKURA-MARU
PID : 27092
Case : /home/sakuramaru/Desktop/icoDyMFoam/test1
nProcs : 4
Slaves :
3
(
SAKURA-MARU.27093
SAKURA-MARU.27094
SAKURA-MARU.27095
)
Pstream initialized with:
floatTransfer : 0
nProcsSimpleSum : 0
commsType : blocking
SigFpe : Enabling floating point exception trapping (FOAM_SIGFPE).
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* * * //
Create time
Create dynamic mesh for time = 0
Selecting dynamicFvMesh turboFvMesh
void turboFvMesh::addZonesAndModifiers() : Zones and modifiers already
present. Skipping.
Turbomachine Mixer mesh:
origin: (0 0 0)
axis : (0 0 1)
Reading transportProperties
Reading field p
--------------------------------------------------------------------------
mpirun noticed that process rank 0 with PID 27092 on node SAKURA-MARU
exited on signal 11 (Segmentation fault).
--------------------------------------------------------------------------

このため,pitzDailyのrasモデルのチュートリアルで同じように並列計算をしてみましたが,問題なく計算できました。
$runApplication blockMesh
$runApplication decomposePar > log.decomposePar
mpirun -np 4 simpleFoam -parallel > log.simpleFoam
$runApplication reconstructPar > log.reconstructPar
rm -r processor0
rm -r processor1
rm -r processor2
rm -r processor3

どの辺りがおかしいのでしょうか?


ohbuchi

unread,
Jan 4, 2011, 3:02:38 PM1/4/11
to OpenFOAM
おはようございます。
ggiをお使いの様でしたが、ggiパッチはグローバルに持たせる必要があります。
decomposeParDictに下記の様に指定してください。

globalFaceZones ( ggiパッチのZone名をスペース区切りで並べる );

以上、ご参考まで。

Sakuma

unread,
Jan 7, 2011, 7:15:49 AM1/7/11
to OpenFOAM
色々とアドバイスを頂きありがとうございます。
OpenFOAM初心者のsakumaです。

OpenFOAM 1.6-extのtutorialにあるincompressible/icoDyMFoam/mixerGgiに
お教え頂きました方法を適用しました。これは上手く出来ました。

しかし,incompressible/icoDyMFoam/turboPassageRotatingに適用すると並列
計算が始まると直ぐに止まります。

①blockMesh
②regionCellSets
③setSet -batch setBatch
④setsToZones -noFlipMap
⑤decomposePar
overlapGgiのzoneをglobalFaceZonesとして設定
globalFaceZones
(
interface1_ZONE
interface2_ZONE
);

⑥mpirun -np 4 icoDyMFoam -parallel

Build : 1.6-ext-f3a01becc315
Exec : icoDyMFoam -parallel
Date : Jan 07 2011
Time : 20:41:35
Host : SAKURA-MARU
PID : 10899
Case : /home/sakuramaru/Desktop/icoDyMFoam/turboPassageRotating_1
nProcs : 4
Slaves :
3
(
SAKURA-MARU.10900
SAKURA-MARU.10901
SAKURA-MARU.10902
)
Pstream initialized with:
floatTransfer : 0
nProcsSimpleSum : 0
commsType : blocking
SigFpe : Enabling floating point exception trapping (FOAM_SIGFPE).
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* * * //
Create time
Create dynamic mesh for time = 0
Selecting dynamicFvMesh turboFvMesh
void turboFvMesh::addZonesAndModifiers() : Zones and modifiers already
present. Skipping.
Turbomachine Mixer mesh:
origin: (0 0 0)
axis : (0 0 1)
Reading transportProperties
Reading field p
ここで止まります。

次のようなエラーが出ます。
mpirun noticed that process rank 3 with PID 9867 on node SAKURA-MARU
exited on signal 11 (Segmentation fault).

mixerGgiのboundaryをチェックするとwall,empty以外はggiしかなく,ggiに設定されているzoneを
decomposeParDictの中に
globalFaceZonesで設定しています。

これに対してturboPassageRotatingのboundaryでは,patch,wall以外にcyclic,overlapGgiがあ
り,overlapGgiについてzoneの
設定をdecomposeParDictの中にglobalFaceZonesで設定しています。

また,mixerGgiとturboPassageRotatingのdynamicMeshDictを見ると,

mixerGgiでは        dynamicFvMesh mixerGgiFvMesh
turboPassageRotatingでは  dynamicFvMesh turboFvMesh
になっています。これも何か関係するのでしょうか。

どの辺りを修正すれば良いのでしょうか。よろしくお願いいたします。


ohbuchi

unread,
Jan 7, 2011, 4:56:14 PM1/7/11
to OpenFOAM
おはようございます。
確認しました。
OpenFOAM-1.6-extのGitリポジトリを調べたところ、12月2日付けでturboFvMeshがパラレル計算に
対応した様です。11月末の初期リリース版では非対応だった様です。
これに伴いturboPassageRotatingチュートリアルの内容も修正されています。
主な変更点は、
 ・周期境界がcyclicからcyclicGgiに変更
 ・cyclicGgi,overlapGgiでZoneを指定
 ・setSet -batch setBatchでGgi用のfaceSet定義(faceToZones -noFlipMapでZoneに変
換)
 ・systemディレクトリにdecomposeParDict
decomposeParDictでは、overlapGgi,cyclicGgiの計4つのFaceZoneがglobal指定されています。

最新版へのアップデートは、OpenFOAM-1.6-extディレクトリ内で下記コマンドを実行後、コンパイル
し直してください。
>git pull

以上、ご参考まで。

ohbuchi

unread,
Jan 7, 2011, 7:56:23 PM1/7/11
to OpenFOAM
git pullしてもfeature/overlapGgiのファイルはダウンロードされませんでした。
どうやらmasterにマージされていない様です。summaryを見る限りマージされて
いる様に見えたのですが。。。
手動で変更されたファイル群(overlapGgi,MRF,turboFvMeshなど)をダウンロード
してコンパイルし、更新されたチュートリアルを動かしてみましたが、並列実行しようと
するとopenmpiがエラーを吐いて動作しませんでした。
turboFvMeshの並列実行は正式リリースまで待った方が良さそうです。

回転領域がひとつだけであればmixerGgiFvMeshで十分なので、そちらを使えばよい
と思います。定常計算ならMRFで良いですし。

以上、ご参考まで。

Sakuma

unread,
Jan 8, 2011, 3:13:55 AM1/8/11
to OpenFOAM

色々とアドバイスを頂きありがとうございます。OpenFOAM初心者のsakumaです。

ご紹介頂きましたOpenFOAM-1.6-extのGitリポジトリですが,何とかSOURCEFORGE.NET
たどり着き,順にたどって行きopenfoam-extend/OpenFOAM-1.6-ext] / tutorials /
incompressible / icoDyMFoam / turboPassageRotating / constant /
polyMesh /boundary.orgを見てみました。

お教え頂きましたturboPassageRotatingチュートリアルの内容修正ですが,cyclicがcyclicGgiになっていなく,今自分
の1.6.-extのチュートリアルにある内容と同じになっておりました。
1 /*--------------------------------*- C++ -
*----------------------------------*\
2 | =========
| |
3 | \\ / F ield | OpenFOAM Extend Project: Open
Source CFD |
4 | \\ / O peration | Version: 1.6-
ext |
5 | \\ / A nd | Web: www.extend-project.de
|
6 | \\/ M anipulation
| |
7
\*---------------------------------------------------------------------------
*/
8 FoamFile
9 {
10 version 2.0;
11 format ascii;
12 class polyBoundaryMesh;
13 location "constant/polyMesh";
14 object boundary;
15 }
16 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* * * * * * //
17
18 8
19 (
20 inlet
21 {
22 type patch;
23 nFaces 200;
24 startFace 28100;
25 }
26 outlet
27 {
28 type patch;
29 nFaces 200;
30 startFace 28300;
31 }
32 fixedWalls
33 {
34 type wall;
35 nFaces 1400;
36 startFace 28500;
37 }
38 movingwalls
39 {
40 type patch;
41 nFaces 1400;
42 startFace 29900;
43 }
44 rotor_cyclics
45 {
46 type cyclic;
47 nFaces 100;
48 startFace 31300;
49 featureCos 0.9;
50 }
51 stator_cyclics
52 {
53 type cyclic;
54 nFaces 100;
55 startFace 31400;
56 featureCos 0.9;
57 }
58 interface1
59 {
60 type overlapGgi;
61 nFaces 200;
62 startFace 31500;
63 rotationAxis (0 0 1);
64 nCopies 12;
65 shadowPatch interface2;
66 }
67 interface2
68 {
69 type overlapGgi;
70 nFaces 200;
71 startFace 31700;
72 rotationAxis (0 0 1);
73 nCopies 12;
74 shadowPatch interface1;
75 }
76 )
77
78 //
************************************************************************* //

これは書かれておられるように,masterにマージされていないためという事でしょうか。

また,turboPassageRotatingで①,②,③,④をした後に,
①blockMesh
②regionCellSets
③setSet -batch setBatch
④setsToZones -noFlipMap

checkMeshをすると,boundaryのzoneで定義した部分でエラーが出ます。

Checking topology...
Boundary definition OK.
***FaceZone interface1_ZONE is not correctly synchronised across
coupled boundaries. (coupled faces both present in set but with
opposite flipmap)
***FaceZone interface2_ZONE is not correctly synchronised across
coupled boundaries. (coupled faces both present in set but with
opposite flipmap)
Point usage OK.
Upper triangular ordering OK.
Face vertices OK.
*Number of regions: 2
The mesh has multiple regions which are not connected by any face.
<<Writing region information to "0/cellToRegion"

boundaryの設定で,zoneの部分はチュートリアルのファイルに付け加えています。
interface1
{
type overlapGgi;
nFaces 200;
startFace 31500;
rotationAxis (0 0 1);
nCopies 12;
shadowPatch interface2;
zone interface1_ZONE;
}
interface2
{
type overlapGgi;
nFaces 200;
startFace 31700;
rotationAxis (0 0 1);
nCopies 12;
shadowPatch interface1;
zone interface2_ZONE;
}

boundaryにzoneを設定していないチュートリアルそのままでは,次のようになってエラーが出ません。
Checking topology...
Boundary definition OK.
Point usage OK.
Upper triangular ordering OK.
Face vertices OK.
*Number of regions: 2
The mesh has multiple regions which are not connected by any face.
<<Writing region information to "0/cellToRegion"

この辺りも何かあるのかと思っていますが,良くわかりません。
色々と教えて頂きましてありがとうございました。


Sakuma

unread,
Jan 15, 2011, 4:24:45 AM1/15/11
to OpenFOAM
OpenFOAM初心者のsakumaです。

 turboFvMeshの並列処理版がアップされたようなので,OpenFOAM 1.6-extをgit-pullで
アップし(2011.1.13のもの),コンパイルをしました。そうしたらOpenFOAMがおかしくなって
動かなくなってしまい,仕方がないので再度
git clone git://openfoam-extend.git.sourceforge.net/gitroot/openfoam-extend/OpenFOAM-1.6-ext
で持ってきてコンパイルしましたが,foamInstallationTestをすると環境が構築できていませんと出ます。

Checking basic setup...
-------------------------------------------------------------------------------
FATAL ERROR: OpenFOAM environment not configured.
Please refer to the installation section of the README file:
<OpenFOAM installation dir>/OpenFOAM-1.6-ext/README
to source the OpenFOAM environment.

リンクが上手く出来ないようなエラーが出ていますが,対応方法が良くわかりません。
/usr/bin/ld: cannot find -lscotchDecomp
/usr/bin/ld: cannot find -ldecompositionMethods
/usr/bin/ld: cannot find -lmeshTools
/usr/bin/ld: cannot find -lfiniteVolume
/usr/bin/ld: cannot find -ldynamicMesh
/usr/bin/ld: cannot find -lbasicThermophysicalModels
/usr/bin/ld: cannot find -lincompressibleTurbulenceModel
/usr/bin/ld: cannot find -lincompressibleTransportModels
/usr/bin/ld: cannot find -lengine
/usr/bin/ld: cannot find -lbasicThermophysicalModels
/usr/bin/ld: cannot find -lsampling
/usr/bin/ld: cannot find -lincompressibleRASModels
/usr/bin/ld: cannot find -lincompressibleLESModels
などが出ます。

ext版はあまり安定性がないのでしょうか。



S.kita

unread,
Jan 15, 2011, 8:40:31 AM1/15/11
to OpenFOAM
S.kitaといいます。

私も先ほどから、ノートPCの方にgitで1.6-extをダウンロードしてコンパイルしていますが、
昨年12月の時は特に意識しないでコンパイルできたものが
できなくなっていたので、モジュールごとにコンパイルしようとすると
どうも環境変数が正しく設定されてないのかなと思い、1つ1つ
Make内のfileを見て、必要に応じて環境変数を設定したら
とりあえず、srcの方はコンパイルできて、今はapplicationsの方をコンパイル中です。

etc直下のsetting.sh(.csh) が正しく実行されていない可能性があるかもしれないので
調べてみるといいかもしれません。
(私の場合はWM_THIRD_PARTY_DIRも設定されていませんでした)

以上、ご参考までに。

On 1月15日, 午後6:24, Sakuma <sakura.maru...@gmail.com> wrote:
> OpenFOAM初心者のsakumaです。
>
>  turboFvMeshの並列処理版がアップされたようなので,OpenFOAM 1.6-extをgit-pullで
> アップし(2011.1.13のもの),コンパイルをしました。そうしたらOpenFOAMがおかしくなって
> 動かなくなってしまい,仕方がないので再度
> git clone git://openfoam-extend.git.sourceforge.net/gitroot/openfoam-extend/OpenFOAM--1.6-ext
> で持ってきてコンパイルしましたが,foamInstallationTestをすると環境が構築できていませんと出ます。
>
> Checking basic setup...
> --------------------------------------------------------------------------------

Sakuma

unread,
Jan 15, 2011, 9:18:16 PM1/15/11
to OpenFOAM
OpenFOAM初心者のsakumaでございます。アドバイスをありがとうございます。

1.7.xではgit pull後にAllwmakeで簡単に済んでいたため,そのままで良いかと思っておりました。
初心者にとっては何か難しいですね。

Make内のfileを見て必要に応じて環境変数を設定する件ですが,どのようにやられているのでしょうか。
その方面の操作に疎いため良く理解できていません。よろしければご教授をお願いいたします。

また,少し待っていればopenfoam-extendのproject側で修正が行われ,12月の時点のように簡単に
コンパイル,構築が出来るようになるのでしょうか。

Takuya OSHIMA

unread,
Jan 15, 2011, 11:25:35 PM1/15/11
to OpenFOAM
大嶋です。

私も12月に一度入れて、先週後半にgit pullとビルドしたらエラー山盛りな状態でした。
ThirdParty/rpmBuild/SPECS以下が書き直されて、
サードパーティ関連の環境変数設定がかなり変わったようです。
ところが、これが反映されるにはThirdParty以下をビルドし直す必要があるのですが、
git pullのアップデートだと既にビルドされているのでスキップされてしまいます。
Sakumaさんがされたように、一度まっさらにしてビルドし直すのが一番良いようです。

リンクエラーに関しては、一番最初のエラーメッセージをチェックしてください。
多くの場合、後の方のエラーメッセージは前のエラーから連鎖的に発生するので、
エラーメッセージは頭からチェックして対処していくのが大原則です。

ohbuchi

unread,
Jan 16, 2011, 12:44:58 AM1/16/11
to OpenFOAM
わたしも最新版のアップデートを行いました。
etc/bashrcでなぜか$WM_THIRD_PARTY_DIRの設定がコメントアウトされており
それを復帰させ、wcleanAllを実効後、Allwmakeで無事コンパイルできました。
wcleanAllをしないと、新規追加されたヘッダのインクルードに失敗し、いくつかの
ユーティリティのコンパイルができませんでした。
turboPassageRotatingチュートリアルですが、確かにパラレル計算対応になっていますが
私の環境ではソルバを起動するとエラーメッセージがでて正常に動作しませんでした。
以上、ご参考まで。

ohbuchi

unread,
Jan 16, 2011, 7:35:36 AM1/16/11
to OpenFOAM
turboPassageRotatingの並列計算のバグについては、CFD-Onlineのフォーラムに
投稿したところ、H.Jasackさんがデバッグしてくれるそうです。

Sakuma

unread,
Jan 17, 2011, 10:33:30 AM1/17/11
to OpenFOAM
OpenFOAM初心者のsakumaでございます。

etc/bashrcの$WM_THIRD_PARTY_DIRの中を見ると下記のように2つあったので,
上の#を外してコンパイルをしましたが,上手くコンパイルしてくれません。

# Location of third-party software
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
: ${WM_THIRD_PARTY_DIR=$WM_PROJECT_INST_DIR/ThirdParty-
$WM_PROJECT_VERSION}; export WM_THIRD_PARTY_DIR
# : ${WM_THIRD_PARTY_DIR=$WM_PROJECT_DIR/ThirdParty}; export
WM_THIRD_PARTY_DIR

このため,今度は逆に下の#を外してコンパイルをしましたが,これも上手くコンパイルしてくれません。

# Location of third-party software
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#: ${WM_THIRD_PARTY_DIR=$WM_PROJECT_INST_DIR/ThirdParty-
$WM_PROJECT_VERSION}; export WM_THIRD_PARTY_DIR
: ${WM_THIRD_PARTY_DIR=$WM_PROJECT_DIR/ThirdParty}; export
WM_THIRD_PARTY_DIR

修正している箇所はあっているのでしょうか。
この辺りが良く分からないので,よろしくお願いいたします。


ohbuchi

unread,
Jan 17, 2011, 4:05:53 PM1/17/11
to OpenFOAM
OpenFOAM-1.6-extではOpenFOAM-1.6-ext/ThirdPartyになっているので、下の方が正しい設定になります。
OpenFOAM-1.6-ext/etc/bashrcを実行したのち、printenvで環境変数が正しく設定されているのを確認して
ください。

Sakuma

unread,
Jan 21, 2011, 6:20:00 AM1/21/11
to OpenFOAM
OpenFOAM初心者のsakumaでございます。

etc/bashrcの# Location of third-party softwareを下記のように
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#: ${WM_THIRD_PARTY_DIR=$WM_PROJECT_INST_DIR/ThirdParty-
$WM_PROJECT_VERSION}; export WM_THIRD_PARTY_DIR
: ${WM_THIRD_PARTY_DIR=$WM_PROJECT_DIR/ThirdParty}; export
WM_THIRD_PARTY_DIR

/OpenFOAM-1.6-ext/Allwmakeを下記のように
# build ThirdParty sources
#( cd $WM_THIRD_PARTY_DIR && ./Allwmake )
( cd $WM_THIRD_PARTY_DIR && ./AllMake )

修正して./Allwmakeで何とかコンパイルが出来たようです。
ありがとうございました。
Reply all
Reply to author
Forward
0 new messages