과학교육에서 Python을 이용한 기호연산, 시각화, 그리고 확률적 시뮬레이션의 활용방안
Application of Symbolic Computation, Visualization, and Stochastic Simulation by using Python in Science Education
0
조회
0
다운로드
8
인용
0
참고문헌
키워드
초록
최근 국내외에서는 프로그래밍 언어 교육을 의무화하는 사례가 빠르게 증가하고 있다. 우리나라의 경우도 내년부터 시행되는 2015 개정 교육과정에서 초․중등학교의 프로그래밍 언어 교육 의무화가 결정되었다. 과학교육에서도 이러한 변화에 대비하기 위한 연구의 필요성이 대두되고 있지만, 아직 국내에서는 관련 연구가 미비한 편이다. 본 연구는 여러 프로그래밍 언어 중 최근 과학 분야에서 가장 각광받고 있는 무료 프로그래밍 언어인 Python을 이용하여 여러 과학교과에서 기호연산, 시각화, 그리고 확률적 시뮬레이션의 활용방안에 대해 알아보았다. 이를 위해 물리학, 화학, 생명과학의 세 가지 사례에 대해 기호연산과 확률적 시뮬레이션을 수행하였으며, 그 결과를 다양한 방식으로 시각화하였다. 연구결과에서 제시된 모든 코드는 프로그래밍 언어에 대한 배경지식이 부족한 일반 독자들도 활용할 수 있도록 자세한 설명을 첨부하였다.
Abstract
In recent years, there has been a rapid increase in cases of mandatory programming language education at domestic and abroad. Also, in Korea, the programming language education of elementary and secondary schools was decided to be mandatory in the curriculum revised at 2015, which will be implemented since 2018. Therefore, the research demands to prepare for those changes are raised in science education, whereas the related research in domestic is still insufficient. In this study we investigated how to applicate symbolic computation, visualization, and stochastic simulation in various science subjects by using Python, an open source programming language, which is the most popular programming language in science field. For this purpose, symbolic computation and stochastic simulation were performed on three cases of physics, chemistry, and life sciences and the results were visualized in various ways. All of the code presented in the study is accompanied by a detailed description to help readers who lack the background knowledge of the programming.
참고문헌 (36)
- 고욱희, "Excel VBA를 이용한 비선형 진자의 동력학적 특성 연구", 현장과학교육, 9(1), pp.60~71 (2015), 한국현장과학교육학회[DOI]
- 김보경, "지구대기 대순환 3-Cell 모델을 적용한 역동적인 코리올리 효과 매스메티카 플랫폼", 새물리, 64(6), pp.610~616 (2014), 한국물리학회
- 김종혜, "과학영재 고등학교 도구교과로서의 프로그래밍 교육과정 내용요소 설계", 컴퓨터교육학회 논문지, 17(4), pp.1~11 (2014), 한국컴퓨터교육학회[DOI]
- 서민견, "Mathematica를 이용한 전자기학에서 경계치 문제에 관한 연구", 새물리, 48(4), pp.308~316 (2004), 한국물리학회
- 양용준, "Excel 해 찾기 기능을 이용한 최소제곱법 교수-학습자료 개발", 현장과학교육, 11(2), pp.260~273 (2017), 한국현장과학교육학회[DOI]
- 오원근, "HTML5 기반의 교육용 몬테카를로 시뮬레이션 구현", 새물리, 65(4), pp.322~327 (2015), 한국물리학회
- 윤길수, "역학 문제 풀이 도구로서의 SureMath 활용방법", 대한조선학회 학술대회자료집, pp.1797~1800 (2011)
- 윤희중, "Mathematica를 이용한 비관성 좌표계 운동의 추상적물리개념의 가시화 표현", 새물리, 40(6), pp.530~538 (2000)
- 윤희중, "Mathematica를 이용한 쌍방향 학습프로그램의 활용", 새물리, 43(5), pp.261~267 (2001)
- 윤희중, "Mathematica를 이용한 직렬 RLC 회로해석", 새물리, 46(5), pp.249~256 (2003), 한국물리학회
- 윤희중, "매스메티카 시스템에서 벡터해석및 역동적인 좌표계운용", 새물리, 50(3), pp.134~141 (2005), 한국물리학회
- 윤희중, "2계 반대칭 전자기장 텐서 F^{alpha beta} 생성과 변환을 위한 매스매티카 시뮬레이션", 새물리, 53(6), pp.452~459 (2006), 한국물리학회
- 윤희중, "민코프스키 공간에서 텐서해석과 운용을 위한 매스매티카 시뮬레이션", 새물리, 53(4), pp.309~317 (2006), 한국물리학회
- 윤희중, "비관성좌표계에서 코리올리 힘 해석을 위한 매스매티카 시뮬레이션", 새물리, 52(2), pp.87~95 (2006), 한국물리학회
- 윤희중, "포인팅벡터로 구현한 편광진행파의 MATHEMATICA 플랫폼", 새물리, 63(10), pp.1118~1127 (2013), 한국물리학회
- 이종완, "게임물리학 교수학습 자료의 개발", 새물리, 63(10), pp.1112~1117 (2013), 한국물리학회
- 정계삼, "대학 전공 역학 과정에서 학생이 경험하는 Curl 이해의 어려움과 그 원인구조", 새물리, 58(1), pp.48~61 (2009), 한국물리학회
- 조광희, "자기장과 컬에 관한 물리교육과 대학생의 이해 특성 및 설명 모형 제안", 새물리, 66(5), pp.560~570 (2016), 한국물리학회
- 최용대, "전자기 벡터장 시각화를 위한 Mathematica 시뮬레이션", Applied Science and Convergence Technology, 21(2), pp.69~77 (2012), 한국진공학회
- Abichandani P, "Transforming Engineering Education: Creating Interdisciplinary Skills for Complex Global Environments", pp.1~26 (2010), IEEE
- Ahamed SI, "Computational thinking for the sciences:a three day workshop for high school science teachers", Proceedings of the 41st ACM Technical Symposium On Computer Science Education, pp.42~46 (2010)
- Beltzer AI, "Use of symbolic computation in engineering education", IEEE Transactions on Education, 38(2), pp.177~184 (1995)
- Bogdanchikov A, "Python to learn programming", Journal of Physics : Conference Series, 423(1), pp.12~27 (2013)
- Hammond KR, "Computer graphics as an aid to learning", Science, 172(3986), pp.903~908 (1971)
- Huelsman LP, "Personal computers in electrical and computer engineering: education survey", IEEE Transactions on Education, 34(2), pp.175~178 (1991)
- Jesse MK, "A Student’s Guide to Python for Physical Modeling", pp.1~45 (2015), Princeton University Press
- Joyner D, "Open source computer algebra systems: SymPy", ACM Communications in Computer Algebra, 45(3, pp.4) (2011), 225~234
- Kimura M, "The average number of generations until fixation of a mutant gene in a fintte population", Genetics, 61(3), pp.763~771 (1969)
- Pepper RE, "Observations on student difficulties with mathematics in upperdivision electricity and magnetism", Physical Review Special Topics-Physics Education Research, 8(1), pp.10~12 (2012)
- Perez F, "IPython: A system for interactive scientific computing", Computing in Science & Engineering, 9(3), pp.21~29 (2007)
- Perkel JM, "Pick up Python", Nature, 518, pp.125~126 (2015)
- Read A, "Computers and computer graphics in the teaching of field phenomena", IEEE Transactions on Education, 33(1), pp.95~103 (1990)
- Røyrvik O, "Teaching electrical engineering using maple", International Journal of Electrical Engineering Education, 39(4), pp.297~309 (2002)
- Srnec MN, "A Python program for solving Schroӧdinger’s equation in undergraduate physical chemistry", Journal of Chemical Education, 94(6), pp.813~815 (2017)
- Weiss CJ, "Scientific computing for chemists: An undergraduate course in simulations, data processing, and visualization", Journal of Chemical Education, 94(5), pp.592~597 (2017)
- World Economic Forum, "The Future of Jobs", pp.3~32 (2016), World Economic Forum
