$ITER

ITER은 Iterate의 약자로 ‘되풀이하다, 반복하다’라는 뜻이다. $ITER은 뜻 그대로 일정 구간을 원하는 등분으로 나누어 반복 계산하는 것으로 $DO와 같이 {…} 안의 명령어를 원하는 수만큼 반복해서 실행하게 된다. 아래의 sin함수를 그리는 예제를 살펴보자.

SYSTEM NEW
RESET

PI=3.141592

$ITER ELEMENT -(PI) (PI) –50 RESULT
{  
  RESULT=SIN(ELEMENT)
}

DISPLAY  ITER
  GRAPH
RETURN

$ITER  ELEMENT  -(PI)  (PI)  -50  RESULT 를 보면 함수의 x값을 ELEMENT 라는 이름으로 명명하고, x값에 대입되는 값으로 -PI에서 PI까지의 구간을 50등분으로 나누어 x값에 대입하게 된다. 이렇게 만들어진 총 50개의 x값(ELEMENT)을 가지고 {…} 안의 식을 계산한다. x값을 가지고 SIN(x) 함수를 계산하고, 그 결과를 y값인 RESULT에 넣어준다. 여기에 사용된 x,y 변수인 ELEMENT, RESULT는 사용자가 원하는 이름으로 변수명을 설정해 주면 된다. $ITER 구문이 끝나고 나면 {…} 안에서 계산된 결과값들이 변수 RESULT에 모두 저장되고 이 값들은 ITER.DIS라는 파일에 저장된다.

DISPLAY 명령어를 통해 ITER.DIS 파일을 불러오고, GRAPH 명령어로 그림을 그렸다. 여기서, DISPLAY 명령어 다음에는 ITER 이라고 적어 주어 ITER.DIS 파일을 불러와야 한다. 다른 이름이 오면 에러가 발생한다. 그림 8.9를 보면 x축의 이름이 ELEMENT이고, y축의 이름이 RESULT인 것을 확인할 수 있다.

ITER_01
그림 8.9 $ITER의 결과

Help에서 $ITER을 한번 찾아보자. 그러면 $ITER 다음에 여러개의 함수를 가져갈 수 있는 것을 확인할 수 있는데, 2개의 함수 형태를 만들면 3차원 그림도 그릴 수 있다. 여기서는 다루지 않겠지만, help를 참조해서 이렇게도 가능하다는 것을 확인하길 바란다.

이번에는 -(PI)에서 (PI) 구간을 50등분 하는데 50앞에 붙어있는 -(마이너스) 기호의 의미에 대해서 알아보자. 여기서 -의 의미는 x로 계산되는 값들 중에서 끝점(-PI, PI)을 포함할지 말지를 결정한다.

그림을 단순하게 만들기 위해 위의 프로그램에서 -50을 -10으로 변경하고 프로그램을 실행시켜 보자. 그리고, 결과값인 GRAPH 윈도우 위쪽에 있는 Edit Chart Properties를 선택해서 Chart Editor 윈도우를 생성시키고 Series > Marks > Style 탭에서 Visible 체크박스와 All Series Visible 체크박스를 선택하자. 마지막으로 Style: 콤보박스에서 X value를 선택해 보자. 그러면 아래 그림 8.10과 같이 10개의 값에 대한 x좌표값들을 보여준다.

ITER_(-)
그림 8.10 -n의 결과

-n으로 값을 설정하면 x축의 처음(-PI)과 끝(PI)값을 n개의 등분에 포함시킨다. 그림 8.10에서도 -3.142와 3.142가 포함된 것을 볼 수 있다. 그리고, 0.698의 동일한 등분으로 분리되어 계산된 것을 확인 할 수 있다.

+n으로 값을 설정하면 그림 8.11과 같이 처음과 끝이 -3.142와 3.142가 아닌것을 확인할 수 있다. -3.142의 안쪽에서 시작해서 3.142의 안쪽까지를 전체 범위로 설정하여 n등분 하게 된다. -3.142~3.142까지 6.284를 10등분하고(0.6284), 절반인 0.3142만큼 -3.142에 더하여 처음을 시작한다. 그러면 시작점은 -2.8278이 되고, 간격은 0.628이 된다.

ITER_(+)
그림 8.11 +n의 결과

정확한 계산공식을 알고 싶으면 Help의 $ITER을 참조하기 바란다. Help를 보면 n>0 일때와 n<0 일때의 경우에 대해서 상세히 안내해 주고 있다.

다시한번 강조하지만, ASAP을 배우기 위한 가장 빠르고 정확한 길은 Help에 있다는 것을 기억하고, 이 책에서 설명하지 않고 넘어가는 많은 내용들이 Help에 있으니 꼭 자세히 읽어보길 바란다.

마지막으로 $ITER와 동일한 명령어인 &ITER에 대해서 간단히 알아보자. $ITER로 프로그램을 실행시켜 보면 {…}안의 내용이 50번 반복되는 동안 Command Output Window에 모두 표시된다. 50번이면 다행이지만 수천번이 모두 표시된다면 정신이 하나도 없을 것이다. 이때 &ITER을 사용한다. 위의 프로그램에서 $ITER을 &ITER로만 변경하고 프로그램을 실행시켜 보자. 명령어가 1번만 표시되고 더이상의 반복이 표시되지 않는다. 이처럼 Command Output Window를 깔끔하게 사용하고 싶으면 $ 대신 &를 사용하면 된다.

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: