Loading
2015. 4. 16. 23:00 - 성돌

Mathematica를 처음 시작할 때 기초!





생각해보니... 이것부터 포스팅을 시작하고 했어야 했는데..
뭔가 이건 너무 기본적인 거라 안 하고 넘어갔었던 듯 하다.

사실 우리 나라의 많은 사람들이 Mathematica에 익숙치 않아,
처음 시작할 때 이게 뭔지 전혀 모를 경우도 있을 수 있다고 생각한다.

사실 우선 나부터도 Matlab을 먼저 배웠기 때문에,
Mathematica를 처음 실했했을 때 다소 어색하였다.

하지만 모든 프로그램 언어가 그렇듯, 다 알고보면 비슷하다.

아래서부터는 Mathematica의 기본 조작법과 기본 작동환경 및 용어에 대해서 알아볼 것이다.



다만, 이런 생기초가 아니지만 역시나 기본적인 기능들은 아래 링크들을 에 정리해 두었다.
개인적으로 초보자라면 아래에서 '함수를 정의하기'를 꼭 읽어보기를 추천한다.

- 모든 저장된 변수들을 초기화하기 -

단축키 정리 -
π같은 symbol을 적는 법 -

함수 정의하기 -
수식 다루는 방법의 예 -

방정식 풀기 -
미분방정식 풀기 -
미분하기 -

적분하기 -

행렬, 벡터 등의 리스트 다루기 -

함수를 그래프로 그리기 -
데이터를 그래프로 그리기 -

문자열(String) 다루기 -

- For문 역할을 하는 Do명령어 -




자!, 여기서부터 시작이다.

일단 Mathematica를 실행하여, New notebook을 실행시킨 후
아무거나 적으면 아래와 같이 cell이 형성된다.
여기서는 예로 x=1을 적었다.


이게 cell인지 어떻게 아느냐고?

위에 내가 빨간색으로 동그라미 쳐 놓은 것이 한 cell을 의미한다.

마우스로 밑부분을 클릭한 후, 밑 부분에 아무거나 막 적으면 아래와 같이 
새로운 cell에 글이 적히게 된다.
예를 들어, y=3을 적었다.




Mathematica는 Matlab과 다르게, 이 cell별로 명령을 실행시킨다.

예를 들어 위에 있는 cell에 커서를 위치한 후
Mathematica에서 가장 중요한 단축키
 Shift+Enter 
cell을 실행시키면...



위처럼 내가 입력한 값이 In[1]에 입력되고, Out[1]으로 새로운 sub cell로 형성되게 된다.

위의 그림을 내가 번호 매긴 순서대로 차근차근 봐 보도록 하자.

(1) x의 문자가 파란색에서 검은색으로 변한 점에 주목하자.
파란색이였을 때는 Mathematica에 아직 이 값이 저장되지 않았음을 의미하고,
검은색으로 변했다는 것은 이 값이 x=1으로 Mathematica에 저장되었음을 의미한다.
러한 색깔변화는 상당히 유용한 정보이다.

그리고 Mathematica에 저장된 x값을 다시 없애고 싶을 때는 Clear나 ClearAll명령어를 사용하면 된다.

예를 들어 아래와 같이 하거나...


//방식의 명령을 여기서 사용할 수 있으니 아래와 같이 하면된다. (자세한 설명은 링크 참고)


위에서 Matlab과 달리 Mathematica는 명령어를 쓸 때, 첫 문자가 대문자이며,
소괄호인 ()가 아니라 대괄호인 []를 사용한다는 점에도 역시 주목하자.

(2) 입력하는 부분의 cell과 결과값이 나오는 cell을 묶는 통합 cell이 만들어진 것을 볼 수 있다.
알아두기만 하면 된다.

(3) 지금의 결과값을 이용해서 Mathematica가 수행할 수 있는 명령들 중 추천되는 명령들을 보여준다만...
가끔 유용할 수 있지만, 나는 별로 사용하지 않는다.
재미로 한 번 클릭클릭해보는 것도 공부에 도움이 될 것이다.

(4) 그리고 앞서 말한 대로 윗부분의 cell만 실행했기에 아랫부분의 cell은 실행되지 않았고,
그 때문에 y값은 파란색으로 남아있는 것을 볼 수 있다.



이번에는 다시 윗부분의 cell을 좀
 수정해 보자.
x=1을 x=3이라고 수정하고 바로 뒤에 ;를 붙이는 것이다.

;는 Matlab에서 사용되었던 것처럼 x=3에 대한 결과값을 출력하지 않는 것을 의미한다.



앞서 한 것과 마찬가지로 내가 매긴 번호에 따라서 설명을 해보도록 하겠다.

(1) ;를 뒤에 붙여준 것을 볼 수 있다.

(2) ;에 의해서 결과값이 출력되지 않으므로,
입력하는 cell만 존재하고, 결과값을 출력하는 cell이 형성되지 않았음을 알 수 있다.

(3) 결과값이 출력되지 않았으므로,
Mathematica가 추천하는 명령어도 없으며,
결과값을 출력하라는 show output만 외롭게 있는 것을 볼 수 있다.


Cell은  Delete키를 사용해서 원하면 지울 수 있다.
아랫 부분의 cell을 지워보았다.


아래 부분의 cell이 없어진 것을 볼 수 있다.


그리고 Mathematica가 어떤 작업을 수행하고 있으면,
맨 왼쪽 위에 Running이라고 아래와 같이 표시되게 된다.


이 때, 명령을 중단하고 싶으면...
Alt+. 의 단축키를 눌러서 중단할 수 있다.



그리고 Matlab에서 코딩하는 파일을 M-file이라고 하는 것처럼,
Mathematica는 Notebook이라고 하고 확장자는 nb이다.

왜 notebook이라고 하느냐면,
Matlab과 달리 Wolfram회사는 이걸 정말 전자 공책처럼 만들 생각이기 때문이다.

아래의 예처럼 말이다.
(조금만 익숙해지면 아래처럼 잘 정돈되게 적는 건 너무도 쉽다.)

[https://reference.wolfram.com/language/tutorial/UsingANotebookInterface.html]


최근에는 CDF player라고 하여, '계산이 가능한 문서 포맷'이 개발되었다.

자세한 설명은 한글로 된 링크를 참고하자.



그리고 언제든지 도움말이 필요하면 
F1버튼을 누르자.
그냥 
F1버튼을 눌러도 도움말 창이 뜨지만,

예를 들어, Solve라는 명령어 사용법이 궁금했을 때,
아래와 같이 Notebook에 적혀진 코드에서 Solve부분을 선택하고
바로 F1버튼을 누르면 바로 Solve에 대한 도움말로 넘어간다. 



아래는 Solve에 대한 도움말 창이다.
깔끔하게 정돈이 되어 있는 것을 볼 수 있다.

사실 개인적으로 이 도움말이 완전히 맘에 들지는 않지만,
 Matlab의 도움말보다는 더 보기 쉽고, 쉽게 잘 적혀있는 것 같다.