์ด ๋ฌธ์„œ์˜ ์›๋ณธ์€ ์™ธ๋ถ€ ์œ„ํ‚ค์—์„œ ๊ฐ€์ ธ์™”์Šต๋‹ˆ๋‹ค.
1. ๊ฐœ์š”2. ์‚ฌ์šฉ๋ฒ•3. ๊ด€๋ จ ์™ธ๋ถ€๋งํฌ4. ๊ด€๋ จ ํ”„๋กœ๊ทธ๋žจ

1. ๊ฐœ์š”[ํŽธ์ง‘]

๋ฌด๋ฃŒ์ด์ž ์˜คํ”ˆ์†Œ์Šค ์†Œํ”„ํŠธ์›จ์–ด ํŒจํ‚ค์ง€๋กœ OpenFOAM ์žฌ๋‹จ์—์„œ ์ƒํ‘œ๊ถŒ์„ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค. OpenFOAM ์žฌ๋‹จ(ํ™ˆํŽ˜์ด์ง€)์—์„œ ๊ด€๋ฆฌํ•˜๋Š” ๋ฒ„์ „๊ณผ Extend-Project(ํ™ˆํŽ˜์ด์ง€)์—์„œ ๊ด€๋ฆฌํ•˜๋Š” ๋ฒ„์ „ ๋“ฑ ๋‘ ๊ฐ€์ง€์˜ ๋‹ค๋ฅธ ๋ฒ„์ „์ด ๊ด€๋ฆฌ๋˜๊ณ  ์žˆ์œผ๋ฉฐ ๋‘ ๋ฒ„์ „์€ ๊ฐ๊ฐ ๋ณ„๊ฐœ๋กœ ๊ฐœ๋ฐœ๋˜๊ณ  ์žˆ๋‹ค. ์ „์‚ฐ์œ ์ฒด์—ญํ•™์„ ํ’€๊ธฐ ์œ„ํ•˜์—ฌ ๊ฐœ๋ฐœ์ด ์‹œ์ž‘๋˜์—ˆ์œผ๋‚˜ ํŽธ๋ฏธ๋ถ„๋ฐฉ์ •์‹ ํ˜•ํƒœ์˜ ๋‹ค์–‘ํ•œ ๋ณด์กด๋ฐฉ์ •์‹์„ FVM ๊ธฐ๋ฒ•์„ ์ด์šฉํ•˜์—ฌ ํ’€ ์ˆ˜ ์žˆ๋„๋ก ๊ตฌ์„ฑ๋˜์–ด ์žˆ์œผ๋ฉฐ, ํฌํ•จ๋œ ๋ฐฉ๋Œ€ํ•œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์ด์šฉํ•˜์—ฌ ์••์ถ•์„ฑ๊ณผ ๋น„์••์ถ•์„ฑ์„ ํฌํ•จํ•œ ๋ณต์žกํ•œ ์œ ์ฒด ์œ ๋™, ์ง์ ‘์ˆ˜์น˜ํ•ด์„๋ฒ•(DNS), ํ™”ํ•™๋ฐ˜์‘, ๋‚œ๋ฅ˜(Turbulence), ์—ด์ „๋‹ฌ, ์ „์ž๊ธฐ์žฅ, ๊ณ ์ฒด์—ญํ•™, ๊ธˆ์œต๊ณตํ•™ ๋ฌธ์ œ ๋“ฑ์„ ์‹œ๋ฎฌ๋ ˆ์ด์…˜ ํ•  ์ˆ˜ ์žˆ๋‹ค.

์˜คํ”ˆ ์†Œ์Šค ์†Œํ”„ํŠธ์›จ์–ด์˜ ํŠน์„ฑ ์ƒ ํ”„๋กœ๊ทธ๋žจ ์ž์ฒด์˜ ํŽธ์ง‘์ด ์ž์œ ๋กœ์šด ํŽธ์ด๋‹ค. ์ด ๋•Œ๋ฌธ์— ๋‹ค๋ฅธ ์ƒ์šฉ์†Œํ”„ํŠธ์›จ์–ด๋“ค (fluent, CFX, STARCD ๋“ฑ) ๊ณผ๋Š” ๋‹ค๋ฅด๊ฒŒ ์›ํ•˜๋Š” ๊ธฐ๋Šฅ์„ ์ง์ ‘ ํ”„๋กœ๊ทธ๋ž˜๋ฐํ•˜์—ฌ ์ ์šฉ ์‹œํ‚ฌ ์ˆ˜ ์žˆ๋‹ค๋Š” ์ ์ด ๊ฐ€์žฅ ํฐ ๊ฐ•์ ์ด๋‹ค. ํ•˜์ง€๋งŒ GUI์˜ ๋ถ€์žฌ๋กœ ์ธํ•ด(post processing์˜ ๊ฒฝ์šฐ์—๋Š” ParaView๋ผ๋Š” ์„œ๋“œํŒŒํ‹ฐ ํ”„๋กœ๊ทธ๋žจ์„ ์—ฐ๋™ํ•˜์—ฌ ์†์‰ฝ๊ฒŒ ์ง„ํ–‰ ํ•  ์ˆ˜ ์žˆ๋‹ค.) ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•  ๋•Œ ์ง„์ž…์žฅ๋ฒฝ์ด ๋†’๋‹ค. ์•ž์„œ ์–ธ๊ธ‰ํ•œ ์ƒ์šฉ์†Œํ”„ํŠธ์›จ์–ด๋“ค์ด ๋งˆ์šฐ์Šค ํด๋ฆญ ๋ช‡ ๋ฒˆ๊ณผ ํ‚ค๋ณด๋“œ ํƒ€์ดํ•‘ ๋ช‡ ๋ฒˆ์œผ๋กœ ์†์‰ฝ๊ฒŒ ์‹œ๋ฎฌ๋ ˆ์ด์…˜์„ ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ๊ณผ๋Š” ๋‹ค๋ฅด๊ฒŒ, ์ดˆ๊ธฐ์น˜์™€ ๊ฒฝ๊ณ„์กฐ๊ฑด, ๊ฐ์ข… ์ƒ์ˆ˜๋“ค์„ ํฌ๋งท์— ๋งž๊ฒŒ ํ”„๋กœ๊ทธ๋žจ ํ•˜๋“ฏ์ด ์ฝ”๋”ฉ(ํ”„๋กœ๊ทธ๋žจ์ด C++๋กœ ์งœ์—ฌ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์ฝ”๋”ฉ์ด ๋งž๋‹ค.)ํ•ด ์ฃผ์–ด์•ผ ํ•œ๋‹ค. ๊ฑฐ๊ธฐ๋‹ค ํ”„๋กœ๊ทธ๋žจ์ด ์ง€์›ํ•˜์ง€ ์•Š๋Š” ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์ •๋ง๋กœ C++์ฝ”๋”ฉ์„ ์ œ๋Œ€๋กœ ํ•ด์•ผํ•œ๋‹ค.

๋˜ํ•œ MPI๊ฐ€ ์ง€์›๋˜์—ฌ ๋ฉ€ํ‹ฐ์ฝ”์–ด๋ฅผ ์‚ฌ์šฉํ•ด ์‹œ๋ฎฌ๋ ˆ์ด์…˜์˜ ์†๋„๋ฅผ ์ฆ๊ฐ€ ์‹œํ‚ฌ ์ˆ˜ ์žˆ๋‹ค. ๋”ฐ๋ผ์„œ ์ผ๋ฐ˜ PC๋ณด๋‹ค๋Š” ๋˜๋„๋ก ์ž์‹  ์ฃผ์œ„์— ์‚ฌ์šฉ๊ฐ€๋Šฅํ•œ ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ ์žˆ๋Š”์ง€ ํ™•์ธํ•ด๋ณด๊ณ  ๊ทธ๊ณณ์— ์„ค์น˜ํ•ด์„œ ์‚ฌ์šฉํ•˜๋„๋ก ํ•˜์ž.

์ฒ˜์Œ ์„ค์น˜๋ฅผ ํ•˜๊ฒŒ ๋˜๋ฉด ์‹คํ–‰ ํŒŒ์ผ ํ•˜๋‚˜ ์—†์ด ํด๋”๋งŒ ๋†“์—ฌ ์žˆ์–ด ๋ฌด์—‡๋ถ€ํ„ฐ ํ•ด์•ผํ•˜๋Š”์ง€ ๋‚œ๊ฐ ํ•˜๋ฏ€๋กœ, ์ต์ˆ™ํ•ด ์ง€๊ธฐ ์ „๊นŒ์ง€ ํŠœํ† ๋ฆฌ์–ผ ํด๋” ์•ˆ์— ์žˆ๋Š” ๊ฐ์ข… ์˜ˆ์ œ๋ฅผ ์ฐธ๊ณ ํ•˜์—ฌ ์—ฐ์Šตํ•ด ๋ณด๋Š” ๊ฒƒ์ด ํ•„์š”ํ•˜๋‹ค.

2. ์‚ฌ์šฉ๋ฒ•[ํŽธ์ง‘]

OpenFOAM์„ ์‚ฌ์šฉํ•˜๋Š”๋ฐ ์žˆ์–ด์„œ๋Š” ์„ธ ๊ฐœ์˜ ํด๋”์— ์ž์‹ ์ด ์›ํ•˜๋Š” ์ •๋ณด๋ฅผ ์ž…๋ ฅํ•˜์—ฌ ๋„ฃ์–ด ์ฃผ์–ด์•ผ ํ•œ๋‹ค.
  • ์ดˆ๊ธฐ์น˜ ๋ฐ ๊ฒฝ๊ณ„ ์กฐ๊ฑด ("0" ํด๋”): ์‹œ๋ฎฌ๋ ˆ์ด์…˜ ํ•˜๊ณ ์ž ํ•˜๋Š” ๋ชจ๋“  ์Šค์นผ๋ผ์™€ ๋ฒกํ„ฐ๋“ค(์†๋„, ์˜จ๋„, ์••๋ ฅ ๋“ฑ; ์••๋ ฅ์˜ ๊ฒฝ์šฐ ์••์ถ•์„ฑ ์œ ๋™๊ณผ ๋น„ ์••์ถ•์„ฑ ์œ ๋™์˜ ๋‹จ์œ„๊ฐ€ ๋‹ค๋ฅด๋ฏ€๋กœ ์ž‘์„ฑ์— ์ฃผ์˜ ํ•˜์ž.)์˜ ์ดˆ๊ธฐ์น˜ ๋ฐ ๊ฒฝ๊ณ„ ์กฐ๊ฑด์„ ์ž…๋ ฅ ํ•ด ์ฃผ์–ด์•ผ ํ•œ๋‹ค.
  • ์ƒ์ˆ˜ ("constant" ํด๋”): ์‹œ๋ฎฌ๋ ˆ์ด์…˜์„ ํ•˜๋Š”๋ฐ ํ•„์š”ํ•œ ๋ฌผ์„ฑ์น˜๋“ค๊ณผ ๋ฉ”์‰ฌ์— ๋Œ€ํ•œ ์ •๋ณด๊ฐ€ ๋“ค์–ด๊ฐ„๋‹ค. ๊ธฐ๋ณธ์ ์œผ๋กœ OpenFOAM์„ blockMesh๋ผ๋Š” structured mesh ์ƒ์„ฑ๊ธฐ๊ฐ€ ํฌํ•จ ๋˜์–ด ์žˆ๋Š”๋ฐ, ๋งค์šฐ ๊ท€์ฐฎ์€ ์ผ๋ จ์˜ ๊ณผ์ •๋“ค์„ ํ†ตํ•ด (hexahedron ๋ฉ”์‰ฌ๋ฅผ ์ƒ์„ฑํ•˜๋Š”๋ฐ ์žˆ์–ด ๋ชจ๋“  ์ ๋“ค์„ ์˜ค๋ฅธ์† ๋ฒ•์น™์— ์˜๊ฑฐํ•˜์—ฌ ์ž…๋ ฅํ•ด์•ผ๋งŒ ํ•œ๋‹ค๊ฑฐ๋‚˜, ์ž…๋ ฅ๋˜๋Š” ์ ๋“ค์˜ ์ •๋ณด๋กœ ์ขŒํ‘œ๊ณ„๊ฐ€ ๊ฒฐ์ •๋˜๊ธฐ ๋•Œ๋ฌธ์— ์ž„์˜๋กœ ์ž…๋ ฅํ•˜๋ฉด ์•ˆ๋œ๋‹ค๊ฑฐ๋‚˜ ํ•˜๋Š” ๋“ฑ์˜ ๊ณ ๋ ค๋ฅผ ๋‹ค ํ•œ ํ›„) ๋ฉ”์‰ฌ๋ฅผ ์ƒ์„ฑํ•˜๋ฉด, ๋ชจ๋“  ์ , ๋ฉด ๋“ฑ์˜ ์ •๋ณด๊ฐ€ ๋ฐ”๋กœ ์ด ํด๋” ์•ˆ์˜ polymeshํด๋”์— ์ €์žฅ์ด ๋œ๋‹ค. ์ด ๊ณผ์ •์„ ํŽธํ•˜๊ฒŒ ํ•˜๋ ค๋ฉด ์ž์‹ ์ด ์ต์ˆ™ํ•œ CAD ํ”„๋กœ๊ทธ๋žจ์œผ๋กœ geometry๋ฅผ ์ž‘์„ฑํ•˜๊ณ , Meshingํ”„๋กœ๊ทธ๋žจ์„ ์ด์šฉํ•˜์—ฌ FLUENT ํฌ๋งท์œผ๋กœ ์ €์žฅํ•˜์ž. OpenFOAM์—๋Š” FLUENT ๋ฉ”์‰ฌ ํŒŒ์ผ์„ ๋ณ€ํ™˜์‹œ์ผœ์ฃผ๋Š” ํˆด์ด ์žˆ์–ด ์†์‰ฝ๊ฒŒ ์ฃผ์–ด์ง„ ๋ฉ”์‰ฌ๋ฅผ ์ด์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ์ œ์–ด ํŒŒ์ผ ("system" ํด๋”): ์ˆ˜์น˜ํ•ด์„ ๋ฐฉ๋ฒ•์„ ๋ณ€๊ฒฝํ•˜๊ฑฐ๋‚˜, relaxation factor, timestep๋“ฑ ์žก๋‹คํ•˜์ง€๋งŒ ๋งค์šฐ ํ•„์š”ํ•œ ์ •๋ณด๋“ค์ด ์ €์žฅ๋œ๋‹ค.

3๊ฐ€์ง€ ์ •๋ณด๊ฐ€ ๋‹ค ์ž…๋ ฅ๋˜๋ฉด ์ปค๋งจ๋“œ ์ฐฝ์—์„œ ์ž์‹ ํžˆ ์‚ฌ์šฉํ•˜๋ ค๊ณ  ํ•˜๋Š” solver๋ฅผ ์น˜๋ฉด ์‹œ๋ฎฌ๋ ˆ์ด์…˜์ด ์‹œ์ž‘๋œ๋‹ค.

3. ๊ด€๋ จ ์™ธ๋ถ€๋งํฌ[ํŽธ์ง‘]

์˜คํ”ˆํผ ํ•™์Šต ๋ธ”๋กœ๊ทธ : https://onedayof.tistory.com/98

4. ๊ด€๋ จ ํ”„๋กœ๊ทธ๋žจ[ํŽธ์ง‘]