문서의 임의 삭제는 제재 대상으로, 문서를 삭제하려면 삭제 토론을 진행해야 합니다. 문서 보기문서 삭제토론 MATLAB (문단 편집) == 개요 == [[보스턴]]에 본사를 두고 있는 [[MathWorks]] 社에서 개발한 [[공학]]용 애플리케이션 소프트웨어 패키지. 1984년에 출시되었다. 일부 사람들이 [[프로그래밍 언어]]로 이해하기도 하지만, 프로그래밍 언어라기 보다는 해당 소프트웨어의 스크립팅 인터페이스를 사람들이 언어로 받아들이는 것에 가깝다. 이 사실은 MATLAB의 수익구조가 컴파일러 자체의 판매가 아니라, 각종 툴박스/애플리케이션들의 판매에 기반하고 있는 것을 보면 알 수 있다. [* 적지 않은 숫자의 컴공과 학부생들이 애플리케이션 SW로서의 MATLAB 특성을 이해하지 못하고 MATLAB의 스크립트 인터페이스에 대한 불만을 가지고 있다. ~~ 심지어 많은 경우에 파이썬으로 MATLAB을 대체할 수 있지 않을까 하는 망상을 가지고 있다 하더라... ~~] R2014b까지는 1기가 램을 지원하며 그 이후는 최소 2기가 램이 필요하다. 이름의 MAT는 [[수학]](mathematics)이 아니라 [[행렬(수학)|행렬]](matrix)에서 따왔다. MATLAB 로고는 L자 모양의 Membrane을 진동시킬 때 나타나는 Eigenmode 중 하나를 시각화하면 만들 수 있으며, 공식 홈페이지에 [[https://www.mathworks.com/help/matlab/visualize/creating-the-matlab-logo.html|만드는 방법]]이 나와있다. 대부분의 [[미국]] 공대에서 처음으로 프로그래밍에 입문하는 학생들이 제일 먼저 배우는 프로그램이다. 프로그래밍 언어라고 볼 수도 있고, 애플리케이션으로도 볼 수 있으나 [* 프로그래밍 기능이 있는 공학용 계산기를 떠올리면 비슷하다.], 쓰는 사람의 목적에 따라 두 가지 성격이 모두 나타나기도 한다. 하지만 이런 성격 때문에 장단점이 꽤나 극단적으로 나타나는, 빛과 어둠이 공존하는 프로그래밍 언어 겸 애플리케이션이라고 볼 수 있다. 하고자 하는 일에 따라서 편리할 때는 한없이 편리하지만 [* 행렬 계산, 그래프 만들기, 여러 공학적 알고리즘 사용하기 등], 불편할 때는 한없이 불편하다. [* 객체 지향 프로그래밍, 프로그래머가 여러가지 함수 만들기 등] 국내에서도 이공계열 대학생/[[영재학교]], [[과학고]] 학생들이 제법 많이 사용하고 있다. 문법은 아주 간단하다. 프로그래밍에 전문적이지 못한 학생들이 논문을 위한 시뮬레이션을 하기 위해 접하는 경우 등, 급작스럽게 필요하여 사용하는 경우가 많아서 정통한 사람이 많지 않다. [* 사실 이는 대학 측에서도 MATLAB을 한 학기동안 가르치는 과정을 마련하지도 않아 놓고는, 이것쯤은 할 수 있겠지 하면서 교수 재량으로 과제를 진행시키는 문제가 있다.] 그 때문인지 전공 지식이 부족해도 이 프로그램을 잘 다룬다면, 아니, '''포기하지 않고 끈기 있게 붙잡고 늘어질 수만 있어도 대학원에 다니는 선배들이나 교수들로부터 [[대학원생|굉장히 이쁨받는다.]]''' 어찌 보면 공대 학부/대학원 졸업 후엔 쓰기 힘든 프로그램이다. 라이센스가 비싸서 어지간한 회사에서 못 사주기 때문이다. 어지간한 연구소/회사에서는 MATLAB 라이센스를 사주는 대신에 기존에 보유하고 있는 C/C++/FORTRAN 등의 코드에 맞게 연구자가 코드를 개발하길 바란다. 가끔씩, 부유한 환경에서는 업체/기관에서 MATLAB을 제공하기는 한다. [* 항공우주연구원, NASA, 한국개발연구원(KDI), 현대자동차 등에서 MATLAB을 정식 구매하여 사용하는 것은 확인됨. 특히, 전 세계 자동차 업계에서는 Simulink의 자동 C코드 생성에 많이 의존하고 있다.] 다만 이 때에도 최종 목표가 MATLAB 프로그램이라기 보다는, 프로토타이핑을 MATLAB으로 해서 성능을 검증하고 C++ 등으로 변환을 하거나, 시뮬링크 기반의 자동코드 생성기법을 활용하여 시뮬링크 블럭 다이어그램으로부터 [[https://kr.mathworks.com/help/dsp/ug/generate-code-from-simulink.html?requestedDomain=www.mathworks.com|embedded C 코드를 생산]]해 내기도 한다. 그리고 요즘은 MATLAB 못지 않게 간단한 문법을 가진 [[Python]]의 인기가 하늘 높은 줄 모르고 치솟는 중인데다가 공짜, 오픈소스라서 MATLAB 라이선스 비용을 못 내는 회사에서 대체용으로 많이 쓰인다. 파이썬이 공학을 노리고 만들어진 언어는 아니지만 matplotlib, numpy 등 유용한 라이브러리가 많기 때문에 잘 다룰 줄만 안다면 거의 왠만하면 MATLAB의 대용품으로 딱히 부족할게 없다. 때문에 공대에서 매트랩 과목을 파이썬으로 개편해버리는 경우도 종종 있다. -- 하지만 과제할 때는 알아서 매트랩을 써서 결과를 가져와야 하지. -- 참고로 '''MATLAB 툴박스는 대개 석사 수준의 알고리즘까지는 [* 물론 전공 분야와 연구 분야에 따라 다르다.] 상당 부분 지원'''하고 있지만 Fortran, C 등에서는 [[https://en.wikipedia.org/wiki/Singular_value_decomposition|Singular Value Decomposition]](SVD) 같은 기초적인 수치해석 알고리즘만 수행하려고 해도 이런 저런 라이브러리들을 죄다 받거나 책을 보면서 '''직접 코딩'''해야 하기 때문에 굉장히 피곤해진다. 물론 박사급이면 없는 것을 만드는게 당연하기 때문에 크게 문제가 되지 않는 분야도 넘쳐 난다. 다시 말하면 라이브러리 몇 개를 새로 짜는 셈.저장 버튼을 클릭하면 당신이 기여한 내용을 CC-BY-NC-SA 2.0 KR으로 배포하고,기여한 문서에 대한 하이퍼링크나 URL을 이용하여 저작자 표시를 하는 것으로 충분하다는 데 동의하는 것입니다.이 동의는 철회할 수 없습니다.캡챠저장미리보기