ํ”ผ๋“œ๋กœ ๋Œ์•„๊ฐ€๊ธฐ
Building a Groundwater Analysis Tool๐ŸŒŠ
Dev.toDev.to
Backend

FastAPI์™€ NumPy ๊ธฐ๋ฐ˜์˜ ์ง€ํ•˜์ˆ˜ ๋น„์ €ํ•ญ ๋ถ„์„ ์ž๋™ํ™” ๋„๊ตฌ ๊ตฌํ˜„

Building a Groundwater Analysis Tool๐ŸŒŠ

Anjana Kumari2026๋…„ 4์›” 26์ผ1๋ถ„beginner

Context

์ˆ˜๋™ Log-log Graph ์ž‘์„ฑ ๋ฐ ์ง€์ธต ํ•ด์„์œผ๋กœ ์ธํ•œ ๋ถ„์„ ํšจ์œจ ์ €ํ•˜ ๋ฌธ์ œ ๋ฐœ์ƒ. ๋ฌผ๋ฆฌ์  ์ธก์ • ๋ฐ์ดํ„ฐ๋ฅผ ๋””์ง€ํ„ธํ™”ํ•˜์—ฌ ๋ถ„์„ ๊ณต์ˆ˜๋ฅผ ์ค„์ด๊ธฐ ์œ„ํ•œ ์ž๋™ํ™” ๋„๊ตฌ ํ•„์š”์„ฑ ๋Œ€๋‘.

Technical Solution

  • Schlumberger formula ๊ธฐ๋ฐ˜์˜ Resistivity Computation Engine ์„ค๊ณ„๋ฅผ ํ†ตํ•œ ๊ฒ‰๋ณด๊ธฐ ๋น„์ €ํ•ญ ์ž๋™ ์‚ฐ์ถœ
  • ์ง€์ธต ํŠน์„ฑ์— ๋”ฐ๋ฅธ Curve Type Classifier ๊ตฌํ˜„์œผ๋กœ A, H, K, Q ์œ ํ˜•์˜ ์ž๋™ ๋ถ„๋ฅ˜ ์ฒด๊ณ„ ๊ตฌ์ถ•
  • Pydantic์„ ํ™œ์šฉํ•œ Data Validation ๊ณ„์ธต ๋„์ž…์œผ๋กœ ์ž…๋ ฅ ๋ฐ์ดํ„ฐ์˜ ๋ฌด๊ฒฐ์„ฑ ๋ณด์žฅ ๋ฐ ๋Ÿฐํƒ€์ž„ ์—๋Ÿฌ ๋ฐฉ์ง€
  • FastAPI์™€ Swagger Docs ์กฐํ•ฉ์„ ํ†ตํ•œ ๋ถ„์„ ๋กœ์ง์˜ API ์ธํ„ฐํŽ˜์ด์Šค ํ‘œ์ค€ํ™”
  • React์™€ Plotly ๊ธฐ๋ฐ˜์˜ ์‹œ๊ฐํ™” ๊ณ„์ธต ๊ตฌ์ถ•์„ ํ†ตํ•œ sounding curves์˜ ๋™์  ๋ Œ๋”๋ง ๊ตฌํ˜„

- ๋„๋ฉ”์ธ ํŠนํ™” ์ˆ˜์‹์„ NumPy ๊ธฐ๋ฐ˜์˜ ๊ณ„์‚ฐ ์—”์ง„์œผ๋กœ ๋ถ„๋ฆฌํ•˜์—ฌ ๋กœ์ง ์žฌ์‚ฌ์šฉ์„ฑ ํ™•๋ณด - Pydantic ๋ชจ๋ธ์„ ํ†ตํ•œ ์ž…๋ ฅ ๋ฐ์ดํ„ฐ ๊ฒ€์ฆ์œผ๋กœ ๊ณ„์‚ฐ ์—”์ง„์˜ ์•ˆ์ •์„ฑ ๊ฐ•ํ™” - Plotly์™€ ๊ฐ™์€ ์ „๋ฌธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ํ™œ์šฉํ•œ ๋ฐ์ดํ„ฐ ์‹œ๊ฐํ™” ์ธํ„ฐํŽ˜์ด์Šค ๊ตฌ์ถ•

์›๋ฌธ ์ฝ๊ธฐ