Professional Documents
Culture Documents
MATLAB 개요와 응용
1장 MATLAB 시작하기
10
-5
1/38
MATLAB MATLAB 활용에 대하여
그외 그래프들
3차원그래프
선그래프, 구 그래프, 등고선
2변수 함수의 그래프
음함수 그래프
매개방정식 그래프…
많은 문제들을 해결 할 수 있다.
MATLAB의 특징
Interpreter 방식의 언어,
* Compiler 방식의 언어( C, Pascal, Fortran 등)
Interpreter: 컴파일없이 소스코드상에서 바로 실행하므로 프로그램
작성및 수정작업을 하는 번거로움이 적다. “중간중간 프로그램이 잘
돌아가는지 확인이 가능하다.
그러나 실행과 동시에 해석하므로 속도가 느리다.
Compiler: 컴퓨터가 미리 해석을 하고 실행하는 방식이라
속도가빠르다.
수학계산 및 가시화(visualization)에 매우 편리함
선형대수, 데이터 분석, 신호처리, 수치적분 등
많은 과학계산용 내장함수를 제공함
사용자에 의한 함수 작성이 편리
배우기 쉽고 사용이 편하다.
다양한 분야의 광범위한 Toolbox를 제공
1장 매트랩 시작하기 12/38
MATLAB MATLAB의 데스크탑 창
MATLAB을 실행하면, 데스크탑 창이 열리며, 기본 화면에는 Command Window,
Current Directory Window, Command History Window 등 세 개의 작은 창이
포함되어 있다.
Editor Window
프로그램 작성 및
편집
undock
dock
명령어 창은
MATLAB의 메인 창으로 명령어의 실행,
사용자가 작성한 프로그램의 실행,
소프트웨어의 관리 등에 사용된다.
콤마(,)
여러 명령어를 한 줄에 표시 할 수 있다.
;(semicolon) 역시 콤마와 같은 실행을 할수 있다.
그러나 화면에 값을 출력해주지는 않는다.
who 저장된 변수
연산 기호 예
덧셈 + 5+3
뺄셈 - 5-3
곱셈 * 5*3 주) 한글Windows에서는 ‘\’가
‘\’(키보드의 \)로 표시됨
오른쪽 나눗셈 / 5/3
왼쪽 나눗셈 \(\) 5\3(=3/5)
지수연산 ^ 5^3(53 을 의미함)
MATLAB에서의 산술 연산 우선 순위
우선순위 수학 연산
1순위 괄호 ※ 괄호가 중첩된 경우, 가장 안쪽의 괄호부터 수행됨
2순위 거듭제곱
4순위 더하기와 빼기
%예제2번 답=1.0323
>> 2^5/(2^5-1)
%예제3번 답=-0.7639
>> 2*(sqrt(5)-1)/(sqrt(5)+1)^2-1
%예제4번 답=31.4159
>> 10*acos(-1)
%예제5번 답x=15,y=8
>> x=2; y=6+x, x=y+7
%예제6번답 =3,5
>> exp(3)
>> log10(10^5)
%예제7번답 = 5
>>27^(1/3)+32^0.2
오류를 피하거나 식을 읽기
>> 2*4^3 + 5 % 243 + 5
쉽도록 괄호를 적절하게 사용하는
ans =
것이 좋다.
133
>> (2*4)^3 + 5 % (24)3 + 5
ans =
517
>> (2* 4) ^3 / 5 % (24)3/5 ← 연산자 사이에 공백이 있어도 상관없다!
ans =
102.4
>> 9^(1/2) % 91/2
ans =
3
>> 9^1/2 % 91/2
ans =
4.5000
>> 4+5/3+2
ans =
7.6667
기본 출력형식은 format 명령어로 바꿀 수 있으며, format 명령어가 실행된 이후의 모든 출력은 규정된
형식으로 표시된다.
자세한 형식은 명령어 창에서 help format을 입력하면 알 수 있다.
수를 화면에 표시하는 형식은 MATLAB이 수를 계산하고 저장하는 방법에는 영향을 미치지 않는다.
명령어 설명 예
명령어 설명 예
소수점 이하 네 자리수의
>> 290/7
format short e 과학적 표기법으로 표시함. ans =
4.1429e+001
>> sqrt(64) % 수 인자
ans =
8
>> sqrt(50+14*3) % 수식 인자
ans =
9.5917
>> sqrt(54+9*sqrt(100)) % 함수가 포함된 인자
ans =
12
>> (15+600/4)/sqrt(121) % 수식이 포함된 인자
ans =
15
1장 매트랩 시작하기 27/38
MATLAB MATLAB 기본 수학 내장함수
함수 설명 예
>> sqrt(81)
sqrt(x) 제곱근
ans = 9
>> exp(5)
exp(x) 지수함수(ex)
ans = 148.4132
>> abs(-24)
abs(x) 절대값
ans = 24
자연로그. >> log(1000)
log(x) 밑이 e인 로그(ln) ans = 6.9078
>> log10(1000)
log10(x) 밑이 10인 로그
ans = 3.0000
계승함수 x! >> factorial(5)
factorial(x) (x는 양의 정수이어야 함) ans = 120
각이 라디안 단위일 때
삼각함수는 sin(x), cos(x), tan(x), cot(x)이고, 역삼각함수는 asin(x), acos(x), atan(x), acot(x)이다.
각이 도(degree) 단위일 때
삼각함수는 sind(x), cosd(x), tand(x), cotd(x)이고, 역삼각함수는 asind(x), acosd(x), atand(x), acotd(x)이다.
쌍곡삼각함수(hyperbolic trigonometric function)는 sinh(x), cosh(x), tanh(x), coth(x)이다. π는 pi로 입력한다.
함수 설명 예
함수 설 명 예
>> round(3.4)
round(x) 가장 가까운 정수로 반올림함 ans =
3
>> fix(2.6)
fix(x) 0쪽에 가까운 정수로 어림함 ans =
2
>> ceil(2.2)
ceil(x) 양의 무한대에 가까운 정수로 어림함 ans =
3
>> floor(-2.25)
floor(x) 음의 무한대 쪽에 더 가까운 정수로 어림함 ans =
-3
>> rem(13,5)
rem(x, y) x를 y로 나눈 나머지를 돌려준다. ans =
3
‘=’ 부호의 의미가 수학과 달리 양변이 같다는 의미가 아니므로 좌변에는 반드시
변수가 와야 하며, 상수나 식이 오게 되면 다음과 같이 에러 메시지를 얻게 된다 :
>> x*2=6
??? x*2=6
Error: The expression to the left of the equals sign is not a valid target for an
assignment.
variable_name = 수치 값 또는 계산 가능한 식
>> ABB=72;
>> ABB=9;
>> ABB % 변수의 현재 값이 출력됨
ABB =
9
>> x=0.75;
>> E=sin(x)^2+cos(x)^2
E=
1
내장함수 이름(예: cos, sin, exp, sqrt, …)은 사용하지 않도록 한다. 함수 이름을 변수로
정의하게 되면, 해당 세션에서는 함수를 사용할 수 없다.
MATLAB에 의해 예약된 17개의 키워드도 변수 이름으로 사용할 수 없다. 명령어 창에서
키워드를 입력하면, 키워드는 파란 색으로 표시된다. 만일 사용자가 키워드를 변수
이름으로 사용하려고 하면 에러 메시지가 표시된다. 명령어 iskeyword를 입력하면
화면에 키워드들이 출력된다.
예) break, case, catch, continue, else, elseif, end, for, function, global, if,
otherwise, persistent, return, switch, try, while