Rays 정보 확인하기
ASAP에서 Ray를 생성시키면 Ray와 관련된 모든 정보들이 계산되는데 우리는 그 계산 결과를 하나하나 확인할 수 있다. 아래의 프로그램을 실행시켜 보자.
SYSTEM NEW
RESET
UNITS MM
WAVELENGTH 632.8 NM
EMITTING RECTANGLE Z 0 1 1 10
GET
® WAVELEN
RETURN
우선 632.8nm의 파장을 가지는 Rays를 10개 만들었다. 그리고, GET 명령어와 ® 명령어를 사용해서 원하는 결과를 확인하였다. GET 명령어는 ASAP이 만들어낸 Rays들의 내부적인 데이터들을 불러내는 것이고, ® 명령어는 불러낸 데이터들 중에서 원하는 값을 표시해 주는 것이 다. ® WAVELWN은 Wavelength of ray/beam의 결과를 확인할 수 있는 명령어다. GET 명령어 만 사용하면 평균값을 표시해 주고, GET 3 처럼 숫자와 함께 사용하면 3번재 Ray에 대한 값만을 표시해 준다.
— SYSTEM NEW
— RESET
— UNITS MM
— WAVELENGTH 632.8 NM
— EMITTING RECTANGLE Z 0 1 1 10
Total flux in rays created by this emitter is 1.000000
— GET
— ®
WAVELEN
WAVELEN=632.799987792969
— RETURN
Help를 통해 GET 명령어로 확인할 수 있는 내용들에 대해서 알아보자.
GET (ASAP Command) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Retrieves ray data and copies it into variables.Syntax GET [ k [ k’ ] ]
|
GET 명령어의 Help를 보면 얼마나 많은 데이터들을 ASAP이 계산하고 있는지 알 수 있다. 좀 더 많은 정보를 한 눈에 보기위해 $SCR 명령어를 사용해보자.
SYSTEM NEW
RESET
UNITS MM
WAVELENGTH 632.8 NM
EMITTING RECTANGLE Z 0 1 1 10
GET
$SCR 1
₩X0.4 ₩ ₩Y0.4 ₩ ₩Z0.4 ₩ ₩FLUX.4 ₩ ₩WAVELEN ₩
RETURN
$SCR 명령어는 Rays와 관련된 수많은 데이터들 중에서 보고싶은 결과를 선택적으로 표시해 준다. GET 명령어로 Rays의 데이터들을 읽어오고, $SCR 명령어와 Register 들의 조합으로 원하는 결과를 표시해 주면된다. 위 프로그램은 X0, Y0, Z0의 좌표값과 Flux, Wavelength들을 차례대로 표시해 준다. 여기서 사용되는 변수명으로는 Register도 가능하고 Literal도 가능하다.
프로그램을 실행한 후 Command Output Window의 결과를 확인해 보면 다음과 같은을 얻을 수 있다.
…
— GET
— $SCR 1
-0.0272 -0.0036 0.0000 1.0000 633
— RETURN
GET 명령어에 k 옵션(number of a given ray)을 사용하지 않았기 때문에 10개 Rays에 대한 평균값을 표시해 주는데, $DO 명령어와 GET ? 를 통해 10개 Ray 각각에 대한 결과도 확인할 수 있다.
SYSTEM NEW
RESET
UNITS MM
WAVELENGTH 632.8 NM
EMITTING RECTANGLE Z 0 1 1 10
$DO 1 10
{
GET ?
$SCR 1
₩X0.4 ₩ ₩Y0.4 ₩ ₩Z0.4 ₩ ₩FLUX.4 ₩ ₩WAVELEN ₩
}
RETURN