본문 바로가기

Studying

물리학 상식 : 에너지, 운동량과 각운동량 여기서는 물체의 운동을 수치화하는데 있어서 중요한 물리량들인 에너지 (energy), 운동량 (momentum) 및 각운동량 (angular momentum)에 대해 알아보도록 합시다. 이들은 고등학교 물리 교과과정에서부터 등장하는 기초적인 내용들이지만, 대학교 및 대학원을 거쳐서 연구를 하는 동안에도 지속적으로 접하는 중요한 개념들입니다. 뉴턴의 고전역학에서 이들이 어떻게 정의되며, 어떠한 특징들이 있는지를 알아봅시다. 물체의 이동 속도가 빛의 속도에 근접하는 상황에서 에너지와 운동량의 정의가 어떻게 확장되는지도 살펴보겠습니다. 이를 위해서는 벡터들의 곱셈 연산인 내적과 외적에 대해 알아둘 필요가 있습니다. 이들이 생소하게 느껴지는 분들은 시작하기에 앞서서 다음 포스팅을 읽어보시면 큰 도움이 되리라 생.. 더보기
수학 상식 : 변분법과 라그랑지안 역학 여기서는 자연현상을 기술하기 위한 물리법칙 등을 나타내기 위한 방법 중의 하나인 라그랑지안 (Lagrangian) 및 액션 (action)과, 이로부터 운동방정식 (equation of motion)을 이끌어내기 위한 수학적 도구인 변분법 (calculus of variation)에 대해서 알아보도록 합시다. 이번 포스팅에서 다루는 내용을 이해하기 위해서는 먼저 정적분과 미분방정식에 대해 알고 있어야 합니다. 이들의 정의와 부정적분 및 미분과의 관계에 대해 더 자세한 내용이 궁금하시다면, 다음 포스팅이 큰 도움이 되리라 생각합니다. 수학 상식 : 미분과 적분 이해하기 이번 포스팅에서는 고등학교 수학의 종착역이자 고급 수학의 출발점이라고 할 수 있는 미분과 적분에 대해 알아보도록 합시다. 미분과 적분의 기.. 더보기
수학 상식 : 벡터의 덧셈과 곱셈 (내적, 외적) 이번 포스팅에서는 두 개의 벡터 (vector)의 덧셈 및 곱셈 연산인 내적 (inner product)과 외적 (exterior product)의 정의와 특징에 대해 간략히 짚어보겠습니다. 벡터의 각 성분들을 가지고 이 연산들을 어떻게 수행하는지와 더불어, 벡터로서의 함수가 정의되는 힐베르트 공간 (Hilbert space)의 개념에 대해서도 살펴봅시다. 벡터의 곱셈인 내적과 외적이 가지는 기하학적인 의미를 살펴보기 위해, 코사인 (cosine) 함수 및 사인 (sine) 함수들을 언급할텐데요. 이러한 삼각함수들이 어떻게 정의되며 어떠한 특징을 가지고 있는지에 대해서는 다음 포스팅에 더 자세히 소개되어 있습니다. 수학 상식 : 원주율과 삼각함수 여기서는 기하학에 관련된 중요한 상수인 원주율과, 과학 및.. 더보기
C/C++ 반복-이완 계산법으로 알아보는 비행경로 이번 포스팅에서는 구면 상에 있는 두 지점 사이의 최단 경로를 위도와 경도에 대한 함수로 구한 다음, 출발지와 목적지 사이의 비행기 항로를 결정하는 방법에 대해 알아봅시다. 수치해석 방법 중의 하나인 반복-이완 계산법 (iteration-relaxation method)을 구현한 C++ 프로그램을 통해 서울/인천 국제공항에서 여러 목적지로 향하는 최단경로를 직접 계산해 보겠습니다. 위도와 경도는 구면 상에서 정의되는 좌표계이며, 비행경로를 평면 지도 상에 투영하기 위해서는 지도 투영법 혹은 도법에 대해 알아둘 필요가 있습니다. 위도와 경도의 개념 및 지도 투영법에 대한 더 자세한 내용은 다음 포스팅에 소개되어 있습니다. 수학 상식 : 위도, 경도와 지도 투영법 이번 포스팅에서는 구면 상의 위치를 정의하기.. 더보기
수학 상식 : 위도, 경도와 지도 투영법 이번 포스팅에서는 구면 상의 위치를 정의하기 위한 좌표인 위도 (latitude) 및 경도 (longitude)의 개념과, 구면을 평면에 투영하여 지도를 만들기 위한 방법인 지도 투영법 혹은 도법 (cartography)에 대해 알아봅시다. 위도와 경도는 기본적으로 각도이기 때문에, 이들을 다루기 위해서는 호도법과 삼각함수에 대해 알아둘 필요가 있습니다. 이들이 생소하게 느껴지는 분들은, 시작하기에 앞서서 다음 포스팅을 읽어보시면 큰 도움이 되리라 생각합니다. 수학 상식 : 원주율과 삼각함수 여기서는 기하학에 관련된 중요한 상수인 원주율과, 과학 및 공학 분야에서 가장 흔하게 접할 수 있는 주기함수인 삼각함수에 대해 얘기해볼까 합니다. 원주율과 호도법 먼저 유클리드 공간에 swstar.tistory.co.. 더보기
물리학 상식 : 만유인력과 케플러 법칙 여기서는 고전 중력 혹은 뉴턴 중력 (Newtonian gravity)이라고도 불리우는 만유인력의 개념과, 이로 인해 파생되는 행성의 궤도 운동인 케플러 (Kepler) 운동에 대해 알아봅시다. 고등학교 지구과학 교과서의 천문학 부분에 등장하는 3개의 케플러 법칙에 대해서도 살펴보겠습니다. 질량을 가진 물체들이 서로를 끌어당기는 힘이라고 볼 수 있는 만유인력은 등방성 (isotropy)을 가지고 있습니다. 다시 말해서 점으로 된 질량이 있을 때, 이로 인해 파생되는 중력장의 세기는 점 질량으로부터의 거리에 따라 달라지지만 방향에는 무관한 함수라는 것이죠. 그렇기 때문에 3차원 공간에서 행성의 궤도 운동을 기술하기 위해서는 구면 좌표계를 활용하는 것이 좋습니다. 구면 좌표계의 정의와 특징에 대한 더 자세한.. 더보기
수학 상식 : 원통 좌표계와 구면 좌표계 벡터라는 개념을 처음 배울 때 사용했던 직각 혹은 데카르트 좌표계 (Cartesian coordinates) 이외에도, 풀고자 하는 수학이나 과학 문제에 따라 유용한 곡선 좌표계들이 있는데요. 3차원 공간에서는 원통 좌표계 (cylindrical coordinates)와 구면 좌표계 (spherical coordinates)가 대표적인 예시입니다. 여기서는 원통 좌표계와 구면 좌표계들이 어떻게 정의되고, 데카르트 좌표계와는 어떻게 연결되는지 살펴보겠습니다. 이름에서 유추할 수 있듯이 원통 및 구면 좌표계에서는 2차원 상의 원이나 3차원 상의 구면이라는 기하학적 개념을 상정하고 있습니다. 그렇기 때문에 삼각함수의 정의와 특징들을 먼저 알아둘 필요가 있는데요. 만약 삼각함수라는 개념이 생소하거나 이들에 대해.. 더보기
물리학 상식 : 양자 터널링 효과 이번에는 양자역학의 파동-입자 이중성으로부터 파생되는 중요한 현상 중의 하나인 터널링 (quantum tunneling) 효과에 대해 알아봅시다. 고전역학 또는 뉴턴역학으로는 설명할 수 없기 때문에, 일상적인 직관을 거스르는 현상 중의 하나인데요. 물질파를 기술하는 슈뢰딩거의 파동방정식에 입각해서, 입자의 운동에너지를 상회하는 위치에너지를 가진 장벽을 넘나드는 터널링 효과에 대해 살펴보겠습니다. 슈뢰딩거 방정식이라는 것을 앞서 언급했었는데, 이는 입자의 파동적 성질을 나타내는 물질파의 파동함수가 시간에 따라 어떻게 변화하는지를 알아내기 위한 방정식입니다. 파동-입자 이중성의 개념이나 파동방정식이 생소하게 느껴지는 분들은 시작하기에 앞서서 다음 포스팅을 읽어보시면 큰 도움이 되리라 생각합니다. 물리학 상식.. 더보기
비주얼 스튜디오 C/C++ 라이브러리 만들기 이번 포스팅에서는 마이크로소프트 비주얼 스튜디오에서 C언어 또는 C++ 라이브러리를 제작하고 사용하는 법에 대해 알아봅시다. 라이브러리는 정적 (static) 라이브러리와 동적 (dynamic) 라이브러리가 있는데요. 정적 라이브러리는 실행 파일에 함수들의 정보가 모두 들어가는 반면에, 동적 라이브러리는 프로그램이 실행되는 시점에 소환된다는 차이점이 있습니다. 비주얼 스튜디오에서는 별도의 프로젝트 유형을 선택하여 이러한 라이브러리들을 만들고 사용할 수 있습니다. 여기서는 비주얼 스튜디오 커뮤니티 2019 버전을 기준으로 이야기하며, 소스 코드로부터 프로그램을 만드는것과 관련된 기본적인 내용들은 다음 포스팅에 소개되어 있습니다. 비주얼 스튜디오 C/C++ 콘솔 프로그램 만들기 여기서는 마이크로소프트의 통합.. 더보기
비주얼 스튜디오 C/C++ 콘솔 프로그램 만들기 여기서는 마이크로소프트의 통합 개발환경인 비주얼 스튜디오를 이용해서, C언어 또는 C++ 콘솔 프로그램을 만드는 법에 대해서 알아봅시다. 콘솔 프로그램이란 문자만으로 이루어진 인터페이스를 가진 프로그램으로, 터미널을 열어서 명령 프롬프트 등을 통해 실행하는 것이 한 예시가 될 수 있습니다. 참고로 이 포스팅은 비주얼 스튜디오 커뮤니티 2019를 기준으로 작성되었습니다. 요즘 세상에 누가 콘솔 프로그램을 쓸까 싶을 수 있는데요. 수학이나 과학 문제를 수치적으로 푸는 프로그램같이 계산결과를 파일에 저장한 뒤, 이를 시각화하는 것은 별도의 프로그램에게 맡기는 경우라면 콘솔 어플리케이션도 나쁘지 않은 선택입니다. 그래서 저도 개인적으로 이러한 용도의 비주얼 스튜디오 콘솔 프로그램을 많이 작성했었습니다. 뿐만 아.. 더보기