maple : 기본 규칙과 기본 계산

사칙연산 뿐이 아니라….. 기본적인 장난을 칠 만한 것들을 줄줄이 살펴 보겠습니다. ^^ 예제들을 입력해서 실행해 보시면, 설명하는 특징들을 확 실히 느낄 수 있을 것입니다.
Maple은 수학에서 사용하는 수식을 그대로 사용하기 때문에 배우기 쉽습니 다. 다음 예제들을 입력해서 실행해 보세요.
> f(x)=x^3+1;
Maple은 정확한 값을 계산하는 훌륭한 계산기입니다. 상당히 많은 자릿수 를 계산할 수 있고요. 보통 이런 것의 테스트에는 파이 값을 사용하곤 하 는데, 한번 실험해 보세요. 몇 자리까지 나옵니까?
> sqrt(Pi); > Digits:=500: > evalf(Pi);
sqrt는 스퀘어 루트, 우리가 보통 말하는 2승근을 의미하는 것이겠죠? evalf()는 함수로서, 괄호 안에 들어있는 식이나 변수, 함수 등을 계산해 서 답을 구하는 것입니다.
Maple은 기호연산(symbolic computation)이 가능합니다.
> factor(x^6-y^6);
> Diff(cos(x^2),x)=diff(cos(x^2),x);
Maple은 그래픽을 매우 빠르게 처리하며, 애니메이션(animation) 구현도 가능합니다. 평면 그래프는 물론3차원과 애니메이션 그래프까지 그릴 수 있어, 그냥 상상으로 넘어가기 쉬운 괴상한 식의 그래프가 어떻게 생긴 녀 석인지 상상할 수 있게 해 줍니다. 미적분 책은 다들 있으실 테니, 믿어지 지 않게 생긴 식이 있다면 꼭 그려 보세요. 그래프에 관한 세부 설명은 다 음에 마저 하겠습니다.
> with(plots):Digits:=10: Warning, the name changecoords has been redefined > contourplot(sin(x*y), x=-10..10, y=-10..10);
> plot3d(sin(x*y), x=-2..2, y=-2..2);
Maple은 고수준(high-level)의 프로그래밍 언어입니다. 실제로 loop와 분 기가 가능한 프로그램을 작성할 수 있습니다. 또한 문서화에 편리하며, 식 과 결과들을 ps 파일이나 html 파일로 저장할 수 있습니다.
그럼 아래의 예제들을 마저 실행해 보세요. 어떤 결과가 나옵니까?
> answer:=int(x^2*sin(x-a),x);
> plot3d(answer, x=-Pi..Pi, a=0..1);
> animate(answer, x=-Pi..Pi, a=0..1);
다음은 기본적인 연산인 더하기, 빼기, 곱하기, 나누기, 지수승을 나타냅 니다. 예제들 보다는 조금 지겹겠지만, 다 한번씩 해 보세요. 익숙해지지 않으면 가장 단순한 식에서 실수를 하게 됩니다.
> 5+4;
> 8-3;
> 23*15;
> 150/5;
> 2*(24+7);
> 5^4;
다음과 같은 식들이 주어지면, 주어진 식을 전개해 줍니다. 복잡하게 보이 는 식들이 좍 풀어져서 보기 좋은 모양이 됩니다.
> (x+1)^2;
> expand((x+1)^2);
변수를 정의할 수 있습니다. 다음과 같은 것은 변수에 주어진 값을 저장하 는 것입니다. 이후에 같은 값을 사용할 시에는 변수를 이용하여 간단히 할 수 있습니다.
> y:=10-5;
> a:=987654321*123456789;
> b:=1234567/7654321;
계산 결과를 부동점 소수로 표현해 줍니다.
> evalf(b);
주어진 식의 해를 구합니다. 물론 여기서는 4*x-1=0 이겠죠? ^^
> solve(4*x-1,{x});
Maple을 사용하는 데도 기본적인 규칙이 필요합니다. 간단히 살펴 보겠습 니다만, 기본적인 것은 수학에서 사용하는 규칙들이나 일반적인 프로그래 밍 언어에서 볼 수 있는 특징들을 갖고 있으니 크게 어렵지는 않을 것입니 다. ^^
> var:=2;
var 라는 변수에 2를 집어 넣는 것입니다. 우리가 무엇을 정의(define) 할 때는 :=를 쓰죠? 같은 방식입니다. var를 2로 정의하는 것입니다. 끝 에 있는 ;는 한 문장이 끝나면 반드시 쓰는 것이니까 바빠도 빼먹으면 안 되죠!!!!!!
> var_name:=2;
같은 방식입니다. 아, 변수 이름은 알파벳, 숫자와 _ 까지 쓸 수 있습니 다.
> var:=’var’;
문자열을 정의하는 것입니다. 이 경우 var 라는 변수 안에는 var 라는 문 자열이 들어갑니다.
> var;
지금까지 위의 내용을 다 실행해 보셨다면, 지금 var 라는 변수에는 어느 것이 들어가 있을까요? 2일까요, 아니면 문자열 var 일까요? 이렇게 변수 만 입력해 보면 그 안에 들어 있는 값이 나옵니다. 실행해 보세요. 변수에 는 나중에 들어간 값이 정의되어 있을 것입니다.
> restart;
위의 잡다한 내용을 실행한 후, 변수부터 시작해서 모든 것을 초기화 할 때마다 maple을 껐다 켤 수는 없겠지요. restart 명령이면 다시 초기화가 됩니다. 종종 사용하시게 될 것입니다.
> 5+3;
이것은 그냥 계산입니다. 답은 아마 8이 나오겠지요~~~ ^^
> 1+%;
이 식에서 %가 의미하는 것은 무엇일까요? 바로 전에 계산한 식의 답, 즉 8을 의미합니다. 이 계산의 답은 9입니다.
> 1-%%;
이 식에서 %%는 전전 번의 계산의 답, 8을 의미합니다. 즉 이 식의 답은 – 7이 되는 것인데, 그냥 %만 했다면 9를 의미하여 답은 -8이 되었을 것입니 다.
> y:=x+3;
이것은 일종의 함수입니다. 1차함수 아시죠? 여기에 x에 어떤 수가 들어가 느냐에 따라 y가 바뀌게 됩니다.
> subs(x=-3, y);
위의 함수에 x=-3 을 넣고 계산한 결과입니다. 답은 다들 상상하실 수 잇 죠? 0입니다.
> y;
y는 함수이므로 x+3이 출력됩니다.
> x:=-3;
그러면 다시 x에 -3을 대입해 보겠습니다.
> y;
y의 값이 변해 있는 것을 확인하실 수 있습니다. x에 다른 값을 새로 대입 하고 계산해 보실 수 있습니다.
> y:=t->t+1;
이 식은, y(t)=t+1과 같은 꼴의 함수를 나타냅니다. 앞으로 종종 사용하시 게 될 이런 방식은, 정의할 때는 이렇게 정의하고 사용할 때는 y(t)의 꼴 로 사용하게 됩니다.
> y;
별 게 나오지 않죠? ^^;;;;;; 사용할 때는 그게 아니라고 했잖아요.
> y(t);
그렇습니다. 식이 나오죠. 그렇다는 것은, 이 안에 숫자를 넣으면 계산이 된다는 말이 됩니다.
> y(-3);
-2가 출력되는 것을 확인할 수 있습니다.

답글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다.