고민: 전산물리학 코스 설계
짬날때마다 워드프레스 테마를 만드는 이유도 사실 전산물리학을 다루는 블로그를 사용자 중심으로 운영해보려는 목적 때문입니다. 기본기만 배워놓고 구글링을 통해서 배우는 제 평소 습관과는 다르게 뭔가 차근차근 필요한 것들을 짚어나가는 형식의 텍스트북(교재)를 만드려고 하니 고민이 이만저만이 아닙니다. 사실 몇 번 시도하다가 반쯤 실패하기도 했고요.
0. 서론
서론은 이 교재의 철학 내지는 중점 서술을 다루게 될 것입니다. 지금 신경쓰이는 것들은 다음과 같습니다.
파이썬(Python)을 씁니다. 쉽다고 알려져 있으며 무료인데다가 패키지와 커뮤니티가 굉장히 강력하기 때문입니다.
PEP8을 준수합니다. 다른 교재를 몇개 봤는데, 예제를 C 표준이나 JAVA 표준으로 작성하신 분들이 꽤 있었습니다. 어쩌면 첫 컴퓨터 언어일지도 모르는 상황에서 처음 본 교재나 강의의 예제는 학생들에게 습관을 굉장히 강력하게 박아넣을 겁니다. 가능하면 표준규약으로 작성해야겠죠.
가능하면 한국어로 작성합니다. 컴퓨터 관련 용어는 정말이지 영어가 너무 많아서 잘 될지는 모르겠는데, 하는데까지 해볼 요량입니다. 언어의 장벽이 학문의 장벽에 추가되는 것은 좀 더 나중이어도 되지 않을까요 :)
전산물리는 물리학의 한 연구분과라기 보다는 연구하는 방법입니다. 실험물리, 이론 물리와 함께 연구의 한 축을 담당하고 있으며, 수많은 물리학 연구에서 중요한 연구 도구로 사용하고 있습니다.
(1)은 R에도 적용되는 이야기입니다. 그리고 사람들의 취향과 기준에 따라 C, C++, JAVA, RUBY 등도 충분히 거론할 수 있겠죠. 그래도 굳이 파이썬을 고르는 이유를 대보라면 그냥 제 취향이죠. 여담으로 C++을 인터프리터 언어로 만들어버린데다 기능이 굉장히 강력한 과학 프레임워크인 ROOT도 있습니다. (4)를 위해서 실험에서 사용하는 전산물리학과 이론 및 시뮬레이션을 위한 전산물리학을 다룹니다. 전산물리학이 연구의 대부분을 차지하는 통계물리학의 일부 테마들도 소개해야겠지요.
I. 개론
본격적으로 스크립트를 다루기 전에 필요한 것들, 그리고 "이런 것들을 할 수 있겠구나"싶은 로드맵을 그리는 작업을 하게 될겁니다.
I. 1. 전산물리학 소개
대략의 전산물리학 역사를 주요 연구들을 통해서 소개해보려고 합니다. 우선 생각나는 것은 맨해튼 프로젝트, 달 탐사 계획, 거대 강입자 가속기(LHC), LIGO 등이 있겠네요.
I. 2. 컴퓨팅 사고력
컴퓨터로 계산하기 위해서는 일단 해결하고자 하는 문제를 컴퓨터로 계산할 수 있는 문제로 정의하는 작업이 있어야 합니다. 추상화와 패턴, 분해, 알고리즘을 다루려고 합니다.
I. 3. 파이썬 둘러보기
파이썬을 설치하고 이것을 배워 어떤 것을 할 수 있는지를 보여주는 과정입니다. 그래프를 그리고, 미적분을 수행하는 등 연구에 필요한 분석 결과들을 출력하는 예제를 보고 이 과정의 목표를 구체적으로 살펴봅니다.
I. 4. 파이썬 기초
패키지를 큰 문제없이 이용할 수 있을 정도로만 다룹니다. 식별자와 변수형(특히 나열형), 주석, 출력, 판단, 반복, 함수, 클래스 정도면 괜찮지 않을까 싶습니다.
I. 5. 패키지
numpy, scipy, matplotlib 패키지를 다룹니다.
II. 실험 데이터 분석
데이터 입출력과 그래프를 그리고 꾸미는 방법, Fitting, Peak, 오차 등을 다룹니다.
III. 미적분, 특수함수
심볼릭 연산과 수치연산을 다룹니다. 상미방, 편미방, 비선형, 그리고 자주 쓰이는 몇 개의 특수함수를 다룹니다. 바닥부터 코딩하는 것은 한두번만 하고 주로 패키지를 활용합니다.
IV. 전산시늉 / 카오스
삼체운동부터 시작해서 초기 조건으로부터 파동과 입자의 움직임을 모사합니다. 분자동역학을 주로 다루게 될 듯합니다. 온도나 에너지, 엔트로피를 출력한다던가 하면 될 듯 하네요.
V. 머신 러닝...?
하게 된다면 아마 SVM(support vector machine), 퍼셉트론 정도만 하지 않을까 싶습니다. 최근에 많이 도입하기는 하는데, 소개해야 하나 싶은 생각이..
VI. 협업과 출판
제가 제일 못하는 겁니다. Github를 다루게 될 텐데, 프로젝트 팀원과 같이 프로그래밍을 해본 적이 없어서 어렵군요. 기본적인 것들 위주로 신경쓰려고 합니다. 라이선스라던지, 문서화라던지 버전 관리라던지요.
다음에는 목차를 좀더 세밀하게 잡아봐야겠습니다.
DO NOT JUST COPY PAST .BE ORIGINAL ,
MY SCANNER JUST SCAN YOUR POST ...
WE HAVE GREAT NUMBER OF UPVOTE ...
FOLLOW US FOR YOUR UPVOTE FOR FREE...
IT IS REAL SEE OUR STEEM POWER IS HIGHER THEN YOURS
Hello and welcome to the community. I followed you and would appreciate a follow back. I'm looking forward to see more posts! Have a great day and have fun. Welcome!
Please upvote, comment, resteem and follow @reecha and @niteshbaniya
get back to back in touch for upvote
우연히 들릅니다.
혹시 Density functional theory (DFT)와 관련된 계산도 다루실 예정이신지요? 그냥 궁금하여 여쭙습니다. :)
대상을 물리전공 학부 3학년 정도로 잡고 있습니다. 밀도범함수까지는 안다룰 것 같아요.
아. 그렇군요. 일부 테마 중 하나로 포함되지 않을까 혹시 궁금한 마음에 여쭈었던 것이었습니다. 앞으로 좋은 글 부탁드리겠습니다. 감사합니다.