LENSes
ASAP에서 LENS를 그리는 명령어들에 대해서 알아보자.
1) AFOCAL
우선 아래 프로그램과 같이 입력하고 실행시켜 보자.
SYSTEM NEW
RESET
LENS !! LENS-AFOCAL 생성
AFOCAL Z 0 1 1 .5 REFL REFL
WINDOW Y Z
PLOT LENS
RETURN
Z축의 원점을 시작점으로 Length가 1이고, Rays가 입사되어 처음 반사되는 Input Aperture의 Semi-height가 1, 출사되는 Output Aperture Semi-height가 0.5인 REFLector를 만드는 명령어이다.
2) DOME
한쪽면만 굴절 곡면을 가지는 것이 DOME이다. 나머지 한쪽은 평면으로 형성된다.
LENS
DOME Z 0 1 BK7 1 1E8
렌즈의 광축 중심의 Axis Thickness가 1이고, 매질 BK7인 렌즈를 만드는데, 앞면의 반경을 1로 하고 뒷면의 반경을 1E8로 하여 뒷면을 거의 평면으로 만들었다. 여기서 1E8는 입력하지 않아도 동일한 그림을 그릴 수 있다. 즉, Back radius of curvature는 계산하는 수식이 따로 있어서 자동 계산해주기 때문이다.
그럼 Front와 Back의 radius를 계산하는 방법을 알아보자.
DOME 명령어의 help를 보면 DOME Z z t m [ r [ r’ ] ] 로 되어있다. t는 Axis Thickness, m은 매질, r은 Front radius of curvature, r’은 Back radius of curvature이다. 여기서 r 다음에 있는 r’은 [ ] 안에 싸여있다. 즉, r 만 있으면 r’은 없어도 돌아간다는 뜻이다. 그럼 r’은 어떻게 계산될까?
r’ = r-t 이다. 아래의 프로그램은 t=2, r=3인 경우이고, 결국 r’=1이 되어 그림 4.14와 달리 Back 면에도 곡률이 발생하게 된다. 위와 같이 평평한 Back 면을 얻기 위해서는 t=2, r=2로 하면 된다. 그리고, r’값을 음수(-)로 하면 오른쪽으로 볼록해지지 않고 에러가 난다. Axis Thickness가 계산되지 않기 때문이다.
LENS
DOME Z 0 2 BK7 3
3) DOUBLET
두장의 렌즈가 붙어있는 DOUBLET 렌즈를 만들어 보자.
LENS
DOUBLET Z 0 .4 1 BK7 SK5 8 0
렌즈의 전체 두께인 Thickness가 0.4이고 렌즈의 Semi-height가 1, 첫번째 렌즈의 매질은 BK7이고 붙어있는 두번째 렌즈의 매질은 SK5이며, Focal length가 8, overall bending factor가 0인 Doublet Lens를 만든다.
4) IDEAL
ABCD matrix를 이용해서 Perfect lens를 만들어 보자.
LENS
IDEAL Z 0 1 .4 1; 1 0 -1/8 1 0
Z축을 광축으로 Z=0에서 렌즈를 시작해서 Input aperture semidiameter=1, Input에서 Output까지의 Length=0.4, Output aperture semidiameter=1로 설정하였다. 그리고 줄을 바꾸어서(세미콜론(;)을 해도 된다) Perfect lens를 만들기 위한 (a, b, c, d) = (1, 0, -1/f, 1)을 사용해서 matrix를 만들어 주면된다. 여기서는 f=8이다. 마지막에 있는 0 은 물체에서 렌즈의 첫번째 면까지의 거리를 의미한다. 그런데, 물체거리가 0 (default)이라는 것은 이 거리가 무한대가 된다는 의미이다.
5) MANGIN CV
ASAP에서 MANGIN Mirror를 만드는 방법은 총 3가지가 있다. 이번에는 우선 곡률(curvature)을 이용해서 MINGIN Mirror를 만들어 보자.
LENS
MANGIN Z 0 .4 1 BK7 CV -.2 -.2
Z축을 광축으로 Z=0에서 시작해서 Mirror의 두께를 0.4, Semidiameter=1로 설정하였다. 매질은 BK7이며 곡률 수치를 이용하기 위해 CV 명령어를 사용하였다. 그리고, 두 면 모두 곡률을 -0.2로 설정하였다.
6) MANGIN FL
다음은 초점거리(Focal Length)를 이용해서 MANGIN Mirror를 만들어 보자.
LENS
MANGIN Z 0 .4 1 BK7 FL 3 -20
FL명령어와 함께 Focal Length=3, bending patameter=-20이다. Bending parameter는 (c+c’)/(c-c’) 이나 (r’+r)/(r’-r)으로 계산된다. 여기서 c는 Curvature이고 r은 Radius of curvature이다.
7) MANGIN RD
MANGIN 명령어의 옵션 중 마지막인 Radius를 이용해서 Mirror를 만들어 보자.
LENS
MANGIN Z 0 .4 1 BK7 RD -5 -5
양면 모두 Radius of curvature를 -5로 설정하였다. MANGIN의 처음에 만든 CV -.2 -.2와 동일한 형상이다. (0.2 = 1/5)
8) MIRROR
Simple Mirror를 만들기 위해 Semidiameter=1, Focal length=-2를 설정하였다. 평면 거울을 만들기 위해서는 Focal length=0으로 설정해 주면 된다.
LENS
MIRROR Z 0 1 -2 0 0
끝에 있는 두개의 0은 무엇일까? 처음의 zero는 Conic constant로서 0=sphere, -1=parabola를 의미한다. 그리고 마지막에 있는 zero는 central hole ratio로 거울 중심에 구멍을 만들어 준다.
MIRROR Z z h [ f k o ]
h : aperture height of mirror
f : focal length (zero for a flat)
k : conic constant
o : central hole ratio
9) PENTA
5각형의 PENTA Prism을 만들어 보자. Aperture semidiameter=1, 매질은 BK7, 그리고 출사 방향은 Y축으로 설정하였다.
LENS
PENTA Z 0 1 BK7 Y
10) RIGHT
Right-angle Prism을 만들기 위해서 Aperture semidiameter=1, 매질은 BK7, 그리고 출사 방향은 Y축으로 설정하였다. 출사 방향을 -Y로 설정하면 Ray가 밑으로 나가도록 형상이 자동 변경된다.
LENS
RIGHT Z 0 1 BK7 Y
11) SINGLET CV
Singlet Lens를 만드는 방법도 총 3가지가 있다. 우선 곡률(curvature)을 이용해서 Lens를 만드는 방법에 대해서 알아보자.
LENS
SINGLET Z 0 .4 1 BK7 CV .2 -.2
Z축을 광축으로 Z=0에서 시작해서 Lens 두께를 0.4, Semidiameter=1로 설정하였다. 매질은 BK7이며 곡률 수치를 이용하기 위해 CV 명령어를 사용하였다. 그리고, 첫번째 면의 Conicoid curvature=0.2, 두번째 면의 Conicoid curvature=-0.2로 설정하였다.
12) SINGLET FL
다음은 초점거리(Focal Length)를 이용해서 Singlet Lens를 만들어 보자.
LENS
SINGLET Z 0 .4 1 BK7 FL 5 0
FL 명령어와 함께 Focal Length=5, bending patameter=0이다. Bending parameter는 (c+c’)/(c-c’) 이나 (r’+r)/(r’-r)으로 계산된다. 여기서 c는 Curvature이고 r은 Radius of curvature이다. Bending parameter(b)의 값이 b=0이면 양면이 동일하게 볼록한 렌즈가 된다. 그리고 b=1이면 두번째 면이 평면인 렌즈가 되고 b=-1이면 첫번째 면이 평면인 렌즈가 된다.
13) SINGLET RD
Singlet Lens의 마지막 옵션은 Radius를 이용하는 것이다.
LENS
SINGLET Z 0 .4 1 BK7 RD 5 -5
첫번째 면의 Radius of curvature를 5로, 두번째 면의 Radius of curvature를 -5로 설정하였다.
14) WEDGE
쐐기모양의 형상을 만들어 보자. Z=0에서 Semidiameter=1이고 매질은 BK7으로 설정하였다. 그림 4.26은 쐐기의 각도를 20°, 중심 두께는 0.5로 설정하였을 때의 예이다.
LENS
WEDGE Z 0 1 BK7 20 .5