컴퓨터/파이썬

Beam pointing stability checker

snowall 2011. 7. 10. 13:35
실험을 하다보면 레이저 빔이 오락가락 한다. 얘들을 찍어다가 모아보면 대략 다음과 같은 자료가 된다.

물론 이건 실제 데이터는 아니고 GIMP로 만든 가짜 데이터다. 진짜 데이터는 실험실에 놓고 왔기 때문에 테스트 해볼 수 없었다. 내일 해봐야지.

1. 가장 밝은 위치를 찾아서
2. 그 점의 적당한 주변에서 밝기에 대한 위치의 가중평균값을 빔의 위치로 정하고
3. 각 자료가 갖는 빔의 위치에 대한 평균과
4. 표준편차를 이용하여
5. 각 자료의 위치와, 표준편차에 대해 1sigma, 2sigma, 3sigma에 대해 얼마나 떨어져 있는지 표시하는 프로그램

알려진 버그
1. 정수와 실수 사이의 캐스팅 문제로 1000픽셀 규모의 데이터에 대해 1%정도의 오차가 발생한다.
(무시하기로 했음.)
2. 원본 자료에 핫픽셀이 있을 때 핫픽셀 주변으로 데이터가 쏠려버린다.
(이건 그냥 사람이 눈으로 보고 맞춰줘야 할 듯.)

추가할 기능
1. 그림 자체에 평균, 표준편차 정보를 직접 그리는 기능
2. 1sigma, 2sigma, 3sigma를 표시한 타원에 라벨 붙여주기

내가 만들었지만 (복잡하거나 어려운 소스도 아니지만) 소스코드는 왠지 공개하면 연구소에서 싫어할 것 같고, 바이너리로 공개하고 싶은데 python 2.7.1용 py2exe는 VS2008의 DLL을 필요로 한다. (내게는 VS2005가 있다.)
소스 공개해도 된다고 하면 GPL로 공개해야겠다.