1. 개요[편집]
| 심위키 simwiki | |
|---|---|
| 정체 | 시뮬레이션·수치해석 전문 위키 |
| 주소 | simwiki.cc |
| 구성 | Astro 5 정적 사이트 (서버·DB 없음) |
| 문서 형식 | 마크다운 + KaTeX, 파일명 = 제목 = URL |
| 라이선스 | CC BY-NC-SA 2.0 KR |
| 시뮬레이션 | 브라우저에서 실제로 도는 수치 커널 222종 |
| 소스 | github.com/younglin90/simwiki |
심위키(simwiki)는 시뮬레이션과 수치해석 전반을 나무위키 문체로 정리하는 한국어 위키다. 전산유체역학부터 유한요소법, 분자동역학, 양자 몬테카를로, 게임 엔진의 물리 틱까지 — “수식을 이산화해서 컴퓨터에 갈아넣는 모든 짓” 을 한 지붕 아래 모으는 것이 목표다.
출발점은 단순한 불만이었다. 이 바닥의 한국어 자료는 대학원 강의노트 PDF 아니면 블로그 단편인데, 전자는 진입장벽이 높고 후자는 맥락이 없다. 영어로 검색하면 위키백과가 나오지만 위키백과는 왜 그 기법을 쓰는지, 실무에서 어디서 터지는지를 잘 말해주지 않는다. 심위키는 그 사이를 노린다. 정의와 수식은 교과서만큼 정확하게, 설명은 옆자리 선배가 화이트보드에 그려주듯이.
현재 문서 수는 1,200편대이며 매일 새벽 자동 집필 루틴이 몇 편씩 늘린다.1
2. 무엇을 다루는가[편집]
분류 체계는 대략 이렇게 잡혀 있다. 하나의 문서가 여러 분류에 걸리는 것은 정상이다 — 격자 볼츠만 방법은 유체이자 수치해석이자 계산물리다.
- 수치해석 기반 — 이산화, 선형계 풀이, 시간적분, 오차·안정성 해석. 유한차분법 · 유한체적법 · 룽게-쿠타법 · LU 분해 같은 것들.
- 전산유체역학·유체역학·난류 — 나비에-스토크스 방정식을 푸는 온갖 방법과, 푸는 도중에 터지는 온갖 문제.
- 구조해석·고체역학·최적설계 — 강성행렬부터 위상최적화까지.
- 전자기해석·양자역학·양자화학·계산물리 — 맥스웰 방정식 이산화, 밀도범함수이론, 이징 모형, 초전도.
- 분자동역학·계산화학 — 힘장, 적분기, 앙상블, 자유에너지.
- 통계·컴퓨터 그래픽스·게임 개발·소프트웨어 — 몬테카를로 방법, 렌더링, 충돌 처리, 그리고 이 모든 걸 돌리는 도구들.
「이게 시뮬레이션이랑 무슨 상관인가」 싶은 문서도 가끔 있다. 열역학 제2법칙처럼 시뮬레이션 결과를 해석할 때 필요한 물리 기초는 다룬다는 것이 편집 방침이다. 수치적으로 풀 일이 아예 없는 순수 이론은 다루지 않는다.
3. 편집 방침 (정확성 기준)[편집]
심위키는 드립을 치지만 드립은 프레이밍에만 얹는다. 정의·수식·수치는 진지하게 쓴다. 구체적으로는 네 줄이다.
- 과장·허위 금지. “이 방법이 최고다” 같은 문장은 조건 없이 쓰지 않는다. 모든 기법에는 적용 범위가 있고, 그 범위 밖에서 터지는 방식을 같이 적는 것이 이 위키의 존재 이유다.
- 모르면 안 쓴다. 확실하지 않은 연도·인명·계수는 비워두거나 “논쟁이 있다”고 적는다. 그럴듯한 숫자를 채워 넣는 것이 가장 나쁜 실패다.
- V&V 정신. 검증(verification, 방정식을 제대로 풀었는가)과 확인(validation, 제대로 된 방정식을 풀었는가)은 다른 질문이다. 문서는 가능하면 이 둘을 구분해 서술한다.
- 중복 문서를 만들지 않는다. 같은 주제로 두 번째 파일을 만드는 대신 기존 문서를 확장한다. 문서가 많아지는 것보다 문서가 갈라지는 것이 더 나쁘다.
빨간 링크(존재하지 않는 문서로의 링크)는 버그가 아니라 기능이다. 다음에 무엇을 써야 하는지를 위키 스스로 알려주는 백로그이며, 새 문서 대부분이 그 목록에서 나온다.
4. 시뮬레이션 임베드에 대한 고지[편집]
문서 곳곳에 캔버스가 박혀 있고 재생 버튼이 달려 있다. 이것들은 GIF도, 미리 녹화한 애니메이션도 아니다. 브라우저에서 실제 수치 알고리즘이 매 프레임 도는 것이다. 격자 볼츠만 방법 문서의 시뮬은 진짜로 분포함수를 스트리밍·충돌시키고, 난류 문서의 시뮬은 진짜로 이산화된 방정식을 시간적분한다.
다만 해상도는 장난감 수준이다. 격자는 160×80 이하, 입자는 2,000개 이하, 프레임당 솔버 시간 8 ms 이하라는 예산 안에서 돈다. 휴대폰에서도 배터리를 태우지 않고 돌아야 하기 때문이다. 그래서 다음을 분명히 해둔다.
- 임베드된 결과는 개념의 정성적 거동을 보여주기 위한 것이지, 정량적 예측값이 아니다. 여기서 읽은 항력계수를 보고서에 쓰지 마라.
- 경계조건·물성은 대개 단순화돼 있고, 단순화한 지점은 캡션이나 각주에 적는다.
- 시뮬이 없는 문서도 많다. 커널 하나는 문서 하나에만 배정한다는 규칙 때문인데, 억지로 관련 없는 시뮬을 붙이느니 없는 편이 낫다는 판단이다.2
- 접근성 설정에서 “동작 줄이기”를 켜 두면 시뮬은 자동으로 정지 상태의 첫 프레임만 보여준다.
전체 시뮬 목록은 시뮬레이션 목록 페이지에 있다.
5. 구조와 기술[편집]
서버도 데이터베이스도 없다. 마크다운 파일 더미를 Astro 5가 정적 HTML로 굽고, 그 결과물을 통째로 올린다. 그래서 다음이 따라온다.
- 검색은 빌드 타임에 만들어둔
/search-index.json을 브라우저가 받아서 클라이언트에서 돌린다. 서버 질의가 없으니 오프라인에서도 동작하고, 대신 인덱스가 커지면 첫 로딩이 무거워진다는 트레이드오프가 있다. - 수식은 KaTeX로 빌드 타임에 렌더링된다. 페이지가 뜬 뒤에 수식이 튀는 현상이 없는 대신, 런타임에 수식을 조립할 수는 없다.
- 문단 번호·[편집] 표시·빨간 링크는 자체 rehype 플러그인이 마크다운을 훑으며 붙인다. 나무위키의 시각적 문법을 흉내 낸 부분이다.
- 문서의 파일명이 곧 제목이자 URL이다.
src/content/wiki/엔트로피.md→/w/엔트로피. 단순한 대신 제목을 바꾸면 링크가 깨지므로 개명은 신중하게 한다.
[편집] 링크를 눌러도 편집창이 열리지 않는다. 심위키는 읽기 전용으로 배포되며, 수정은 저장소의 마크다운을 고치는 방식으로만 이뤄진다.
6. 틀린 내용을 발견했다면[편집]
제보를 환영한다. 이 위키는 사람과 기계가 같이 쓰고 있어서, 인명·연도·계수가 틀렸을 가능성이 실재한다. 발견하면 깃허브 저장소에 이슈를 열거나 직접 src/content/wiki/ 의 해당 .md 파일을 고쳐 PR을 보내면 된다. 어느 쪽이든 어느 문서의 어느 문장인지와 근거(교과서·논문·표준) 를 같이 적어주면 반영이 빠르다.
한편 심위키는 백과사전이 아니고, 동료 심사를 거치지도 않았다. 설계·인증·안전에 관계된 판단은 원 논문과 표준을 직접 확인해야 한다. 푸터에도 적혀 있듯 해석 결과의 검증은 언제나 엔지니어 본인의 몫이다.
7. 둘러보기[편집]
- 전체 문서 목록 — 1,200편 전부. 스크롤 각오.
- 분류 — 주제별 진입점.
- 시뮬레이션 목록 — 돌아가는 커널 모음.
- 최근 변경 — 오늘 뭐가 늘었는지.
- 랜덤 문서 — 아무거나 걸려라.