탄력주행

요즘 자동차 얘기를 하다 보면 “탄력주행”이라는 말이 나온다. 그 뜻은 기어를 중립에 놓고 엔진의 힘이 아니라 관성력을 이용해서 차를 주행한다는 뜻이다. 하지만 아무리 생각해도 이건 말이 잘못 정착됐다. 바꿀 순 없겠지만.

“탄력”이란 탄성력과 같은 뜻으로, 물체가 변형되었을 때 변형의 원인이 된 힘이 사라지면 다시 원래대로 되돌아가는 힘을 말한다. 따라서 이 힘은 실제로 “탄력주행”에서 사용하는 관성력과는 아무 관련이 없다. 우리가 “탄력주행”이라고 부르는 말은 그 정의에 따라 이름을 붙인다면 “관성 주행”이 정확하다. (이런걸로 한국 물리학회에서 따지진 않겠지만.)


영어로는 Inertial drive라고 하면 될 듯 하다.


영어로는 coasting이라는 용어를 사용한다. coasting의 뜻은 타성으로 나간다는 뜻으로, 동력 없이 중력이나 기타 다른 원인으로 움직인다는 뜻이다.

걱정스러운건, 이미 정착된 용어이므로 탄력주행이라는 말을 한국 사람은 어느정도 알겠지만, 만약 이 말을 그대로 영어로 직역해버리면 전혀 이해가 안되는 말이 나와버린다는 점이다. Elastic drive라고 외국인에게 말해준다면, 도대체 자동차가 얼마나 탱탱하길래 그걸로 운행이 가능하다고 말하는지 매우 신기해 할 것이다. “WOW! Wonderful Korea!!”라고 외칠지도.

자동변속기에서는 탄력주행이 별로 좋지 않다. (심지어 위험하다는 주장도 있다.) 난 수동변속기 매니아니까 클러치만 밟아도 그 탄력주행이 가능하지만.ㅋ

수단과 목적

친구랑 얘기하다가, 내가 토플 예상점수가 50점 정도 되고 80점이 목표라는 말에 그 친구가 실망했다면서, 자기가 아는 어떤 친구는 준비 없이 봤는데 100점이 나오고 조금 공부해서 110점이 나왔다던데, 나보고 그정도 할거라고 기대했는데 아니라서 실망했다는 이야기를 했다.

예상점수가 50점이라는건 내 현재 실력이 그렇다는 뜻이고, 목표가 80점인 것은 그 이상 받아봐야 유학가는데 의미가 없으니 쓸데없는 노력을 안하겠다는 건데, 무슨 사람이 목표치가 그렇게 낮게 잡혀 있냐면서 100점 넘게 받아서 좋은 대학 가면 좋은거 아니겠냐고 갈궜다. 근데 그건 천재잖아. 공부 대충 하고도 수능에서 2개를 틀리는 바람에 서울대 갔다는 친구인데, 난 그런 천재형 타입이 아니다. 난 철저하게 물리학/수학에 특화된 공부를 해 왔고, 나머지는 필요한 만큼만 공부하고 필요한 만큼만 노력하는 타입이다. 나도 공부 대충하고 그 친구도 공부 대충하는데 단지 결과가 다르다는 것 뿐. 게다가 난 그 결과를, 그쪽 결과는 별로 중요하게 생각하지 않는다. 논문과 연구로 실력이 결정되는데 시험 잘봐서 뭐하게…

어쨌든, 내가 토플 100점을 넘게 받으려면 유학을 포기하고 영어 공부만 해야 하는걸…

내가 영어를 잘하기 위해서 영어 공부를 하는게 아니라, 물리학 공부를 하고 싶은데 하필 물리학자들이 영어를 주로 써서 공부하는 것 뿐이다. 물리학자들이 주로 중국어를 썼다면 중국어를 공부했을 것이고, 히브리어가 주류 언어였다면 히브리어를 공부했을 것이다. 내 목표는 물리학이지 영어가 아니다.

아무리 결과가 더 중요하고, 목적이 수단을 정당화 해 주는 시대라 하더라도, 아무리 그래도

수단이 목적을 바꾸면

안되는거 아닌가. -_-;;;;

전에도 말했듯이, 나에게 그런걸로 이래라 저래라 안했으면 좋겠는데…

노다메 칸타빌레 최종악장 전편

재밌다.

스토리는 평이한 스토리지만 음악과 오케스트라를 잘 넣어서 볼만한 스토리가 되었다. 연기는 볼만하다. 내가 일본식 개그에 익숙해서 그런진 몰라도 개그 코드가 잘 맞아서 재밌게 봤다. 막장으로 가는 CG삽입과 대놓고 사용한 마네킹 덕분일까. (한국 영화였으면 대역 없이, 마네킹 없이, CG없이 같은 장면을 연출했을 듯.)

피아노 연습을 좀 더 해야겠다는 생각이 들었고, 영어공부도 해야겠다는 생각이 들었다.

너가 뭘 알겠어?

어떤 사람이 어떤 일에 대해서 어떻게 해야 한다고 주장할 때, 아무것도 모르는 놈이 깝친다 무시하지 말고 왜 깝치는가 생각좀 해보는 것이 좀 더 일을 수월하게 풀 수 있는 경우가 많다.

금요일의 삽질극장

우리 실험실에서는 CCD를 많이 쓴다.

컴퓨터 – 랜선 – 피드스루 – 랜선 – CCD – CCD마운트

이렇게 연결되는 배선이 있는데, 랜선, 피드스루, CCD를 모두 바꿔봐도 CCD마운트에 CCD가 접촉하는 순간 오작동하는 현상이 발생했다.

누전이 문제인가 싶어서 접지를 했다가, 끊었다가, 컴퓨터랑 접지를 했다가, 끊었다가 해보고, 안되서 CCD를 완전 절연을 시켰다가 뜯었다가 해보고, 랜선도 바꿔보고 피드스루도 바꿔봤다.

결국 해결은 컴퓨터 바꾸니까 잘 되더라…

원래 2시에 세팅해서 3시부터 실험 시작할 예정이었는데 이것때문에 4시간동안 삽질하느라 실험을 못했다.

별명

나에겐 여러가지 별명이 있다. 내가 속한 집단에 따라서 나를 부르는 별명이 달라진다.

남박 – 초등학교 3학년때부터 대학원때까지 학교에서 나를 알고 지낸 사람들은 나를 이렇게 부른다. 그 이유는 아는게 많아서.

snowall – 중2때부터 지금까지 온라인에서 나를 알게 되어 만난 사람들은 나를 이렇게 부른다. 그 이유는 내 ID니까.

미남 – 중3때 한정되었던 특수한 별명이다. 음악선생님이 전자피아노를 음악시간마다 들고올 사람을 선정하는데 스스로 잘생겼다고 생각하는 사람보고 손을 들으라고 해서, 내 옆자리에 앉아있던 짝궁이 내 손을 번쩍 올려주었다. 그 뒤로 중3 내내 미남 소리를 들었다는 슬픈 전설이…

중동군 – 훈련소에서 알게 된 사람 중 딱 1명만 나를 이렇게 부른다. 난 한국군이라고.

본명 – 직장에서 나를 알게 된 사람들은 나를 본명으로 부른다. 훈련소에서 알게 된 사람들도 본명으로 부른다. 그 외에 친구 몇명도 나를 본명으로 부른다. 친척들도 나를 본명으로 부른다. 근데 내 본명이 가장 어색하다. 응답 시간이 가장 늦을 것 같은 호칭이다.

int와 char

C언어에서 가장 많이 사용하는 변수는 역시 int일 것이다. 당장 for문 쓰려고 해도 int형 변수를 선언해야 하니까.

기본적으로, int는 정수형 변수고 char는 문자형 변수를 나타내는 예약어이다.

다음과 같이 선언해서 쓴다.

int a;

char b;

이렇게 하면 a는 정수 1개를 저장하는 변수가 되고 b는 문자 1개를 저장하는 변수가 된다.

a=65;

b=’A’;

이렇게 사용할 수 있다.

그런데 이런것도 된다.

a=’A’;

b=65;

이게 되는 이유는 C언어에서 문자를 숫자로 변환해서 사용하기 때문이다. 이때 변환하는 규칙은 ASCII코드표에 다 써져 있다. (ASCII코드가 아닌 다른 코드를 쓸 수도 있지만, 대세는 ASCII이다.)

다음과 같이 하면, a는 66이 되고 b는 “B”가 된다.

a++;

b++;

물론 다음과 같은 것도 된다.

printf(“%d\n”, a);

printf(“%c\n”, (char)a);

printf(“%c\n”, b);

printf(“%d\n”, (int)b);

이렇게 하면 그 결과는

65

A

A

65

가 될 것이다.

int와 char는 공통적으로 (실제로는) 둘 다 정수 1개를 저장한다. 하지만 int로 선언한 경우와 char로 선언한 경우에는 그 해석이 달라지는데, char로 선언하면 그것을 문자 1개로 해석한다. int로 선언한 경우에는 그것을 정수로 해석한다. 그리고 char에 저장될 수 있는 내용은, 그것을 정수로 생각한다면 8비트 정수 1개만 가능하다. 하지만 int는 그 선언을 어떻게 하느냐에 따라 다 달라진다

int a; //기계 또는 컴파일러에서 제공하는 기본적인 정수형의 길이(대체로 16비트나 32비트)

short int a; //16비트(2바이트) 길이

long int a; //32비트(4바이트) 길이

long long int a; //64비트(8바이트) 길이. 이건 요새 64비트 컴퓨터가 늘어나면서 쓰게 되었다. 운영체제에 따라서 long long 대신 int64를 쓰는 것도 있다.

이렇듯 더 큰 숫자를 쓰기 위해서 길이를 여러가지로 지정할 수 있다.

char은 또 한가지 중요한 특징이 있는데, 웬만해서는 포인터형 변수 또는 배열 변수로 사용한다는 점이다. 만약 “snowall”이라는 문자열을 처리하기 위해서 7개의 변수가 필요하다고 할 때,

char a=’s’;

char b=’n’;

char c=’o’;

char d=’w’;

char e=’a’;

char f=’l’;

char g=’l’;

이런식으로 쓰는 프로그래머가 있을지도 모르겠지만, 아마 돈받고 일하는 프로그래머중에는 없을 것이다.

이렇게 쓰면 아주 많은 문제가 발생한다. 직접 문자열을 다루고 체험하면서 느낄 수도 있지만 그런 수고를 덜기 위해서 간단히 설명해 보자면, 저렇게 쓰면 귀찮다. (귀찮지 않다면… 뭐 굳이 저렇게 써도 상관 없지만, 혼자서 개발하는 프로그램에만 저렇게 쓰기를 바란다.) 그래서 다음과 같이 쓸 수 있다.

char a[8] = “snowall”

이렇게 쓰면 a[0]부터 a[7]까지 접근하여 snowall의 각각의 글자들을 다룰 수 있다.



[각주:

1

]



물론 a라는 배열 변수를 이용하여 한번에 뭔가를 할 수도 있다.

하지만 이 경우에도 문제가 발생하는데, a에 저장하여야 할 문자열의 길이가 7글자가 아닌 경우이다. 이때는 다시 길이를 마음대로 바꿀 수 있는 포인터를 사용하여 선언하게 된다.

#include

char *a;

a = malloc(sizeof(char)*8);

strcpy(a, “snowall”);

free(a);

이와 같이 쓰면 코드는 좀 복잡하지만 문자열의 길이를 맘대로 바꿔가면서 사용할 수 있다.

  1. 글자가 7개인데 배열이 8칸인 이유는 숨어있는 1글자 때문에 그렇다. 그 숨어있는 1글자는 자습.

    [본문으로]

광주로…

서울에 올라오는데 핸드폰 충전기를 안 갖고 왔다. 알다시피(?) HTC Desire는 TTA인증된 일반 핸드폰 충전기를 직접 꽂을 수 없다.

그래서 광주로 가야 한다는 슬픈…

자기 위로하기중. -_-;

정체

비슷한 내용의 글을 반복적으로 쓰고 있는 느낌이다. 그런데 내가 도대체 무슨일을 하고 있는지 정리하지 않으면 나중에 어디 가서 도대체 뭘 했냐고 말할 때 “전부 다” 해봤다고밖에는 말할 수 없어서 계속 정리해두려고 한다.

1. 납땜

2. 유기물 반도체 박막 제작 및 물성평가

3. 고에너지 레이저용 미러 마운트 조립 및 성능시험

4. 방사선 안전관리 실무

5. 실험실 자동화 시스템 개발(일부)

6. 실험 결과 분석 및 정리

7. 논문 찾기

8. 실험실에서 사용하는 프로그램 개발

9. 실험실 컴퓨터 관리

10. 레이저 광축 점검 및 보정

11. 실험 결과 관리

그나저나 계속해서 단순 작업만 하다보니 머리가 나빠지는 느낌이다. 치매 예방엔 좋겠지만 생각이 없어짐.

그래서.

12. 중성미자의 섞임각에 대한 현상론적 연구

13. 한국방송대학 컴퓨터학과 전공(학사)

14. 한국방송대학 영어영문학과 전공(학사) (예정)

15. 피아노 연습

그리고 아직까지 전혀 늘지 않은건 사람 대하는 기술. -_-;

왜케 심각해여?

박사과정에 있는 A라는 분이 B박사님에게 뭔가를 지시받고 조사를 해왔다.

“C타입의 미러는 반사형으로 쓰는 사람은 없고 투과형으로만 쓰는 것 같습니다.”

여기까지 말을 했는데

“C타입의 미러는 a의 xxx인 특성을 조사하기 위하여 쓰는 건데 반사형인 경우에는 고에너지에 쓰고 투과형인 경우에는 저에너지에 쓰고 … 그렇게 쓰는 미러가 C타입과 D타입이 있는데 …”

B박사님이 이런 내용으로 약 10분동안 열심히 설명을 하셨다.

그리고 A라는 분은

“그런데 C타입은 투과형으로만 사용합니다”

이 2가지 대사를 갖는 대화가 꽤 여러번 오갔다. 내가 볼 땐, A가 “그건 잘 알고 있고요, 제가 하고 싶은 얘기는…”이라는 애드립을 넣고 싶어하는 느낌이 들었다.

난 그 주제에 관심이 없고, 두분은 그 주제에 대해서 서로 잘 알고 계시는 것 같은데, B박사님이 왜 그렇게 기초적인 부분부터 설명하는지 잘 이해가 안갔다. 딱히 그 주제에서 논의하고 있는 내용이 물리학적으로 어려운 것도 아니고…

서로 잘 알고 있는 내용이면 좀 건너뛰고 빠르게 넘어가면 안되는 걸까. -_-;