물체에서 나온 빛이 구형의 거울을 만나서 어떻게 굴절하는가를 관측할 수 있는 프로그램이 제시되어 있다.
이 프로그램 역시 렌즈에서와 마찬가지로 결상공식을 사용하지 않고 전적으로 광선의 행동을 파면이나 광선 하나하나가 매질의 경계를 만났을 때의 행동양식을 추적하는 광선추적법을 이용한 것이다. 앞에서 다룬 거울의 결상공식은 근사공식으로 곡률이 크지 않으면서 중심축에 가까운 광선인 경우에만 적용할 수 있다. 아래의 상황에서는 이 조건을 벗어난 파동도 같이 보여주게 되어 있어 한 지점에서 정확하게 상이 맺혀지지 않는 경우를 같이 살펴볼 수 있다.
물체의 위치, 거울의 곡률을 다양하게 변화시켜서 광선의 행동과 상이 맺히는 결과를 관찰한다.
exp
구면거울의 모의실험_ 화면의 오른편에 구면의 반사면이 있고 빛은 여러 가지 형태로 왼쪽에서 반사면으로 진행을 하게 된다. '시작' 버튼을 누르면 파면이나 광선의 행동을 볼 수 있으며 광선의 추적이 끝나면 축에 가까운 3개의 파가 그려지고 이로부터 상의 위치가 추정된다. 마우스를 이용하여 상황을 여러 가지로 변경할 수 있다.
프로그램 설명
1. 화면 아래의 슬라이더나 버튼, 체크박스 등을 통해서 물체의 위치나 구면거울의 곡률 등을 변경할 수 있다.
2. 오른편 아래에 있는 '시작' 버튼을 누르면 시간의 진행에 따라 광선이나 파면이 이동하는 모습을 볼 수 있다. 한편 진행상태에서는 '시작'은 '정지'로 바뀌는 데 버튼을 다시 누르면 일시 정지한 모습을 볼 수 있다.
3. '리셋' 버튼을 누르면 그려진 화면을 정리하고 처음 시간의 상태로 된다.
4. '광선 보기'나 '파면 보기' 체크박스로 진행파의 파면이나 광선의 진행모습을 선택해서 볼 수 있다.
5. 입사파의 위치는 화면 아래의 중앙에 있는 "물체 수평위치"의 슬라이더로 좌우로 이동시킬 수 있다. 한편 화면에 물체(광원)의 위치를 마우스로 끌어서 좌우나 상하로 이동 시킬 수 있다. 경계의 오른쪽에 물체를 위치시키면 허물체로 그 지점을 향해서 모여드는 광선이 형성된다. 물체가 프로그램 영역을 벗어나면 슬라이더로 이동시켜 화면에 넣을 수 있다. 광원이 좌우로 아주 멀어지면 평면파(평행광선)으로 바뀐다.
6. '곡률반경' 슬라이더로 구면경계의 곡률반경 $R$을 조절할 수 있다.
7. 광선의 추적작업이 끝나게 되면 결상의 상황을 그림으로 보여주고, 상을 추적할 수 있으면 화면 오른쪽 위에 실상의 위치가 좌표로 표시된다. 이때 기준점은 경계의 광축을 $x$, 광축에서의 두 경계의 교점에 대해 수직선을 $y$축으로 나타낸 좌표점이지만 물체와 상의 위치좌표는 중심 수직선에서 왼쪽일 때 $+$ 값으로 나타낸 것이다. 이는 '기하광학에서 부호의 약속'을 따른 결과이다. 상이 맺혀지는 위치를 계산할 때에는 경계의 중심을 향하는 세 개의 인접한 광선으로부터 계산하였고, 이 결과 신뢰할 수 없는 값일 때에는 '?'으로 표시한다. 또한 곡률반경을 포함한 모든 나타낸 거리의 단위는 화면의 픽셀 값이지만 m나 cm, mm 등 임의의 단위를 동일하게 붙여도 된다.
8. 화면을 마우스로 클릭하면 그 지점에 십자선이 그어지고, 좌표값이 오른쪽 위에 표시된다. 이때 좌표값은 거울의 중심을 원점으로, 왼쪽으로 $+x$, 위로 $+y$로 한다.