기본적인 연산자

 다음 표에 기본적인 Scilab연산자를 정리하였다. Scilab의 기본 객체는 ‘행렬’이므로 피연산자도 일반적으로 ‘행렬’이다.


[표 1] 기본 연산자

연산자

기능

+

덧셈(이항연산자), +부호(단항연산자)

-

뺄셈(이항연산자), -부호(단항연산자)

*

곱셈

.*

요소간 곱셈

.*.

Kronercker 곱셈. kron(A,B)와 동일

/

나눗셈

\

역나눗셈 (즉 a\b 는 b를 a로 나눈다)

./

요소간 나눗셈

.\

요소간 역나눗셈

./.

Kronecker 나눗셈

.\.

Kronecker 역나눗셈

^ 또는 **

거듭 제곱

.^

요소간 거듭 제곱

‘(작은따옴표)

복소 전치 행렬

.’(점작은따옴표)

단순 전치 행렬


이 표에서 보면 요소간 연산자가 있는데 이것은 행렬 간 연산에서 같은 요소끼리의 연산을 수행한다. 예를 들어서 두 행렬 A, B에 대해서 A*B는 보통의 행렬곱으로 A의 열수와 B의 행수가 같아야 성랍하지만 A.*B 는 같은 위치의 요소끼리 곱셈을 수행하므로 A와 B의 크기가 같아서 수행된다. 예제는 행렬에 대해서 알아볼 때 들겠다.


 대입문을 작성할 때 tuple을 사용하여 한 번에 여러 변수를 지정하는 것이 가능하다. tuple 은 괄호 ( ) 를 사용하는데 각각의 요소는 반드시 comma (,)로 구분해야 한다. 이 기능을 사용하면 변수들을 서로 swap하는 데도 간결하게 사용할 수 있다.(이 기능은 python과 흡사하다.)


 아래에서 첫 번째 예가 변수 u, v 그리고 w 를 동시에 생성하는 것이다. 좌변에는 [ ... ] 를 우변에서 tuple을 지정할 때는 ( ... ) 를 사용했음에 유의해야 한다, 두 번째 예는 u와 v의 값을 서로 맞바꾸는 것이다.

내부 상수들

 다음 표에 미리 정의되어 사용되는 내부 상수들을 정리하였다. 이 변수들은 모두 %로 시작하며 사용자가 덮어 쓸 수 없다.(즉, 재정의될 수 없다.)


[표 2] Scilab의 기정의된 내부 상수들

변수명

의미

%i

허수 ()

%e

자연상수 (2.718281…)

%pi

원주율 (3.142592…)

%eps

표현가능한 가장 작은 수(약 2.2e-16)

%inf

무한대

%nan

not a number

%t or %T

(논리적) 참

%f or %F

(논리적) 거짓

%s

다항식 s=poly(0,’s’)

%z

다항식 s=poly(0,’z’)

%io

표준 I/O

Scilab의 식별자에서 ‘%’를 사용할 수 있는데 맨 첫자로만 사용가능하다. 따라서 위의 상수들은 모두 특정 값이 저장되어 있고 변경할 수 없는 변수와 같이 취급된다.



Posted by 살레시오
,