Matlab이란? 무엇인가? 우리는 왜 Matlab을 써야하는가? 일단 Matlab이란 파이썬과 비슷하게 자연어에 가까운 고수준 언어이다. 여기서 고수준이란 수준이 높다는 것이 아닌 기계어 (이진수로 표현된 010100) 보다 우리가 흔히 사용하는 자연어에 가까운 언어를 이야기한다. 

 

실상 Matlab자체가 기계어를 이해하고 싶어서 만든 것보다는 수학적 계산, 여러 신호 처리, 영상 처리, A.I.와 관련한 다양한 수치해석 등 다양한 형태에 대한 수치를 다루기 위해 만들어졌다. C언어 보다 더 고수준 언어이지만, 다양한 공학과 관련한 수학적 연산이 매우 빠르기에 많이 사용된다. 이전에 이야기한 Octave는 Matlab과 비슷하지만 Matlab을 따라가진 못한다. 그리고 우리의 선대가 만들어놓은 좋~은 함수가 많으므로 우리는 편하게 쓰면 된다. (물론 가져다 쓰는 것도 박사과정쯤 되면 못한다. 직접 만들어서 써야지 뭐... 굴러라 대학원생!)

 

요새 유명한 파이썬과도 비슷하다고 볼 수 있지만, 솔직히 공학과 관련한 연산은 Matlab이 매우 빠르기에 Matlab이 많이 사용된다. 빅데이터를 다루는 곳에서는 파이썬도 나쁘지 않은 선택이지만, 내 생각에는 다 써봐야 한다고 생각한다. 특정 범위에서는 Matlab이 이점이 있을 것이고 특정 분야에서는 파이썬이 좋을 것이다. 당연히 오픈 소스로써 파이썬은 좋은 대책이지만, 학생이라면 꼭 Matlab을 사용해보기를 추천한다. 정말 좋은 툴이다.  

 

이러한 여러 장점을 가지고 있음에도 Matlab이 쓰기 꺼려지는 가장 큰 이유는 무료가 아니라는 점이다. 다른 프로그래밍 언어와의 호환성이 떨어지는 점, 그리고 단순히 공학적 연산을 하기 위한 스크립트 언어라는 점을 탈피하기 위한 여러 노력을 하고 있다. Matlab코드를 Java, C, C++에 적용할 수 있게끔 노력하는 중이다. 요새는 버전업을 통해 범용성을 늘려가려는 노력을 많이 한다. (General Purpose Progrmming Language를 달성하기 위해 노력하는 듯하다.) - 요새는 4차 산업 혁명에 발 맞춰서 머신러닝과 딥러닝 등 A.I 설계과 모델링에 맞추고 있는 모습을 보인다. 

* kr.mathworks.com/

Matlab 홈페이지

 

처음 시작하면 이러한 모양을 볼 수 있다.

 

여러 가지를 타이핑 함으로 다양한 수치를 얻을 수 있는데, 

가장 간단한 계산인

 

>> 1 + 2

타이핑하고 확인할 수 있다.

 

간단한 계산에서부터 추가로 시각화할 수 있는 다양한 도구를 가지고 있다.

>> A = magic(7);
>> B = bar3(A);
>> colorbar

를 입력하면 ( * 그냥 입력해보자. 매트랩의 편안함을 보여주기 위함이다.)

이렇게 신박한 그래프를 바로 그려준다. (너무 간편해서 좋다.)

 

* 매트랩 자체가 수치 해석과 더불어 선형적인 모형을 다룰 수 있도록 설계되어 졌으므로 행렬(matrices)와 벡터를 사용하기 아주 편안하게 되어있다. (그래서 공대생은 매트랩을 쓰면 아주 편-안- 하게 느끼게 되는 것이다. 한번 써보면 헤어나올 수 없는 편안함 - 심지어 내가 설계 안했는데 석사 수준까지는 이미 준비되어 있는 편안함! 아 물론 없는건 만드셔야 합니다. 씽긋 ^ㅡ^)

 

 

+ Recent posts