Share
Embed
OpenFOAM初級編チュートリアル(キャビティ流れ)
kamakiri1225
June 30, 2023
Transcript
34 slides
-
1 OpenFOAM ॳڃฤ — ΩϟϏςΟྲྀΕ — ʦஶʧӉʹೖͬͨΧϚΩϦ ٕज़ॻయʢ2023 Նʣ৽ץ 2023
7 ݄ 15 ɹ ver 1.0 -
3 ͡Ίʹ ຊॻΛखʹऔ͍͖ͬͯͨͩɼ͋Γ͕ͱ͏͍͟͝·͢ɽ ຊॻɼOpenFOAM ೖॻͱॳ৺ऀͷͨΊͷୈҰาͱͯ͠Θ͔Γ͘͢ղઆͨ͠ຊͰ͢ɽ ຊॻͷత ຊॻͷతɼOpenFOAM ͷجૅతͳ͍ํΛʹ͚ͭΔ͜ͱͰ͢ɽOpenFOAM ιϧό͝ ͱʹνϡʔτϦΞϧ͕༻ҙ͞Ε͓ͯΓɼ
ɺͦͪΒΛࣗͷղੳͨ͠Ϟσϧʹमਖ਼ͯ͠͏͜ͱʹͳ Γ·͢ɽ͔͠͠ɼOpenFOAM ॳ৺ऀʹͱ͍͖ͬͯͳΓࣗͷղੳΛ͢Δͱ͍͏͜ͱ͘͠ɼͨ ͍͍ͯͷ߹νϡʔτϦΞϧΛோΊͯΈͯɼઃఆํ๏ΛΔ͜ͱ͔Β࢝Ί·͢ɽͦͯ͠ઃఆํ๏ Λཧղͯࣗ͠ͷΦϦδφϧͷղੳͱਐΉ߹͕΄ͱΜͲͰ͢ɽ ͨͩ͠ɼOpenFOAM ͦͷଞιϑτΣΞͷΠϯετʔϧํ๏ʹ͍ͭͯຊॻͰѻ͍· ͤΜɽ ຊॻͷରಡऀ ຊॻͰ࣍ͷΑ͏ͳਓΛରͱ͍ͯ͠·͢ɻ • ྲྀମղੳΛ͜Ε͔Β͡ΊΔਓ • OpenFOAM ʹ͍ͭͯڵຯ͕͋Δਓ • ࣗͰγϛϡϨʔγϣϯ͢Δ͜ͱʹϫΫϫΫ͢Δਓ લఏͱ͢Δࣝ ຊॻΛಡΉʹ͋ͨΓɺ࣍ͷΑ͏ͳ͕ࣝඞཁͱͳΓ·͢ɻ • Linux ʹ͍ͭͯͷجૅࣝ • ྲྀମྗֶͷجૅࣝ ༻͢ΔιϑτΣΞͷόʔδϣϯ ຊॻͰ༻͢ΔͷιϑτΣΞҎԼͱͳΓ·͢ɽ • OpenFOAM v2212 (WSL2) • ParaView 5.11 (WindowsɺMac) WSL2 ͷ Ubuntu2204 ʹ OpenFOAM ΛΠϯετʔϧͯ͠༻͍ͯ͠Δ͜ͱΛఆ͍ͯ͠· ͢ɽParaView Windows ͘͠ Mac ʹΠϯετʔϧ͓͍͍ͯͩ͘͠͞ɽ ͍߹Θͤઌ ຊॻʹؔ͢Δ࣭͓͍߹Θͤɺ࣍ͷϖʔδ·Ͱ͓ئ͍͠·͢ɽਖ਼ޡදͱαϯϓϧίʔυ ͜͜ʹ͋Γ·͢ɽ • ϒϩά URL : https://takun-physics.net/ • Twitter: https://twitter.com/t_kun_kamakiri – i – -
5 ࣍ ͡Ίʹ i ୈ 1 ষ ΩϟϏςΟྲྀΕ 1 1.1
શମͷྲྀΕ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.1.1 ιϧόͷબ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.1.2 ࢧํఔࣜ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 1.2 νϡʔτϦΞϧΛίϐʔ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 1.2.1 ղੳର . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.3 ϝογϡ࡞ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.3.1 blockMesh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.3.2 chekMesh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 1.3.3 ڥք݅ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 1.3.4 ੑͷઃఆ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 1.3.5 εΩʔϜ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 1.3.6 ιϧό . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 1.3.7 ܭࢉ੍ޚ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 1.4 ܭࢉ࣮ߦ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 1.5 ݁Ռॲཧ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 1.5.1 ྲྀίϯλ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 1.5.2 ྲྀϕΫτϧ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 1.5.3 ྲྀઢ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 1.6 ֬ೝࣄ߲ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 1.6.1 ࿈ଓࣜͷޡࠩͷ֬ೝ . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 1.6.2 ࠩͷ֬ೝ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 1.6.3 y+ ͷ֬ೝ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 ͋ͱ͕͖ / ͓ΘΓʹ 28 – iii – -
6 ୈ 1 ষ ΩϟϏςΟྲྀΕ ͜ͷষͰνϡʔτϦΞϧͷΩϟϏςΟྲྀΕͷઃఆํ๏Λ֬ೝ͍͖ͯ͠·͢ɽΩϟϏςΟྲྀ Ε 2 ࣍ݩͷඇѹॖྲྀΕΛԾఆ͓ͯ͠Γɼܭࢉෛՙ͕ܰ͘Ϟσϧͷઃఆ߲ଟ͘ͳ͍ͨΊ OpenFOAM
ॳ৺ऀʹͱ͖͍ͬͭ͢ྫͰ͢ɽνϡʔτϦΞϧͷதΛ֬ೝ͍ͯ͘͜͠ͱͰɼ ࣗͷઃఆϑΝΠϧͷํ๏ΛֶΜͰ͍͘͜ͱʹͳΓ·͢ɽ 1.1 શମͷྲྀΕ ·ͣղੳΛ࣮ߦ͢Δ·ͰͷશମͷྲྀΕΛԡ͓͖͑ͯ͞·͠ΐ͏ɽ • ιϧόͷબ • νϡʔτϦΞϧΛίϐʔ • ϝογϡੜ (blockMesh) • ղੳઃఆ (OpenFOAM ͷઃఆϑΝΠϧ) • ܭࢉ࣮ߦ (OpenFOAM) • ղੳ݁ՌͷՄࢹԽ ΦϦδφϧͷܗঢ়Λղੳ͍ͨ͠߹ղੳ༻ͷϞσϧ࡞ͷ͋Γ·͕͢ɼࠓճ blockMesh ͰϝογϡΛอ࣋ͨ͠ܗঢ়Λ࡞͢ΔͷͰղੳϞσϧ࡞ͷ͜͜Ͱൃੜ ͠·ͤΜɽ 1.1.1 ιϧόͷબ ࠓճղੳΛ͢ΔΩϟϏςΟྲྀΕɼ୯૬ྲྀΕͰԹมԽͱີมԽ͕ແࢹͰ͖ΔඇѹॖྲྀΕͱԾ ఆͯ͠ղੳΛߦ͍·͢ɽඇѹॖྲྀΕʹදతͳͷͱͯ͠දͷΑ͏ͳιϧό͕͋Γ·͢ɽ ˝ ද 1.1: ඇѹॖੑྲྀΕͷιϧόʣ ιϧό ༻్ icoFoam ඇఆৗྲྀղੳιϧό simpleFoam ఆৗཚྲྀղੳιϧό (SIMPLE ๏) pisoFoam ඇఆৗཚྲྀղੳιϧό (PISO ๏) pimpleFoam ඇఆৗཚྲྀղੳιϧό (PISO ͱ SIMPLE ΛΈ߹Θͤͨ PIMPLE ๏) ඇఆৗͰཚྲྀϞσϧΛΘͳ͍ղੳιϧόͱͯ͠ icoFoam Λ͏͜ͱʹ͠·͢ɽ – 1 – -
7 ୈ 1 ষ ΩϟϏςΟྲྀΕ 1.2 νϡʔτϦΞϧΛίϐʔ 1.1.2 ࢧํఔࣜ ࣜ
1.1: ࿈ଓͷࣜ ∇ · u = 0 ࣜ 1.2: ӡಈྔอଘͷࣜ ∂u ∂t + ∇ · (uu) − ∇ · (ν∇u) = ∇p • u : ྲྀϕΫτϧ • p : ѹྗ 1.2 νϡʔτϦΞϧΛίϐʔ icoFoam ͷνϡʔτϦΞϧʹ 2 ࣍ݩղੳ༻ͷΩϟϏςΟྲྀΕ͕༻ҙ͞Ε͍ͯ·͢ɽҎԼͷίϚ ϯυͰϑΥϧμ࡞ͱνϡʔτϦΞϧͷίϐʔ͠·͢ɽ ˝ νϡʔτϦΞϧͷίϐʔ $ mkdir -p tutorial $ cd tutorial/ $ cp -r $FOAM_TUTORIALS/incompressible/icoFoam/cavity/cavity . $ cd cavity/ • ϑΥϧμͷ࡞ (-p Φϓγϣϯ్தϑΝΠϧ࡞) • tutorial ϑΥϧμʹҠಈ • cavity νϡʔτϦΞϧΛίϐʔ • cavity ϑΥϧμʹҠಈ ϑΥϧμߏΛ֬ೝ͍ͨ͠߹ tree ίϚϯυͰ֬ೝΛߦ͏͜ͱ͕Ͱ͖·͢ɽ ˝ ϑΥϧμߏͷ֬ೝ $ tree . ᵓᴷᴷ 0 ᴹ ᵓᴷᴷ U ᴹ ᵋᴷᴷ p ᵓᴷᴷ constant ᴹ ᵋᴷᴷ transportProperties ᵋᴷᴷ system – 2 – -
8 ୈ 1 ষ ΩϟϏςΟྲྀΕ 1.3 ϝογϡ࡞ ᵓᴷᴷ PDRblockMeshDict ᵓᴷᴷ
blockMeshDict ᵓᴷᴷ controlDict ᵓᴷᴷ decomposeParDict ᵓᴷᴷ fvSchemes ᵋᴷᴷ fvSolution tree ίϚϯυ͕Πϯετʔϧ͞Ε͍ͯͳ͍߹ tree ίϚϯυͰΤϥʔʹͳΔͷͰඞཁʹԠ͡ ͯΠϯετʔϧͯ͠Έ͍ͯͩ͘͞ɽΤϥʔ͕ग़ͯ߄͍͚ͯͯ·ͤΜɽ 1.2.1 ղੳର ΩϟϏςΟྲྀΕۭಎ͘΅ΈͳͲͷ෦ྲྀΕͰֶతʹۙͳྲྀΕݱͰ͢ɽਤͷΑ͏ʹ্ ໘ͷΈʹنఆ͞Εͨ݅ʹΑΓղੳΛߦ͍·͢ɽ ˛ ਤ 1.1: ΩϟϏςΟྲྀΕͷղੳ 1.3 ϝογϡ࡞ ϝογϡ࡞ blockMesh Ͱߦ͍·͢ɽblockMesh ϝογϡʮsystem/blockMeshDictʯʹ ϝογϡσʔλ࡞༻ͷઃఆΛೖྗ͠ϝογϡ࡞Λߦ͏͜ͱ͕Ͱ͖·͢ɽ 1.3.1 blockMesh ˝ blockMeshDict /*--------------------------------*- C++ -*------------------------------› ›----*\ – 3 – -
9 ୈ 1 ষ ΩϟϏςΟྲྀΕ 1.3 ϝογϡ࡞ | ========= |
› › | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox › › | | \\ / O peration | Version: v2212 › › | | \\ / A nd | Website: www.openfoam.com › › | | \\/ M anipulation | › › | \*-----------------------------------------------------------------------› ›----*/ FoamFile { version 2.0; format ascii; class dictionary; object blockMeshDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * › ›* * // scale 0.1; vertices ( (0 0 0) //0 (1 0 0) //1 (1 1 0) //2 (0 1 0) //3 (0 0 0.1) //4 (1 0 0.1) //5 (1 1 0.1) //6 (0 1 0.1) //7 ); blocks ( hex (0 1 2 3 4 5 6 7) (20 20 1) simpleGrading (1 1 1) ); edges ( – 4 – -
1 0 ୈ 1 ষ ΩϟϏςΟྲྀΕ 1.3 ϝογϡ࡞ ); boundary
( movingWall { type wall; faces ( (3 7 6 2) ); } fixedWalls { type wall; faces ( (0 4 7 3) (2 6 5 1) (1 5 4 0) ); } frontAndBack { type empty; faces ( (0 3 2 1) (4 5 6 7) ); } ); // **********************************************************************› ›*** // blockMeshDict ͷઆ໌ޙ΄Ͳ͢Δͱͯ͠ɼ·ͣ blockMesh Λ࣮ߦͯ͠Έ·͠ΐ͏ɽ blockMesh ͷ࣮ߦҎԼͷίϚϯυͰߦ͍·͢ɽ ˝ blockMesh $ blockMesh blockMesh ࣮ߦޙʹҎԼͷΑ͏ͳϩά͕ग़ྗ͞Ε·͕͢ɼΤϥʔͷจࣈ͕ແ͚Εਖ਼ৗʹ࣮ ߦ͞Ε͍ͯ·͢ɽ – 5 – -
1 1 ୈ 1 ষ ΩϟϏςΟྲྀΕ 1.3 ϝογϡ࡞ ˝ blockMesh
࣮ߦޙͷϩά ... (লུ) ... ---------------- Mesh Information ---------------- boundingBox: (0 0 0) (0.1 0.1 0.01) nPoints: 882 nCells: 400 nFaces: 1640 nInternalFaces: 760 ---------------- Patches ---------------- patch 0 (start: 760 size: 20) name: movingWall patch 1 (start: 780 size: 60) name: fixedWalls patch 2 (start: 840 size: 800) name: frontAndBack End blockMesh OpenFOAM ͷϝογϟʔʹ͋ͨΔ snappyHexMesh ͷϕʔεͱͳΔϝογϡ࡞ ༻ʹΘΕΔ͜ͱ͋Γ·͢͠ɼࠓճͷΑ͏ʹ؆୯ͳܗঢ়ͷ߹ blockMesh ͷΈͰ 6 ໘ମ ϝογϡͷΈͷϝογϡ࡞͢Δ͜ͱͰ͖·͢ɽ blockMesh Λ࣮ߦ͢Δͱʮconstant/polyMeshʯʹϝογϡใ͕ग़ྗ͞Ε·͢ɽ scale scale ϝογϡͷੇ๏ʹର͢ΔεέʔϦϯάͰ͢ɽ͜͜ͰޙͰઆ໌͢Δ vertices Ͱη ϯνϝʔτϧͱͯ͠ੇ๏Λఆٛ͢ΔͨΊ 0.1 ഒͷεέʔϧΛߦ͏͜ͱͰɼϝʔτϧܥͱͯ͠ϝο γϡσʔλΛ࡞͢Δ͜ͱʹͳΓ·͢ɽ ˝ scale scale 0.1; OpenFOAM SI ୯ҐܥͰܭࢉ͢ΔͨΊɼ͞ʹରͯ͠ϝʔτϧܥͰܭࢉΛߦ͏͜ͱʹͳΓ ·͢ɽ͔͠͠ɼϞσϧ࡞ͷࡍʹϛϦϝʔτϧηϯνϝʔτϧͰ࡞ͨ͠ํ͕Θ͔Γ͍͢ έʔε͋Γ·͢ɽ vertices vertices ͰϒϩοΫͷͷ࠲ඪΛఆٛ͠ɼ্͔Βॱ൪ʹʹ൪߸ׂ͕ΓͯΒΕ·͢ɽ – 6 – -
1 2 ୈ 1 ষ ΩϟϏςΟྲྀΕ 1.3 ϝογϡ࡞ ΩϟϏςΟྲྀΕͷ߹ 6
໘ମͰ 0~7 ·ͰਤͷΑ͏ʹʹׂΓͯΒΕ·͢ɽ ˝ vertices vertices ( (0 0 0) //0 (1 0 0) //1 (1 1 0) //2 (0 1 0) //3 (0 0 0.1) //4 (1 0 0.1) //5 (1 1 0.1) //6 (0 1 0.1) //7 ); ˛ ਤ 1.2: ͷఆٛ blocks blocks ͰϒϩοΫͷܗঢ়Λఆٛ͠·͢ɽhex ͱࢦఆ͠ vertices Ͱఆٛͨ͠ 0~7 ͔ΒͳΔ 6 ໘ମͷϝογϡΛ࡞͠·͢ɽ – 7 – -
1 3 ୈ 1 ষ ΩϟϏςΟྲྀΕ 1.3 ϝογϡ࡞ ˝ blocks
blocks ( hex (0 1 2 3 4 5 6 7) (20 20 1) simpleGrading (1 1 1) ); (20 20 1) Ͱ x1,x2,x3 ํͷׂΛࢦఆ͍ͯ͠·͢ɽsimpleGrading (1 1 1) Ͱϒ ϩοΫͷลͷͷϝογϡαΠζͷ֦େൺΛ༩͑Δ͜ͱ͕Ͱ͖·͢ɽࠓճ x1,x2,x3 ํۉ ʹׂ͞ΕΔઃఆͱ͍ͯ͠·͢ɽ ˛ ਤ 1.3: ֦େൺͷઃఆ boundary boundary ڥքͷ໊લͱλΠϓΛఆٛ͠·͢ɽfaces ʹ vertices Ͱఆٛͨ͠ͷ൪߸Λࢦ ఆ͠໘Λఆ͍ٛͯ͠·͢ɽfixedWalls frontAndBack ͷΑ͏ʹɼෳͷ໘Λఆٛ͢Δ͜ͱͰά ϧʔϓԽ͢Δ͜ͱͰ͖·͢ɽ ˝ boundary boundary ( movingWall { type wall; faces ( (3 7 6 2) ); } fixedWalls { type wall; faces ( (0 4 7 3) (2 6 5 1) (1 5 4 0) ); – 8 – -
1 4 ୈ 1 ষ ΩϟϏςΟྲྀΕ 1.3 ϝογϡ࡞ } frontAndBack
{ type empty; faces ( (0 3 2 1) (4 5 6 7) ); } ); ˛ ਤ 1.4: ֦େൺͷઃఆ ͜͜Ͱ type patch,wall,empty Λ͓ͬͯΓҙຯදͷͱ͓ΓͰ͢ɽ 1.3.2 chekMesh ϝογϡ࣭Λ֬ೝ͠·͢ɻ 1.3.3 ڥք݅ ڥք݅ͷઃఆ 0 ϑΥϧμʹ֨ೲ͞Ε͍ͯ·͢ɽࠓճ U ͱ p ͷϑΝΠϧ͕ղੳʹඞཁͰ͢ ͷͰɼͦΕͧΕ֬ೝͯ͠Έ·͢ɽ – 9 – -
1 5 ୈ 1 ষ ΩϟϏςΟྲྀΕ 1.3 ϝογϡ࡞ ˝ ද
1.2: ڥքͷछྨ छྨ ༻్ patch Ұൠతͳύονʢྲྀೖޱྲྀग़ޱʣ wall น໘ʢཚྲྀͷนؔʹ༻ʣ empty 2 ࣍ݩܗঢ়ͷલޙͷ໘ symmetryPlane ରশ໘ wedge ࣠ରশܗঢ়ͷͨΊͷɼ͘͞ͼܕͷલޙ cyclic पظڥք໘ • U ϑΝΠϧ : ྲྀϕΫτϧ • p ϑΝΠϧ : ѹྗ ڥք݅දͷ௨Γʹઃఆ͍ͯ͠·͢ɽ ˝ ද 1.3: ڥք݅ͷࢦఆ ڥք໘ͷ໊લ ڥք݅ U p movingWall ྲྀଋنఆ type fixedValue; type zeroGradient; value uniform (1 0 0); fixedWalls Γແ͠ type noSlip; type noSlip; frontAndBack 2 ࣍ݩղੳ type empty; type empty; ˝ 0/U dimensions [0 1 -1 0 0 0 0]; internalField uniform (0 0 0); boundaryField { movingWall { type fixedValue; value uniform (1 0 0); } fixedWalls { type noSlip; } frontAndBack { type empty; – 10 – -
1 6 ୈ 1 ষ ΩϟϏςΟྲྀΕ 1.3 ϝογϡ࡞ } }
˝ 0/p dimensions [0 2 -2 0 0 0 0]; internalField uniform 0; boundaryField { movingWall { type zeroGradient; } fixedWalls { type zeroGradient; } frontAndBack { type empty; } } dimensions dimensions ཧྔͷ୯ҐΛࣔ͠·͢ɽ[kg(࣭ྔ) m(͞) s(࣌ؒ) K(έϧϏϯ) mol(࣭ྔ) A(ిྲྀ) cd(ޫ)] ͷΛҙຯ͍ͯ͠·͢ɽOpenFOAM Ͱཧతʹҙຯͷ͋Δʢ୯Ґ͕߹ͬ ͍ͯΔ͜ͱʣԋࢉͷΈΛߦ͏Α͏ʹ࣮͞Ε͍ͯΔͨΊ, ୯Ґ͕ਖ਼͘͠ઃఆ͞Ε͍ͯΔඞཁ͕͋Γ ·͢ɽ • ྲྀͷ߹ɿ[LT−1] ͳͷͰ [m/s] ͱͳ͍ͬͯ·͢ɽ ˝ U ͷ dimensions dimensions [0 1 -1 0 0 0 0]; • ѹྗͷ߹ɿ[L2T−2] ͳͷͰ [m2/s2 ͱͳ͍ͬͯ·͢ɽ ˝ p ͷ dimensions dimensions [0 2 -2 0 0 0 0]; ѹྗ௨ৗύεΧϧͷ୯ҐΛ࣋ͪ·͢ɽͭ·Γ୯Ґ໘ੵͨΓͷྗͱͯ͠ [Pa] = [N/m2] = – 11 – -
1 7 ୈ 1 ষ ΩϟϏςΟྲྀΕ 1.3 ϝογϡ࡞ [kg/ms2] ͱͳ͍ͬͯΔඞཁ͕͋ΔͣͰ͢ɽ͔͠͠ɼOpenFOAM
ͷඇѹॖιϧόͷѹྗີ Ͱׂͬͨͷͱͯ͠ఆٛ͞Ε͍ͯΔͷͰɼີͷ୯Ґ [kg/m3] ͰׂΒΕ͍ͯΔͱ͍͏͜ͱʹҙ ͢Δඞཁ͕͋Γ·͢ɽ internalField internalField ϝογϡηϧ෦ঢ়ଶͷཧྔͷͰ͢ɽuniform ͱ͢Δ͜ͱͰ෦ಉ͡ ʹઃఆ͞Ε͍ͯ·͢ɽ ˝ U ͷ internalField internalField uniform (0 0 0); ˝ p ͷ internalField internalField uniform 0; ྲྀ 3 ࣍ݩϕΫτϧͰ (0 0 0) ͷॳظ෦ঢ়ଶΛ༩͍͑ͯ·͢ɽѹྗʹؔͯ͠Ұ༷ʹ 0 Λ༩ ͍͑ͯ·͢ɽඇѹॖԾఆʹؔͯ͠ӡಈྔอଘଇͷࣜʹ ∇p ͱ͍͏ඍ߲͔͠ͳ͍ͨΊɼѹྗͷ૬ ର͕ҙຯΛ࣋ͪ·͢ɽ0 ͱ͢Δ͜ͱͰେؾѹج४ʢήʔδѹʣͱ͢Δ͜ͱ͕Ͱ͖·͢ɽ internalField boundaryField ˛ ਤ 1.5: internalField ͱ boundaryField boundaryField boundaryField ʹڥք໘Ͱͷ݅Λઃఆ͠·͢ɽ U ϑΝΠϧͷ movingWall ྲྀΛ༩͑ΔͷͰ type fixedValue ͱͯ͠Ұ༷ʹ (1 0 0) ͷྲྀ Λ༩͍͑ͯ·͢ɽfixedWalls น݅ͱͯ͠ྲྀ 0 Λ༩͍͑ͯ·͢ɽfrontAndBack type empty ͱͯ͠ڥք໘ͷ๏ઢํͷܭࢉߦΘͳ͍ઃఆͱ͍ͯ͠·͢ɽ ˝ U ͷ boundaryField boundaryField { – 12 – -
1 8 ୈ 1 ষ ΩϟϏςΟྲྀΕ 1.3 ϝογϡ࡞ movingWall {
type fixedValue; value uniform (1 0 0); } fixedWalls { type noSlip; } frontAndBack { type empty; } } p ϑΝΠϧͷ movingWall type zeroGradient ͱͯ͠ޯͳ͠ͷ݅Λࢦఆ͠·͢ɽfixed- Walls ͷน݅Λ༩͑ͯΔ߹ͷѹྗ type zeroGradient ͱͯ͠ޯͳ͠ͷ݅Λࢦఆ͠·͢ɽ frontAndBack U ಉ༷ type empty ͱͯ͠ڥք໘ͷ๏ઢํͷܭࢉߦΘͳ͍ઃఆͱ͍ͯ͠ ·͢ɽ ˝ p ͷ boundaryField boundaryField { movingWall { type zeroGradient; } fixedWalls { type zeroGradient; } frontAndBack { type empty; } } – 13 – -
1 9 ୈ 1 ষ ΩϟϏςΟྲྀΕ 1.3 ϝογϡ࡞ 1.3.4 ੑͷઃఆ
ੑ constant/transportProperties ϑΝΠϧʹΑΓߦ͍·͢ɽnu ಈ೪ੑͰ͢ɽಈ೪ੑ ͷ୯Ґ [m/s2] Ͱ͢ɽ ˝ constant/transportProperties nu 0.01; 1.3.5 εΩʔϜ ඍΛͲͷΑ͏ʹࢄԽ͢Δ͔Λબ͢Δͷ͕ࢄԽεΩʔϜͰ͢ɽࢄԽεΩʔϜ sys- tem/fvSchemes Ͱઃఆ͠·͢ɽࢄԽεΩʔϜͷબඇৗʹ͍͠ͷͰ࠷ॳνϡʔτϦΞϧ ͷσϑΥϧτઃఆͰղੳΛਐΊͯྑ͍Ͱ͢ɽ ˝ system/fvSchemes ddtSchemes { default Euler; } gradSchemes { default Gauss linear; grad(p) Gauss linear; } divSchemes { default none; div(phi,U) Gauss linear; } laplacianSchemes { default Gauss linear orthogonal; } interpolationSchemes { default linear; } snGradSchemes { – 14 – -
2 0 ୈ 1 ষ ΩϟϏςΟྲྀΕ 1.3 ϝογϡ࡞ default orthogonal;
} ࢄԽεΩʔϜͷબʹΑͬͯ݁Ռ͕େ͖͘มΘΔ͜ͱ͋ΔͷͰৄ͘͠આ໌͓͖ͯ͠·͢ɽ ddtSchemes ddtSchemes ࣌ؒඍͷࢄԽεΩʔϜͰ͢ɽ ˝ ddtSchemes ddtSchemes { default Euler; } Euler ͱ͍ͯ͠ΔͨΊ࣌ؒඍ߲ʹؔͯ͠ 1 ࣍ਫ਼ͷࢄԽख๏Λͱ͍ͬͯ·͢ɽ ˝ ද 1.4: ࣌ؒඍ ddtSchemes ख๏ Euler Euler ๏ (1 ࣍ਫ਼) backward ޙୀࠩ (2 ࣍ਫ਼) CrankNicolson Crank-Nicolson ๏ (2 ࣍ਫ਼) steadyState ఆৗղੳ gradSchemes gradSchemes Ͱޯʹؔ͢ΔࢄԽεΩʔϜΛઃఆ͠·͢ɽޯྫ͑ѹྗ߲ͷ −∇p ͳ Ͳ͕ͦΕʹ͋ͨΓ·͢ɽ ˝ gradSchemes gradSchemes { default Gauss linear; grad(p) Gauss linear; } default Gauss linear ͱ͓ͯ͠Γɼѹྗʹؔͯ͠ Gauss linear ͷઢܗิؒΛࢦఆ͍ͯ͠ ·͢ɽ divSchemes divSchemes Ͱൃࢄʹର͢ΔࢄԽεΩʔϜΛࢦఆ͠·͢ɽྫ͑ରྲྀ߲ ∇(ρuu) ͷܗΛ͠ ͍ͯ·͢ɽphi ϑϥοΫε ψ = ρu Ͱ͢ɽ – 15 – -
2 1 ୈ 1 ষ ΩϟϏςΟྲྀΕ 1.3 ϝογϡ࡞ ˝ ද
1.5: ࣌ؒඍ gradSchemes ख๏ Gauss linear ઢܗิؒ Gauss midPoint ࢉज़ฏۉ Gauss pointLinear ͷ͔Βิؒ leastSquares ࠷খೋ๏ ˝ divSchemes divSchemes { default none; div(phi,U) Gauss linear; } ରྲྀ߲ͷεΩʔϜબΛޡΔͱ֦ࢄ͕ੜͨ͡Γɼղ͕ৼಈͯ͠ෆ҆ఆͳڍಈΛࣔͨ͠Γ͠ ·͢ɽ ˝ ද 1.6: ࣌ؒඍ gradSchemes ख๏ upwind 1 ࣍ਫ਼෩্ࠩ linear ઢܗิؒ (த৺ࠩɺ2 ࣍ਫ਼) linearUpwind ઢܗ෩্ࠩ (2 ࣍ਫ਼෩্ࠩ) QUICK QUICK εΩʔϜ (2 ࣍ਫ਼) Minmod minmod ੍ݶؔ (2 ࣍ਫ਼ TVD) SuperBee superbee ੍ݶؔ (2 ࣍ਫ਼ TVD) vanLeer van Leer ੍ݶؔ (2 ࣍ਫ਼ TVD) vanAlbada van Albada ੍ݶؔ (2 ࣍ਫ਼ TVD) limitedLinear ઢܗิؒʹ TVD ੍ݶΛ͚ͭͨͷ ରྲྀ߲ͷࢄԽεΩʔϜʹେ͖͚ͯ͘ҎԼͷΑ͏ͳಛ͕͋Γ·͢ɽ • 1 ࣍ਫ਼ɿ҆ఆͳղʹͳΓ͍͕֦͢ࢄ͕େ͖͍ • ߴ࣍ਫ਼ɿෆ࿈ଓղΛγϟʔϓʹଊ͍͕͑͢ৼಈ͕େ͖͘ෆ҆ఆʹͳΓ͍͢ ·ͣ҆ఆʹղ͖͍ͨ߹ 1 ࣍ਫ਼෩্ࠩΛ͑ྑ͍Ͱ͢ɽղΛγϟʔϓʹଊ͍͑ͨͷ Ͱ͋Ε TVD εΩʔϜΛ͏͜ͱࢹʹೖΕ·͢ɽ2 ࣍ਫ਼ TVD εΩʔϜɼෆ࿈ଓղΛ γϟʔϓʹଊ͑ͳ͕Δߴ࣍ਫ਼Λҡ࣋͠ͳ͕ΒৼಈΛ͑ΔΑ͏ʹ͕͞Ε͍ͯ·͢ɽ laplacianSchemes laplacianSchemes ͰϥϓϥγΞϯʹର͢ΔࢄԽεΩʔϜΛઃఆ͠·͢ɽྫ͑ ∇ · (ρ∇u) ͷ߲ʹͨΓ·͢ɽີ͕Ұఆͷ߹ඍͷ֎ʹग़ͯ͠ ρ∇2u ͱͳΓ·͢ɽ – 16 – -
2 2 ୈ 1 ষ ΩϟϏςΟྲྀΕ 1.3 ϝογϡ࡞ ˝ laplacianSchemes
laplacianSchemes { default Gauss linear orthogonal; } ˝ ද 1.7: ࣌ؒඍ gradSchemes ख๏ orthogonal ަલఏ uncorrected ඇަิਖ਼ͳ͠ corrected ཅతඇަิਖ਼ limited0ʙ1 ༗ݶඇަิਖ਼ (0:uncorrected,1:corrected) ࠓճͷϝογϡ 6 ໘ମͰަ֨ࢠͷΈͰ͢ͷͰ orthogonal ͰΑ͍Ͱ͢ɽ interpolationSchemes interpolationSchemes Ͱ gradSchemes Ͱઃఆͨ͠ͷͱಉ͡ηϧͷք໘ͷิؒεΩʔϜͰΑ ͍Ͱ͢ɽجຊతʹ linear ͰΑ͍Ͱ͢ɻ ˝ interpolationSchemes interpolationSchemes { default linear; } snGradSchemes snGradSchemes ͱ߹Θ͓͚ͤͯΑ͍Ͱ͢ɽ ˝ snGradSchemes snGradSchemes { default orthogonal; } 1.3.6 ιϧό ํఔࣜͷιϧόʮsystem/fvSolutionʯͰఆٛ͠·͢ɽιϧόͷબجຊతʹ νϡʔτϦΞϧΛͦͷ··͏ͱ͜Ζ͔Β͡ΊΕΑ͍Ͱ͢ɽ ˝ system/fvSolution – 17 – -
2 3 ୈ 1 ষ ΩϟϏςΟྲྀΕ 1.3 ϝογϡ࡞ solvers {
p { solver PCG; preconditioner DIC; tolerance 1e-06; relTol 0.05; } pFinal { $p; relTol 0; } U { solver smoothSolver; smoother symGaussSeidel; tolerance 1e-05; relTol 0; } } PISO { nCorrectors 2; nNonOrthogonalCorrectors 0; pRefCell 0; pRefValue 0; } solvers Ͱ֤ม (U,p) ํఔࣜͷιϧόΛࢦఆ͠·͢ɽ͕ࠩ tolerance ΑΓখ͘͞ͳΔ ͔ɺॳظࠩʹର͢Δൺ͕ relTol ΑΓখ͘͞ͳΔͱܭࢉ͕ऴྃ͢Δɽඇఆৗͷ߹ relTol0 ʹ ͯ͠ tolerance Λेখ͘͞ͱΔΑ͏ʹ͢ΔͱΑ͍Ͱ͢ɽ PISO ѹྗɾ࿈ख๏ͷҰछͰ͋Δ PISO ๏ͷઃఆͰ͢ɽnNonOrthogonalCorrectors ඇަੑิਖ਼ͷϧʔϓճͰɼඇަੑ͕େ͖͍߹ 1 Ҏ্ʹ͢ΔͱΑ͍Ͱ͢ɽࠓճͷέʔε ѹྗنఆͷڥք͕݅ͳ͍ͨΊɼج४ѹྗΛࢦఆ͢Δඞཁ͕͋Γ·͢ɽpRefCell ج४ѹྗΛࢦ ఆ͢Δ֨ࢠ൪߸Λࢦఆ͠ɼpRefValue Ͱج४ѹྗΛࢦఆ͠·͢ɽ – 18 – -
2 4 ୈ 1 ষ ΩϟϏςΟྲྀΕ 1.3 ϝογϡ࡞ 1.3.7 ܭࢉ੍ޚ
ܭࢉ࣌ؒ࣌ؒࠁΈͳͲΛग़ྗ͢Δઃఆʮsystem/controlDictʯͰߦ͍·͢ɽ ˝ system/controlDict application icoFoam; startFrom startTime; startTime 0; stopAt endTime; endTime 0.5; deltaT 0.005; writeControl timeStep; writeInterval 20; purgeWrite 0; writeFormat ascii; writePrecision 6; writeCompression off; timeFormat general; timePrecision 6; runTimeModifiable true; ֤߲ͷҙຯҎԼͷ௨ΓͰ͢ɽ • application ܭࢉͰ༻͢Διϧόʢࠓճ icoFoam) • startFrom ܭࢉ։࢝ઃఆʢstartTime Ͱࢦఆ͔ͨ࣌ؒ͠Β։࢝ɼlatestTime ͱ͢Δͱ࠷৽ͷ ܭࢉ్த͔Βܭࢉ։࢝ʣ • startTime ܭࢉ։࢝࣌ؒͷࢦఆ • stopAt ܭࢉऴྃઃఆʢendTime Ͱࢦఆͨ࣌ؒ͠Ͱऴྃ) • endTime ܭࢉऴྃ࣌ؒͷࢦఆ • deltaT ࣌ؒࠁΈ (Ϋʔϥϯࢦఆͷ߹ॳظͷ࣌ؒࠁΈɼఆৗղੳͷ߹ 1 ͱͯ͠ – 19 – -
2 5 ୈ 1 ষ ΩϟϏςΟྲྀΕ 1.4 ܭࢉ࣮ߦ ͓͘) •
writeControl ܭࢉͷग़ྗઃఆ (timeStep ࣌ؒεςοϓͷճ͝ͱʹग़ྗɼrunTime ͋ Δ࣌ؒܦա͝ͱʹग़ྗʣ • writeInterval ग़ྗִؒͷࢦఆʢtimeStep ͷ߹εςοϓɼrunTime ͷ߹ඵ) • purgeWrite ग़ྗͷ (0 ͱ͍ͯ͠Δͱશͯग़ྗ) • writeFormat ग़ྗͷܗࣜ (binary ͔ ascii) • writePrecision ग़ྗσʔλͷਫ਼ • writeCompression ग़ྗσʔλΛѹॖ͢Δ͔Ͳ͏͔ͷઃఆ (off ѹॖແ͠ɼon ѹॖ) • timeFormat ࣌ؒͷॻࣜ • timePrecision ࣌ࠁͷܻͷઃఆ • runTimeModifiable ιϧό࣮ߦ࣌ʹ controlDict ΛಡΈ͔͢Ͳ͏͔ͷࢦఆ ඞཁʹԠͯ͡ઃఆΛม͍͑ͯͩ͘͞ɽ Ҏ্Ͱ֤ઃఆͷ֬ೝΛऴ͑·ͨ͠ͷͰܭࢉΛ࣮ߦ͠·͢ɽ 1.4 ܭࢉ࣮ߦ ܭࢉͷ࣮ߦʹରԠͨ͠ιϧόͷίϚϯυΛ࣮ߦ͠·͢ɽܭࢉेඵͰऴΘΔͨΊࠓճͷέʔ εͰฒྻܭࢉΛߦ͓ͬͯΓ·ͤΜɽ ˝ ιϧόͷ࣮ߦ icoFoam icoFoam ͷ࣮ߦޙɼಛʹΤϥʔແ͘ਖ਼ৗʹܭࢉ͕ਐΜͰ͍Δ߹ҎԼͷΑ͏ͳϩά͕ग़ྗ͞Ε ·͢ɽ ˝ icoFoam ࣮ߦޙͷϩά ... (লུ) Time = 0.5 Courant Number mean: 0.222158 max: 0.852134 smoothSolver: Solving for Ux, Initial residual = 2.3091e-07, Final resid› ›ual = 2.3091e-07, No Iterations 0 smoothSolver: Solving for Uy, Initial residual = 5.0684e-07, Final resid› ›ual = 5.0684e-07, No Iterations 0 DICPCG: Solving for p, Initial residual = 8.63844e-07, Final residual = › ›8.63844e-07, No Iterations 0 time step continuity errors : sum local = 8.8828e-09, global = 4.94571e-1› – 20 – -
2 6 ୈ 1 ষ ΩϟϏςΟྲྀΕ 1.5 ݁Ռॲཧ ›9, cumulative
= 1.10417e-17 DICPCG: Solving for p, Initial residual = 9.59103e-07, Final residual = › ›9.59103e-07, No Iterations 0 time step continuity errors : sum local = 9.66354e-09, global = 1.13175e-› ›18, cumulative = 1.21735e-17 ExecutionTime = 0.43 s ClockTime = 2 s End ͪ͜Βܭࢉ্͕ख͍͔͘ͳ͔ͬͨͱ͖ʹॏཁͳϩάʹͳΓ·͢ɽղੳઃఆ͕߹͍ͬͯΔ͕ɼ ܭࢉ্ͷܭࢉΤϥʔͷ߹ϩάͷதͷ͕ҟৗͳΛ͍ࣔͯ͠ͳ͍͔Λ֬ೝ͢Δ͜ͱͰΤϥʔ ՕॴΛಛఆ͢Δ͜ͱ͕Ͱ͖·͢ɽ ྫ͑ҎԼͷ͕ेখ͘͞ͳ͍ͬͯΔ͜ͱΛ֬ೝ͠·͢ɽ • Ux,Uy,Uz,p ͷॳظࠩ Solving for Ux, Initial residual = 2.3091e-07 ͱॻ͍͍ͯΔ෦͕ x ํͷͷॳظࠩɽಉ ༷ʹ Uy,Uz,p ֬ೝ • ࿈ଓࣜͷޡࠩ time step continuity errors : sum local = 9.66354e-09, global = 1.13175e-18, cumulative = 1.21735e-17 ܭࢉ͕ഁ͍ͯ͠Δ߹ͪ͜Βͷ͕ҟৗʹେ͖͍Λ͍ࣔͯ͠Δ͜ͱ͕͋Γ·͢ɽ 1.5 ݁Ռॲཧ OpenFOAM ͷ݁ՌՄࢹԽιϑτͷ ParaView Λ͍·͢ɽ֦ுࢠʮ.foamʯͷۭϑΝΠϧΛ ࡞ΓʢϑΝΠϧ໊ԿͰΑ͍ʣParaView ͰಡΈࠐΉ͜ͱͰ OpenFOAM ͷ݁ՌΛಡΈࠐΉ͜ͱ ͕Ͱ͖·͢ɽҎԼͷίϚϯυͰ post.foam ͱ͍͏ۭϑΝΠϧΛ࡞Γ·͢ɽ ˝ ۭϑΝΠϧͷ࡞ touch post.foam ParaVIew Λىಈͯ͠ post.faom ΛಡΈࠐΈ·͢ɽಡΈࠐΜͩঢ়ଶѹྗͷίϯλΛ͍ࣔͯ͠ ·͢ɽ – 21 – -
2 7 ୈ 1 ষ ΩϟϏςΟྲྀΕ 1.5 ݁Ռॲཧ ˛ ਤ
1.6: ParaView ʹΑΔϑΝΠϧͷಡΈࠐΈ ˛ ਤ 1.7: post.foam ಡΈࠐΈޙ – 22 – -
2 8 ୈ 1 ষ ΩϟϏςΟྲྀΕ 1.5 ݁Ռॲཧ ΩϟϏςΟྲྀΕͷղੳͰѹྗͱྲྀΛཧྔͱͯ͠ѻͬͨͨΊσϑΥϧτͰ͜ΕΒͷཧྔΛ දࣔ͢Δ͜ͱ͕Ͱ͖·͢ɽ͜͜ͰྲྀΛϝΠϯʹྲྀίϯλɼྲྀϕΫτϧɼྲྀઢΛ
ParaView ͰՄࢹԽ͍͖ͯ͠·͢ɽ 1.5.1 ྲྀίϯλ ྲྀͷίϯλྲྀͷେ͖͞ͷઢΛ৭͚ͯ͠දࣔͨ͠ͷͰ͢ɽಡΈࠐΜͩޙѹྗͷ ίϯλ͕දࣔ͞Ε͍ͯΔͷͰྲྀίϯλʹΓସ͑·͢ɽ ˛ ਤ 1.8: ྲྀίϯλͷදࣔ σϑΥϧτͷ৭߹͍͔Β͓Έͷ৭߹͍ʹมߋ͢ΔʹʮEdit Color Mapʯ͔Β৭ͷબΛߦ ͍·͢ɽࠓճখ͍͔͞Βେ͖͍ͷมԽΛ੨͔ΒͰදࣔͤ͞ΔʮBlue to Red Rainbowʯ Λબ͍ͯ͠·͢ɽ – 23 – -
2 9 ୈ 1 ষ ΩϟϏςΟྲྀΕ 1.5 ݁Ռॲཧ ˛ ਤ
1.9: Edit Color Map ʹΑΔ৭ͷબ σϑΥϧτͰ৭ 256 ஈ֊ʹ͚ΒΕ͍ͯΔͷͰʮColor DiscretizationʯͰ 10 ஈ֊ʹมߋ͠ ͍ͯ·͢ɽ͜ΕʹΑΓ৭ͷ͚͕͖۠ͬΓͨ͠ͱࢥ͍·͢ɽ – 24 – -
3 0 ୈ 1 ষ ΩϟϏςΟྲྀΕ 1.5 ݁Ռॲཧ ˛ ਤ
1.10: Color Discretization ʹΑΔ৭͚ͷͷࢦఆ ৭߹͍ʹܾ·Γͳ͍Ͱ͕͢ɼղੳ݁ՌΛݟͳ͕ΒٞΛ͢ΔࡍʹΘ͔Γ͍͢৭߹͍ʹ͢Δͷ ͕Α͍Ͱ͢ɽ͜ͷ͋ͨΓݸਓͷΈʹΑΓ·͢ɽ 1.5.2 ྲྀϕΫτϧ ࣍ʹྲྀϕΫτϧΛදࣔ͠·͢ɽϕΫτϧදه Glyph ʹΑΓߦ͍·͢ɽ – 25 – -
3 1 ୈ 1 ষ ΩϟϏςΟྲྀΕ 1.5 ݁Ռॲཧ ˛ ਤ
1.11: Glyph ͷબ ͪ͜Β Glyph ͷσϑΥϧτදهѹྗʹରͯ͠Ͱ͢ͷͰɼ৭ʮSolid ColorʯʹΓସ͑· ͢ɽϕΫτϧͷҹͷେ͖͞ʹྲྀͷେ͖͞ʹԠͯ͡εέʔϧมߋͯ͠ݟ͍ͯ͘͢͠·͢ɽ – 26 – -
3 2 ୈ 1 ষ ΩϟϏςΟྲྀΕ 1.6 ֬ೝࣄ߲ ˛ ਤ
1.12: ϕΫτϧදهͷௐ 1.5.3 ྲྀઢ ࠷ޙʹྲྀઢΛදࣔͤ͞·͢ɽྲྀઢྲྀϕΫτϧΛઢͰͭͳ͍ͩͷͰ͢ɽ·࣭ͨྔͷͳཻ͍ ࢠ͕ͬͨيͱͱΒ͑Δ͜ͱͰ͖·͢ɽ 1.6 ֬ೝࣄ߲ 1.6.1 ࿈ଓࣜͷޡࠩͷ֬ೝ 1.6.2 ࠩͷ֬ೝ 1.6.3 y+ ͷ֬ೝ – 27 – -
3 3 ͋ͱ͕͖ / ͓ΘΓʹ ͍͔͕ͩͬͨͰ͠ΐ͏͔ɻײ࣭ਵ࣌ड͚͚͍ͭͯ·͢ɻ ஶऀհ Χϓϥϯػؔۃ౦ࢧ෦ (@_kauplan) ʠຯظݶ͕
1 ʹຬͨͳ͍Α͏ͳπʔϧϑϨʔϜϫʔΫʹৼΓճ͞ΕΔͷΛڐͯ͠ ͓͚Δ΄Ͳɺզʑͷਓੜ͘ͳ͍ɻ ʡ • https://kauplan.org/ •ʰύϯϓΩϯɾγβʔζʱਪ͠ •ʰϫʔϧυɾτϦΨʔʱਪ͠ •ʰϓϦϯηεɾϓϦϯγύϧʱਪ͠ طץҰཡ •ʰSQL ߴԽ in PostgreSQLʱ ʢٕज़ॻయ 2ʣ •ʰΦϒδΣΫτࢦݴޠղମ৽ॻʱ ʢٕज़ॻయ 3ʣ •ʰjQuery ͩͬͯෳࡶͳΞϓϦ࡞ΕΔΜʂ ʱ ʢٕज़ॻయ 4ʣ •ʰShell εΫϦϓτͰαʔόઃఆΛࣗಈԽ͢Δຊʱ ʢٕज़ॻయ 5ʣ •ʰRuby ͷΤϥʔϝοηʔδ͕ಡΈղ͚ΔΑ͏ʹͳΔຊʱ ʢٕज़ॻయ 6ʣ •ʰΘ͔ΓΈ SQLʱ ʢٕज़ॻయ 7ʣ •ʰPython ͷࠇຐज़ʱ ʢٕज़ॻయ 8ʣ •ʰΧϓϥϯϨϙʔτ vol.01ʱ ʢٕज़ॻయ 10ʣ – 28 – -
3 4 OpenFOAM ॳڃฤ ΩϟϏςΟྲྀΕ 2023 7 ݄ 15
ɹ ver 1.0 ʢٕज़ॻయʣ ஶɹऀ ӉʹೖͬͨΧϚΩϦ ൃߦऀ ΧϚΩϦ ࿈བྷઌ https://takun-physics.net/ https://twitter.com/t_kun_kamakiri ҹॴ ˓˓ҹॴ © 2023 ӉʹೖͬͨΧϚΩϦ (powered by Re:VIEW Starter)