본문 바로가기

728x90

분류 전체보기

(95)
수치 미분 방정식 풀이법을 이용하여 최종값 조건이 주어진 문제 풀기 : 슈팅 방법 지난 두 번의 포스팅을 통해 수치해석적인 방법을 통하여 미분 방정식을 푸는 방법을 소개하였습니다. 오일러 방법과 룽게-쿠타 방법은 연속적인 값을 갖는 시간을 불연속화 하여 $t_n = t_0 + n \cdot h$와 같이 표현하고, 이 때의 함수값이나 미분값 $y(t_n), y'(t_n), y''(n), ...$을 이용하여 수열 $\{y_{n}\}$이 만족해야 하는 점화식을 구한다는 공통점이 있었습니다. 점화식을 컴퓨터를 이용하여 반복 계산하게 되는데, 초기 상태 $t_0$에서의 초기값 $y(t_0)= y_0, y'(t_0) = y'_0 , ... $ 이 주어진다면, 이로 부터 $y_1, y'_1, y''_1, ...$을 구할 수 있고, 이 방법을 계속해서 진행하면 일반적인 $y_n$에 대한 값을 얻을 ..
수치 미분 방정식 풀이법과 이를 이용한 고전 역학 문제 해결 : 오일러 방법(Euler method)을 이용하여 조화 진동자 문제 풀기 미분 방정식을 푸는 방법에 대한 포스팅이랑 수학의 내용을 다루지만, 이 방법을 이용하여 물리 문제를 푸는 것이 포스팅의 목적이기 때문에 이 글의 카테고리를 으로 택했습니다. 물리학의 수학적 언어는 미분 방정식이라고 해도 과언이 아닐 정도로 미분 방정식은 물리학의 곳곳에서 나타납니다. 고전 역학을 설명하는 뉴턴의 운동 방정식, 고전 전자기 이론을 설명하는 맥스웰의 방정식, 양자 역학을 설명하는 슈뢰딩거 방정식은 형태는 조금씩 다르지만 모두 시간과 공간에 대한 미분 방정식이라는 것에는 차이가 없습니다. 따라서 개별 현상을 이해하기 위해서는 뉴턴 방정식, 맥스웰 방정식, 슈뢰딩거 방정식에 대한 구체적인 수식을 세우고, 미분 방정식을 풀면 됩니다. 방정식을 푸는 것은 단순한 수학적인 과정이니, 원리적(!)으로 ..
PyQt GUI (15) 리스트 아이템(list item) 드래그-앤-드롭(drag and drop) 이용하기 드래그-앤-드롭 Drag-and-Drop은 GUI에서 매우 많이 사용되는 기능입니다. 선택 가능한 리스트 중에서, 원하는 아이템을 고르는데 주로 사용됩니다. 이번 포스팅에서는 리스트 아이템에 드래그-앤-드롭 기능을 추가해 보도록 하겠습니다. 리스트 위젯 QListWidget() 2개를 만들었습니다. 첫번째 리스트 위젯은 선택할 수 있는 아이템을 보여주는 리스트 위젯이고, 두번째 리스트 위젯은 선택하는 아이템을 담는 리스트 위젯 입니다. 즉 위에 있는 아이템 리스트를 드래그-앤-드롭하여 아래에 있는 리스트 위젯에 담으려고 하는 것 입니다. 주로 "보기" 중에서 몇 개를 (순서대로) "선택" 하는 경우에 위와 같은 UI를 구성할 것 입니다. 리스트에는 색깔을 나타내는 Red, Green, Blue가 있는데 ..
PyQt GUI (14) 그래프 라이브러리 Matplotlib을 GUI에 포함하기(embeding) Matplotlib은 Python을 이용하여 그래프를 그릴 때 매우 빈번하게 사용하는 라이브러리 입니다. matplotlib을 이용하면 단순한 2차원 그래프부터, 3차원 그래프 뿐 아니라, 막대그래프, 파이그래프 등 거의 원하는 모든 형태의 그래프를 그릴 수 있습니다. Python에는 다양한 그래프 라이브러리가 있지만, matplotlib은 그 중에서도 아주 많이 사용되는 라이브러리이니, 만일 matplotlib을 처음 접하시는 분이라면 아래 포스팅을 읽는 것 보다는 GUI와는 상관 없이 우선 일반적인 python 출력을 통해 matplotlib에서 그래프를 그려 보는 것을 추천합니다. 꼭 GUI 뿐만 아니라 다양한 곳에서 활용도가 매우 높은 라이브러리 이기 때문입니다. (제 블로그의 모든 그래프는 이 ..
가우스 구적법 (Gauss Quadrature 수치 적분법 수치 적분(Numerical integration)은 컴퓨터 알고리듬을 이용하여 해석적으로 적분하기 어려운 피적분 함수를 적분하는 방법입니다. 예를 들어, $$\int_{a}^{b} x^2 + 2x +3 dx$$ 와 같이 다항함수를 구간 $[a,b]$에서 적분하기 위해서는 미적분학 기본정리를 이용하면 됩니다. 피적분 함수인 $f(x) = x^2 + 2x +3$의 부정적분 $F(x) = \frac{1}{3}x^3 + x^2 + 3x + C$를 구한다음 $F(b) - F(a)$를 계산하면 이 값은 위 적분의 값이 됩니다. 하지만, $$\int_{a}^{b} \sin(x^2) \log\Big|\frac{1}{x^2-\cos x}\Big| dx$$ 와 같이 피적분함수가 매우 복잡한 경우에는 부정적분..
사이클로이드(cycloid) 곡선만이 유일한 등시 곡선(Tautochrone curve)일까? 사이클로이드 곡선은 (1)최단하강공선 임과 동시에 (2)등시 곡선 입니다. 지난 포스팅에서 사이클로이드가 등시 곡선임을 증명하는 방법을 소개했습니다. https://studyingrabbit.tistory.com/9 [고전역학-2]사이클로이드가 등시 곡선 임을 증명하는 가장 우아한(?) 방법 사이클로이드(Cycloid)는 직선 위로 원을 굴렸을 때, 원의 원주 위에 있는 한 점이 그리는 자취 입니다. 사이클로이드는 굉장히 재미난 특징을 가지는 곡선인데, 그 중에서도 유명한 것은 (1) 사이 studyingrabbit.tistory.com 위 포스팅에서는 곡면상의 질점의 위치를 사이클로이드의 가장 낮읒 지점으로 부터의 거리로 기술한다면, 시스템을 기술하는 라그랑지안은 단조화진동자(harmonic oscil..
드럼의 모양을 들을 수 있을까? (Can one hear the shape of a drum?) : (1) 2차원 직사각형 드럼에 대한 예시 폴란드계 미국인 수학자 마크 카츠Mark Kac는 1966년 American Mathematical Monthly를 통해서 꽤나 황당하면서도 의미 이는 질문을 던집니다. 논문의 제목은 질문의 내용과 같은데 바로 (Can one hear the shape of a drum?) 입니다. 드럼의 모양을 "들을" 수 있다니? 매우 황당한 질문입니다. 모양을 눈으로 봐야하는 것이지, 귀로 듣는것이 아니니까요. 마크 카츠는 마음의 눈으로 보고 마음의 귀로 듣는다는 기인이거나 미치광이가 아니기 때문에, 그의 질문은 말도 안되는 이상한 질문은 당연히 아니었습니다. 카츠는 논문을 통하여 해석학의 분과 중 하나인 스펙트럼 이론(Spectral theory)의 질문을 던진 것 입니다. https://www.maa.org/s..
대칭성을 이용한 2차원 단조화 진동자 문제 풀이 The career of a young theoretical physicist consists of treating the harmonic oscillator in ever-increasing levels of abstraction. -Sydney Coleman 양자역학에서 대칭성은 매우 핵심적인 개념입니다. 학부 수준에서 배우는 양자물리에서의 대칭성은 단지 문제를 좀 더 쉽게 풀 수 있는 방법을 제공하는 수준에서 그치는 경우가 많지만, 양자장론이나 그 보다 심도있는 수준의 양자물리학에서 대칭성은 어쩌면 양자역학 혹은 더 과장한다면 물리학 그 자체라고도 볼 수 있습니다. 물리학에서 매우 중요한 개념중에 하나인 "보존 법칙"은 대칭성을 조금 다른 방식으로 표현한 것이라고 볼 수 있습니다. 하지만 안타깝게도..

728x90