본문 바로가기

전체 글347

케플러 문제 (Kepler’s problem) - 2 타원궤도와 비슷한 방법으로 이번에는 쌍곡선궤도의 케플러 문제를 풀어보자. 원점이 두 초점 사이의 중간에 있는 직교 좌표계에서 쌍곡선 방정식을 표현하면 다음과 같다. \[ \frac{x^2}{a^2} - \frac{y^2}{b^2} =1 \tag{1} \] 한편 이전 게시글(https://pasus.tistory.com/171)에서 쌍곡선 방정식을 극좌표계로 다음과 같이 표현한 바 있다. \[ r= \frac{a(e^2-1)}{1+e \cos \theta }, \ \ \ \ \ a \gt 0, \ \ \ e \gt 1 \tag{2} \] 위 그림에 나와있는 것처럼 \(x\) 는 다음과 같다. \[ \begin{align} x &= -a-r_p+r \cos \theta \tag{3} \\ \\ &=-a-a(.. 2023. 11. 22.
케플러 문제 (Kepler’s problem) - 1 궤도가 주어졌을 때 우주비행체가 궤도상의 한 지점에서 다른 지점까지 비행하는데 걸리는 비행시간(time of flight)을 함수의 적분 해를 이용하여 계산해 보았다 (https://pasus.tistory.com/307). 하지만 케플러는 미적분이 발명되기 80여년전에 이미 기하학적인 방법을 사용하여 시간 \(t=t_0\) 에서의 실제 비행각(true anomaly) \(\theta_0 = \theta(t_0)\) 와 임의의 실제 비행각 \(\theta(t)\) 가 주어졌을 때 비행시간 \(t-t_0\) 을 계산하였고, 또 역으로 시간 \(t=t_0\) 에서의 실제 비행각 \(\theta_0 \) 와 임의의 비행시간 \(t-t_0\) 가 주어졌을 때 실제 비행각 \(\theta(t)\) 를 구하는 예측.. 2023. 11. 18.
궤도의 비행각과 비행시간 시간 \(t=t_0\) 에서 주어진 위치벡터 및 속도벡터를 고전 궤도요소(COE)로 변환하면 궤도의 크기, 모양, 자세에 대해 알 수 있다 (https://pasus.tistory.com/287). 궤도의 크기, 모양, 자세는 ECI좌표계에서 일정하게 유지되고 6개의 궤도요소 중에서 궤도상의 우주비행체의 위치를 나타내는 실제 비행각(true anomaly) \(\theta\) 만이 시간의 함수이므로, 우주비행체는 마치 우주공간에 있는 미리 정해진 철로를 따라 운행하는 기차와 같다고 볼 수 있다. 이제 궤도가 주어졌을 때 우주비행체가 궤도상의 한 지점에서 다른 지점까지 비행하는데 걸리는 비행시간(time of flight)을 계산해 보도록 하자. 궤도 상에서 우주비행체의 위치는 실제 비행각으로 나타낼 수 .. 2023. 11. 16.
플롭 (Flop) 선형대수 수치 알고리즘의 복잡성을 표현하는 방법 중의 하나로 알고리즘을 수행하는 데 필요한 부동소수점 연산의 총 횟수를 사용한다. 부동소수점 연산 (floating point operation)을 간단히 플롭(flop)이라고 하는데, flop은 두 개의 부동소수점 숫자의 덧셈, 뺄셈, 곱셈 또는 나눗셈 등을 한 번 수행하는 것으로 정의한다. 컴퓨터의 성능을 수치로 나타내는 단위로서 사용되는 FLOPS도 있다. 이 때의 FLOPS는 FLoating point Operations Per Second의 약자로 해당 컴퓨터가 처리할 수 있는 초당 얼마나 많은 연산을 처리하는 지를 나타내는 단위다. 여기서는 부동소수점 연산(flop)의 횟수(count) 라는 의미의 flops에 대해서 설명한다. 플롭의 횟수, 즉.. 2023. 11. 9.
근궤적법 (Root locus method)에서 K→∞ 일 때의 근 두 개의 다항식 \(N(s)\) 와 \(D(s)\) 가 주어졌을 때, 근궤적법(root locus method)은 \(K\) 가 \(0\) 부터 \(\infty\) 까지 변할 때 다음 다항식의 근(root)을 복소평면 위에 스케치하는 방법이다. \[ 1+ K \frac{N(s)}{D(s)} = 0 \tag{1} \] 근궤적법은 다음과 같은 가정하에 수행된다. (1) \(N(s)\) 와 \(D(s)\) 의 계수는 모두 실수(real number)이고 최고차항의 계수는 \(1\)이다. (2) \(N(s)\) 와 \(D(s)\) 의 근은 알고 있다. (3) \(N(s)\) 와 \(D(s)\) 는 공통 근이 없다. (4) \(N(s)\) 의 차수(order)는 \(D(s)\) 의 차수보다 작거나 같다. 여기서 .. 2023. 11. 3.
정적 자세결정: QUEST 1978년 HEAO-B(High Energy Astronomy Observatory)의 자세 추정을 계산하는 데 Davenport의 q-방법을 사용했다. 그러나 당시의 컴퓨터 성능으로는 1년 후에 발사된 MAGSAT에서 요구된 보다 빈번한 자세 계산을 감당할 수는 없었다고 한다. QUEST(QUaternion Estimator) 알고리즘은 이러한 요구에 부응하기 위해 고안되었으며, Wahba 의 자세결정 문제를 해결하기 위한 알고리즘으로 널리 사용되게 되었다. QUEST는 Davenport의 q-방법과 마찬가지로 행렬 \(K\) 의 고유값을 찾아 Wahba의 문제를 푼다(https://pasus.tistory.com/303). 그러나 QUEST는 고유값을 계산할 때 Newton-Raphson 반복법을 사.. 2023. 11. 1.
정적 자세결정: Davenport의 q-방법 앞서 살펴본 TRIAD는 두 개의 측정 단위벡터를 이용하여 우주비행체의 자세를 결정하였다 (https://pasus.tistory.com/302). 만약 두 개 이상의 단위벡터를 측정할 수 있다면 모든 측정 벡터를 이용할 수 있도록 TRIAD 방법을 개선해야 할 것이다. 예를 들면 많은 항성을 동시에 추적할 수 있는 별센서를 사용한다면 다수의 단위벡터가 측정된다. Wahba는 센서의 불확실성으로 인해 발생하는 오류를 최소화하는 방식으로 다수의 측정 단위벡터를 처리하는 방법에 대한 문제를 정립했다. \(n\) 개의 측정 단위벡터를 \(\hat{s}_k, \ k=1, ..., n\) 이라고 하자. 그리고 이 벡터를 기준좌표계 \(\{a\}\) 와 동체좌표계 \(\{b\}\) 로 표현한 벡터를 각각 \(\ma.. 2023. 10. 22.
정적 자세결정 (Static attitude determination): TRIAD 유도항법제어(GNC, guidance, navigation, and control) 분야에서 자세(attitude)란 기준좌표계(reference frame)를 기준으로 3차원 공간에서 항공기 또는 우주비행체 등 운동체에 부착된 동체좌표계(body frame)가 어떤 방향으로 정렬되어 있는 지를 말한다. 자세를 표현하기 위한 방법으로는 오일러각(Euler angles), 방향코사인행렬(DCM, direction cosine matrix), 쿼터니언, 로드리게스 파라미터 등이 있다. 자세를 표현한다 함은 기본적으로 기준좌표계가 동체좌표계와 일치하려면 기준좌표계의 어느 축을 중심으로 얼마만큼 회전해야 하는 지를 나타낸다고 보면 된다. 센서의 측정값으로부터 자세를 계산해야 하는데, 이에 관련된 용어가 두 가지.. 2023. 10. 19.
볼텍스 유동 (Vortex flow) 2차원 평면에서 속도 포텐셜이 다음과 같이 주어지는 유동을 포인트(point) 볼텍스 유동(와류, vortex flow)이라고 한다. \[ \phi(r, \theta)= K \theta \tag{1} \] 여기서 \(r, \theta\) 는 극좌표계(polar coordinates)의 좌표이고 \(K\) 는 임의의 상수다. 식 (1)은 다음과 같이 라플라스 방정식을 만족한다. \[ \nabla^2 \phi= \frac{\partial^2 \phi}{\partial r^2 }+ \frac{1}{r} \frac{ \partial \phi}{\partial r} +\frac{1}{r^2} \frac{ \partial^2 \phi}{\partial \theta^2 }=0 \tag{2} \] 따라서 볼텍스 유동은.. 2023. 10. 15.
포텐셜 유동 (Potential flow) 유동장의 모든 지점에서 vorticity(와도)가 \(0\) 이면 비회전 유동 (irrotational flow)이라고 한다 (https://pasus.tistory.com/207). \[ \nabla \times \mathbf{V}=0 \tag{1} \] 벡터의 미분 관계식에 의하면 속도벡터가 비회전 벡터장(irrotational vector filed)이라면 속도벡터는 어떤 스칼라장(scalar field) \(\phi(x,y,z,t)\) 의 그래디언트(gradient)와 같다. 즉, 다음 식이 성립한다. \[ \mathbf{V}(x,y,z,t)= \nabla \phi(x,y,z,t) \tag{2} \] 물론 그 반대도 성립한다. 즉 속도벡터가 어떤 스칼라장의 그래디언트라면 속도벡터장은 비회전이다. .. 2023. 10. 13.
켈빈의 순환 정리 (Kelvin’s Circulation Theorem) 다음 그림과 같이 유동장에 고정된 폐곡선 \(C\) 가 있다고 하자. \(\mathbf{V}\) 와 \(d \mathbf{s}\) 는 각각 \(C\) 의 한 점에서의 유체의 속도와 미소 선분벡터를 의미한다. 순환(circulation) \(\Gamma\) 는 유동장에 고정된 폐곡선 \(C\) 를 반시계 방향으로 따라가며 유체의 속도를 선 적분한 것으로 정의한다. \[ \Gamma = -\oint_C \mathbf{V} \cdot d \mathbf{s} \tag{1} \] 순환의 정의에서 마이너스(\(-\)) 부호를 사용한 이유는 선 적분은 관례상 시계반대 방향이 플러스(\(+\))인 반면 항공역학에서는 시계 방향을 플러스(\(+\))로 보기 때문이다. 책에 따라서는 마이너스 부호를 사용하지 않고 정의하는.. 2023. 10. 10.
이류(advection), 대류(convection), 확산(diffusion) 장(field)은 위치와 시간의 함수를 의미한다. 예를 들어서 스칼라장(scalar field)는 공간상의 모든 위치에 시간에 따라 변하는 스칼라 값을 대응시키는 함수이고, 벡터장(vector field)은 공간상의 모든 위치에 시간에 따라 변하는 벡터 값을 대응시키는 함수를 의미한다. 스칼라장의 예로서 밀도 함수 \(\rho =\rho (x,y,z,t)\) 를, 벡터장의 예로서 공기의 속도벡터 함수 \(\mathbf{V}=\mathbf{V}(x,y,z,t)\)를 들 수 있겠다. 이제 유체의 운동과 관련된 용어인 advection, convection, diffusion에 대해서 알아보자. 먼저 advection은 이류라고 번역한다. 이류는 유체의 운동을 통하여 유체의 물리량이 이동하는 것을 의미한다. .. 2023. 10. 7.
[PSOC-12] 예제 : 램버트 문제 (Lambert’s problem) 램버트 문제(Lambert's problem)는 이체문제(two-body problem)에서 유도된 기본 궤도 미분 방정식에 대한 2점 경계값 문제(TPBVP, two-point boundary value problem)이다. \[ \begin{align} & \frac{d^2 \mathbf{r}}{dt^2 }+ \frac{ \mu}{ (\sqrt{\mathbf{r} \cdot \mathbf{r} })^3} \mathbf{r}=0 \tag{1} \\ \\ & \mathbf{r}(t_0 )= \mathbf{r}_0, \ \ \ \mathbf{r}(t_f )=\mathbf{r}_f, \ \ \ t_0, \ t_f \ \mbox{given} \end{align} \] 여기서 \(\mu\) 는 중력 파라미터, .. 2023. 9. 23.
상태공간 방정식과 전달함수 모든 선형 시불변 (LTI, linear time-invariant) 시스템은 다음과 같이 상태공간 방정식(state-space equation)으로 표현할 수 있다. \[ \begin{align} \dot{\mathbf{x}}(t) &=A \mathbf{x}(t)+B\mathbf{u}(t) \tag{1} \\ \\ \mathbf{y}(t) &=C \mathbf{x}(t)+D \mathbf{u}(t), \ \ \ t \ge 0 \end{align} \] 여기서 \(\mathbf{x}(t) \in \mathbb{R}^n\), \(\mathbf{u}(t) \in \mathbb{R}^p\), \( \mathbf{y}(t) \in \mathbb{R}^q\) 이고 \(A, B, C, D\) 는 상수 행렬이다. 이.. 2023. 9. 22.