1. MATLAB (.m 파일)
만약 먼저 모든 명령을 입력하여 작성한 후 파일에 저장하여 한꺼번에 실행할 수 있다.
이러한 파일을 M-파일이라고 하며, 파일의 확장자는 .m 이 된다.
M-파일은 스크립트와 함수의 두 가지 유형으로 구분한다.
스크립트 파일이란 일련의 긴 명령들을 한꺼번에 자동적으로 수행해 주는 파일을 말한다.
함수 파일이란 외부로부터 값을 입력받아 함수 내에서 어떤 연산을 수행한 후 연산 값을 반환하는 함수로서 사용된다.
이러한 M-파일들은 일반적인 ASCII 텍스트 파일이므로 MATLAB에 내장된 문서 편집기 뿐만 아니라 일반적인 편집기를 통해서도 편집할 수 있다.
구체적인 예제는 아래 글에 정리했다.
2021/03/08 - [Computer Language/Matlab] - MATLAB 기초 7. 스크립트파일, 함수파일 ( .m 확장자)
1-1 변수
MATLAB 에서는 영문자 및 숫자와 밑줄을 사용하여 변수 또는 함수의 이름으로 지정할 수 있다.
이때 변수명에서 MATLAB은 대소문자를 다른 문자로 구별하기 때문에 주의해야한다.
즉, x 와 X는 다르다고 취급된다.
MATLAB 에서 미리 지정된 변수들이 있는데 다음과 같다.
지정된 변수 | 내용 |
pi | 원주율 |
inf | 무한대 |
NaN | Not a Number |
ans | 결과를 일시적으로 저장 |
i,j | 허수를 의미 |
1-2 자주 사용되는 내장 함수들
MATLAB 에서는 다른 라이브러리를 다운받지 않아도 기본적으로 저장된 내장 함수들이 있다.
내장 함수 | 내용 |
log(x) | 자연 로그 (밑이 e) |
log10(x) | 상용 로그 (밑이 10) |
exp(x) | 지수 함수 |
abs(x) | 절댓값 |
sqrt(x) | 제곱근 |
sin(x) | 사인값 |
cos(x) | 코사인값 |
tan(x) | 탄젠트값 |
asin(x) | 아크사인값 |
acos(x) | 아크코사인값 |
atan(x) | 아크탄젠트값 |
삼각함수를 잘 모르겠다면 아래의 글에 가면 정리되어 있다.
2020/04/19 - [AI/Math] - 삼각 함수 미분 공식 & 그래프.
2020/04/19 - [AI/Math] - 삼각함수의 역함수의 미분 & 그래프 (arcsin, arccos, arctan)
자 아래의 MATLAB 라이브 편집기를 통해 위의 예시들을 적용해보자.
내장된 변수와 함수들이기 때문에 다른 특별한 함수 없이 입력만으로도 바로 결과를 보여준다.
1-3 MATLAB에서 자주 사용되는 일반 기호 및 수식 기호
기호 | 내용 |
>> | MATLAB 프롬프트 |
' | transpose |
' ' | 문자열 |
% | 주석 |
[ ] | 다항식, 벡터, 행렬 |
( ) | 입력 변수나 값을 지정할 때 사용 |
; | 세미콜론 - 문장 끝에 사용하면 화면에 결과 값을 출력하지 않음 |
: | 벡터를 만들 때 사용 |
. | 벡터나 행렬의 원소들끼리 계산할 때 사용 |
+ | 덧셈 |
- | 뺄셈 |
* | 곱셈 |
/ | 나눗셈 |
^ | 거듭제곱 |
실제 예제를 통해 하나씩 알아 보자
1-4 MATLAB 에서 사용되는 관계 및 논리 연산자
명령어 | 분류 | 내용 |
A < B | 관계 연산자 | A가 B보다 작음 |
A <= B | 관계 연산자 | A가 B보다 작거나 같음 |
A > B | 관계 연산자 | A가 B보다 큼 |
A >= B | 관계 연산자 | A가 B보다 크거나 같음 |
A == B | 관계 연산자 | A와 B는 같음 |
A ~= B | 관계 연산자 | A와 B가 다름 |
A & B | 논리 연산자 | A와 B가 모두 참일 때만 참 (and) |
A | B | 논리 연산자 | A나 B중 하나라도 참이면 참 (or) |
~A | 논리 연산자 | A가 참이면 거짓, 거짓이면 참 (not) |
다음글.
2021/03/05 - [Computer Language/Matlab] - MATLAB 기초 2. 벡터와 행렬 생성과 슬라이싱
참고도서
MATLAB을 이용한 알기 쉬운 수치해석. 박태희 지음. 생능출판
'컴퓨터 언어 > Matlab' 카테고리의 다른 글
MATLAB 기초 6. 그래프 그리기 (plot, marker, linecolor, axis, title, xlabel, ylabel, legend) (0) | 2021.03.08 |
---|---|
MATLAB 기초 5. 기본 프로그래밍 (if, for, while) (0) | 2021.03.08 |
MATLAB 기초 4. 입출력 ( disp( ), fprintf( ), fscanf( ) ) (0) | 2021.03.08 |
MATLAB 기초 3. 벡터 및 행렬 연산 ( \ , / , .*, .^ , size(), reshape(), length() ) (0) | 2021.03.08 |
MATLAB 기초 2. 벡터와 행렬 생성과 슬라이싱 (0) | 2021.03.05 |