본문 바로가기

Studying

물리학 상식 : 원심력과 구심력 여기서는 물체의 운동방향이 지속적으로 변하는 공전운동을 기술하는데 있어서 필수적인 개념인 원심력 (centrifugal force)과 구심력 (centripetal force)에 대해서 알아봅시다. 공전궤도의 반지름 및 공전속도에 따라 원심력과 구심력이 어떻게 달라지는지 살펴보고, 일반적인 곡선 궤적을 따르는 물체의 운동에 대해서도 짚어보겠습니다. 구심력은 운동 방향이 변하는 물체에 작용하는 힘이라고 볼 수 있습니다. 운동 방향이 변한다는 것은 속도 벡터의 방향이 변하는 것과 동일하다고 볼 수 있는데요. 이를 위해서는 궤적이 휘어지는 방향을 향해서 작용하는 알짜힘이 필요하고, 이것이 바로 구심력이라고 할 수 있습니다. 구심력은 물체를 가속시키거나 감속시키지는 않고, 운동 방향만을 바꾸기 때문에 구심력의 .. 더보기
사다리꼴 공식을 이용한 C/C++ 수치 적분 여기서는 사다리꼴 공식 (trapezoidal rule)을 적용하여 주어진 함수의 정적분을 수치적으로 구하는 법에 대해서 알아봅시다. 사다리꼴 공식으로 얻을 수 있는 것은 적분의 근사값입니다만, 원하는 정밀도에 도달할때까지 격자의 갯수를 늘려나가는 방식을 C언어나 C++로 구현하는 것에 대해서도 짚어보겠습니다. 적분의 수학적인 정의 및 정적분과 부정적분의 차이에 대해서는 다음 포스팅에 더 자세한 내용이 소개되어 있습니다. 적분의 개념이 생소하게 느껴지는 분들에게 도움이 되리라 생각합니다. 수학 상식 : 미분과 적분 이해하기 이번 포스팅에서는 고등학교 수학의 종착역이자 고급 수학의 출발점이라고 할 수 있는 미분과 적분에 대해 알아보도록 합시다. 미분과 적분의 기본 개념뿐만 아니라, 미분방정식이나 적분변환 .. 더보기
C/C++ 반복문을 제어하는 continue와 break 이번 포스팅에서는 C언어나 C++ 프로그램에 등장하는 반복문을 제어하기 위한 continue 및 break 명령어들에 대해서 알아봅시다. 이들을 활용하면 반복문 내에서 필요하지 않은 연산문들을 생략할 수 있게 되어 프로그램의 효율성을 높이는 데 도움이 됩니다. 여기서는 C언어나 C++ 프로그램에서의 반복문에 대해서 다루고 있는데, for문 또는 while문을 이용해서 특정 명령문들을 반복적으로 실행하는 방법에 대해서는 다음 포스팅에 더 자세한 내용이 소개되어 있습니다. C언어 프로그래밍 기초 : 반복문 (for, while) 여기서는 C언어나 C++ 프로그램을 작성할 때 특정한 구문들을 반복해서 실행하는 반복문 (loop)에 대해서 알아봅시다. 반복문의 종류와 더불어 반복을 위한 조건을 설정하는 방법에 .. 더보기
물리학 상식 : 도플러 효과 (Doppler effect) 이번 포스팅에서는 운동 상태에 따라 관측되는 파동이 달라지는 도플러 효과에 대해서 알아봅시다. 파동의 파장과 주파수가 상대적인 속력에 따라 어떻게 달라지는를 다루고, 속력이 빛의 속도에 근접하는 상대론적인 상황에서의 도플러 효과에 대해서도 살펴보겠습니다. 도플러 효과를 이해하기 위해서는 파동의 형태를 결정짓는 개념들인 파장, 주파수 및 속력에 대해서 친숙해질 필요가 있습니다. 파동의 전달을 특징짓는 개념들과 이들 간의 상관관계에 대한 더 자세한 내용은 다음 포스팅에 소개되어 있습니다. 물리학 상식 : 파동의 기본개념 이번 포스팅에서는 파동과 이를 구성하는 주파수, 파장, 진폭 등의 기본 개념들을 자세하게 짚어보겠습니다. 매개체가 주기성을 가지고 변하는 패턴인 파동은 자연계에서 매우 흔하게 발견되는 sws.. 더보기
과학 공부의 기초 : 통제변인과 조작변인 이번 포스팅에서는 과학적으로 문제를 해결하는데 있어서 기본이 되는 개념들인 통제변인 (controlled variable)과 조작변인 (manipulated variable)에 대해서 알아봅시다. 이들을 명확히 하는 것은 교양과학 뿐만 아니라 학술논문 레벨에 있어서도 매우 중요합니다. 실험을 설계하는데 있어서 일정하게 유지되는 변수를 통제변인이라고 하는 반면, 값을 바꾸는 변수를 조작변인이라고 합니다. 물론 조작변인의 값에 따라 실험결과가 달라질텐데요. 조작변인에 따라 결과값이 달라지는 변수를 두고 종속변인 (dependent variable)이라고 합니다. 통제변인과 조작변인은 우리가 풀고자 하는 문제 또는 증명하고자 하는 명제에 따라서 달라지게 됩니다. 예컨대 민물 혹은 담수는 온도가 영하로 내려갔을.. 더보기
C언어 프로그래밍 기초 : 포인터 여기서는 C언어와 C++가 다른 프로그래밍 언어와 차별화되는 요소 중 하나인 포인터 (pointer)에 대해서 알아봅시다. 포인터의 기본 개념과 함께 일반적인 데이터를 저장하는 변수들과의 상관관계에 대해서도 짚어보겠습니다. 포인터에 대해서 간단히 말하자면, 메모리 상에서 변수의 주소를 저장하는 자료형이라고 할 수 있는데요. 따라서 이미 선언된 변수의 주소를 알아낸 뒤, 이를 또 다른 포인터 변수에 저장하는 것이 가능합니다. 포인터를 선언할 때는 변수 이름 앞에 * 기호를 붙이고, 변수의 주소를 얻기 위해서는 이름 앞에 & 기호를 붙이면 되겠습니다. /* 정수형 변수 a를 선언하고 * 그 값을 3으로 정의 */ int a = 3; /* 정수형 변수의 주소를 저장하는 * 포인터 변수 */ int *ptr_a.. 더보기
물리학 상식 : 강체의 회전과 관성 모멘트 여기서는 단단한 물체인 강체 (rigid body)의 회전으로 인해 발생하는 각운동량과 운동에너지를 계산하는 방법에 대해서 알아봅시다. 그 과정에서 관성 모멘트 (moment of inertia)라는 것을 정의하고, 물체의 각속도와 각운동량 및 운동에너지가 어떻게 연결되는지 살펴보겠습니다. 이번 포스팅에서 다루는 내용을 이해하기 위해서는 각운동량 (angular momentum)이라는 물리량에 대해 먼저 알아둘 필요가 있는데요. 물체의 회전이나 공전운동의 임팩트를 수치화하는 개념인 각운동량의 정의와 특징에 대해서는 다음 포스팅에 더 자세한 내용이 소개되어 있습니다. 물리학 상식 : 에너지, 운동량과 각운동량 여기서는 물체의 운동을 수치화하는데 있어서 중요한 물리량들인 에너지 (energy), 운동량 (m.. 더보기
C언어 프로그래밍 기초 : 반복문 (for, while) 여기서는 C언어나 C++ 프로그램을 작성할 때 특정한 구문들을 반복해서 실행하는 반복문 (loop)에 대해서 알아봅시다. 반복문의 종류와 더불어 반복을 위한 조건을 설정하는 방법에 대해서도 살펴보겠습니다. 반복문은 복잡한 기능을 구현하기 위한 필수요소인 만큼, 프로그래밍에서의 반복문은 매우 중요한 개념입니다. 특정 구문을 계속해서 반복실행할지, 중지시킬지 여부를 결정하기 위해 조건문과 관계연산자가 사용됩니다. 만약 이들이 생소하게 느껴지시는 분들은 시작하기에 앞서서 다음 포스팅을 읽어보시면 큰 도움이 되리라 생각합니다. C언어 프로그래밍 기초 : 조건문과 관계 연산자 여기서는 C언어 또는 C++ 프로그램의 특정 연산문을 실행하기 위한 조건을 설정하는 방법과, 이를 위해 필요한 관계 연산자 (relatio.. 더보기
수학 상식 : 행렬의 고유값과 고유벡터 이번 포스팅에서는 정사각행렬의 고유값 (eigenvalue)과 고유벡터 (eigenvector) 문제에 대해서 다뤄보겠습니다. 고유값과 고유벡터의 정의와 더불어, 행렬이 대칭성을 갖는 경우에 이들이 어떤 특징을 가지는지에 대해서도 살펴봅시다. 물리학에서 고유값 문제가 등장하는 예시에 대해서도 소개하겠습니다. 행렬의 고유값 문제는 행렬의 곱셈 연산을 포함하고 있습니다. 더 정확히 말하자면 정사각행렬과 하나의 열로 이루어진 행렬의 곱셈이 등장하죠. 행렬의 곱셈이 정의되기 위한 조건과, 이를 계산하는 방법에 대한 더 자세한 내용은 다음 포스팅에 소개되어 있습니다. 수학 상식 : 행렬 (matrix)의 덧셈과 곱셈 이번 포스팅에서는 수학 및 과학 분야에서 널리 쓰이는 개념인 행렬의 연산에 대한 기본적인 내용을 .. 더보기
C언어 프로그래밍 기초 : 조건문과 관계 연산자 여기서는 C언어 또는 C++ 프로그램의 특정 연산문을 실행하기 위한 조건을 설정하는 방법과, 이를 위해 필요한 관계 연산자 (relational operator)에 대해서 알아봅시다. 특정한 조건이 만족되면 실행되는 조건문은 복잡하고 다양한 기능을 구현하기 위해 필수적입니다. 관계 연산자는 대상이 되는 두 개의 변수에 저장된 값들을 비교하는 과정을 포함하고 있습니다. 따라서 변수와 자료형의 개념에 대해서 먼저 익숙해질 필요가 있는데요. 여기에 대한 더 자세한 내용은 다음 포스팅에 소개되어 있습니다. C언어 프로그래밍 기초 : 변수와 자료형 여기서는 C언어로 프로그램을 작성하는데 있어서 가장 기본적인 요소들 중 하나라고 할 수 있는 변수 (variable)에 대해서 알아봅시다. 변수들의 종류를 지정하기 위.. 더보기