ch1. matlab 시작하기 - ssjarng.chosun.ac.krssjarng.chosun.ac.kr/matlab/chapter01.pdf ·...

38
CH1. MATLAB 시작하기

Upload: others

Post on 18-Sep-2019

2 views

Category:

Documents


0 download

TRANSCRIPT

CH1. MATLAB 시작하기

학습 목표학습 목표

프로그램을 정의하고 프로그래밍의 기본을 이

해한다.1

매트랩을 시작하는 방법과 매트랩의 각 창2 을 이해한다.2변수와 연산자를 이해하고 명령어 창에서 실행

한다.3

MATLAB PROGRAMMING CH 1 2

1 1 프로그램과 프로그래밍1.1 프로그램과 프로그래밍

컴퓨터를 이용하여 문제를 해결하기 위한 명령어들의 모임

어떤 데이터를 어떻게 연산하여 결과로 어

프로그램

떤 데이터를 내보내라고 하는 일련의 과정을 서술한 것

프로그램을 작성하는 과정프로그래밍

MATLAB PROGRAMMING CH 1 3

컴퓨터를 이용하여 처리하는 데이터컴퓨터를 이용하여 처리하는 데이터

모든 데이터는 컴퓨터가 인식하여 처리할 수 있는 형식으로 만들어 주어야 하며 이것은 최종적으로는 2진수로으로 만들어 주어야 하며 이것은 최종적으로는 2진수로표현된다.

MATLAB PROGRAMMING CH 1 4

문자 데이터의 숫자 표현

문자 데이터도 컴퓨터 내부적으로는 숫자로 변환되어 처리된다.

문자 데이터를 숫자 데이터로 또는 숫자 데이터를 문자 데이터로 변환하기위해서는 ASCII 코드와 같은 코드표를 이용한다.

MATLAB PROGRAMMING CH 1 5

1.1.1 상수와 변수1.1.1 상수와 변수

상수: 어떤 값 자체를 의미 변수: 상수를 저장하는 기억 장소에 대한 이름 변수: 상수를 저장하는 기억 장소에 대한 이름

3, -20 2.43 , -9.235

‘a' , ’x'StudentI am Sam.

MATLAB PROGRAMMING CH 1 6

변수 x에 정수형 상변수 x에 정수형 상수 3을 대입하는 것을 의미

변수 y에 정수형 상수 5을 대입하는 것수 5을 대입하는 것을 의미

값을 저장하는 저장소의 의미

저장소에 저장될 값 또는 저장된 값을 의미

대입연산자 : R-value를 L-value 대입 (또는 저장)

MATLAB PROGRAMMING CH 1 7

입 (또는 저장)

서 상 을L-value로서 상수 3을저장하는 저장소

l 사용되어 저장R-value로 사용되어 저장하고 있는 상수 3을 의미

MATLAB PROGRAMMING CH 1 8

1.1.2 연산자와 명령어

프로그램 데이터 데이터처리 기능

상수와 변수 연산자와 명령어

연산자: + (더하기 연산자), = (대입 연산자)

명령어: sum(더하기 명령어) 예) sum(x y)

MATLAB PROGRAMMING CH 1 9

명령어: sum(더하기 명령어) 예) sum(x,y)

1.2 매트랩 시작하기

매트랩 로고

바탕화면 아이콘더블클릭

매트랩의기본 데스크탑

MATLAB PROGRAMMING CH 1 10

매 랩 데 탑의 기 창1.2.1 매트랩 데스크탑의 기본 창(Window)

MATLAB PROGRAMMING CH 1 11

(1) 명령어 창 (Command Window)( ) 명령어 창 ( )

변수를 생성하여 상수 값들을 저장하고 생성된 변수들을 명령어나 연산변수를 생성하여 상수 값들을 저장하 생성된 변수들을 명령어나 연자를 이용하여 계산하여 결과 값을 얻을 수 있는 창

MATLAB PROGRAMMING CH 1 12

예제 1

MATLAB PROGRAMMING CH 1 13

< 명령어 창의 명령 삭제 >

ⅱ) 매트랩 데스크탑의 Edi 메뉴ⅰ) 명령어 창에서 clc 명령 실행 ⅱ) 매트랩 데스크탑의 Edit 메뉴의 Clear Command Window를 선택

MATLAB PROGRAMMING CH 1 14

(2) 작업공간 창(Workspace Window)

명령어 창에서 생성한 변수들의 속성을 보여주는 창이다 명령어 창에서 생성한 변수들의 속성을 보여주는 창이다. 변수의 이름, 변수의 값, 변수가 저장하고 있는 데이터의 형식등의 속성을 보여준다.

예제 1을 실행한 후의 작업공간 창예제 1을 실행한 후의 작업공간 창

MATLAB PROGRAMMING CH 1 15

< 작업공간 창에서 보여지는 변수들의 속성을 추가하거나 삭제하기 >

MATLAB PROGRAMMING CH 1 16

<명령어 창에서 변수 확인>

ⅰ) who 명령어ⅰ) who 명령어명령어 창에서 who 명령을 입력하여 실행하면 현재 작업공간 창에 저장된변수들의 이름을 명령어 창에 보여준다.

ⅱ) whos 명령어명령어 창에서 whos 명령을 입력하여 실행하면 현재 작업공간 창에 저장된변수들의 이름, 크기와 데이터형 등을 명령어 창에 보여준다.변수들의 이름, 기와 데이터형 등을 명령어 창에 여준다

MATLAB PROGRAMMING CH 1 17

< 작업공간 창의 변수 삭제 >

ⅰ) 특정 변수 삭제명령어 창에서 ‘clear 변수이름’을 입력하여 실행

MATLAB PROGRAMMING CH 1 18

ⅱ) 작업공간 창의 모든 명령을 삭제- 명령어 창에서 clear 명령 실행

- 매트랩 데스크탑의 Edit 메뉴의Clear Workspace를 선택

MATLAB PROGRAMMING CH 1 19

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

매트랩 사용자가 지금까지 실행했던매트랩 사용자가 지금까지 실행했던명령들을 시간순으로 기록하여 보여주는 창

명령어기록 창에 기록된 명령어를 삭제하기명령어기록 창에 기록된 명령어를 삭제하기- 매트랩 데스크탑의 Edit 메뉴의 Clear

Command History를 선택

MATLAB PROGRAMMING CH 1 20

(4) 현재디렉토리 창(Current Directory Window)

MATLAB PROGRAMMING CH 1 21

< 현재 디렉토리를 변경 >

MATLAB PROGRAMMING CH 1 22

1.3 기타 기능1.3 기타 기능

1.3.1 매트랩 종료하기

ⅰ) File 메뉴의 Exit MATLAB을 선택하여 실행한다.ⅱ) 명령어 창에 exit 명령어 또는 quit 명령어를 입력하여 실행한다.ⅲ) 매트랩 데스크탑의 오른쪽 구석에 있는 아이콘을 클릭한다

MATLAB PROGRAMMING CH 1 23

1.3.2 시작 버튼

매트랩 데스크탑의 왼쪽 아래에 있는 시작버튼 을 통하여 툴 박스(Toolboxes)나 데스크탑 툴(Desktop tools)을 이용할수 있으며 시뮬링크(Simulink)나 도움말 창(Help Window)을 이용할 수 있다.

MATLAB PROGRAMMING CH 1 24

1.3.3 도움말 기능

ⅰ) help 명령어 이용명령어 창에서 ‘help 특정명령어 이름’을 입력하여 특정 명령어에 대한 도p움말을 볼 수 있다.

MATLAB PROGRAMMING CH 1 25

ⅱ) 도움말 창(Help Window) 이용시작 버튼을 클릭하여 나타난 메뉴에서 'Help'를 클릭하여 도움말 창을 활성화한 후, 다양한 명령어와 기능에 대한 도움말을 볼 수 있다.

MATLAB PROGRAMMING CH 1 26

1.3.4 편집 창(Edit Window)과림 창 hi i d그림 창 (Graphics Window)

MATLAB PROGRAMMING CH 1 27

1.4 명령어 창을 활용한 문제 해결명령어 창을 활용한 문제 해결

1.4.1 명령어 창에서 작업할 때 유의할 점

- 명령어 창에서는 대문자와 소문자를 구분하여 사용한다. 명령어 창에서 명령의 끝에 세미콜론 을 입력하면 실행 결과가 화면에 출- 명령어 창에서 명령의 끝에 세미콜론 (;)을 입력하면 실행 결과가 화면에 출력되지 않는다.

- 명령어 창의 한 라인에 여러 개의 명령을 한꺼번에 입력하여 그 명령을 차명령어 창의 한 라인에 여러 개의 명령을 한꺼번에 입력하여 그 명령을 차례대로 실행시킬 수 있다. 이때 명령어들은 컴마(,)로 구분하여야 하고 실행은 왼쪽에서 오른쪽으로 명령을 순차적으로 실행된다.

- 명령어 창에서 방향키를 사용하여 이전에 실행했던 명령을 다시 호출하여명령어 창에서 방향키를 사용하여 이전에 실행했던 명령을 다시 출하여실행할 수 있다.

MATLAB PROGRAMMING CH 1 28

1 4 2 변수 생성 규칙1.4.2 변수 생성 규칙

- 변수에 포함될 수 있는 문자는 영문자 알파벳, 0~9까지의 숫자, 그리고 밑줄 (_)을

포함할 수 있다 그리고 문자는 대문자와 소문자는 서로 구분된다포함할 수 있다. 그리고 문자는 대문자와 소문자는 서로 구분된다.

- 모든 변수는 반드시 문자로 시작해야 한다.

한 변수에 포함될 수 있는 문자의 개수는 최대 63개까지 이다- 한 변수에 포함될 수 있는 문자의 개수는 최대 63개까지 이다.

- 변수에는 구두점, 즉 마침표, 컴마, 세미콜론, 콜론 등이 포함될 수 없다.

변수의 각 문자들 사이에 공백이 들어갈 수 없다- 변수의 각 문자들 사이에 공백이 들어갈 수 없다.

- 매트랩에서 제공하는 명령어와 같은 이름으로 변수이름을 만들 수 없다.

- 매트랩의 예약어(reserved word)들과 동일하게 변수 이름을 만들 수 없다매트랩의 예약어(reserved word)들과 동일하게 변수 이름을 만들 수 없다.

MATLAB PROGRAMMING CH 1 29

1.4.3 매트랩에서 제공하는 특수 상수

상수 설명상수 설명

NaN수가 아니라는 의미이다. 예를들어 0/0을 실행하면 결과가 NaN으로

나온다나온다

pi 원주율 π(3.141592653589.....)

한 한inf 무한대를 의미한다.

i, j 복소수에서 허수를 나타내는 단위

realmax 매트랩에서 표현할 수 있는 가장 zms 소수점 수를 의미, 1.7977e+308

realmin 매트랩에서 표현할 수 있는 가장 작은 소수점 수를 의미, 2.2252e-308

eps 매트랩에서 수치 계산할 때 발생하는 허용 오차, 2.2204e-016

MATLAB PROGRAMMING CH 1 30

1.4.4 간단한 산술 연산을 위한 연산자

연산자 기호 예연산자 기호 예

덧셈 + 3+5

뺄셈 - 3-5

곱셈 * 3*5곱셈 3 5

나눗셈오른쪽 / 2/5 ( = 0.4 )

나눗셈왼쪽 \ 5\2 ( = 2/5 = 0.4 )

거듭제곱 ^ 2^5 ( = 32 )거듭제곱 ^ 2^5 ( = 32 )

MATLAB PROGRAMMING CH 1 31

<예제 2>

MATLAB PROGRAMMING CH 1 32

1.4.5 기본 명령어 (내장 함수)

함 수 설 명 예

(수학 함수)

sqrt(x) x의 제곱근>> sqrt(64)

ans = 8

exp(x) 지수>> exp(1)

ans = 2.7183

>> abs(-4)abs(x) 절대값

>> abs(-4)

ans = 4

log(x)자연로그 >> log(100)

log(x)밑이 e인 로그 ans = 4.6052

log10(x) 밑이 10인 상용로그>> log10(100)

2 0000ans = 2.0000

factorial(x) x! 계산>> factorial(7)

ans = 5040

MATLAB PROGRAMMING CH 1 33

(삼각 함수)

함 수예

함수예

( 각:라디안 ) 예

(각: degree )예

sin(x)>> sin(pi/2)

sind(x)>> sind(90)

sin(x)ans = 1

sind(x)ans = 1

( )>> cos(pi/3)

d( )>> cosd(60)

cos(x)ans = 0.5

cosd(x)ans = 0.5

t ( i/3) t d(60)tan(x)

>> tan(pi/3)

ans = 1.7321tand(x)

>> tand(60)

ans = 1.7321

cot(x)>> cot(pi/6)

ans = 1.7321cotd(x)

>> cotd(30)

ans = 1.7321

MATLAB PROGRAMMING CH 1 34

(근사화 함수)

함 수 설 명 예

round(x) 가장 가까운 정수로 근사화>> round(1.78)

ans = 2

>> fix(2.999)

fix(x)0 방향을 향해서 가장 가까운 정수를 구하는

함수

ans = 2

>> fix(-1.98)

ans = -1

>> ceil(3 0001)

ceil(x) 올림함수

>> ceil(3.0001)

ans = 4

>> ceil(-3.999)

ans = -3

floor(x) 내림함수

>> floor(3.999)

ans = 3

>> floor(-3.999)

4ans = -4

rem(x, y) x를 y로 나누었을 때 나머지를 구하는 함수>> rem(27,5)

ans = 2

i

sign(x)부호함수x>0 이면 1, x<0이면 -1,x=0이면 0

>> sign(4)

ans = 1

>> sign(-3)

ans = -1

MATLAB PROGRAMMING CH 1 35

x=0이면 0.>> sign(0)

ans = 0

공학 예제

MATLAB PROGRAMMING CH 1 36

MATLAB PROGRAMMING CH 1 37

MATLAB PROGRAMMING CH 1 38