USERAPOD ANGLES

USERAPOD DIRECTION(Surface Emitter)에서는 X축과 Y축의 데이터 만으로 apodizing을 하였지만, USERAPOD ANGLES(Volume Emitter)에서는 전방위 데이터를 가지고 apodizing을 실시한다. 한 축을 따라 밝기를 측정할 수 있는 장비들은 많이 있지만, 전방위에 대한 데이터를 측정하는 장비는 그리 많지가 않다. 장비 가격도 비싸기 때문에 이런 데이터를 얻기가 쉽지는 않을 것이다. 그러나, 라이브러리를 이용하거나 혹시 측정 데이터를 가지고 있다면 그 어느것보다 더 정확한 광원을 설계할 수 있을 것이다.

USERAPOD DIR 에서 십자 모양의 X-Y축에 대한 값만을 이용하였다면 이번에는 X-Y축에 대한 모든 테이터가 matrix 형태로 존재하는 값을 이용할 것이다. 그런데 ASAP 프로그램을 작성하면서 이 값들을 .inr 파일 하나에 모두 기입한다면 프로그램이 너무 지저분해지게 된다. 이를 피하기 위해서 ASAP은 외부에서 USERAPOD ANGLES 데이터 파일을 불러오는 방식을 택했다. 아래 그림 11.18을 보면 12×17 형태의 matrix가 존재한다. 첫줄에서 가로 12줄, 세로 17줄로 된 데이터라는 것을 알려주는데 빈칸이나 Tab을 이용해서 각각의 값들을 구분하면 된다. 두번째 줄은 방위각(azimuth)으로 0°에서 330°까지 30° 간격으로 12개의 데이터를 측정한 결과를 표시하였다. 세번째 줄부터는 데이터가 들어가는데 각 줄의 첫번째 값은 천정각(zenith)으로서 -80°에서 80°까지 10° 간격으로 17개의 데이터를 측정한 결과를 표시하였다. 즉, Xij matrix에 각각의 각도에 해당하는 값을 입력하면 된다. 전방위에 대한 측정값들을 그림 11.18과 같이 입력하면 되는데 이 그림은 이 책을 보는 독자들이 알아보기 쉽게 하기 위해서 그림을 편집하여 칸을 추가한 것이다. 이미 잘 알고 있는것 처럼 메모장에서는 줄은 그릴 수 없기 때문에 액셀을 이용해서 값을 입력하고 메모장으로 복사하는 것이 실수하지 않는 좋은 방법이다.

USAP3D
그림 11.18 USAP3D.1 파일 만들기

위의 데이터를 종합하면 반구형태의 전방위에 대한 영역을 표시할 수 있게 된다. 여기서는 30°와 10° 간격으로 데이터를 측정하였지만, 데이터가 많으면 많을수록 결과를 더 정확해 질 것이다.

천정의 꼭대기를 기준(0°)으로 천정각(zenith)은 -90° 와 +90°, 방위각(azimuth)은 0° 에서 360° 까지이다. 그림 11.19를 통해서 이를 확인해 보자.

Azimuth
그림 11.19 Azimuth와 Zenith

이제 파일을 저장해보자. 파일을 저장할 때 꼭 지켜야 하는 규칙이 있는데 그것은 파일의 확장자를 .1로 해야 한다는 것이다. 다른 파일이 더 있다면 .2, .3, … 처럼 파일 확장자를 설정해 주면 되는데, 파일이름은 USAP3D로 하고 확장자 80보다 작은 값을 사용할 수 있다. 이 방법 이외의 규칙들이 더 있는데, 이것은 Help를 참조하기 바란다. 이것은 Fortran 프로그램에 의한 것으로 판단된다. 메모장에서 USAP3D.1 이라는 이름으로 데이터를 저장하자. 저장하는 디렉토리는 Working Directory여야 한다. 이렇게 저장하면 Command Output 윈도우에 파일이 추가된 것을 확인할 수 있다. 그렇지 않으면 파일을 찾을 수 없기 때문에 에러가 발생한다. 여기까지 왔다면 광원에 대한 모든 정의가 끝났다. 그럼, 이제 본격적인 프로그램을 시작해보자.

SYSTEM NEW
RESET

USERAPOD ANGLES Z 80 80 0 360 1 !! zenith(-80 80), azimuth(0 360), file(1)

EMITTING SPHEROID 0 0 0 .1 .1 .1 5000000

WINDOW Y 2@1 X 2@1
SPOTS DIR ATT 0
DISPLAY
ANGLES
NORMALIZE MAX
ISOMETRIC
CONTOUR 21

GRAPH 0.5
TRANSPOSE
GRAPH 0.5

RETURN

USERAPOD ANGLES 명령어를 사용해서 Volume Emitter를 생성하는데 Z축을 기준 축으로 zenith -80에서 80까지의 영역과 azimuth 0에서 360까지의 영역에 대해서 고려하려 한다. 이때 확장자가 1로 되어있는 파일을 불러와서 그 데이터를 적용하라는 뜻이다. 원점에 점광원을 하나 만들고 5,000,000개의 Rays를 만들어 보자. 프로그램이 실행되고 나면 USERAPOD DIRECTION과 마찮가지로 ISOMETRIC, CONTOUR, GRAPH에 대한 결과를 얻을 수 있다.

ISOMETRIC_3D
그림 11.20 ISOMETRIC 결과

CONTOUR_3D
그림 11.21 CONTOUR 결과

USERAPOD DIRECTION과 비슷한 데이터를 이용했지만 대각선 부분에 있는 데이터가 추가되면서 결과가 많이 달라진 것을 확인할 수 있다.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: