
유체역학 초보자가 Claude Code로 만든 데모를 CAE 스터디에서 발표한 이야기
요약
유체역학 지식이 없는 사용자가 Claude Code의 에이전트 스킬을 활용하여 브라우저 기반의 유체 시뮬레이션 데모를 제작한 사례입니다. 인터뷰 및 사양서 작성 등 Claude Code의 에이전트 기능을 통해 단시간에 결과물을 만들어내는 과정을 담고 있습니다.
핵심 포인트
- Claude Code의 에이전트 스킬을 활용한 전문 분야 구현 가능성 확인
- interview-me 스킬을 통한 요구사항 구체화 및 사양서 작성
- 외부 라이브러리 없이 단일 HTML 파일로 완결된 데모 제작
- AI 생성 결과물에 대한 전문가 검증 및 구현 사실 확인의 중요성
이 기사에서 알 수 있는 것
- 유체역학 전문 지식이 없더라도, Claude Code의 에이전트 스킬을 조합하면 "보기에 재미있는" 유체 시뮬레이션 데모를 HTML 파일 한 장으로 만들 수 있다는 것
- 그 데모를 CAE 엔지니어 대상 사내 스터디에서 LT(Lightning Talk) 발표했을 때, "항력 계수(Drag Coefficient)가 이상한 것 아니냐"라는 코멘트를 받았다는 것
- 돌아와서 Claude Code에게 확인해 보니, 애초에 항력 계수를 계산하지 않았다는 구현상의 사실과 그로부터 얻은 교훈
배경
CAE 스터디에서 15분의 LT 시간을 할당받았습니다. 저 자신은 유체역학 전문 지식을 거의 가지고 있지 않습니다. Claude Code(Sonnet 5계열)와 유체 시뮬레이션의 인터랙티브한 브라우저 데모를 직접 만들기로 했습니다. 발표 당일 아침에 소프트웨어와 자료를 2시간 남짓한 시간 동안 만들었습니다. AI 정말 대단하네요.
환경은 다음과 같습니다.
- Claude Code(Sonnet 5계열)로 HTML+JavaScript 생성
- 외부 라이브러리·외부 CDN·외부 폰트는 일절 사용하지 않고,
fluid.html파일 하나로 완결 (발표 당일 네트워크 불안정 리스크를 피하기 위해) - WebGL을 사용하지 않고 Canvas 2D 사용. 발표용 PC의 스펙을 예측할 수 없었기 때문에, 160×100 그리드의 CPU 계산으로 60fps 근처를 확보할 수 있는 규모로 제한함
만든 것
2D 비압축성 Navier-Stokes 방정식 (Stable Fluids 법)을 직접 구현한, 브라우저만으로 동작하는 유체 시뮬레이션입니다.
- 씬 1 「자유 교반」: 장애물 없음. 마우스로 드래그하면 연기(dye)가 그 자리에서 휘저어지며, 속도장(Velocity Field)·와도(Vorticity)를 실시간으로 표시
- 씬 2 「카르만 와류(Karman Vortex)」: 원기둥 장애물을 배치하고, 왼쪽에서 일정하게 유입되는 풍동(Wind Tunnel) 같은 설정. 레이놀즈 수(Reynolds number) 슬라이더(Re=5~800)를 움직이면 층류(Laminar flow) → 정체된 와류 쌍 → 카르만 와류열(Karman vortex street)로의 변화를 즉석에서 오갈 수 있음 - 화면 하단에 표시되는 속도장·와도·레이놀즈 수 수치는 연출이 아니라 매 프레임의 시뮬레이션으로부터 실제로 계산된 값
에이전트 스킬을 찾는 것부터 시작했다
유체역학 구현은 완전히 미지의 영역이었기 때문에, 우선 Claude Code에게 에이전트 스킬을 찾아달라고 요청했고, 그중에서 fluid-dynamicist를 선택했습니다. Navier-Stokes나 무차원 수(레이놀즈 수 등)를 바탕으로 구현 및 설명을 구성해 주는 스킬입니다.
요건을 확정하는 단계에서는 interview-me 스킬(이른바 grillMe)을 사용했습니다. "무엇을 보여주고 싶은가"를 일문일답 형식으로 심층 질문받으면서, 인터넷 정보도 참조하여 사양서(spec.md)로 정리했습니다. 유체역학 해설이나 LT 대본(LT대본.md)도 마찬가지로 Claude Code가 작성하게 했으며, 제가 지식이 없는 부분은 말할 내용 자체를 맡겨버렸습니다.
발표 본방에서 받은 지적
"항력 계수가 이상한 것 아니냐" 등의 코멘트를 받았습니다. 전제 조건의 차이에 따른 시각적 차이인지, 저의 지식 부족인지, Claude Code의 구현 실수인지 그 자리에서는 구분할 수 없었습니다.
솔직히 느낀 점은 "전문가는 대단하다"는 것이었습니다. 전문가가 평소에 보는 와류나 흐름의 형태와 이번 데모의 모습 사이에는 분명 어떤 차이가 있었을 것입니다. 전제 조건을 스스로 세세하게 설명할 수 있는 스킬이 있었다면 조금 더 논의할 수 있었을지도 모릅니다.
돌아와서 확인해 보니
귀가 후, Claude Code에게 "항력 계수 설정 부분을 재검토하는 것이 좋지 않겠느냐"라고 물으니, "애초에 항력 계수(Cd)는 계산하지 않았다"라는 답변이 돌아왔습니다. 소스를 확인해 보니, 원기둥에 가해지는 힘을 압력이나 전단 응력(Shear stress)으로부터 적분하는 처리는 없었으며, 화면에 출력하고 있었던 것은 레이놀즈 수(Re = U・D/ν)와 속도장·와도의 가시화뿐이라고 Claude가 설명해 주었습니다.
처음에는 이 답변이 변명처럼 느껴졌지만, 구현에서 유일하게 "힘"을 인위적으로 주입하고 있는 부분은 찾아냈습니다. 와도 강화(vorticity confinement)라는 수치 안정화 테크닉이라고 Claude가 설명해 주었습니다.
// fluid.html 발췌: 와도 강화 (Fedkiw, Stam & Jensen 2001)
// 거친 격자의 수치 점성으로 인한 과감쇠(over-damping)를 보정하기 위한 인위적인 힘
const CONFINEMENT_EPS = 6.0; // 와도 강화 계수
...
이것은 거친 격자(160×100)에서 와도(vortex)가 수치 점성(numerical viscosity)에 의해 과도하게 감쇠하는 것을 보정하기 위한 트릭으로, 물리적인 항력 계수(drag coefficient)와는 무관하다고 Claude가 설명해 주었습니다. 다만 계수 값에 따라 와도가 실제 레이놀즈 수(Reynolds number) 이상으로 강조되어 보일 가능성은 있다고 생각합니다. 지적해 준 CAE 엔지니어의 눈에는 이 인위적인 힘이 레이놀즈 수 의존적인 물리적 거동과 맞지 않아 위화감으로 비춰졌던 것이 아닐까 추측합니다 (지적자 본인에게 확인한 것은 아니며, 어디까지나 저의 추측입니다).
이 경험을 통해 얻은 것
Claude Code도 완벽하지는 않습니다. 첫 질문에는 계산하지 않은 사실을 설명할 뿐, 와도가 보이는 방식에 위화감이 생긴 이유까지는 깊이 파고들어 주지 않았으며, 와도 강조 계수에 도달할 수 있었던 것은 제가 직접 심층적으로 질문했기 때문입니다. 전문 지식이 있는 사람이 실제로 소스 코드를 확인하거나, Claude Code와 직접 상호작용하는 편이 더 정확하게 검증할 수 있다고 느꼈습니다.
그럼에도 불구하고, 이번 데모 제작 자체에는 큰 보람을 느꼈습니다. 유체역학 전문 지식이 전혀 없는 상태에서 fluid-dynamicist와 interview-me라는 에이전트 스킬(agent skill), 그리고 인터넷 검색을 조합하는 것만으로 전문가 앞에서 15분간의 LT(Lightning Talk)가 성립할 수준의 데모를 만들 수 있었기 때문입니다. 모르는 영역이라도 좋은 에이전트 스킬과 조합하면 실용적인 것을 만들 수 있다는 체감은 이번에 얻은 가장 큰 수확입니다.
요약
전문 분야가 아닌 유체역학 데모를 Claude Code로 만들어 CAE 스터디에서 LT 발표를 진행했을 때, "항력 계수가 이상한 것 아니냐"라는 지적을 받았습니다. 조사해 보니 항력 계수는 애초에 구현되어 있지 않았으며, 와도를 인위적으로 강조하는 수치 안정화 계수(CONFINEMENT_EPS)가 지적의 배경에 있었던 것이 아닐까 추측하고 있습니다.
전문 지식이 없는 영역이라도 에이전트 스킬을 조합하면 작동하는 것은 만들 수 있는 반면, 그 정확성을 검증하기 위해서는 해당 영역에 정통한 사람이 소스 코드나 Claude Code와의 상호작용을 직접 확인하는 공정이 필수적이라고 느꼈습니다.
이 영상을 보고, 이 부분이 이상하다고 명확하게 알려줄 분이 계시면 좋겠습니다.
LT 전후로 유체역학 기초 공부를 하여, 다른 분들의 발표를 통해 이 분야에서도 조금은 성장할 수 있었던 것 같습니다.
덧붙여, 이번 스터디에서는 CAE를 담당하시는 분들의 AI 활용 능력이 매우 높다는 점에도 놀랐습니다. 이 점은 별도의 기사에서 소개할 예정입니다.
Discussion

AI 자동 생성 콘텐츠
본 콘텐츠는 Zenn AI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기