31
MATLAB MATLAB MATLAB 개개개 개개 개개개 개개 0 5 10 15 20 25 0 10 20 30 -10 -5 0 5 10

MATLAB 개요와 응용

Embed Size (px)

DESCRIPTION

MATLAB 개요와 응용. 명령어 입력을 위해서는 커서 ‘ |’ 가 프롬프트 ‘ >> ’ 바로 뒤에 놓여야 함. 명령어 창에서의 작업. 명령어 창은 MATLAB 의 메인 창 으로 명령어의 실행 , 사용자가 작성한 프로그램의 실행 , 다른 창 열기 , 소프트웨어의 관리 등에 사용된다. 명령어 입력을 위해서는 커서 | 가 프롬프트 >> 바로 뒤에 놓여야 한다. 명령어를 표시하고 Enter 키를 누르면, 명령어가 실행된다. 항상 직전에 입력한 명령어만 실행되며, 전에 실행된 다른 것 들은 변동이 없다. - PowerPoint PPT Presentation

Citation preview

Page 1: MATLAB 개요와 응용

MATLAB

MATLABMATLAB 개요와 응용개요와 응용

05

1015

2025

0

10

20

30-10

-5

0

5

10

Page 2: MATLAB 개요와 응용

MATLAB HCH

1 장 매트랩 시작하기 2/55

명령어 창에서의 작업명령어 창에서의 작업

명 령 어 창 은 명 령 어 창 은 MATLABMATLAB 의 의 메인 창메인 창으로 으로 명령어의 실행명령어의 실행 , ,

사용자가 작성한 프로그램의 사용자가 작성한 프로그램의 실 행실 행 , , 다 른 창 열 기다 른 창 열 기 , ,

소 프 트 웨 어 의 관 리 등 에 소 프 트 웨 어 의 관 리 등 에 사용된다사용된다 ..

명령어 입력을 위해서는 커서 ‘명령어 입력을 위해서는 커서 ‘ |’ |’

가 프 롬 프 트 ‘가 프 롬 프 트 ‘ >>>> ’ ’ 바 로 뒤 에 바 로 뒤 에 놓여야 함놓여야 함

명령어 입력을 위해서는 커서 명령어 입력을 위해서는 커서 || 가 프롬프트 가 프롬프트 >>>> 바로 뒤에 놓여야 한다바로 뒤에 놓여야 한다 .. 명령어를 표시하고 명령어를 표시하고 EnterEnter 키를 누르면키를 누르면 , , 명령어가 실행된다명령어가 실행된다 . . 항상 직전에 항상 직전에

입력한 명령어만 실행되며입력한 명령어만 실행되며 , , 전에 실행된 다른 것들은 변동이 없다전에 실행된 다른 것들은 변동이 없다 .. 명령어 창에서 커서를 윗줄로 옮겨서 이전 명령어를 수정하여 다시 명령어 창에서 커서를 윗줄로 옮겨서 이전 명령어를 수정하여 다시

실행시키는 것은 불가능하다실행시키는 것은 불가능하다 ..

Page 3: MATLAB 개요와 응용

MATLAB HCH

1 장 매트랩 시작하기 3/55

명령어 창명령어 창 (Command Window)(Command Window)에서의 작업에서의 작업

명령어와 명령어 사이에 콤마명령어와 명령어 사이에 콤마 (,)(,) 를 를 넣어 여러 명령어를 한 줄에 표시할 넣어 여러 명령어를 한 줄에 표시할 수 있 으 며수 있 으 며 , Enter , Enter 키 를 누 르 면 키 를 누 르 면 왼 쪽 에 서 오 른 쪽 순 서 대 로 왼 쪽 에 서 오 른 쪽 순 서 대 로 명령어가 수행된다명령어가 수행된다 ..

명 령 어 창 에 서 커 서 를 윗 줄 로 명 령 어 창 에 서 커 서 를 윗 줄 로 옮겨서 이전 명령어를 수정하여 옮겨서 이전 명령어를 수정하여 다시 실행시키는 것은 불가능하다다시 실행시키는 것은 불가능하다 ..

위쪽 방향키 ↑를 누를 때마다 이전에 입력했던 명령어가 역순으로 위쪽 방향키 ↑를 누를 때마다 이전에 입력했던 명령어가 역순으로 프롬프트 프롬프트 >> >> 다음에 나타난다다음에 나타난다 .. 명령어가 명령어가 >>>> 다음에 나타나면다음에 나타나면 , , 명령어를 명령어를 수정하거나 그대로 실행시킬 수 있다수정하거나 그대로 실행시킬 수 있다 . . 아래쪽 방향키 아래쪽 방향키 ↓↓는 위쪽 방향키와 는 위쪽 방향키와 반대의 순서대로 이전 명령어들을 불러낼 수 있다반대의 순서대로 이전 명령어들을 불러낼 수 있다 ..

명령어가 너무 길어 한 줄에 쓸 수 없는 경우명령어가 너무 길어 한 줄에 쓸 수 없는 경우 , , 마침표 세 개 마침표 세 개 ...... 을 찍고 을 찍고 EnteEnterr 키를 누르면 다음 줄에서 이어서 쓸 수 있다키를 누르면 다음 줄에서 이어서 쓸 수 있다 (( 총 총 4096 4096 글자까지글자까지 ))

Page 4: MATLAB 개요와 응용

MATLAB HCH

1 장 매트랩 시작하기 4/55

세미콜론세미콜론 (;)(;) 과 과 % % 표시표시 , clc , clc 명령어명령어

명령어 창에 명령어를 표시하고명령어 창에 명령어를 표시하고 EnterEnter 키를 누르면키를 누르면 , , 명령어가 실행되어 명령어가 실행되어 출력이 명령어 창에 표시되는데출력이 명령어 창에 표시되는데 ,, 명령어 끝에명령어 끝에 세미콜론세미콜론 (;)(;) 을 붙이면 출력이 을 붙이면 출력이 표시되지 않는다표시되지 않는다 . . 세미콜론은 세미콜론은 결과의 양이 상당히 많거나 결과를 이미 알고 있을 때결과의 양이 상당히 많거나 결과를 이미 알고 있을 때 유용하다 유용하다 .. 여러 명령어를 한 줄에 쓸 때 명령어와 명령어 사이에 콤마 대신 세미콜론을 여러 명령어를 한 줄에 쓸 때 명령어와 명령어 사이에 콤마 대신 세미콜론을

쓰면 출력이 화면에 표시되지 않는다쓰면 출력이 화면에 표시되지 않는다 .. 기호 기호 %% 를 명령어 줄 제일 앞에 쓰면 이 줄은를 명령어 줄 제일 앞에 쓰면 이 줄은 주석문주석문 (comment)(comment) 으로 으로

지정되어 지정되어 Enter Enter 키를 눌러도 실행이 되지 않는다키를 눌러도 실행이 되지 않는다 .. 같은 줄에서 명령어 같은 줄에서 명령어 다음에 다음에 % % 기호와 텍스트를 같이 쓰게 되면기호와 텍스트를 같이 쓰게 되면 , , 주석문은 명령어의 수행에 주석문은 명령어의 수행에 전혀 영향을 주지 않는다전혀 영향을 주지 않는다 .. 일반적으로 명령어 창에서 주석문을 붙일 필요는 없으나일반적으로 명령어 창에서 주석문을 붙일 필요는 없으나 ,, 프로그램에서는 프로그램에서는

기술할 사항을 추가하거나 프로그램 설명을 위해 종종 주석문을 사용한다기술할 사항을 추가하거나 프로그램 설명을 위해 종종 주석문을 사용한다 .. clc clc 명령어는 명령어 창에서 입력한 명령어들과 결과 출력물들을 지워서 명령어는 명령어 창에서 입력한 명령어들과 결과 출력물들을 지워서

명령어 창을 깨끗이 만든다명령어 창을 깨끗이 만든다 . . clc clc 명령어로 이전에 수행된 어떠한 것도 변하지는 않으며명령어로 이전에 수행된 어떠한 것도 변하지는 않으며 , , 이전에 정의된 이전에 정의된

변수들도 존재하며 재사용이 가능하다변수들도 존재하며 재사용이 가능하다 . . 방향키 ↑를 이용하여 이전 명령어를 방향키 ↑를 이용하여 이전 명령어를 불러낼 수도 있다불러낼 수도 있다 ..

Page 5: MATLAB 개요와 응용

MATLAB HCH

1 장 매트랩 시작하기 5/55

명령어기록 창명령어기록 창 (Command History (Command History Window)Window)

Command History Command History 창은 명령 창에서 그 동안 입력했던 명령어들의 목록을 창은 명령 창에서 그 동안 입력했던 명령어들의 목록을 보여주며보여주며 , , 현재 명령어 창에서 입력한 명령어 뿐만 아니라 이전에 입력했던 현재 명령어 창에서 입력한 명령어 뿐만 아니라 이전에 입력했던 명령어들도 포함된다명령어들도 포함된다 ..

Command History Command History 창에 있는 명령어들은 명령어 창에서 다시 사용할 수 창에 있는 명령어들은 명령어 창에서 다시 사용할 수 있다있다 . . MATLABMATLAB 은 이 전 에 입 력 한 명 령 어 들 을 은 이 전 에 입 력 한 명 령 어 들 을 버 퍼버 퍼 에 저 장 하 므 로 과 거 에 저 장 하 므 로 과 거

입력기록들을 입력기록들을 Command History Command History 창에서 볼 수 있다창에서 볼 수 있다 .. Command History Command History 창에서 원하는 명령어를 마우스로 명령어 창으로 끌고 올 창에서 원하는 명령어를 마우스로 명령어 창으로 끌고 올

수 있으며수 있으며 (dragging), (dragging), 필요하면 ← 또는 → 화살표를 이용하여 원하는 필요하면 ← 또는 → 화살표를 이용하여 원하는 위치에서 명령어를 추가하거나 수정하고 위치에서 명령어를 추가하거나 수정하고 Enter Enter 키를 눌러 실행시킬 수 있다키를 눌러 실행시킬 수 있다 ..

명령어기록 창에서 원하는 명령어를 마우스로명령어기록 창에서 원하는 명령어를 마우스로 더블 클릭더블 클릭 (double click)(double click) 하면 하면 해당 명령어가 바로 실행된다해당 명령어가 바로 실행된다 . .

명령어기록 창에 있는 명령어들은 원하는 명령어들을 선택한 후 키보드의 명령어기록 창에 있는 명령어들은 원하는 명령어들을 선택한 후 키보드의 delete delete 키키를 누르거나 를 누르거나 Edit Edit 메뉴에서 메뉴에서 Delete SelectionDelete Selection 을 선택하여 삭제할 수 을 선택하여 삭제할 수 있다있다 . . 또는 삭제하기 위해 선택한 명령어들 위에서 마우스 우측 버튼을 눌러 또는 삭제하기 위해 선택한 명령어들 위에서 마우스 우측 버튼을 눌러 나온 팝업메뉴에서 나온 팝업메뉴에서 Delete SelectionDelete Selection 을 선택해도 된다을 선택해도 된다 ..

Page 6: MATLAB 개요와 응용

MATLAB HCH

1 장 매트랩 시작하기 6/55

스칼라 산술 연산스칼라 산술 연산

MATLABMATLAB 에서 사용하는 산술연산자들의 기호 에서 사용하는 산술연산자들의 기호 ::

연산연산 기호기호 예예

덧셈덧셈 ++ 5+35+3

뺄셈뺄셈 -- 5-35-3

곱셈곱셈 ** 5*35*3

오른쪽 나눗셈오른쪽 나눗셈 // 5/35/3

왼쪽 나눗셈왼쪽 나눗셈 \\((\\)) 5\3(=3/5)5\3(=3/5)

지수연산지수연산 ^̂ 5^3(55^3(53 3 을 의미함을 의미함 ))

주주 ) ) 한글한글 WindowsWindows 에서는 ‘에서는 ‘ \’\’

가 ‘가 ‘ \’(\’( 키보드의 키보드의 \)\) 로 로 표시됨표시됨

왼쪽 나눗셈을 제외한 나머지 기호들은 대부분의 계산기에서와 같다왼쪽 나눗셈을 제외한 나머지 기호들은 대부분의 계산기에서와 같다 . .

스칼라의 경우스칼라의 경우 , , 왼쪽 나눗셈왼쪽 나눗셈 (left division)(left division) 은 오른쪽 나눗셈은 오른쪽 나눗셈 (right (right

division)division) 의 역수이지만의 역수이지만 , , 배열에 대한 연산배열에 대한 연산 (3(3 장 참조장 참조 )) 에 대해서는 왼쪽 에 대해서는 왼쪽 나눗셈이 주로 사용된다나눗셈이 주로 사용된다 ..

Page 7: MATLAB 개요와 응용

MATLAB HCH

1 장 매트랩 시작하기 7/55

스칼라 산술 연산에서의 우선 순위스칼라 산술 연산에서의 우선 순위

MATLABMATLAB 에서의 산술 연산 우선 순위에서의 산술 연산 우선 순위

여러 연산이 포함된 식에서여러 연산이 포함된 식에서 , , 우선 순위가 더 높은 연산이 더 낮은 우선 순위가 더 높은 연산이 더 낮은 연산보다 먼저 수행된다연산보다 먼저 수행된다 . .

둘 이상의 연산이 같은 우선순위를 가지면둘 이상의 연산이 같은 우선순위를 가지면 , , 왼쪽에서 오른쪽으로 식이 왼쪽에서 오른쪽으로 식이 수행된다수행된다 . .

계산 순서를 바꾸기 위해 괄호를 사용할 수 있다계산 순서를 바꾸기 위해 괄호를 사용할 수 있다 ..

우선순위우선순위 수학 연산수학 연산

11 순위순위 괄호괄호 ※ ※ 괄호가 중첩된 경우괄호가 중첩된 경우 , , 가장 안쪽의 괄호부터 가장 안쪽의 괄호부터 수행됨수행됨

22 순위순위 거듭제곱거듭제곱

33 순위순위 곱하기곱하기 , , 나누기나누기 (( 우선순위가 동등함우선순위가 동등함 ))

44 순위순위 더하기와 빼기더하기와 빼기

Page 8: MATLAB 개요와 응용

MATLAB HCH

1 장 매트랩 시작하기 8/55

산술연산 예산술연산 예 (1/3)(1/3)

>> 4*50+3*100+10^2-400/2>> 4*50+3*100+10^2-400/2ans =ans = 400400

>> 2^5/(2^5-1)>> 2^5/(2^5-1)ans =ans = 1.03231.0323

>> 2*(sqrt(5)-1)/(sqrt(5)+1)^2-1>> 2*(sqrt(5)-1)/(sqrt(5)+1)^2-1ans = ans = --0.76390.7639

>> 10*acos(-1)>> 10*acos(-1)ans =ans = 31.415931.4159

>> >> xx=2; =2; yy=6+=6+xx, , xx==yy+7+7y y == 88x x == 1515>> exp(3); >> exp(3); % e% e33

>> log10(10^5); >> log10(10^5); % log% log1010 10 1055

연산 순서연산 순서 :: 수학의 일반 규칙과 수학의 일반 규칙과 동일동일

1. 1. 괄호 먼저 계산한다괄호 먼저 계산한다2. 2. 지수 계산지수 계산3. 3. 곱하기곱하기 , , 나누기는 왼쪽에서 나누기는 왼쪽에서 우측 우측 방향으로방향으로4. 4. 더하기더하기 , , 빼기는 왼쪽에서 우측 빼기는 왼쪽에서 우측

방향으로방향으로

;(;( 세미콜른세미콜른 )) 계산결과 표시 억제계산결과 표시 억제

,(,( 콤마콤마 )) 한 줄에 여러 명령어를 한 줄에 여러 명령어를 입력하면서 계산결과 입력하면서 계산결과

표시표시

%% 프로그램을 설명할 때 프로그램을 설명할 때 사용하며사용하며 , , 명령과는 무관함명령과는 무관함

Page 9: MATLAB 개요와 응용

MATLAB HCH

1 장 매트랩 시작하기 9/55

MATLABMATLAB 에서 산술연산은 명령어 창에 수식을 입력한 후 에서 산술연산은 명령어 창에 수식을 입력한 후 Enter Enter 키를 키를 누르면 계산이 되며누르면 계산이 되며 , , 그다음 두 줄에 걸쳐 ‘그다음 두 줄에 걸쳐 ‘ ans=ans=’’ 과 과 결과결과 (( 답답 )) 가 가 표시된다표시된다 ..

>> 7+8/2 >> 7+8/2 % 8/2% 8/2 가 먼저 수행됨가 먼저 수행됨ans =ans = 1111

>> (7+8)/2>> (7+8)/2ans =ans = 7.50007.5000>> 4+5/3+2 >> 4+5/3+2 % 5/3% 5/3 이 먼저 수행됨이 먼저 수행됨ans =ans = 7.66677.6667>> 5^3/2 >> 5^3/2 % 5% 533 이 먼저 수행됨이 먼저 수행됨ans =ans = 62.500062.5000>> 27^(1/3)+32^0.2 >> 27^(1/3)+32^0.2 % 27% 27(1/3)(1/3)+32+320.20.2

ans =ans = 55

>> 27^1/3+32^0.2 >> 27^1/3+32^0.2 % (27% (2711)/3 + 32)/3 + 320.20.2

ans =ans = 1111

>> 0.7854-(0.7854)^3/(1*2*3)+0.785^5/…>> 0.7854-(0.7854)^3/(1*2*3)+0.785^5/…(1*2*3*4*5)-(0.785)^7/(1*2*3*4*5*6*7)(1*2*3*4*5)-(0.785)^7/(1*2*3*4*5*6*7)ans =ans = 0.70710.7071

>> 7/2>> 7/2ans =ans = 3.50003.5000

>> 7\2>> 7\2 % \% \ 대 신 대 신 \\ 가 표 시 됨가 표 시 됨 ((한글윈도한글윈도 ))ans =ans = 0.28570.2857

>> ans>> ansans =ans = 0.28570.2857

산술연산 예산술연산 예 (2/3)(2/3)

Page 10: MATLAB 개요와 응용

MATLAB HCH

1 장 매트랩 시작하기 10/55

출력 형식출력 형식 (1/3)(1/3)

MATLABMATLAB 의 기본의 기본 (default) (default) 출력 형식은 소수점 이하 네 자리를 가진 출력 형식은 소수점 이하 네 자리를 가진 고정소수점고정소수점 (short(short 라고 부름라고 부름 )) 이다이다 ..

>> 4+5/3+2>> 4+5/3+2ans =ans = 7.66677.6667

기본 출력형식은 기본 출력형식은 format format 명령어로 바꿀 수 있으며명령어로 바꿀 수 있으며 , format , format 명령어가 명령어가 실행된 이후의 모든 출력은 규정된 형식으로 표시된다실행된 이후의 모든 출력은 규정된 형식으로 표시된다 . . 자세한 형식은 자세한 형식은 명령어 창에서명령어 창에서 help formathelp format 을 입력하면 알 수 있다을 입력하면 알 수 있다 . .

수를 화면에 표시하는 형식은 수를 화면에 표시하는 형식은 MATLABMATLAB 이 수를 계산하고 저장하는 이 수를 계산하고 저장하는 방법에는 영향을 미치지 않는다방법에는 영향을 미치지 않는다 ..

명령어명령어 설명설명 예예

format shortformat short0.001<0.001< 수≤수≤ 10001000 인 수 를 인 수 를 소 수점 이 하 네 소 수점 이 하 네 자리수의 고정소수점자리수의 고정소수점으로 표시함으로 표시함 . . 그 외의 그 외의 범위의 수는 범위의 수는 short e short e 형식으로 표시함형식으로 표시함 ..

>> 290/7>> 290/7ans = ans = 41.428641.4286

format longformat long0.001<0.001< 수≤수≤ 10001000 인 수를 인 수를 소수점 이하 소수점 이하 1515 자리의 자리의 고정소수점고정소수점으로 표시함으로 표시함 . . 그 외 범위의 수는 그 외 범위의 수는 long elong e 의 형식으로 표시함의 형식으로 표시함 ..

>> 290/7>> 290/7ans =ans = 41.4285714285714341.42857142857143

Page 11: MATLAB 개요와 응용

MATLAB HCH

1 장 매트랩 시작하기 11/55

명령어명령어 설명설명 예예

format short eformat short e 소 수점 이 하 네 자 리 수 의 과 학 적 소 수점 이 하 네 자 리 수 의 과 학 적 표기법으로 표시함표기법으로 표시함 ..

>> 290/7>> 290/7ans =ans = 4.1429e+0014.1429e+001

format long eformat long e 소 수점 이 하 소 수점 이 하 15 15 자 리 수 의 과 학 적 자 리 수 의 과 학 적 표기법으로 표시함표기법으로 표시함 ..

>> 290/7>> 290/7ans =ans = 4.142857142857143e+0014.142857142857143e+001

format short gformat short g고정소수점 표시와 부동소수점 표시 고정소수점 표시와 부동소수점 표시 중 에 서 더 편한 방법으 로 표 시중 에 서 더 편한 방법으 로 표 시 . . 유효숫자는 유효숫자는 55 개개

>> 290/7>> 290/7ans =ans = 41.42941.429

format long gformat long g고정소수점 표시와 부동소수점 표시 중 고정소수점 표시와 부동소수점 표시 중 더 편한 방법으로 표시더 편한 방법으로 표시 . . 유효숫자는 유효숫자는 1515개개 ..

>> 290/7>> 290/7ans =ans = 41.428571428571441.4285714285714

format bankformat bank 소수점 이하 두 자리까지만 표시함소수점 이하 두 자리까지만 표시함 ..>> 290/7>> 290/7ans =ans = 41.4341.43

format compactformat compact 화면에 많은 정보가 표시되도록 하기 위해 빈 줄을 제거함화면에 많은 정보가 표시되도록 하기 위해 빈 줄을 제거함

format looseformat loose format compactformat compact 와 반대로 빈 줄을 삽입함 와 반대로 빈 줄을 삽입함

출력 형식출력 형식 (2/3)(2/3)

Page 12: MATLAB 개요와 응용

MATLAB HCH

1 장 매트랩 시작하기 12/55

기본 수학 내장함수기본 수학 내장함수

>> >> sqrt(64) sqrt(64) % % 수 인자수 인자ans =ans = 88>> sqrt(50+14*3)>> sqrt(50+14*3) % % 수식 인자수식 인자ans =ans = 9.59179.5917>> sqrt(54+9*sqrt(100)) >> sqrt(54+9*sqrt(100)) % % 함수가 포함된 인자함수가 포함된 인자ans =ans = 1212>> (15+600/4)/sqrt(121)>> (15+600/4)/sqrt(121) % % 수식이 포함된 인자수식이 포함된 인자ans =ans = 1515

MATLABMATLAB 은 광범위한 내장함수 은 광범위한 내장함수 librarylibrary 를 갖고 있으며를 갖고 있으며 , , 수식에 포함할 수 수식에 포함할 수 있다있다 ..

내장함수는 함수이름과 괄호 속의내장함수는 함수이름과 괄호 속의 인자인자 (argument)(argument) 로 구성된다로 구성된다 . .

예예 )) sqrt(x)sqrt(x) : : 수의 제곱근을 계산하는 함수수의 제곱근을 계산하는 함수 .. 함수 이름은 함수 이름은 sqrtsqrt, , 인자는 인자는 xx이다이다 . .

함수의 인자는 수함수의 인자는 수 , , 또는 수치가 할당된 변수또는 수치가 할당된 변수 , , 수와 변수로 구성된 계산 수와 변수로 구성된 계산 가능한 수식 등이 될 수 있다가능한 수식 등이 될 수 있다 . . 함수가 인자에 포함될 수도 있다함수가 인자에 포함될 수도 있다 ..

Page 13: MATLAB 개요와 응용

MATLAB HCH

1 장 매트랩 시작하기 13/55

MATLAB MATLAB 기본 수학 내장함수기본 수학 내장함수

전체 내장함수 목록은 전체 내장함수 목록은 Help WindowHelp Window 에서 종류별로 분류된 목록을 참조한다에서 종류별로 분류된 목록을 참조한다 ..

함수함수 설명설명 예예

sqrt(x)sqrt(x) 제곱근제곱근 >> sqrt(81)>> sqrt(81)ans = 9ans = 9

nthroot(x, n)nthroot(x, n)실수 실수 xx 의 실수 의 실수 nn 제곱근제곱근 ..((xx 가 음수이면가 음수이면 , , nn 은 홀수 정수이어야 은 홀수 정수이어야 함함 ) )

>> nthroot(80, 5)>> nthroot(80, 5)ans = 2.4022ans = 2.4022

exp(x)exp(x) 지수함수지수함수 ((eexx))>> exp(5)>> exp(5)ans = 148.4132ans = 148.4132

abs(x)abs(x) 절대값절대값 >> abs(-24)>> abs(-24)ans = 24ans = 24

log(x)log(x) 자연로그자연로그 ..밑이 밑이 ee 인 로그인 로그 (ln)(ln)

>> log(1000)>> log(1000)ans = 6.9078ans = 6.9078

log10(x)log10(x) 밑이 밑이 1010 인 로그인 로그 >> log10(1000)>> log10(1000)ans = 3.0000ans = 3.0000

factorial(x)factorial(x) 계승함수 계승함수 xx!!((xx 는 양의 정수이어야 함는 양의 정수이어야 함 ))

>> factorial(5)>> factorial(5)ans = 120ans = 120

Page 14: MATLAB 개요와 응용

MATLAB HCH

1 장 매트랩 시작하기 14/55

MATLAB MATLAB 삼각함수삼각함수

함수함수 설명설명 예예

sin(x)sin(x)sind(x)sind(x)

각도 각도 xx 의 사인의 사인 ((xx 는 는 라디안라디안 ))각도 각도 xx 의 사인의 사인 ((xx 는 는 도도 ))

>> sin(pi/6)>> sin(pi/6)ans = ans = 0.50000.5000

cos(x)cos(x)cosd(x)cosd(x)

각도 각도 xx 의 코사인의 코사인 ((xx 는 는 라디안라디안 ))각도 각도 xx 의 코사인의 코사인 ((xx 는 는 도도 ))

>> cosd(30)>> cosd(30)ans =ans = 0.86600.8660

tan(x)tan(x)tand(x)tand(x)

각도 각도 xx 의 탄젠트의 탄젠트 ((xx 는 는 라디안라디안 ))각도 각도 xx 의 탄젠트의 탄젠트 ((xx 는 는 도도 ))

>> tan(pi/6)>> tan(pi/6)ans =ans = 0.57740.5774

cot(x)cot(x)cotd(x)cotd(x)

각도 각도 xx 의 코탄젠트의 코탄젠트 ((xx 는 는 라디안라디안 ))각도 각도 xx 의 코탄젠트의 코탄젠트 ((xx 는 는 도도 ))

>> cotd(30)>> cotd(30)ans =ans = 1.73211.7321

각이 라디안 단위 일 때 삼각함 수 는 각이 라디안 단위 일 때 삼각함 수 는 sin(x), cos(x), tan(x), cot(x)sin(x), cos(x), tan(x), cot(x) 이 고 이 고 역삼각함수는 역삼각함수는 asin(x), acos(x), atan(x), acot(x)asin(x), acos(x), atan(x), acot(x) 이다이다 ..

각이 도각이 도 (degree) (degree) 단위일 때 삼각함수는 단위일 때 삼각함수는 sinsindd(x), cos(x), cosdd(x), tan(x), tandd(x), cot(x), cotdd(x)(x) 이고 이고 역삼각함수는 역삼각함수는 asinasindd(x), acos(x), acosdd(x), atan(x), atandd(x), acot(x), acotdd(x)(x) 이다이다 . .

쌍곡삼각함수쌍곡삼각함수 (hyperbolic trigonometric function)(hyperbolic trigonometric function) 는 는 sinh(x), cosh(x), tanh(x), csinh(x), cosh(x), tanh(x), coth(x)oth(x) 이다이다 . π. π 는 는 pipi 로 입력한다로 입력한다 ..

Page 15: MATLAB 개요와 응용

MATLAB HCH

1 장 매트랩 시작하기 15/55

어림 함수어림 함수 (rounding function)(rounding function)

함수함수 설 명설 명 예예

round(x)round(x) 가장 가까운 정수로 반올림가장 가까운 정수로 반올림 (( 사사오입사사오입 )) 함함>> round(3.4)>> round(3.4)ans = ans =     33

fix(x)fix(x) 00 쪽에 가까운 정수로 어림함쪽에 가까운 정수로 어림함>> fix(2.6)>> fix(2.6)ans =ans =     22

ceil(x)ceil(x) 양의 무한대에 가까운 정수로 어림함양의 무한대에 가까운 정수로 어림함>> ceil(2.2)>> ceil(2.2)ans =ans = 33

floor(x)floor(x) 음의 무한대 쪽에 더 가까운 정수로 어림함음의 무한대 쪽에 더 가까운 정수로 어림함>> floor(-2.25)>> floor(-2.25)ans = ans = --33

rem(x, y)rem(x, y) xx 를 를 yy 로 나눈 나머지를 돌려준다로 나눈 나머지를 돌려준다 ..>> rem(13,5)>> rem(13,5)ans =ans =    33

sign(x)sign(x)Signum Signum 함수로서함수로서 , x>0, x>0 이면 이면 +1+1 을을 , x<0, x<0 이면 이면 -1-1 을을 , , x=0x=0 이면 이면 00 을 돌려준다을 돌려준다 ..

>> sign(5)>> sign(5)ans =ans =    11

Page 16: MATLAB 개요와 응용

MATLAB HCH

1 장 매트랩 시작하기 16/55

변수는 한 개의 문자변수는 한 개의 문자 , , 또는 여러 문자들또는 여러 문자들 ((숫자 포함숫자 포함 )) 의 조합으로 이루어진 의 조합으로 이루어진 이름으로 수치 값이 할당된다이름으로 수치 값이 할당된다 . .

변수는 데이터를 저장할 메모리 장소의 이름을 나타내며변수는 데이터를 저장할 메모리 장소의 이름을 나타내며 , , 새로운 변수가 새로운 변수가 정의되면 정의되면 MATLABMATLAB 은 배정받은 변수의 값이 저장될 적절한 메모리 은 배정받은 변수의 값이 저장될 적절한 메모리 공간을 할당한다공간을 할당한다 . . 변수가 사용되면 변수에 저장된 데이터가 사용된다변수가 사용되면 변수에 저장된 데이터가 사용된다 . .

변수에 새로운 값이 할당되면변수에 새로운 값이 할당되면 , , 메모리 위치의 내용이 갱신된다메모리 위치의 내용이 갱신된다 ..

할당 연산자할당 연산자 (assignment operator) ‘=’(assignment operator) ‘=’ 는 우측 값을 좌측 변수에 할당한다는 우측 값을 좌측 변수에 할당한다 . .

스칼라 변수와 할당 연산자스칼라 변수와 할당 연산자 (1/3)(1/3)

variable_namevariable_name = = 수치 값 또는 계산 가능한 식수치 값 또는 계산 가능한 식

할당 연산자 할당 연산자 == 의 좌변은 한 개의 변수이름만을 포함할 수 있다의 좌변은 한 개의 변수이름만을 포함할 수 있다 . . 우변이 수식인 우변이 수식인 경우 수치 값이 할당된 변수들은 수식에 포함될 수 있다경우 수치 값이 할당된 변수들은 수식에 포함될 수 있다 . .

Enter Enter 키를 누르면 우변의 수치 값이 변수에 할당되며키를 누르면 우변의 수치 값이 변수에 할당되며 , MATLAB, MATLAB 은 다음 두 은 다음 두 줄에 걸쳐 변수와 할당된 값을 화면에 표시한다줄에 걸쳐 변수와 할당된 값을 화면에 표시한다 ..

>> x=15 >> x=15 % % 수 수 1515 가 변수 가 변수 xx 에 에 할당됨할당됨

x =x = 1515

>> x=3*x>> x=3*x--12 12 % % 새로운 값이 새로운 값이 xx 에 에 할당됨할당됨

x =x = 3333

Page 17: MATLAB 개요와 응용

MATLAB HCH

1 장 매트랩 시작하기 17/55

명령어 끝에 명령어 끝에 세미콜론세미콜론 을 붙이고 을 붙이고 Enter Enter 키를 누르면 키를 누르면 , , 실행결과가 화면에 실행결과가 화면에 출력되지 않는다 출력되지 않는다 . . 물론 변수는 메모리에 저장된다 물론 변수는 메모리에 저장된다 ..

이미생성된 변수의 이름을 입력하면 변수와값이 화면에 출력된다 이미생성된 변수의 이름을 입력하면 변수와값이 화면에 출력된다 .. 같은 줄에 여러 할당문을 쓰려면 같은 줄에 여러 할당문을 쓰려면 ,, 할당문 사이에 할당문 사이에 콤마 또는 세미콜론 콤마 또는 세미콜론 을 삽입하 을 삽입하

며며 , , Enter Enter 키를 누르면 왼쪽에서 오른쪽으로 할당문이 실행되어 결과가 화면에 키를 누르면 왼쪽에서 오른쪽으로 할당문이 실행되어 결과가 화면에출력된다출력된다 . . 콤마 대신 세미콜론을 쓰면 변수는 화면에 출력되지 않는다 콤마 대신 세미콜론을 쓰면 변수는 화면에 출력되지 않는다 . .

할당 연산자할당 연산자 (2/3)(2/3)

>> a=12 >> a=12 % % 수 수 1212 를 를 aa 에 에 할당함할당함

a =a = 1212>> B=4 >> B=4 % % 수 수 44 를 를 BB 에 에

할당함할당함B =B = 44

>> C=(a-B)+40>> C=(a-B)+40--a/B*10a/B*10C =C = 1818

우변의 수식 우변의 수식 값을 값을 CC 에 에 할당함할당함

>> >> a=12;a=12;>> B=4;>> B=4;>> C=(a-B)+40-a/B*10;>> C=(a-B)+40-a/B*10;>> C>> CC =C = 1818

>> >> a=12, B=4; C=(a-B)+40-a/B*10a=12, B=4; C=(a-B)+40-a/B*10a =a = 1212C =C = 1818

Page 18: MATLAB 개요와 응용

MATLAB HCH

1 장 매트랩 시작하기 18/55

이미생성된 변수는새로운값을 다시 할당받을 수도 있다 이미생성된 변수는새로운값을 다시 할당받을 수도 있다 . . 일단변수가 정의되고 나면 일단변수가 정의되고 나면 , , 변수는 함수의 인자 변수는 함수의 인자 (argument)(argument) 로 사용될수 로 사용될수

있다있다 . .

>> >> ABB=72;ABB=72;>> ABB=9;>> ABB=9;>> ABB >> ABB % % 변수의 현재 값이 출력됨변수의 현재 값이 출력됨ABB =ABB = 99

>> >> x=0.75;x=0.75;>> E=sin(x)^2+cos(x)^2>> E=sin(x)^2+cos(x)^2E =E = 11

할당 연산자할당 연산자 (3/3)(3/3)

Page 19: MATLAB 개요와 응용

MATLAB HCH

1 장 매트랩 시작하기 19/55

변수 이름은 변수 이름은 문자로 시작문자로 시작해야 하며해야 하며 , , 길이는 길이는 MATLAB 7MATLAB 7 의 경우 의 경우 6363 개개 (6.0 (6.0 버전까지는 버전까지는 3131 개개 )) 까지 가능하다까지 가능하다 . . 예예 ) var, temp_1, temp_2, ) var, temp_1, temp_2, xx, , yy, ave_1, ave_1

이름에 이름에 문자문자 , , 숫자숫자 , ‘ _ ’ , ‘ _ ’ 등을 포함 등을 포함 할 수 있으며 할 수 있으며 , , 마침표마침표 , , 콤마콤마 , , 세미콜론 세미콜론 등은 포함할 수 없다 등은 포함할 수 없다 . . 이름 사이에 공백을 둘 수 없으며 이름 사이에 공백을 둘 수 없으며 , , ‘필요하면 ‘필요하면 _’_’ 를 를

이용한다이용한다 .. 변수는 변수는 대 소문자를 구별∙대 소문자를 구별∙ 한다한다 . . 즉 다음 변수들은 모두 다른 변수들이다즉 다음 변수들은 모두 다른 변수들이다 ::

예예 ) AA, Aa, aA, aa) AA, Aa, aA, aa 내장함수 이름내장함수 이름 (( 예예 : cos, sin, exp, sqrt, …): cos, sin, exp, sqrt, …) 은 사용하지 않도록 한다은 사용하지 않도록 한다 . . 함수 함수

이름을 변수로 정의하게 되면이름을 변수로 정의하게 되면 , , 해당 세션에서는 함수를 사용할 수 없다해당 세션에서는 함수를 사용할 수 없다 . . MATLABMATLAB 에 의해 예약된 에 의해 예약된 1717 개의 키워드도 변수 이름으로 사용할 수 없다개의 키워드도 변수 이름으로 사용할 수 없다 . .

명령어 창에서 키워드를 입력하면명령어 창에서 키워드를 입력하면 , , 키워드는 파란 색으로 표시키워드는 파란 색으로 표시된다된다 . . 만일 만일 사용자가 키워드를 변수 이름으로 사용하려고 하면 에러 메시지가 표시된다사용자가 키워드를 변수 이름으로 사용하려고 하면 에러 메시지가 표시된다 . . 명령어 명령어 iskeywordiskeyword 를 입력하면 화면에 키워드들이 출력된다를 입력하면 화면에 키워드들이 출력된다 . .

예예 ) break, case, catch, continue, else, elseif, end, for, function, global, if, ) break, case, catch, continue, else, elseif, end, for, function, global, if, otherwise, persistent, return, switch, try, whileotherwise, persistent, return, switch, try, while

변수변수 (variable) (variable) 이름에 대한 규칙이름에 대한 규칙

Page 20: MATLAB 개요와 응용

MATLAB HCH

1 장 매트랩 시작하기 20/55

명령어 창에서 명령어 창에서 키워드를 입력하면키워드를 입력하면 , , 키워드는 파란 색으로 표시되며키워드는 파란 색으로 표시되며 ,, 사용자가 키워드를 변수 이름으로 사용하려고 하면 에러 메시지가 표시된다사용자가 키워드를 변수 이름으로 사용하려고 하면 에러 메시지가 표시된다 . .

명령어 명령어 iskeywordiskeyword 를 입력하면 화면에 키워드들이 출력된다를 입력하면 화면에 키워드들이 출력된다 . . MATLABMATLAB 은 기동될 때은 기동될 때 , , 자주 사용되는 변수들을 다음과 같이 미리 정의한자주 사용되는 변수들을 다음과 같이 미리 정의한

다다 . . ansans 가장 최근의 계산값을 저장하고 있는 임시 변수가장 최근의 계산값을 저장하고 있는 임시 변수epseps 두 수 사이의 최소 차이로 두 수 사이의 최소 차이로 22--5252≈2.2204≈2.2204ⅹⅹ1010--1616. .

예예 ) 1.0) 1.0 에서 바로 다음 부동소수점까지의 거리에서 바로 다음 부동소수점까지의 거리 i, ji, j 허수허수InfInf 무한히 큰 수무한히 큰 수 (Infinity)(Infinity)

NaNNaN Not-a-Number. 0/0Not-a-Number. 0/0 과 같이 정의할 수 없는 수치결과를 나타낸다과 같이 정의할 수 없는 수치결과를 나타낸다pipi ππ=3.1415926535897…=3.1415926535897…

realmax, realmin, nargin, nargoutrealmax, realmin, nargin, nargout 등등

위 변수들을 다른 값으로 다시 정의할 수도 있다위 변수들을 다른 값으로 다시 정의할 수도 있다 . . 그러나 변수 그러나 변수 pi, eps, infpi, eps, inf 는 는 많은 응용프로그램에서 자주 사용되는 변수이므로 굳이 다른 값으로 다시 많은 응용프로그램에서 자주 사용되는 변수이므로 굳이 다른 값으로 다시 정의하지는 않는다정의하지는 않는다 . . 그러나 그러나 ii 나 나 jj 같은 변수는 응용 프로그램에 복소수가 같은 변수는 응용 프로그램에 복소수가 포함되지 않는 경우 루프와 관련하여 다른 변수로 정의하기도 한다포함되지 않는 경우 루프와 관련하여 다른 변수로 정의하기도 한다 ..

변수변수 (variable) (variable) 이름에 대한 규칙이름에 대한 규칙

Page 21: MATLAB 개요와 응용

MATLAB HCH

1 장 매트랩 시작하기 21/55

반드시 공백이 반드시 공백이 들어가야 함들어가야 함

명령이 길어서 한 줄에 입력할 수 없는 경우명령이 길어서 한 줄에 입력할 수 없는 경우 , , 마침표마침표 (.) (.) 세 개를 찍고 세 개를 찍고 Enter Enter 키를 눌러도 커서의 위치만 다음 줄로 바뀔 뿐 명령은 실행되지 키를 눌러도 커서의 위치만 다음 줄로 바뀔 뿐 명령은 실행되지 않는다않는다 . . 연산자는 분리할 수 있으나연산자는 분리할 수 있으나 , , 변수명은 분리해서 쓸 수 없다변수명은 분리해서 쓸 수 없다 ..

>> Class_1=20; Class_2=15; Class_3=14; Class_4=17; Total_Number=240;>> Class_1=20; Class_2=15; Class_3=14; Class_4=17; Total_Number=240;

>> ave = (Class_1 + Class_2 + Class_3 + Class_4) …>> ave = (Class_1 + Class_2 + Class_3 + Class_4) …

/ / Total_Number * 100Total_Number * 100

ans = 27.5ans = 27.5

>> ave=(Class_1+Class_2+Class_3+Class_4)/Total_ …>> ave=(Class_1+Class_2+Class_3+Class_4)/Total_ …

??? ave=(Class_1+Class_2+Class_3+Class_4)/Total … ??? ave=(Class_1+Class_2+Class_3+Class_4)/Total …

Error: The input character is not valid in MATLAB statements or Error: The input character is not valid in MATLAB statements or expressions.expressions.

>> a=4; b=3; sum=a+b>> a=4; b=3; sum=a+b sum = 7sum = 7>> a=7; sum>> a=7; sum sum = 7sum = 7

변수변수

aa 의 값이 바뀌어도 의 값이 바뀌어도 ExcelExcel 과 달리 과 달리 sumsum 의 값은 변동이 없다의 값은 변동이 없다 ..

Page 22: MATLAB 개요와 응용

MATLAB HCH

1 장 매트랩 시작하기 22/55

변수 관리에 유용한 명령어들변수 관리에 유용한 명령어들

명령어 창명령어 창 (Command Window)(Command Window) 에서 다음 명령어를 실행함으로써 에서 다음 명령어를 실행함으로써 생성된 변수들을 삭제하거나 변수들에 대한 정보들을 얻을 수 있다생성된 변수들을 삭제하거나 변수들에 대한 정보들을 얻을 수 있다 ..

명 명 명령어명령어 령 령 설 명설 명설 명설 명

clearclear 메모리에서 모든 변수들을 제거한다메모리에서 모든 변수들을 제거한다 ..

clear x y zclear x y z 메모리에서 변수 메모리에서 변수 x, y, z x, y, z 만을 제거한다만을 제거한다 ..

whowho 현재 메모리에 있는 변수들의 목록을 화면에 출력한다현재 메모리에 있는 변수들의 목록을 화면에 출력한다 ..

whoswhos현재 메모리에 있는 변수들의 이름과 크기현재 메모리에 있는 변수들의 이름과 크기 , , 바이트와 바이트와 클래스에 대한 정보를 화면에 출력한다클래스에 대한 정보를 화면에 출력한다 ..

Page 23: MATLAB 개요와 응용

MATLAB HCH

1 장 매트랩 시작하기 23/55

명령창에서 사용하는 일반 명령어명령창에서 사용하는 일반 명령어

clcclc 명령창의 내용을 모두 지운다명령창의 내용을 모두 지운다 ((ClClears the ears the CCommand window)ommand window)

exist(‘exist(‘varvar’’) ) ‘ ‘varvar’ ’ 이름의 파일이나 변수가 있는지 확인한다이름의 파일이나 변수가 있는지 확인한다

quitquit MATLAB MATLAB 을 끝낸다을 끝낸다

helpwin helpwin 도움말 창을 연다도움말 창을 연다

help help 명령어명령어 명령창에서 ‘명령어’에 간단한 설명을 보여준다 명령창에서 ‘명령어’에 간단한 설명을 보여준다

lookfor lookfor 단어단어 단어와 관련된 명령어를 찾아준다단어와 관련된 명령어를 찾아준다 (( 명령어를 잘 모를 때 사용함명령어를 잘 모를 때 사용함 ) )

cdcd 디렉토리 위치를 변경하거나 현재 위치를 디렉토리 위치를 변경하거나 현재 위치를 알려준다알려준다

Page 24: MATLAB 개요와 응용

MATLAB HCH

1 장 매트랩 시작하기 24/55

MATLABMATLAB 을 포함한 프로그래밍 언어에서의 ‘을 포함한 프로그래밍 언어에서의 ‘ ==’ ’ 부호는 수학에서의 부호는 수학에서의 ‘‘같다같다 ’라는 의미보다는 ’라는 의미보다는 할당할당 (assignment)(assignment) 이나 이나 대체대체 (replacement)(replacement) 의 의 의미를 갖는다의미를 갖는다 ..

예예 ) >> ) >> xx=5 =5 % % xx 라는 변수를 만들어 라는 변수를 만들어 55 라는 값을 할당라는 값을 할당 (( 저장저장 )) 한다한다 ..

>> >> x x = = x x + 10 + 10 % % 현재 현재 xx 의 값에 의 값에 1010 을 더한 결과를 다시 을 더한 결과를 다시 xx 에 에 저장하여 저장하여

기존의 값을 대체한다기존의 값을 대체한다 ..

‘‘=’ =’ 부호의 의미가 수학과 달리 양변이 같다는 의미가 아니므로 좌변에는 부호의 의미가 수학과 달리 양변이 같다는 의미가 아니므로 좌변에는 반드시 변수가 와야 하며반드시 변수가 와야 하며 , , 상수나 식이 오게 되면 다음과 같이 에러 상수나 식이 오게 되면 다음과 같이 에러 메시지를 얻게 된다 메시지를 얻게 된다 ::

>> >> xx*2=6*2=6

??? x*2=6??? x*2=6

||

Error: The expression to the left of the equals sign is not a valid target for an Error: The expression to the left of the equals sign is not a valid target for an assignment.assignment.

프로그래밍에서의 프로그래밍에서의 ‘‘==’’ 의 의미의 의미

Page 25: MATLAB 개요와 응용

MATLAB HCH

1 장 매트랩 시작하기 25/55

MATLABMATLAB 은 은 i i 또는 또는 jj 를 이용하여 복소수를 나타내며를 이용하여 복소수를 나타내며 , , 복소수 복소수 연산을 자동으로 처리한다연산을 자동으로 처리한다 ..

>> c=10>> c=10--2i 2i % c=10% c=10--2j2j c = 10.0000 - 2.0000ic = 10.0000 - 2.0000i

변수와 변수와 i i 사이에는 ‘사이에는 ‘ *’*’ 가 필요하지만가 필요하지만 , , 숫자와 숫자와 i i 사이에 ‘사이에 ‘ *’*’ 를 넣지 를 넣지 않아도 된다않아도 된다 . . 숫자와 숫자와 ii 가 붙은 경우에는 한 개의 허수로 다뤄지지만가 붙은 경우에는 한 개의 허수로 다뤄지지만 , , 숫자와 숫자와 i i 사이에 ‘사이에 ‘ *’*’ 가 있는 경우에는 숫자와 가 있는 경우에는 숫자와 ii 의 곱으로 취급되므로 의 곱으로 취급되므로 예상치 못했던 결과가 나올 수 있으므로 주의가 필요하다예상치 못했던 결과가 나올 수 있으므로 주의가 필요하다 . .

복소수 연산복소수 연산 (1/3)(1/3)

>> re = 2; im = 5;>> re = 2; im = 5;>> c = re + im*i>> c = re + im*i

c = 2.0000 + 5.0000ic = 2.0000 + 5.0000i

>> (1+3i)/(1-3i) >> (1+3i)/(1-3i) ans = 0.8000 + 0.6000ians = 0.8000 + 0.6000i>> sqrt(-1)>> sqrt(-1) ans = 0 + 1.0000ians = 0 + 1.0000i

>> c=10-2*i >> c=10-2*i % c=10-i*2% c=10-i*2 c = 10.0000 - 2.0000ic = 10.0000 - 2.0000i

>> y = 10/2*i >> y = 10/2*i % y=(10/2)i% y=(10/2)i y = 0 + 5.0000iy = 0 + 5.0000i

>> y = 7/2i >> y = 7/2i % y=7/(2i)% y=7/(2i) y = 0 - 5.0000iy = 0 - 5.0000i

Page 26: MATLAB 개요와 응용

MATLAB HCH

1 장 매트랩 시작하기 26/55

>> 5 + sin(.5)i>> 5 + sin(.5)iError: Unexpected MATLAB expression. Error: Unexpected MATLAB expression.

>> 5 + sin(.5)*i>> 5 + sin(.5)*i ans = 9.7943ans = 9.7943

MATLABMATLAB 에서 에서 i i 나 나 jj 는 허수를 나타내는 데 사용되므로 다른 는 허수를 나타내는 데 사용되므로 다른 변수들처럼 임의로 값을 할당하게 되면 엉뚱한 결과를 얻을 수 변수들처럼 임의로 값을 할당하게 되면 엉뚱한 결과를 얻을 수 있으므로 주의해야 한다있으므로 주의해야 한다 ..

>> i=10; im=4; >> i=10; im=4; % % 변수 변수 ii 에 에 1010 이 할당됨이 할당됨 >> c=1+0.2i>> c=1+0.2i % 0.2i % 0.2i 는 허수임는 허수임

c = 1.0000 – 0.2000ic = 1.0000 – 0.2000i

>> c=1+0.2*i>> c=1+0.2*i % 0.2% 0.2 와 변수 와 변수 i(=10)i(=10) 를 곱함를 곱함c=3c=3

>> c=1+im*i>> c=1+im*i % % 변수 변수 im(=4)im(=4) 과 변수 과 변수 i(=10)i(=10) 를 곱함를 곱함c=41c=41

복소수 연산복소수 연산 (2/3)(2/3)

Page 27: MATLAB 개요와 응용

MATLAB HCH

1 장 매트랩 시작하기 27/55

>> exp(pi/2*i)>> exp(pi/2*i) % e% e((ππ/2)i/2)i

ans=0.0000+1.0000ians=0.0000+1.0000i>> i^2>> i^2 ans = ans = --11>> (-2+4i)*(-2-4i)>> (-2+4i)*(-2-4i)

ans = 20ans = 20>> c1=1-2i; c2=3*(2-sqrt(-1)*3); c3=sqrt(-2); c4=(c1+c2)/c3>> c1=1-2i; c2=3*(2-sqrt(-1)*3); c3=sqrt(-2); c4=(c1+c2)/c3

ans = ans = -- 7.7782 7.7782 -- 4.9497i 4.9497i>> c = 1-2i;>> c = 1-2i;>> abs(c), angle(c)>> abs(c), angle(c)

ans =2.2361ans =2.2361ans = -1.1071ans = -1.1071

>> conj(c), real(c), imag(c)>> conj(c), real(c), imag(c) ans = 1.0000 + 2.0000ians = 1.0000 + 2.0000i ans = 1ans = 1

ans = -2ans = -2

복소수 연산복소수 연산 (3/3)(3/3)

Page 28: MATLAB 개요와 응용

MATLAB HCH

1 장 매트랩 시작하기 28/55

MATLABMATLAB 을 이용하여 다음 계산을 수행하라을 이용하여 다음 계산을 수행하라 ..

연습연습

1206

4

4

27 (3)

5

(2)sin 3 (2)

5

426 (1)

3

523

다음 계산을 하기 위한 다음 계산을 하기 위한 MATLAB MATLAB 명령어를 작성하라명령어를 작성하라 ..

4

32sin tan(6) (5)

31

31)4(

3

4sinh

2

3cosh (3) log (2) ln (1)

1-4

2215010

3

ie

i

i

ee

Page 29: MATLAB 개요와 응용

MATLAB HCH

1 장 매트랩 시작하기 29/55

MATLAB MATLAB 파일파일

MATLABMATLAB 은 명령창에서 명령어를 한 줄씩 직접 수행시키거나 은 명령창에서 명령어를 한 줄씩 직접 수행시키거나 파일에 수행할 모든 명령어를 기록하고 저장한 후 파일을 수행시킬 파일에 수행할 모든 명령어를 기록하고 저장한 후 파일을 수행시킬 수 있다수 있다 ..

반복된 명령어들을 수행시켜야 하거나반복된 명령어들을 수행시켜야 하거나 , , 어떤 조건이나 앞의 어떤 조건이나 앞의 계산결과에 따라 후속 명령어를 결정해야 하는 경우계산결과에 따라 후속 명령어를 결정해야 하는 경우 , , 또는 다양한 또는 다양한 입력데이터에 대해 같은 일련의 명령어들을 수행해야 하는 경우에는 입력데이터에 대해 같은 일련의 명령어들을 수행해야 하는 경우에는 명령창에서의 대화식 모드는 불편하며 명령어가 저장된 파일을 명령창에서의 대화식 모드는 불편하며 명령어가 저장된 파일을 이용하여 실행시키는 것이 편리하다이용하여 실행시키는 것이 편리하다 ..

MATLABMATLAB 용 파일 종류용 파일 종류 M M 파일파일 , MAT , MAT 파일파일 , MEX , MEX 파일파일 , diary , diary 파일파일 , , 입력데이터용 입력데이터용 texttext

M M 파일파일 스크립트스크립트 (script) (script) 파일과 함수파일과 함수 (function) (function) 파일 두 가지가 있으며파일 두 가지가 있으며 , ,

매트랩에 내장된 매트랩에 내장된 EditorEditor 나 나 WINDOWSWINDOWS 의 메모장을 이용하여 의 메모장을 이용하여 표준 표준 ASCII ASCII 파일파일로 작성한다로 작성한다 ..

확장자는 확장자는 mm 이다이다 . . 예예 ) test.m) test.m

Page 30: MATLAB 개요와 응용

MATLAB HCH

1 장 매트랩 시작하기 30/55

스크립트스크립트 (script) (script) 파일은 명령창에서 입력하는 명령들을 파일에 모두 파일은 명령창에서 입력하는 명령들을 파일에 모두 저장한 형태로서저장한 형태로서 ,, 프로그램프로그램이라고도이라고도 한다한다 ..

스크립트 파일을 실행시키면스크립트 파일을 실행시키면 , MATLAB, MATLAB 은 파일 내의 명령어들을 은 파일 내의 명령어들을 명령어 창에서 입력하는 것처럼명령어 창에서 입력하는 것처럼 파일에 기록된 순서대로 실행파일에 기록된 순서대로 실행시킨다시킨다 ..

스크립트 파일이 결과를 출력하는 명령어를 포함하고 있다면스크립트 파일이 결과를 출력하는 명령어를 포함하고 있다면 ,, 출력은 출력은 명령어 창에 표시명령어 창에 표시되며되며 , , 그래픽 출력은 그림 창그래픽 출력은 그림 창 (Figure Window)(Figure Window) 에 에 출력출력된다된다 ..

스크립트 파일은 편집스크립트 파일은 편집 , , 수정수정 , , 변경이 가능하며변경이 가능하며 여러 번 실행여러 번 실행시킬 수 시킬 수 있으므로 스크립트 파일을 이용하는 것이 편리하다있으므로 스크립트 파일을 이용하는 것이 편리하다 ..

스크립트 파일은 어떠한 텍스트 편집기에서도 작성과 편집이 가능하스크립트 파일은 어떠한 텍스트 편집기에서도 작성과 편집이 가능하며며 , MATLAB , MATLAB 편집기로 붙여넣기할 수 있다편집기로 붙여넣기할 수 있다 . .

스크립트 파일 은 저 장 이 되 면 확장 자 스크립트 파일 은 저 장 이 되 면 확장 자 .m.m 이 사 용 되 므 로이 사 용 되 므 로 M-M-파일파일이라고도이라고도 한다한다 ..

스크립트 파일의 실행으로 만들어진 변수는스크립트 파일의 실행으로 만들어진 변수는 전역변수전역변수 (global variable)(global variable)로서 로서 workspaceworkspace 에서 저장되어 명령어 창에서 언제든지 이용할 수 에서 저장되어 명령어 창에서 언제든지 이용할 수 있다있다 ..

스크립트스크립트 (Script) (Script) 파일의 특징파일의 특징

Page 31: MATLAB 개요와 응용

MATLAB HCH

1 장 매트랩 시작하기 31/55

11 장 강의록 끝장 강의록 끝

11 장 끝장 끝