Share
Embed
【技術書典16】OpenFOAM(自宅ではじめる流体解析)
【技術書典16】
https://techbookfest.org/product/7ruavtgHTW2gXFyXunvTBN?productVariantID=tPW4cMwgZ472Qauu6b4LfG
本書では、オープンソースソフトウェア OpenFOAM を活用して、流体解析の基本を学ぶことができます。著者がブログで公開した内容を校正し、さらに詳しくまとめたものです。具体的には、円管内の層流という現象を取り上げ、理論に基づく速度分布と OpenFOAM を用いた計算結果とを比較しながら、そのプロセスを丁寧に解説しています。
第 1 章では円管内流れの基本的な内容について触れ、解析を始める前の前提知識
を説明します。
第 2 章では、OpenFOAM の blockMesh ツールを使ってモデルを作成し、解析を実行して結果をグラフ化するまでの手順を詳しく解説しています。
第 3章は、応用編として、FreeCAD でのモデル作成から snappyHexMesh を使ったメッシュ作成までを解説しており、より複雑なモデルにも対応する方法を紹介しています。この章は、第 2 章で扱った解析対象と同じですが、興味のある方に向けての内容となっており、挑戦してみたい方はぜひ試してみてください。
正誤表
https://note.com/kamakiriphysics/n/ncc23114c4e0d
kamakiri1225
May 25, 2024
Transcript
15 slides
-
1 OpenFOAM — ࣗͰ࢝ΊΔྲྀମղੳ — ʦஶʧӉʹೖͬͨΧϚΩϦ ٕज़ॻయ 16ʢ2024 Նʣ৽ץ 2024
5 ݄ 21 ɹ ver 1.0 -
3 ͡Ίʹ ຊॻΛखʹऔ͍͖ͬͯͨͩɼ͋Γ͕ͱ͏͍͟͝·͢ ຊॻʹ͍ͭͯ ຊॻͰɺΦʔϓϯιʔειϑτΣΞ OpenFOAM Λ׆༻ͯ͠ɺྲྀମղੳͷج ຊΛֶͿ͜ͱ͕Ͱ͖·͢ɻஶऀ͕ϒϩάͰެ։ͨ͠༰Λߍਖ਼͠ɺ͞Βʹৄ͘͠·ͱ ΊͨͷͰ͢ɻ *1ɻ۩ମతʹɺԁͷྲྀͱ͍͏ݱΛऔΓ্͛ɺཧʹجͮ͘
ͱ OpenFOAM Λ༻͍ͨܭࢉ݁ՌͱΛൺֱ͠ͳ͕ΒɺͦͷϓϩηεΛஸೡ ʹղઆ͍ͯ͠·͢ɻ ୈ 1 ষͰԁྲྀΕͷجຊతͳ༰ʹ͍ͭͯ৮ΕɺղੳΛ࢝ΊΔલͷલఏࣝ Λઆ໌͠·͢ɻୈ 2 ষͰɺOpenFOAM ͷ blockMesh πʔϧΛͬͯϞσϧΛ࡞ ͠ɺղੳΛ࣮ߦͯ݁͠ՌΛάϥϑԽ͢Δ·ͰͷखॱΛৄ͘͠ղઆ͍ͯ͠·͢ɻୈ 3 ষɺԠ༻ฤͱͯ͠ɺFreeCAD ͰͷϞσϧ࡞͔Β snappyHexMesh Λͬͨϝο γϡ࡞·ͰΛղઆ͓ͯ͠ΓɺΑΓෳࡶͳϞσϧʹରԠ͢Δํ๏Λհ͍ͯ͠· ͢ɻ͜ͷষɺୈ 2 ষͰѻͬͨղੳରͱಉ͡Ͱ͕͢ɺڵຯͷ͋Δํʹ͚ͯͷ༰ ͱͳ͓ͬͯΓɺઓͯ͠Έ͍ͨํͥͻࢼͯ͠Έ͍ͯͩ͘͞ɻ ຊॻͷରಡऀ ຊॻͰ࣍ͷΑ͏ͳਓΛରͱ͍ͯ͠·͢ɻ • ྲྀମղੳΛ͜Ε͔Β͡ΊΔਓ • OpenFOAM ʹ͍ͭͯڵຯ͕͋Δਓ • ࣗͰγϛϡϨʔγϣϯ͢Δ͜ͱʹϫΫϫΫ͍ͯ͠Δਓ લఏͱ͢Δࣝ ຊॻΛಡΉʹ͋ͨΓɺ࣍ͷΑ͏ͳ͕ࣝඞཁͱͳΓ·͢ɻ • OpenFOAM Λ࣮ߦͰ͖ΔڥΛ༻ҙͰ͖Δ • Linux ʹ͍ͭͯͷجૅࣝ • Python ʹ͍ͭͯͷجૅࣝ • ྲྀମྗֶͷجૅࣝ *1 ӉʹೖͬͨΧϚΩϦɿhttps://takun-physics.net/ – i – -
4 ͡Ίʹ ༻͢ΔιϑτΣΞͷόʔδϣϯ ຊॻͰ༻͢ΔιϑτΣΞҎԼͱͳΓ·͢ɻ • OpenFOAM v2312 (WSL2) • ParaView
5.12 • Python 3.10.12 • FreeCAD 0.21.2 • gnuplot 5.4 WSL2 ͷ Ubuntu-22.04 ʹ OpenCFD ͕ϦϦʔε͢Δόʔδϣϯ (ESI ൛) ͷ OpenFOAM v2312 ΛΠϯετʔϧ͍ͯ͠Δ͜ͱΛఆ͍ͯ͠·͢ɻParaView FreeCAD Windows ͘͠ Mac ʹΠϯετʔϧ͓͍͍ͯͩ͘͠͞ɻUbuntu- 22.04 ʹ Python3.10 ͕طʹೖ͍ͬͯ·͕͢ɺՄࢹԽ༻ͷϥΠϒϥϦͳͲผ్Π ϯετʔϧ͢Δඞཁ͕͋Γ·͢ɻgnuplot Ubuntu ্ʹΠϯετʔϧͯ͠༻͠ ·͢ɻ C ʹඞཁͳιϑτΣΞͷΠϯετʔϧํ๏Λهࡌ͍ͯ͠·͢ͷͰɺࣗ͝ ͰڥΛ༻ҙ͍ͯͩ͘͠͞ɻ ԋश༻ͷϞσϧ ຊॻͰ༻ͨ͠ԋश༻ͷϞσϧ Github ΑΓࢀর͍ͩ͘͞ɻ Githubɿhttps://github.com/kamakiri1225/OpenFOAM_contents.git ͓͍߹Θͤઌ ຊॻʹؔ͢Δ࣭͓͍߹Θͤ X ͘͠ϒϩάͷ͓͍߹ΘͤϑΥʔϜΑ Γ͓ئ͍͍ͨ͠·͢ɻ • Xɿhttps://x.com/t_kun_kamakiri • ϒϩά͓͍߹Θͤɿhttps://takun-physics.net/page-908/ – ii – -
5 ࣍ ͡Ίʹ i ୈ 1 ষ ԁͷྲྀΕͷཧ 1 1.1
ԁͷ . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.2 ྲྀྲྀΕʢϋʔήϯɾϙΞζΠϢྲྀΕͷۙࣅࣜʣ . . . . . . . . . . . 2 ୈ 2 ষ OpenFOAM Ͱͷ blockMesh Λ༻͍ͨྲྀղੳ 3 2.1 ղੳͷత . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 2.2 OpenFOAM ͰͷγϛϡϨʔγϣϯ . . . . . . . . . . . . . . . . . . 3 ղੳϑϩʔ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 ιϧόͷબ . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 ࢧํఔࣜ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 2.3 ࡞ۀϑΥϧμͷ࡞ . . . . . . . . . . . . . . . . . . . . . . . . . . 6 2.4 νϡʔτϦΞϧͷίϐʔ . . . . . . . . . . . . . . . . . . . . . . . . 8 2.5 ϝογϡ࡞ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 blockMeshDict Λฤू . . . . . . . . . . . . . . . . . . . . . . . 10 blockMeshDict ϑΝΠϧͷઆ໌ . . . . . . . . . . . . . . . . . . . 17 ϝογϡ࣭ͷ֬ೝ . . . . . . . . . . . . . . . . . . . . . . . . . 25 2.6 ղੳઃఆ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 ઃఆϑΝΠϧߏ . . . . . . . . . . . . . . . . . . . . . . . . . . 27 ੑͷઃఆ . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 ཚྲྀϞσϧͷઃఆ . . . . . . . . . . . . . . . . . . . . . . . . . . 28 ڥք݅ͷઃఆ . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 ࢄԽεΩʔϜ . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 ܭࢉͷ੍ޚ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 ฒྻׂ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 2.7 ܭࢉ࣮ߦ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 2.8 ݁Ռॲཧ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 ParaView Ͱͷ݁Ռͷ֬ೝ . . . . . . . . . . . . . . . . . . . . . . 45 Python ʹΑΔάϥϑॲཧ . . . . . . . . . . . . . . . . . . . . . . 62 2.9 ·ͱΊ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 – iii – -
6 ࣍ [ίϥϜ]ϝογϟʔԿΛબͿ͔ʁ . . . . . . .
. . . . . . . . . . . . . . . 69 ୈ 3 ষ FreeCAD ʹΑΔϞσϧ࡞ͱ snappyHexMesh Λ༻͍ͨྲྀղੳ 72 3.1 ϝογϡ࡞·ͰͷશମͷྲྀΕ . . . . . . . . . . . . . . . . . . . . 72 3.2 ࡞ۀϑΥϧμͷ࡞ . . . . . . . . . . . . . . . . . . . . . . . . . . 73 3.3 Ϟσϧܗঢ়ͷ࡞ . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 FreeCAD ʹΑΔϞσϧ࡞ . . . . . . . . . . . . . . . . . . . . . 74 FreeCAD ͷϚΫϩػೳ . . . . . . . . . . . . . . . . . . . . . . . 79 εέʔϧͷม . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 3.4 ϝογϡ࡞ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 ϕʔεϝογϡͷ࡞ʢblockMeshDict Λฤू) . . . . . . . . . . . 89 ಛઢͷநग़ʢsurfaceFeatureExtractDict Λฤूʣ . . . . . . . . . 91 ϝογϡ࡞ʢsnappyHexMeshDict Λฤूʣ . . . . . . . . . . . . 93 3.5 ܭࢉ࣮ߦ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 3.6 ݁Ռॲཧ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103 3.7 ·ͱΊ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 [ίϥϜ]άϥϑ࡞ʹԿΛ͏͔ʁ . . . . . . . . . . . . . . . . . . . . . 104 A gnuplot ʹΑΔάϥϑॲཧ 106 A.1 z Ґஔҧ͍Ͱͷྲྀ . . . . . . . . . . . . . . . . . . . . . . . . 106 B OpenFOAM ͷ Tips 113 B.1 ϝογϡ࣭ͷ֬ೝ . . . . . . . . . . . . . . . . . . . . . . . . . . 113 B.2 ࿈ଓࣜͷޡࠩ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 B.3 y+ ͷ֬ೝ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116 B.4 ྲྀྔͷ߹ੑ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117 C ιϑτͷΠϯετʔϧ 119 C.1 OpenFOAM ͷΠϯετʔϧ . . . . . . . . . . . . . . . . . . . . . 119 C.2 ParaView ͷΠϯετʔϧ . . . . . . . . . . . . . . . . . . . . . . . 121 C.3 Python ͷϥΠϒϥϦͷΠϯετʔϧ . . . . . . . . . . . . . . . . . 121 C.4 FreeCAD ͷͷΠϯετʔϧ . . . . . . . . . . . . . . . . . . . . . . 123 C.5 gnuplot ͷΠϯετʔϧ . . . . . . . . . . . . . . . . . . . . . . . . 123 ࢀߟจݙ 126 ͋ͱ͕͖ 128 – iv – -
7 ୈ 1 ষ ԁͷྲྀΕͷཧ ͜ͷষͰɺԁྲྀΕͷجຊతͳ֓೦ʹ͍ͭͯհ͠·͢ɻԁͷྲྀΕ ཧతʹ͘ཧղ͞Ε͓ͯΓɺಛʹྲྀͷ߹ɺϋʔήϯɾϙΞζΠϢͷ ྲྀΕͷۙࣅ͕ࣜద༻͞ΕΔ͜ͱ͕ΒΕ͍ͯ·͢ɻ͜ΕΒͷࣝɺ࣍ষҎ߱ Ͱղઆ͢ΔྲྀମղੳͷલఏࣝͰ͢ɻ 1.1
ԁͷ ܘ d(ܘ R)ɺ͞ L ͷԁΛߟ͑·͢ɻԁͷ࣠ํͷྲྀೖޱͰ ۉҰͰ͕͢ɺޙྲྀͰน໘ۙ͘ͷ೪ੑʹΑͬͯ์ઢܕʹൃୡ͠·͢ɻ·ͨɺྲྀΕ͕ શʹൃୡ͢Δ·Ͱͷ۠ؒͷ͜ͱΛॿ۠ؒͱ͍͍ɺͦͷ۠ؒͷ͞Λॿڑͱ͍ ͍·͢ɻ 助走区間 十分発達した流れ 助走距離 ˛ ਤ 1.1: ॿڑ – 1 – -
8 ୈ 1 ষ ԁͷྲྀΕͷཧ 1.2 ྲྀྲྀΕʢϋʔήϯɾϙΞζΠϢྲྀΕͷۙࣅࣜʣ ԁͷྲྀΕͰϨΠϊϧζ͕ Rec ≒
2300 Ͱྲྀ͔ΒཚྲྀͱભҠ͢Δ͜ͱ ͕࣮ݧΑΓΒΕ͍ͯ·͢ɻͦͷͱ͖ͷϨΠϊϧζ Rec ΛྟքϨΠϊϧζͱ͍ ͍·͢ɻྲྀϋʔήϯɾϙΞζΠϢྲྀΕͷۙࣅࣜ uz = 2ub ( 1 − ( r R )2 ) ͕Γཱ ͪɺཚྲྀதԝʹ͓͚Δ࠷େྲྀΛ umax ɺน໘͔ΒͷڑΛ y ͱͨ͠ͱ͖ɺࢦ ๏ଇ uz = umax ( y R )1/n ʹै͍·͢*1ɻेൃୡ͢Δ·Ͱͷڑ L ɺྲྀͰ L/d = 0.06Re ͱϨΠϊϧζʹൺྫܾͯ͠·ΓɺཚྲྀʹͳΔͱ L/d = 25 ∼ 40 ͱ ϨΠϊϧζʹґଘͤͣʹܾ·Γ·͢ɻ 1.2 ྲྀྲྀΕʢϋʔήϯɾϙΞζΠϢྲྀΕͷۙࣅࣜʣ ͜͜Ͱɺఆৗঢ়ଶʹ͓͚ΔφϏΤɾετʔΫεํఔ͔ࣜΒϋʔήϯɾϙΞζΠϢ ྲྀΕͷۙࣅࣜΛಋ͖·͢ɻ ԁ࠲ඪܥ (r, θ, z) Ͱͷ z ํͷφϏΤɾετʔΫεํఔࣜࣜ 1.1 Ͱ͢ɻ ࣜ 1.1: φϏΤɾετʔΫεํఔࣜ ρ ( uz ∂uz ∂z + ur ∂uz ∂r ) = − ∂p ∂z + µ [ 1 r ∂ ∂r ( r ∂uz ∂r ) + ∂2uz ∂z2 ] ॿڑΛेʹͱΓɺेൃୡͨ͠ྲྀΕͷ࣠ํʹมԽΛ͠ͳ͍ͨ Ίɺ∂uz ∂z = 0 Ͱ͋Γɺܘํͷྲྀ 0(ur = 0) Ͱ͋Δ͜ͱ͔Βࣜ 1.2 ͱͳΓ·͢ɻ ࣜ 1.2: ࣜมܗ.1 0 = − ∂p ∂z + µ 1 r ∂ ∂r ( r ∂uz ∂r ) ྆ล r Ͱੵͯ͠·͢ɻ ࣜ 1.3: ࣜมܗ.2 uz = 1 4µ ( − ∂p ∂z ) (R2 − r2) = 2ub ( 1 − ( r R )2 ) Ҏ্ͷΑ͏ʹͯ͠ϋʔήϯɾϙΞζΠϢྲྀΕͷۙࣅ͕ࣜಋ͔Ε·͢ɻ ͜͜Ͱɺµ ೪ੑɺub = 1 πR2 ∫ R 0 2πruz dr = R2 8µ ( − ∂p ∂z ) ࣠ํͷฏۉྲྀ Ͱ͢ɻ *1 ࢦ 1/n ɺϨΠϊϧζ Re ͷൣғʹ͓͍ͯχΫϥθͷ࣮ݧʹΑΔ – 2 – -
9 ୈ 2 ষ OpenFOAM Ͱͷ blockMesh Λ ༻͍ͨྲྀղੳ ͜ͷষͰԁͷྲྀΕͷ
OpenFOAM ͷઃఆํ๏ʹ͍ͭͯղઆ͠·͢ɻ ີมԽΛΘͳ͍ඇѹॖྲྀΕΛԾఆ͓ͯ͠ΓɺܭࢉෛՙͦΕ΄Ͳߴ͘ͳ ͘ɺ͔ͭཧࣜͱͷൺֱͰ͖ΔࡐͰ͢ɻղੳઃఆͷํ๏Λཧղ͠ɺྲྀͰ ͷϋʔήϯɾϙΞζΠϢྲྀΕͷۙࣅࣜͱ OpenFOAM Ͱͷ݁ՌͱͷൺֱΛߦ ͍·͢ɻ 2.1 ղੳͷత ຊॻͰɺԁͷྲྀͷۙࣅղͰ͋ΔϋʔήϯɾϙΞζΠϢྲྀΕΛࡐʹ͠ɺཧ ࣜͱ OpenFOAM ͷൺֱΛߦ͏͜ͱΛతͱ͠·͢ɻ ԁͷྲྀʹ͍ͭͯͷϙΠϯτҎԼͱͳΓ·͢ɻ • ྟքϨΠϊϧζ Rec ≒ 2300 Ͱྲྀ͔ΒཚྲྀͷભҠ • ेൃୡͨ͠ྲྀΕͰͷྲྀͷϋʔήϯɾϙΞζΠϢྲྀΕͷۙࣅࣜ uz (r) = 2ub ( 1 − ( r R )2 ) • ྲྀͰͷॿ۠ؒͷڑྲྀͰ L/d = 0.06Re 2.2 OpenFOAM ͰͷγϛϡϨʔγϣϯ OpenFOAM Λ༻͍ͯਤ 2.1 ͷΑ͏ͳԁͷྲྀΕγϛϡϨʔγϣϯΛߦ͍·͢ɻ – 3 – -
1 0 ୈ 2 ষ OpenFOAM Ͱͷ blockMesh Λ༻͍ͨྲྀղੳ 2.2
OpenFOAM ͰͷγϛϡϨʔγϣϯ 1200 mm 20mm 0.1m/s ˛ ਤ 2.1: ԁͷྲྀΕͷγϛϡϨʔγϣϯ݁Ռ ද໘ͷน໘ૈ͞ͷӨڹ·ͰɺຊॻͰऔΓѻ͍·ͤΜ*1ɻ ղੳϑϩʔ ·ͣղੳΛ࣮ߦ͢Δ·ͰͷશମͷྲྀΕΛԡ͓͖͑ͯ͞·͠ΐ͏ɻ • ιϧόͷબ • ࡞ۀϑΥϧμͷ࡞ • νϡʔτϦΞϧΛίϐʔ • ϝογϡੜ (blockMesh) • ղੳઃఆ (OpenFOAM ͷઃఆϑΝΠϧ) • ܭࢉ࣮ߦ (OpenFOAM) • ղੳ݁ՌͷՄࢹԽ (ParaViewɺPython) ௨ৗɺղੳϑϩʔͷதʹղੳ༻ͷϞσϧ࡞ͷఔ͕͋Γ·͕͢ɺࠓճ blockMesh ͰϝογϡΛอ࣋ͨ͠ܗঢ়Λ࡞͠·͢ͷͰ 3D-CAD Λ༻͍ͨϞσϧ࡞ ͷఔෆཁͰ͢ɻblockMesh OpenFOAM ͷඪ४ϢʔςΟϦςΟʹؚ·Εͯ ͍ΔϓϩάϥϜͰɺOpenFOAM ΛΠϯετʔϧࡁͰ͋Ε৽ͨʹΠϯετʔϧͷख ଓ͖ෆཁͰ͢ɻ *1 ϨΠϊϧζ Re ͕খ͍͞ͱૈ͞ʹӨڹ͕ͳ͘ɺཚྲྀঢ়ଶͷΑ͏ʹϨΠϊϧζ Re ͕େ͖͍ͱ ຎࡲͳͲʹӨڹ͠·͢ɻ – 4 – -
1 1 ୈ 2 ষ OpenFOAM Ͱͷ blockMesh Λ༻͍ͨྲྀղੳ 2.2
OpenFOAM ͰͷγϛϡϨʔγϣϯ プリ処理 モデル作成 メッシュ作成 解析設定 計算実行 結果処理 blockMesh ソルバ ポスト処理 OpenFOAM ParaView Python ˛ ਤ 2.2: ղੳϑϩʔ ιϧόͷબ OpenFOAM ղ͖͍ͨʹదͨ͠ιϧόΛબ͢Δඞཁ͕͋Γ·͢ɻԁ ྲྀΕɺ୯૬ྲྀͰԹมԽͱີมԽ͕ແࢹͰ͖ΔඇѹॖྲྀΕͱԾఆͯ͠ղੳΛߦ͏ ͨΊɺͦΕʹదͨ͠ιϧόͷબ͕ඞཁͰ͢ɻ͜ͷΑ͏ͳ݅ʹదͨ͠ OpenFOAM ͷදతͳιϧόͱͯ͠ද 2.1 ͷͷ͕ڍ͛ΒΕ·͢ɻ ˝ ද 2.1: ඇѹॖྲྀΕͷදతͳιϧό ιϧό໊ ҙຯ icoFoam ඇఆৗྲྀղੳιϧό pimpleFoam ඇఆৗཚྲྀղੳιϧό ʢPISO+SIMPLE ͷ PIMPLE ΞϧΰϦζϜʣ pisoFoam ඇఆৗཚྲྀղੳιϧόʢPIS ๏ʣ simpleFoam ఆৗཚྲྀղੳιϧόʢSIMPLE ๏ʣ ఆৗղੳΛߦ͏ͨΊ SIMPLE ๏ (Semi-Implicit Method for Pressure Linked Equations) ΞϧΰϦζϜʹै͏ఆৗཚྲྀղੳͷιϧόͷ simpleFoam Λ͍·͢ɻ ࢧํఔࣜ ιϧόͷબʹɺݱΛͲͷΑ͏ͳํఔࣜͰѻ͏͔߹Θͤͯ֬ೝ͓ͯ͘͠ͱྑ – 5 – -
7 4 ୈ 2 ষ OpenFOAM Ͱͷ blockMesh Λ༻͍ͨྲྀղੳ 2.8
݁Ռॲཧ if i >= 2: plt.legend(loc="upper center",bbox_to_anchor=(1.0, 1.2)› ›, fontsize=16) # άϥϑλΠτϧͷઃఆ axes[i].set_title(f"z={zCase.split('_')[1]}", fontsize=20) # άϦου axes[i].grid("-") # άϥϑΛPDFϑΝΠϧͱͯ͠อଘ plt.savefig("python_plot/result/multiplot_py.pdf", bbox_inches=› ›'tight') ͰɺPython εΫϦϓτΛ࣮ߦ͠·͠ΐ͏ɻ ˝ Python εΫϦϓτ plot.py Λ࣮ߦ $ python3 python_plot/plot.py ύεʹҙ Ϧετ 2.27 ͷ࣮ߦɺCylinder_blockMesh ϑΥϧμʹ͍Δঢ়ଶͰਖ਼ৗʹಈ ࡞͢ΔϓϩάϥϜʹͳ͍ͬͯ·͢ɻ Ҏ্ͷεΫϦϓτΛ࣮ߦ͢Δͱ python_plot/result/multiplot.pdf ͕ग़ྗ͞Εਤ 2.41 ͷΑ͏ʹཧࣜͱ OpenFOAM ʹΑΔ݁Ռͷάϥϑ͕࡞͞Ε͍ͯ·͢ɻ 0.00 0.02 0.04 0.06 0.08 0.10 0.12 0.14 0.16 0.18 0.20 Uz[m/s] 0.010 0.008 0.006 0.004 0.002 0.000 0.002 0.004 0.006 0.008 0.010 y[m] z=0.001m 0.00 0.02 0.04 0.06 0.08 0.10 0.12 0.14 0.16 0.18 0.20 Uz[m/s] 0.010 0.008 0.006 0.004 0.002 0.000 0.002 0.004 0.006 0.008 0.010 y[m] z=0.4m 0.00 0.02 0.04 0.06 0.08 0.10 0.12 0.14 0.16 0.18 0.20 Uz[m/s] 0.010 0.008 0.006 0.004 0.002 0.000 0.002 0.004 0.006 0.008 0.010 y[m] z=0.6m OpenFOAM Theory ˛ ਤ 2.41: Python ʹΑΔάϥϑԽ – 68 – -
1 3 4 ͋ͱ͕͖ ຊॻΛ͝ߪೖ͍͖ͨͩ͋Γ͕ͱ͏͍͟͝·͢ɻຊॻͰɺԁͷྲྀΛରʹྲྀ ମղੳʹ͍ͭͯղઆΛߦ͍·ͨ͠ɻࠓճ OpenFOAM ͷଟ༷ͳػೳͷҰ෦ͷΈΛ ͝հͰ͖·͕ͨ͠ɺ͞Βʹৄࡉͳઆ໌͕ඞཁͳ͋Δ͔ͱࢥ͍·͢ɻ ݫີղΛٻΊΔͷ͕ࠔͳղੳରͰɺγϛϡϨʔγϣϯΛ௨ͯ͡ݱΛཧղ͢
Δ͜ͱ͕ඇৗʹॏཁͩͱஶऀߟ͍͑ͯ·͢ɻͦͷͨΊɺຊॻͰཧతʹΑ͘ཧղ ͞Ε͍ͯΔԁͷྲྀྲྀΕΛࡐʹબͼ·ͨ͠ɻγϛϡϨʔγϣϯͷଥੑΛ֬ೝ ͢ΔͨΊʹɺ࣮ݧσʔλطͷݫີղͱͷൺֱΛߦ͍ɺ݁Ռͷ৴པੑΛݕূ͢Δ ඞཁ͕͋Γ·͢ɻຊॻΛ͖͔͚ͬʹࣗ͝ͰγϛϡϨʔγϣϯ͍ͨ͠༰ʹͯΊ ͍͚ͯͨͩΕͱࢥ͍·͢ɻ ӉʹೖͬͨΧϚΩϦ • Xɿhttps://x.com/t_kun_kamakiri • ϒϩά URLɿhttps://takun-physics.net/: – 128 – -
1 3 5 OpenFOAM ࣗͰ࢝ΊΔྲྀମղੳ 2024 5 ݄ 21
ɹ ver 1.0 ʢٕज़ॻయ 16ʣ ஶɹऀ ӉʹೖͬͨΧϚΩϦ ൃߦऀ ΧϚΩϦ ࿈བྷઌ https://takun-physics.net/ https://x.com/t_kun_kamakiri ҹॴ ӉʹೖͬͨΧϚΩϦ © 2024 ӉʹೖͬͨΧϚΩϦ (powered by Re:VIEW Starter)