2D boundary conditions
사각형 격자 위에서 PDE 시뮬레이션을 돌릴 때, 가장자리에서의 거동을
영역 단위로 정의하는 도구입니다. 자유 곡선이나 다각형으로 영역을 그린
뒤 각 변에 Dirichlet · Neumann · 주기 경계를 지정합니다. 결과물은
.bin 파일이며, 워크스페이스의 boundary 카테고리 블록이 이 파일을
받아 격자 인덱싱에 활용합니다.
이 페이지는 유한차분과 경계 조건에 대한 기본 개념을 알고 있다고 가정합니다.
Open the tool
상단 메뉴에서 도구 → 경계 2D를 선택하세요. 별도 페이지로 열립니다.
Workflow
- 격자 크기 설정 — 도메인의 폭과 높이, 그리고
nx × ny격자 점 수를 정합니다. - 영역 그리기 — 마우스로 다각형이나 자유 곡선을 그려 도메인의 가장자리를 정의합니다. 곡선은 반드시 닫혀 있어야 합니다.
- 변 분류 — 각 변에 경계 종류를 지정합니다.
- Dirichlet — 값을 고정합니다. 스칼라 또는 함수로 값을 지정합니다.
- Neumann — 법선 방향 도함수를 고정합니다. 보통
0으로 두면 단열 조건이 됩니다. - 주기 — 반대편 변과 값을 동일하게 맞춥니다.
- 미리보기 — 어떤 격자 점이 어느 변에 속하는지 색으로 표시됩니다.
- 내보내기 —
.bin파일을 다운로드합니다.
Use in workspace
.bin 파일을 워크스페이스의 경계 가져오기 블록으로 업로드하면
boundary 카테고리의 블록이 그 파일을 인식합니다.
- boundary loop (bd2) — 경계 점을 순회하며 본문을 실행합니다. 반복 변수로 현재 점의 인덱스, 법선, 접선을 제공합니다.
- boundary point — 경계 위 한 점의 격자 좌표입니다.
- boundary normal/tangent — 그 점에서의 법선 벡터와 접선 벡터입니다.
Output format
.bin 파일은 다음 정보를 담고 있습니다.
- 격자 메타:
nx,ny,dx,dy. - 점 분류: 각 격자 점이 내부 / 경계 / 외부 중 어디에 속하는지.
- 경계 점별 정보: 분류된 변 종류, 법선 벡터, 접선 벡터.
- 경계 조건 값: 점별 또는 영역별 Dirichlet/Neumann 값.
자세한 바이너리 레이아웃은 frontend/src/lib/bctool2d/의 README를
참고하세요.
Pitfalls
- 닫히지 않은 곡선은 도구가 거부합니다. 시작점과 끝점이 정확히 같아야 합니다.
- 격자 점 수를 너무 크게(예: 1000×1000) 잡으면 도구 자체가 느려집니다.
200×200이내로 두는 것이 쾌적합니다. .bin파일은 격자 메타를 포함하므로 워크스페이스의 격자 크기와 일치해야 합니다. 크기가 다르면 실행 도중 에러가 발생합니다.