얼룩말 물고기의 패턴 형성을 시뮬레이션 해보십시오.
소개
목적
지난번 확립된 GPU 계산 기법을 바로 적용해 보자
이 논문의 재현을 시도한다.
달리 명시하지 않는 경우에, 인용은 전부 이 논문에서.
Pattern regulation in the stripe of zebrafish suggests an underlying dynamic and autonomous mechanism.
Yamaguchi M, Yoshimoto E, Kondo S.
Proc Natl Acad Sci U S A. 2007 Mar 20;104(12):4790-3. Epub 2007 Mar 12.
참고 사이트
반응 확산 시스템에 대하여
Mechanism of pigment pattern formation
반응 확산파란?
반응 확산 시스템의 실장 예
튜링 파 (반응 확산 파)를 이해하고 싶습니다.
2차원 Turing 패턴 생성
반응계의 대표예, 반응 확산계의 도입으로서
FitzHugh-남운모델에서 놀아보기
논문 설명 · 보충
위의 그림은 얼룩말 피시에 레이저를 대고 염료를 소실시킨 부분에 주입한 색소를 바탕으로 패턴이 재생하는 모습(상단)과 그 컴퓨터 시뮬레이션(하단)이다.
시뮬레이션은 위의 공식에 따라 수행됩니다.
덧붙여서 $\Delta u,\Delta v$ 는 라플라시안으로, 시간의 증분 $\Delta t$ 와 혼동하지 않게.
논문중에 셀 사이즈 $h$ 가 쓰여져 있지 않아서 걸렸지만, $h = 0.05$ 로 잘 갔다. $ h $가 이것보다 크면 줄무늬가 두 개로 나뉘어집니다.
$ h $는 확산과 관련이 있으며 $ D_u/h ^ 2 = 4, D_v/h ^ 2 = 80 $의 값이 중요합니다.
$1/h^2$ 는 라플라시안(=2층 미분)의 조작으로 나온다.
시간차는 $\Delta t = 0.001$ 로 했다.
$4\Delta t\, D_v/h^2 = 0.32 < 0.5$ 에서 확산 차분법의 안정 조건은 가득 채워지고 있다.
한편, $\Delta t\, D_u/h^2 = 0.004$ 로, 10진법 7자리 정밀도의 Float32
하지만 자릿수 떨어짐까지는 걱정하지 않아도 좋을 것 같다. $u\sim 1,\, h^2\Delta u\sim 0.1$ 때 $u+\Delta t\, D_u\Delta u$ 의 정밀도가 2에서 3자리가 되어 버리지만 어쩔 수 없을 것이다.
결과
Julia Notebook
htps : // st. 기주 b. 코 m / ㅃ리 my / 4d39643 아 b c519에 21c77d261c0b6079
초기 상태
경과(GIF 애니메이션)
또한 두 배 정도 시간이 지난 상태
논문(256x128) 보다 큰 영역(256x256)으로 시뮬레이션했지만, 아마 잘 되고 있다고 생각한다.
GIF 애니메이션 계산 및 이미지 출력 85초
GPU 사용률 30% 정도
그래도 CPU(실장으로서는 상당히 느리다고 생각하지만)와 비교하면 50배 이상 빠르다.
고맙게 생각하면 CPU의 (벡터) 구현에서 거의 변경없이 GPU로 이동할 수 있습니다.
CPU에서 성능을 걱정하는 것보다 아무것도 생각하지 않고 GPU에 올리는 것이 좋다.
라고 생각하고 있었지만, 실은 정밀도의 검토는 결과를 정리한 뒤, 기사를 쓰면서 가고 있어, 의외로 시비아인 밸런스 위에서 성립되고 있었다는 것을 깨달아 진창하고 있다.
Reference
이 문제에 관하여(얼룩말 물고기의 패턴 형성을 시뮬레이션 해보십시오.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/Lirimy/items/eb86102f736d762ebd98
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Julia Notebook
htps : // st. 기주 b. 코 m / ㅃ리 my / 4d39643 아 b c519에 21c77d261c0b6079
초기 상태
경과(GIF 애니메이션)
또한 두 배 정도 시간이 지난 상태
논문(256x128) 보다 큰 영역(256x256)으로 시뮬레이션했지만, 아마 잘 되고 있다고 생각한다.
GIF 애니메이션 계산 및 이미지 출력 85초
GPU 사용률 30% 정도
그래도 CPU(실장으로서는 상당히 느리다고 생각하지만)와 비교하면 50배 이상 빠르다.
고맙게 생각하면 CPU의 (벡터) 구현에서 거의 변경없이 GPU로 이동할 수 있습니다.
CPU에서 성능을 걱정하는 것보다 아무것도 생각하지 않고 GPU에 올리는 것이 좋다.
라고 생각하고 있었지만, 실은 정밀도의 검토는 결과를 정리한 뒤, 기사를 쓰면서 가고 있어, 의외로 시비아인 밸런스 위에서 성립되고 있었다는 것을 깨달아 진창하고 있다.
Reference
이 문제에 관하여(얼룩말 물고기의 패턴 형성을 시뮬레이션 해보십시오.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/Lirimy/items/eb86102f736d762ebd98텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)