카테고리 보관물: 학술

깡통의 관성모멘트

솜사탕 만들기에 필수적인 깡통.

과연, 그 관성모멘트는 얼마나 될 것인가?

일단, 깡통을 원기둥 껍질(Cylinderical Shell)과 원판 2개로 근사하자.

http://www.hanbitbook.co.kr/web/sample/1178/physics_game_chap01.pdf

이걸 참고해 보면, 원판의 관성모멘트는 $mr^2 /2$ 이다. (계산할줄 몰라서 인용한 것은 아니다 -_-; 적분하기 귀찮아서…주변에 책도 없고…) 깡통에는 원판이 2개 있으니까 $mr^2 $이라고 하면 되겠다.

원기둥 껍질의 관성모멘트는 $mr^2$이다. 물론 여기서 원기둥 껍질의 m은 껍질 부분의 질량만을 의미한다. 앞에 나온 원판의 m은 원판 부분의 질량만을 이야기한다.

이제, 주 재료인 맥주캔이나 웰치스 깡통의 질량과 반지름을 알아보자.

알려진 정보는 다음과 같다.

밀도 :
2.70 g/cm

-3

(http://ko.wikipedia.org/wiki/%EC%95%8C%EB%A3%A8%EB%AF%B8%EB%8A%84)

캔의 두께 : 0.13mm (http://www.lotteal.co.kr/4_customer/jo.asp?class=1&p=1&cd=4)

그럼 문제는 깡통의 크기인데.

실측 없이 인터넷으로만 검색하려니 힘들다. -_-; 나중에 자로 재든가 해야지…

http://en.wikipedia.org/wiki/Beverage_can

이걸 참고하면 지름이 65mm다. 즉, 반지름은 32.5

높이는…계산해야겠다. 부피가 380ml짜리면, 여백 생각해서 400ml라고 대충 어림잡고, 1ml는 1000세제곱밀리미터다. 그럼, 400ml는 400000세제곱 밀리미터다. 밑넓이는 32.5*32.5*3.14 = 3317이다. 그럼, 4000000을 3317로 나누면 대충 120mm가 나온다. 12센치미터라는 거다.

이제 맥주캔의 원판 부분의 질량을 계산해 보자. 밑넓이는 3317이고, 두께는 0.13이니까 413.21세제곱밀리미터다. 즉, 0.41321세제곱 센치미터다. 알루미늄의 밀도는 1세제곱센치미터당 2.7그램이니까,

0.1115667그램이 된다. 킬로그램으로 바꾸면 0.001115667킬로그램이다.

깡통의 기둥 부분의 질량을 계산하자. 65*3.14*0.13= 3183.96세제곱밀리미터. 그럼, 대략 원판의 3/4정도 된다. 대충 어림계산하면 0.0008 킬로그램. (이래도 되는지 궁금하면 직접 정확히 계산해도 좋다.)

이제, 관성모멘트를 계산하자. 반지름의 제곱은 0.00105625 제곱미터다. 아, 그런데 이 경우 반지름은 동일하고 질량에만 비례하므로, 결과적으로 전체적인 관성모멘트는 질량에 반지름의 제곱을 곱하면 된다. 뭐여…

대충, 질량이 0.002킬로그램이었으니까, 둘을 곱하면 0.000021킬로그램제곱미터가 된다.

직사각형 함수의 푸리에 변환

**수식은 인터넷 익스플로러에서는 제대로 표현되지 않음. 파이어폭스 웹 브라우저를 권장함.

직사각형 함수를 푸리에 변환 해보자. 간단하다.

f(x) = 1 if -1 f(x) = 0 otherwise

적분 구간은 원래는 실수 전 구간이지만, 어차피 다른 구간에서는 0이므로, x가 1인 구간에서만 적분하면 된다.

f(x)의 푸리에 변환을 g(k)라고 하면

$g(k) = \frac{-2}{ik} sin(k)$

이 적분을 어떻게 했는지 궁금한 사람은 인터넷 검색을 하시기 바라며…

보다시피, sinc함수가 튀어나왔다. 물론 이 함수는 연속함수다. 이제, 직사각형 함수가 주기적으로 변하는 경우 어떻게 되는지 살펴보자.

f(x) = 1 if 2n-1/2 < x < 2n+1/2 for any integer n
f(x) = 0 otherwise

이런거 적분하려면 좀 골치아플것 같지만, 사실 저 함수는 n에 대해서 잘 정의된 함수의 무한급수다. 가령

$f_n(x) = 1$ if 2n-1/2 < x < 2n+1/2 for the given integer n
이렇게 정해놓고 나면

$f(x) = \sum f_n(x)$

이렇게 된다. 따라서, 푸리에 변환을 할때는 $f_n$만 잘 해주면 된다. 마찬가지로, 휘리릭 계산해 주면

$g_n (k) = exp(-2nik) \frac{-2}{ik}sin(k/2)$

그럼

$g(k) = \sum g_n(k) = (cot(k) – i)\frac{-4}{ik}sin(k/2)$

음…생긴게 조금 이상하긴 하지만, 아무튼 sinc함수에 다른 함수를 곱한 형태가 등장했다. (검산 해보기 바람. 적분한 다음 무한급수의 합 공식을 쓰면 됨.) 아마 이 함수는 연속함수일 것이다. (추측임. 증명은 안해봤음.)

그럼, 직사각형 함수가 주기적이지 않을 때에는 어떻게 될까? 이번엔 f(x)를 다음과 같이 정의하자.

$f(x) = \sum f_n(x)$

$f_n(x) = 1 $ if a_n < x 이것도 앞서 한 것과 마찬가지로 대충 적분하고 덧셈으로 꾹 눌러담아 주면 된다. 그러나 좀 까다롭게 된다. 앞에 나온 것처럼 하나의 함수가 되는 것이 아니라, 무한급수를 그냥 놔둬야만 한다.

$g_n(k) = exp(-ik\frac{b_n+a_n}{2})\frac{-2}{ik} sin(\frac{b_n-a_n}{2}k)$

$g(k)=\sum g_n(k)$

대충 보면, sinc함수는 맞는데, 앞에 삼각함수 하나가 곱해져 있다. 이건 왜 이렇게 되었을까? (물론 이 함수도 연속함수다. 아마)

두가지 경우의 직사각형 함수에 대해서 달라진 것은 단지 “주기성” 뿐이다. 이전의 글에서, 주기 함수를 푸리에 변환 하면 특정한 진동수의 함수들만 살아남게 된다는 것을 이야기 했었다. 하지만 함수에서 주기성이 깨져버리는 경우, 주기함수가 아닌 것을 주기함수(즉, 삼각함수)의 합으로 표현하려면 모든 종류의 주기성이 전부 다 포함되어야 한다. 뒤섞여 버리지 않으면 안된다는 것이다.

음…그런데, 어쨌든 impulse 형태는 보이지 않는다. 어떻게 된 걸까. 내 계산이 틀린건가?

비주기 함수의 푸리에 변환

방명록에 질문이 들어왔다.

흥미로운 질문이다 – 비주기 함수의 푸리에 변환은 어째서 연속 함수가 되는가?

그것도, 수학 공식 없이 개념으로만 설명해 달라는 요청이다. 흠…한번 시도해 본다.

이 글은 푸리에 변환의 기초적인 공식과 개념은 알고 있다는 가정 하에 작성되었다.

자. 반대로 짚어보자. 주기 함수의 푸리에 변환은 어째서 불연속함수가 될까? 잠깐…! 그 전에, 주기 함수의 푸리에 변환이 어떻게 되는지, 그걸 먼저 생각해 보자.

주기 함수의 가장 간단한 원형은 삼각함수다. 가령, 사인함수의 푸리에 변환은 델타 함수가 나온다. (디랙의 델타 함수) 그것은 정확히 바로 그 주파수 성분 이외에는 없기 때문이다. 이것은, 델타 함수의 푸리에 변환이 삼각함수라는 것을 생각해 보면 당연할 수밖에 없다.

1. 푸리에 변환은 어떤 변수 영역과 그 변수의 진동수 영역을 서로 변환한다.

2. 푸리에 변환은 함수를 “서로 다른 진동수를 가진 삼각함수의 합”으로서 표현한다.

3. “어떤 함수”가 있는데, 그 함수의 진동수가 정확히 1개밖에 없다

4. 그럼 당연히 그 함수는 삼각함수이고, 진동수가 정해진 삼각함수일 수밖에 없다.

잠깐. 다시. 그런데, 톱니 모양의 함수인 경우는? 계산하기 귀찮으므로 검색을 활용하자.


http://www.math.gatech.edu/~harrell/pde/ch4wr.html


여길 참고하면, 톱니 모양의 함수는 푸리에 변환하면 톱니 모양의 함수가 갖는 진동수의 정수배 진동수를 가지는 삼각함수들만의 합으로 표현이 된다. 즉, 이 경우에도 진동수의 스펙트럼은 불연속적으로 변한다.

스펙트럼이란? – 푸리에 변환을 했을 때, 특정 진동수의 삼각함수가 갖는 진폭의 크기. 다른말로는, 푸리에 변환을 한 목적함수. 스펙트럼을 다시한번 푸리에 변환하면 원래의 함수가 등장한다.

왜그럴까? 왜?

주기 함수인 경우 x에다가 특정 주기 T를 더하면 원래의 함수가 그대로 나와야 한다. 즉, f(x)와 f(x+T)는 같은 함수 값을 갖게 된다. 삼각함수에다가 특정 x를 하나 정해놓고, T를 아무거나 더해봐라. 그래봐야 cos(x)와 cos(x+T)가 같을 가능성은 전무하다. 이걸 같게 맞추기 위해서는 T를 굉장히 잘 골라야 한다. 물론, 상식적으로 T는 $2\pi$의 정수배가 되면 OK다. 여기서 힌트를 얻어야 한다. T는 특정한 숫자의 정수배가 되지 않으면 안된다.

푸리에 변환이라는 것이 원래 함수를 삼각함수로 표현하고 싶었던 것이므로, 원래 함수와 삼각함수의 합이 서로 같으려면, 삼각함수에 들어가는 주기 T는 원래 함수의 주기 T와 같아야만 한다. 바로 앞의 설명에서는 주기 T를 그냥 $2\pi$의 정수배로 맞출 수 있었지만, 이번엔 반대로 주기 T 자체는 결정되어 있는 상태다. (T를 바꾼다는건 원래 함수를 바꾼다는 뜻이므로 말도 안되는 얘기다) 그럼 어떻게 해야 할까? 중이 싫으면 절을 떠나야 한다고…

삼각함수가 맞춰주는 수밖에 없다. 즉, 주기 T가 $2\pi$의 정수배가 되도록 하는 진동수를 선택해야만 한다. 따라서, 이번엔 거꾸로 특정 진동수에 해당하는 삼각함수들만 살아남을 수밖에 없다.

자. 이제 원래의 질문으로 돌아와서, 비주기 함수의 푸리에 변환이 왜 연속함수가 나오는지 생각해 보자. 잠깐 – 이 명제의 대우를 생각해 보자. 불연속함수의 푸리에 변환은 주기 함수일까?

이렇게 생각하는건 이상하지 않다. 푸리에 변환의 역 푸리에 변환은 또한 그 자체로 푸리에 변환이다. 그리고 모든 함수는 주기함수이거나 비주기 함수이고, 모든 함수는 연속함수이거나 불연속함수이다. 따라서 대우 명제로서 잘 성립한다.

불연속함수의 푸리에 변환은 당연히 주기 함수다. -> 이상하다

가령, 잘 정의된 불연속함수로 다음과 같은 것이 있다.

f(x) = 1 (x가 유리수)

f(x) = 0 (x가 무리수)

이런 함수를 푸리에 변환하면 어떻게 될까?

음…이 함수의 푸리에 변환은, 놀랍게도, 0이다. (추측이긴 하지만, 아마 맞을 거다 -_-; 저 함수는 measure가 0이라서 적분하면 0이고, 저기에 뭘 곱해서 적분해도 0일 수밖에 없다. 이걸 어떻게 적분하고, 적분값이 왜 0인지는 Lebesgue 적분론을 이해해야 한다.)

미안하다. 처음부터 반례가 나왔다. (0함수는 상수함수이고, 상수함수는 주기함수다. 따라서 이 예는 내가 잘못 들었다.)

다른 함수를 선택해 보겠다.

$f(x) = \sum _{n=1}^{\inf} \delta(x-\frac{1}{n})$

이 함수는 델타 함수를 좀 많이 더한 것이다. 확실하게 불연속이다. 이 함수의 푸리에 변환은 계산하기 쉽다.

$g(k) = \sum _{n=1} ^{\inf} exp(i (\frac{k}{n})$

보다시피, 이 함수는 전혀 주기적이지 않다. 주기가 서로 다른 삼각함수를 모두 더했기 때문이다. 즉, 비주기 함수의 푸리에 변환이라고 해도 항상 연속함수가 나오는 것은 아니다.

그럼 흔히 수학자들이 생각하는 대로, 푸리에 변환을 했는데 연속함수가 나오는 경우는 도대체 어떤 경우일까?

연속함수의 푸리에 변환은 연속함수인가? 아니다. 사인 함수 1개를 푸리에 변환하면 연속이 아닌 함수가 나온다.

비주기 함수의 푸리에 변환은 연속함수인가? 아니다. 앞서 설명했듯, 반례가 있다.

그럼, 연속인 비주기 함수의 푸리에 변환은 연속함수인가? 물론 아니다. 방금 설명한 반례는 연속인 함수다.

흠…이 조건은 잠깐 생각해서는 답이 나오지 않을 것 같다. 일단, 여기까지의 결론을 내리자면, 비주기 연속함수라고 하여 그 푸리에 변환이 무조건 연속함수인 것은 아니라는 것이다.

이재율씨에게

이재율 씨에게 공개적으로 경고합니다. 또한 제안합니다.

저는 수학 학사 학위를 받았고, 물리학 석사 학위를 갖고 있습니다.

그리고 현재 광주 과학기술원에서 연구원으로 재직 중입니다.

만약, 소정의 연구비를 주실 수 있다면 시간을 들여서 이재율씨의 논문을 철저히 분석해 드리겠습니다.

연구비를 제공할 의향이 없다면, 앞으로 제 블로그에 관련 글을 남기지 말아주셨으면 좋겠습니다. 저는 제가 해야 할 공부와 연구 하기에도 시간이 모자란 사람입니다.

이 글은 정식 제안이며, 이 글에 비밀댓글 또는 개인 이메일로 회신을 주시면 됩니다.

전세계에서 13등

일전에 소개한 Young programmer’s challenge 문제를 모두 풀었다. 1시간 조금 넘는 시간동안 25개의 어려운 문제를 풀었다.

25개중 11개를 맞추었고, 배점에 따라 108점을 얻었다.

아직은 참가자가 많지 않아 13등이기 때문에, 미리 자축하고 싶다. 나중에 등수 떨어지면…울어버릴지도.


끝난거였다. -_-

전체 참가자가 59명이니까, 난 나름 상위권인가…;;

어차피 전체 멤버가 349명밖에 안되니, 그닥 세계적인 수준이라고 하기엔…좀…

그건 그렇고, GMT 1600PM부터 시작한다는건 아시아권에는 너무 잔인하다. 한국 시간으로 새벽 1시라니…-_-;

(한국은 GMT+0900이다)

현재 50등까지 공개되어 있는데, 인도 애들이 엄청 많다. 아무튼 나랑 비슷한 점수를 받은 친구들은 나랑 실력이 비슷하다는 거겠지? -_-;

랭킹은 여기서


http://www.youngprogrammer.com/ranklist.php?id=3

질문은 잘 하자

http://oops.org/?t=lecture&sb=beginner&n=1

다른 사람에게 질문을 던지고 싶은 사람이라면 누구든지 위의 글을 반드시 읽어볼 것을 권한다. 김정균 님이 작성하신







HOWTO For Beginners

이다.





아까 누가 메신저에 등록해서…

그분과의 대화를 저장하였다.

사실 대화하면서 많이 답답했다. 포트포워딩이 왜 필요한지 말도 안하고 포트포워딩을 해달라고 하였으니…

만약 내가 왜 할거냐고 안 물어봤다면 나의 대답은 다음과 같았다.

1. 리눅스 설치하세요.

2. 터미널에서 sudo apt-get install iptables 를 입력하세요.

3. iptables 설정하세요

물론 내가 iptables를 개뿔 아는게 있을리 없지만, 이건 그 이전에 매우 기본적인 것에 대한 내용이다. 일단 이 분은 리눅스가 무엇인지 모르고 계셨기에… 아니, 그보다는 운영체제라는 것에 대해서 모르고 있었던 것 같다. ”

윈도에서 큐파일이라는 프로그램을 이용하기 위해 포트포워딩을 해야 한다

“는 것을 질문했어야 제대로 된 답이 나올텐데, 앞쪽을 잘라놓고 ”

포트포워딩을 해야 한다

“는 것만 질문 하면 그 어떠한 전문가라도 iptables 를 쓰라고 할 것이다.

http://www.google.co.kr/search?q=%ED%8F%AC%ED%8A%B8+%ED%8F%AC%EC%9B%8C%EB%94%A9&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:ko:official&client=firefox-a

구글에서 검색해보면 iptables를 이용하는 방법이 가장 처음에 나온다. 어쨌든, 나야 뭐 질문도 많이 해봤고 대답도 많이 해봤기에 답답함을 이겨내고 원초적인 부분을 파내서 이분이 원하는 답을 해주긴 했지만. 뭔가 안된다는 질문은 아무런 대답도 얻을 수 없는 공허한 질문이다. 뭐가 안된다는 건지 알려주지 않으면 답이 나오지 않는 법이다.

그래서, 질문을 잘하는 것이 좋은 대답을 얻는 비결이다. 우문에는 우답밖에 나오지 않는다.


더보기

매트릭스의 이상한 점

영화 매트릭스 – 너무나 유명해서 더이상 그 스토리를 말한다고 해도 스포일러가 아닐 정도일 것이다.

매트릭스의 기본 설정은, 기계들이 엄청나게 많은 인간의 뇌를 조작하여 그들이 모두 매트릭스 안에서 꿈을 꾸도록 한다는 것이다. 그리고 그 꿈은 현실과 똑같다.

현실에서, 우리는 아기를 만든다. 그렇다면, 매트릭스에서는 그 과정을 도대체 어떻게 처리하는 것일까?

인공 보육실이 있다 치고, 인공 자궁에서 아기를 만든다고 치자. 그럼, 그걸 공장에서 기계적으로 생산하는 것이 아니라 “꿈” 속에서 아기가 만들어질 때 마다 새로운 실제의 아기를 만들어서 꿈 속에서 그 아기가 태어나는 시점에 실제의 아기와 연결시켜주고, 그 속에서 실제의 아기가 꿈을 꾸기 시작하도록 만드는 것인가?

매트릭스에서 이 문제를 어떻게 해결했는지가 정말 궁금하다. 객체지향적으로 말하자면, 새로운 Human 객체를 생성해서 Parent로부터 상속을 해 주는 과정에서 생성자를 어떻게 처리하는가, 그것이 문제인 것이다.

물론…

너무 깊이 들어가면, 다치겠지만.

순환소수 자리수 세기

원래 문제 : index.php?section=problems&id=26

1을 자연수 n으로 나누면 유리수다. (당연히!) 예를 들어…


1

)
/
_(

2

)

= 0.5
^(

1

)
/
_(

3

)


= 0.(3)
^(

1

)
/
_(

4

)


= 0.25
^(

1

)
/
_(

5

)


= 0.2
^(

1

)
/
_(

6

)


= 0.1(6)
^(

1

)
/
_(

7

)


= 0.(142857)
^(

1

)
/
_(

8

)


= 0.125
^(

1

)
/
_(

9

)


= 0.(1)
^(

1

)
/
_(

10

)


= 0.1

여기서 (6)은 무한히 반복됨을 뜻한다. (142857)은 142857이 무한히 반복된다는 뜻이다.

가령, 1/6은 1자리의 순환 마디를 갖고 있다. 1/7은 6자리의 순환 마디를 갖고 있다.

문제 : 1부터 1000까지의 자연수 중, 1/d가 가장 긴 순환 마디를 갖게 되는 자연수 d를 찾아라.

이 문제를 풀기 위해서 고민을 하는데, 도저히 방법이 안보인다. 지금까지 푼 29개의 문제는 어떻게든 (시간이 오래 걸리더라도) 풀긴 했는데, 이건 수가 없다.

일단 알아낸 것 – d가 2나 5만을 인수로 갖는다면 그냥 넘어가도 된다. 확실하게 유한소수니까.

고민해본 방법 1

1/d=x라고 하자. x, 10x, 100x, 1000x…이런 식으로 10을 곱해나간다. 그리고, 10x-x, 100x-x, 1000x-x등등을 계산해서 정수로 떨어지면 그때까지 반복한 회수를 세면 된다

문제점 – 1/6을 처리할 수 없다. -_-;

고민해본 방법 2

그래서. 10x-x, 100x-x, …를 계산하고, 그때마다 10, 100, 1000…을 곱해서 정수로 떨어지게 만들어 보려고 했다.

문제점 – 어느세월에 끝나나…

고민해본 방법 3

순환마디의 특징을 고찰해 보자.

x=0.abcde…(xyz) 이런 식으로 되어 있다.

어릴 적에 배운 기억을 되짚어 본다.

이런 걸 풀기 위해서는 x에다가 최초의 순환마디가 끝나는 데 까지의 자리수만큼인 10^m을 곱한 숫자에서 최초로 순환마디가 나오는 데 까지의 자리수만큼인 10^n을 곱한 숫자를 뺀다.즉 x(10^m-10^n) 을 계산한다고 들었다. 근데 어차피 내가 필요한 숫자는 m-n아닌가?

!$^$%@#$^@#%&@$%*@%^@#$%…..

꼬였다.

누가 힌트좀 주세요. -_-;

Stand Alone Complex

최근 공각기동대 TV판 1기 Stand Alone Complex를 다시 감상했다. 1기에서는 “웃는 남자” 사건이 주 테마로 있다. 여기서 Stand Alone Complex란, 어떤 현상을 만들어 낸 오리지널이 존재하지 않는 가운데 오리지널의 부재가 모방자를 만들어 내고 이후 오리지널과 복제자가 구별되지 않는 현상을 말한다. 모든 모방자는 자신이 오리지널이라고 생각하고 있으며, 오리지널의 영향을 받기는 하였으나 자신이 독자적으로 행동하고 있음을 주장한다.

이러한 내용은 장 보드리야르의 “시뮬라시옹”에도 비슷한 내용이 지적되어 있다. (같은 개념이나 내용은 아니다)

http://ko.wikipedia.org/wiki/%EC%8B%9C%EB%AE%AC%EB%9D%BC%EC%8B%9C%EC%98%B9

그리고, 다시 최근 – 미네르바라는 인터넷 논객이 검찰에 붙잡혔다. 그의 의도성이나 지식은 큰 관심이 없으나, 나는 여기서 공각기동대 SAC와의 연관성을 느꼈다.

네티즌 사이에서 이슈가 되고 있는 내용 중의 가장 큰 것은 그가 과연 미네르바 본인이 맞는가이다. 사실상 나는 그가 미네르바 본인인가에 대해서는 또한 그닥 관심이 없다. 내가 바라보는 것은, 그가 검거되기 직전에 미네르바라는 아이디가 여러건의 글을 올렸다는 점이고, 인터넷의 특성상 그것이 모두 하나의 개인에 의해 작성된 것인지 불분명하다는 점이다. 바로 이 부분에 Stand Alone Complex가 존재한다고 보여진다. 마치 홍길동처럼, 미네르바라는 아이디의 오리지널과 그를 사칭하는 모방자들이 뒤섞여 있는 것이다. 이러한 관점에서 바라볼 때, 공각기동대 SAC와 현재 우리나라에서 일어나는 미네르바 사이의 연관성을 추적해 보는 것은 꽤 즐거운 작업이 될 수 있을 것 같다.

물론…

내가 그걸 진지하게 추적해 볼 생각은 그닥 없다. -_-; 난 단지 감상할 뿐…

그리고 샐린저의 작품을 한번 읽어보고 싶긴 하다.