Microsoft Word - matlab.doc



Similar documents
Microsoft PowerPoint - 기계공학실험1-1MATLAB_개요2D.pptx

예제 1.1 ( 관계연산자 ) >> A=1:9, B=9-A A = B = >> tf = A>4 % 4 보다큰 A 의원소들을찾을경우 tf = >> tf = (A==B) % A

<4D F736F F F696E74202D204D41544C4142B0ADC0C7B7CF28B9E8C6F7BFEB295F3031C0E55FBDC3C0DBC7CFB1E22E BC8A3C8AF20B8F0B5E55D>

fx-82EX_fx-85EX_fx-350EX

슬라이드 1

참고 금융분야 개인정보보호 가이드라인 1. 개인정보보호 관계 법령 개인정보 보호법 시행령 신용정보의 이용 및 보호에 관한 법률 시행령 금융실명거래 및 비밀보장에 관한 법률 시행령 전자금융거래법 시행령 은행법 시행령 보험업법 시행령 자동차손해배상 보장법 시행령 자본시장과

Week3

Microsoft PowerPoint - AC3.pptx

Columns 8 through while expression {commands} 예제 1.2 (While 반복문의이용 ) >> num=0

<C6EDC1FDBABB2DB5F0C0DAC0CEBAD0BEDF2E687770>

2005CG01.PDF

MAX+plus II Getting Started - 무작정따라하기

歯 조선일보.PDF

차례 제 1 장 MATLAB 연습 MATLAB에서사용되는기호들


??

프로그램을 학교 등지에서 조금이라도 배운 사람들을 위한 프로그래밍 노트 입니다. 저 역시 그 사람들 중 하나 입니다. 중고등학교 시절 학교 도서관, 새로 생긴 시립 도서관 등을 다니며 책을 보 고 정리하며 어느정도 독학으르 공부하긴 했지만, 자주 안하다 보면 금방 잊어

김기남_ATDC2016_160620_[키노트].key

DE1-SoC Board

경제통상 내지.PS

°æÁ¦Åë»ó³»Áö.PDF

(JBE Vol. 21, No. 1, January 2016) (Regular Paper) 21 1, (JBE Vol. 21, No. 1, January 2016) ISSN 228

[96_RE11]LMOs(......).HWP

<C1A4C3A5BFACB1B D3420C1A4BDC5C1FAC8AFC0DAC0C720C6EDB0DFC7D8BCD220B9D720C0CEBDC4B0B3BCB1C0BB20C0A7C7D120B4EBBBF3BAB020C0CEB1C720B1B3C0B020C7C1B7CEB1D7B7A520B0B3B9DF20BAB8B0EDBCAD28C7A5C1F6C0AF292E687770>

4 CD Construct Special Model VI 2 nd Order Model VI 2 Note: Hands-on 1, 2 RC 1 RLC mass-spring-damper 2 2 ζ ω n (rad/sec) 2 ( ζ < 1), 1 (ζ = 1), ( ) 1

untitled

LCD Display

C++-¿Ïº®Çؼ³10Àå

manual pdfÃÖÁ¾

<32382DC3BBB0A2C0E5BED6C0DA2E687770>

Javascript.pages

s SINUMERIK 840C Service and User Manual DATA SAVING & LOADING & & /

歯15-ROMPLD.PDF

Microsoft PowerPoint - PL_03-04.pptx

15강 판소리계 소설 심청전 다음 글을 읽고 물음에 답하시오. [1106월 평가원] 1)심청이 수궁에 머물 적에 옥황상제의 명이니 거행이 오죽 하랴. 2) 사해 용왕이 다 각기 시녀를 보내어 아침저녁으로 문 안하고, 번갈아 당번을 서서 문안하고 호위하며, 금수능라 비

Microsoft PowerPoint - ch03ysk2012.ppt [호환 모드]

K&R2 Reference Manual 번역본

untitled

<B1B9BEEEBEEEC8D6B7C25FB9AEB9FDBEEEC8D E687770>

내지4월최종

3232 편집본(5.15).hwp

13주-14주proc.PDF

Slide 1

example code are examined in this stage The low pressure pressurizer reactor trip module of the Plant Protection System was programmed as subject for

Week5

untitled

PowerPoint Presentation

계수를 결정하는 과정이며, 순방향 경로는 이러한 보정 계수를 데이터 경로에 적용하는 과정이다. 적응 서브시스템은 기준 신호로 송신된 데이터로부터 샘플을 캡처하고, 이를 PA로부터 출력된 신 호의 관찰 경로에 의한 동시 캡처된 신호와 비교함으로써 지속적으로 PA 특성에

π >> x=linspace(0,2*pi,30); >> y=sin(x); >> plot(x,y) π

부벽루 이색 핵심정리+핵심문제.hwp

ch3.hwp

G5 G25 H5 I5 J5 K5 AVERAGE B5 F5 AVERAGE G5 G24 MAX B5 F5 MIN B5 F5 $G$ $H$25 $G$25 $G$ $H$25 G24 H25 H24 I24 J24 K24 A5 A24 G5 G24, I5


<B5B6BCADC7C1B7CEB1D7B7A52DC0DBBEF7C1DF E687770>

PowerPoint 프레젠테이션


(Exposure) Exposure (Exposure Assesment) EMF Unknown to mechanism Health Effect (Effect) Unknown to mechanism Behavior pattern (Micro- Environment) Re

<C0CCBCBCBFB52DC1A4B4EBBFF82DBCAEBBE7B3EDB9AE2D D382E687770>


<C3D6C1BE5FBBF5B1B9BEEEBBFDC8B0B0DCBFEFC8A C3D6C1BEBABB292E687770>

6±Ç¸ñÂ÷

초등국어에서 관용표현 지도 방안 연구

¸é¸ñ¼Ò½ÄÁö 63È£_³»Áö ÃÖÁ¾

177

과 위 가 오는 경우에는 앞말 받침을 대표음으로 바꾼 [다가페]와 [흐귀 에]가 올바른 발음이 [안자서], [할튼], [업쓰므로], [절믐] 풀이 자음으로 끝나는 말인 앉- 과 핥-, 없-, 젊- 에 각각 모음으로 시작하는 형식형태소인 -아서, -은, -으므로, -음

제주어 교육자료(중등)-작업.hwp

untitled

민주장정-노동운동(분권).indd


E1-정답및풀이(1~24)ok

cls46-06(심우영).hwp

<C1B6BCB1B4EBBCBCBDC3B1E2342DC3D6C1BE2E687770>

01Report_210-4.hwp

<C3D1BCB15FC0CCC8C45FBFECB8AE5FB1B3C0B0C0C75FB9E6C7E D352D32315FC5E4292E687770>


최우석.hwp

<C0CEBCE2BABB2D33C2F7BCF6C1A420B1B9BFAAC3D1BCAD203130B1C72E687770>


교사용지도서_쓰기.hwp

교육 과 학기 술부 고 시 제 호 초 중등교육법 제23조 제2항에 의거하여 초 중등학교 교육과정을 다음과 같이 고시합니다. 2011년 8월 9일 교육과학기술부장관 1. 초 중등학교 교육과정 총론은 별책 1 과 같습니다. 2. 초등학교 교육과정은 별책

時 習 說 ) 5), 원호설( 元 昊 說 ) 6) 등이 있다. 7) 이 가운데 임제설에 동의하는바, 상세한 논의는 황패강의 논의로 미루나 그의 논의에 논거로서 빠져 있는 부분을 보강하여 임제설에 대한 변증( 辨 證 )을 덧붙이고자 한다. 우선, 다음의 인용문을 보도록

시험지 출제 양식

< BDC3BAB8C1A4B1D4C6C75BC8A3BFDC D2E687770>

0429bodo.hwp

伐)이라고 하였는데, 라자(羅字)는 나자(那字)로 쓰기도 하고 야자(耶字)로 쓰기도 한다. 또 서벌(徐伐)이라고도 한다. 세속에서 경자(京字)를 새겨 서벌(徐伐)이라고 한다. 이 때문에 또 사라(斯羅)라고 하기도 하고, 또 사로(斯盧)라고 하기도 한다. 재위 기간은 6

우리나라의 전통문화에는 무엇이 있는지 알아봅시다. 우리나라의 전통문화를 체험합시다. 우리나라의 전통문화를 소중히 여기는 마음을 가집시다. 5. 우리 옷 한복의 특징 자료 3 참고 남자와 여자가 입는 한복의 종류 가 달랐다는 것을 알려 준다. 85쪽 문제 8, 9 자료

상품 전단지

::: 해당사항이 없을 경우 무 표시하시기 바랍니다. 검토항목 검 토 여 부 ( 표시) 시 민 : 유 ( ) 무 시 민 참 여 고 려 사 항 이 해 당 사 자 : 유 ( ) 무 전 문 가 : 유 ( ) 무 옴 브 즈 만 : 유 ( ) 무 법 령 규 정 : 교통 환경 재

2

DBPIA-NURIMEDIA

화이련(華以戀) hwp

ÆòÈ�´©¸® 94È£ ³»Áö_ÃÖÁ¾

歯1##01.PDF

<5BC1F8C7E0C1DF2D31B1C75D2DBCF6C1A4BABB2E687770>

120229(00)(1~3).indd

인켈(국문)pdf.pdf

Solaris Express Developer Edition

강의10

PowerPoint 프레젠테이션

Orcad Capture 9.x

Transcription:

I. 매트랩(MATLAB) [MATLAB 이란?] Matlab은 Mathworks Inc.에서 개발한 Software 이다. 다양한 수치 해석 관련 문제에 대한 Total Solution 제공. 사용하는 OS 에 상관없이 동일한 사용 방법 제공. 수많은 데이터 display functions 제공. 수많은 응용분야에 대한 전문적인 Toolbox 제공. 쉽고 빠른 script 양식의 Coding 기법 이용. 다른 언어(e.g., C/C++, Ada etc)로 쉽게 변환 가능. Java 의 고속 interpreter 를 사용한 빠른 실행 속도. 개발용 및 상용 보드에 대한 device driver 제공.(GPIB, PCI) 통신 및 신호처리용 CPU 를 위한 embedded source code 생 성. 윈도우에서 매트랩을 실행시키면 프롬프트가 >> 또는? 인 윈도우가 하나 뜨는데, 이 윈도우를 command window 라고 한다. Command window 는 매트랩에서 제공하는 명령어나 사용자가 만든 함수(명령어)를 실행시키는 main window 이다. Figure 1. MATLAB command window, editor and PATH-browser

자주 쓰는 기본적인 명령어 help: 3 가지로 분류할 수 있다. >>help % 현재 설치된 모든 toolbox(topic) 정보를 볼 수 있다. >>help function % 함수에 대한 설명을 볼 수 있다. >>help topic % topic 내의 모든 함수를 리스트 업 한다. Examples help signal % signal processing toolbox 내의 모든 함수를 보인다. help general % 일반적인 명령어에 대한 설명을 보여준다. General 안의 중요 명령어 pwd: 현재 디렉토리를 알 수 있다. dir: 현재 디렉토리 내에 있는 파일의 종류를 볼 수 있다. cd directory_name: 현재 디렉토리의 위치를 바꾼다. delete file_name: 파일 이름 지우기 who: 사용자가 만든 변수 이름을 볼 수 있다. cf.) whos 크기 정보 clear variable_name: 사용자가 만든 변수를 지울 수 있다. cf.) clear all, clc close figure #: 표시된 창을 닫는다. cf.) close all edit (function name): MATLAB-editor/debugger 프로그램을 실행 시키고 function 의 내용을 보여준다. editpath: path-browser 프로그램을 실행시킨다. lookfor term: 찾고자 하는 term 이 있는 함수들을 찾아 준다. Figure 2. Example of "lookfor" command 2

II. Data manipulation and matrix operations 가. Matrix 의 생성 >> A = [ 1 2 3; 4 5 6 ; 7 8 9 ] 또는, >> A = [ 1 2 3 456 789 ] A 1 1 1 = 1 2 3 1 3 6 A=[1 1 1;1 2 3;1 3 6]; ()와,로 표시, 첨자는 1 부터 시작 >> A(2,1) % A의 2행 1열의 원소 : operator 시작:끝 >> 1:4 1 2 3 4 시작:증분:긑 >> 5:-2:1 5 3 1 행 또는 열 전체 >> A(2,:) A 의 2 행 >> A(:,1) A 의 1 열 나. Matrix operations assignment A = B; addition: C = A + B; subtraction: C = A - B; multiplication: C = A * B; % cf. C = A.* B; division : C = B / A; % 이것은 X * A = B 에 대한 해이다. Example >> a=[ 1 2 3]; >> b=[4 5 6]; 3

>> c= a * b >> d = a. * b >> e= a./b 다. Relational operations <, <=, >, >=, ==, ~= % C 에서는!= 이다. Example >> a=3; >> b=5; >> if a~=b disp('a is not equal to b') else disp('b is equal to a') end 라. logical operations &,, ~ % C 에서는 &&,,! 이다. 마. 수학함수 매트랩에서는 C 나 FORTRAN 에서 일반적으로 제공되는 대부분의 함수를 모두 제공한다. sin, cos, tan, asin, acos atan, sinh,... 바. 그 외 abs, angle, sqrt, round, fix, floor,... 사. Vector 의 생성 >> x = 1:5 x = 1 2 3 4 5 >> x = 0.0:0.2:1.0 ; % x=초기치:차분:최종치 >> x = x'; >> y = sin(x); 4

>> z = [ x y ]; 아. Subscription >> A = [ 1 2 3 ; 4 5 6] ; >> B = A( :, 1 ) >> B = A( 1:2, : ) >> B( 3, : ) = [ ]; 자. Data analysis >> a = [ 1 4 7 10 2 5 8 11 3 6 9 12] ; >> b = reshape(a, 2, 6) b = 1 3 5 7 9 11 2 4 6 8 10 12 차. 기타 매트랩 팁 1) 문장의 끝에 ; 을 사용하면, 결과를 display 하지 않음 2) Matlab 의 행렬 연산에서.(dot) 는 원소대원소 연산을 해주는 상당히 중요한 의미를 갖는다. 3) >> x=[ ] % [ ] 은 빈행렬을 만들어 준다. 4) % 는 주석 표기이다. 5) >> pi ans = 3.14159265358979 6) 한 개의 line 에 여러 개의 명령어들을 동시에 지정할 수 있다. >>x=3; y=2; z=x+y; 7) 수치를 표현할 때, 0.234 와.234 는 같은 표현이다. 8) 문자열은 단일 인용부호(즉, )를 사용하여 표현한다. >>s= lim jong su 9) 행렬 크기 구하기 >> a=[ 1 2 3; 4 5 6]; 5

>> size(a) 10) 행렬 종류 eye : 단위행렬 ex) eye(3) ones : 1 로 채워진 행렬 ex) ones(3), ones(1,2) zeros : 0 으로 채워진 행렬 ex) zeros(3), zeros(1,2) rand(randn) : Uniform (Normal) random 값 행렬 ex) rand(3), randn(2,4) inv : 역행렬 ex) inv(a) III. Control flow C 와 마찬가지로 매트랩에는 for, while, if, break 문 등이 있는데, syntax 또 한 거의 유사하다. 가. for for i = 1: m statements for j = 1 : n A(i, j) = i + j; other statements; end end [주의] for 문을 사용하는 경우, matlab 의 first array index 가 1 인데 주 의하자! 나. while 일반적인 while 문의 형태는 다음과 같다. while expression statements; end n = 10; while n > 0 statements; n = n -1 ; 6

end 다. if A = rand(5, 1) ; % random number generation, 5 x 1 matrix n = input( ' Enter n, '); if n < 0 minvalue = min( A ); elseif n == 0 medvalue = med( A ); else n > 0 maxvalue = max( A ); 7

IV. Scripts and functions 가. Script file 1. 앞에서 보여진 것과 같이 open 버튼을 누르던지 컴맨드 라 인 상에서 edit 라 입력하여 MATLAB editor 를 실행시킨다. 다 음과 같은 내용의 파일을 작성하여 mean.m 이라는 파일로 저장 한다. % The contents of this file is as follows. x = rand( 100, 1 ); sum_x = sum( x ) ; mean_x = sum_x / 100; >> mean 2. 매트랩 command window 에서 mean 을 실행시킨다. 3. Script file의 예 다음과 같이 seminar.m 을 작성하여 저장한다. Figure 3 seminar.m 8

seminar.m function 을 실행시키기 위해서 command window 에서 다음과 같이 입력 >> seminar Figure 4. input "x" 여기에서 아무 키나 누르면 다음과 같은 그림이 나타남. 9

나. Function file Figure 5. The FFT result of "x" 사용자가 특정한 기능을 갖는 함수를 구현하고 매트랩 내의 M-file 처럼 사 용할 수 있다. Script 파일을 만들 때와 동일한 방법으로 파일을 작성하여 저장하면 되는데, Script 파일과 다른 점은 입력 매개 변수를 전달하고 출 력값을 원하는 변수에 return 할 수 있다는 것이다. 1. M-function mymean.m function y = mymean( x ) % This file calculate average value % For vectors, mymean(x) returns the mean value. % For matrix, mean(x) is a row vector % containing the mean value of each column. % % Eui-Sung Kang, Image Proc. Lab. % KOREA Univ. [ m, n ] = size( x ) ; if m == 1; m = n ; 10

end y = sum( x ) / m ; % the end of file mymean.m >> data = 1:10; >> output = mymean(data); >> who output 2. M-function 에 대한 help 아무리 유용한 프로그램을 자기가 작성하더라도, 시일이 오래 지나면 자기가 짠 프로그램이 무엇 하는 것인지, 어떻게 동작하는지 잊어버리는 경우가 태 반이다. 프로그램 작성 후에는 자기가 짠 프로그램에 대한 documentation 을 해두는 버릇을 들이는 것이 바람직하다. help 라는 명령을 이용하면 자신이 작성한 M-function 파일에 대한 documentation 뿐만 아니라, 이미 작성된 프로그램을 다른 사람이 한 눈에 알아볼 수 있게 할 수 있다. 앞서서 설명한 mean.m 의 경우에 command window 에서 help mean 이라고 입력하면, 아래와 같은 결과를 얻을 수 있다. >> help mean This file calculate average value For vectors, mymean(x) returns the mean value. For matrix, mean(x) is a row vector containing the mean value of each column. 3. nargin 과 nargout M-function file 을 작성할 때, 프로그램의 flexibility 를 위해서 입출력 파라 미터의 개수가 가변으로 하고 싶을 때가 있다. 이 경우 M-function file 의 입출력 파라미터의 개수를 체크하는 nargin 과 nargout 를 사용하면 편리하 다. 11

function b = medfilt2(a,mn,block) %MEDFILT2 Two-dimensional median filtering. % J = MEDFILT2(I,[M N]) performs median filtering of the % image I in two dimensions. The result J contains the % median value in the M-by-N neighborhood around each pixel % in the original image. The image is assumed to be padded % with 0s outside so the median values for the points within % [M N]/2 of the edges may appear distorted. Block processing % is used to save memory (see BESTBLK). % J = MEDFILT2(I) uses a 3-by-3 neighborhood. % J = MEDFILT2(I,[M N],[MBLOCK NBLOCK]) performs median % filtering of I in blocks of size MBLOCK-by-NBLOCK. Use % MEDFILT2(I,[M N],SIZE(I)) to process the matrix all at once. error(nargchk(1,3,nargin)); if nargin<2, mn = [3 3]; end if nargin<3, block = bestblk(size(a)); end if all(block>=size(a)), b = colfilt(a,mn,'sliding','median'); else b = colfilt(a,mn,block,'sliding','median'); end 4. 문자열 입력 매개변수 M-function file 을 작성할 때, 문자열을 입력으로 사용하고 싶을 때가 있다. 이 때, eval 이란 함수를 사용하면 편리하다. 다음은 eval 을 사용한 M- function 파일의 예로서 데이타 파일 이름을 입력으로 사용하여 데이타를 로 드하는 함수이다. function out=loadfile(filename) % eval(['load ' filename]); out=eval(filename); 12

V. Exporting and importing data 가. Exporting data A = rand( 5, 4 ); save data.txt A -ascii 위와 같이 저장하면 A 라는 변수에 들어 있는 데이타가 아스키 파일로 저장 된다. save data A A 라는 변수가 data.mat 라는 매트랩 데이타 파일이 만들어진다. *.mat 는 매 트랩에서 사용되는 default 확장자로서, 이러한 파일은 다른 응용 프로그램 에서 읽을 수 없다. save 단순히 save 라고 입력하면 현재 사용자가 매트랩에서 현재 사용하고 있는 모든 데이타가 matlab.mat 라는 파일로 저장된다. 이 경우는 현재의 command window 에 생성되어 있는 변수 이름과 변수에 할당된 데이타 등 을 그대로 저장할 수 있으므로, 현재 진행 중인 일을 일시적으로 중단했다가 나중에 다시 시작하고 싶을 때 유용하다. 나. Importing data Load data.mat 13

VI. Programming Tips on the Matlab Programs Avoid FOR loops FOR loop 를 많이 사용한 매트랩 프로그램은 아주 비효율적이다. 가급적이면 vector 또는 matrix operations 을 사용한다. 프로그램 내의 FOR loop 90% 이상을 vector code 로 대치할 수 있 다. built-in function 또는 toolbox 내의 M-function 을 많이 이용한다. Vector logicals [1 2 3 4 5] < 4 nn = [-20:80]; impluse = (nn == 0); stem(nn, impluse); VII. Graphic functions 매트랩은 다양한 그래픽 함수를 제공한다 2 차원 함수 : plot.m, contour.m, stem.m, stairs.m, pie.m, bar.m, etc 3 차원 함수 : mesh.m, surf.m, contour3.m, plot3.m, etc 복소 함수 : polar.m, rose.m, feather.m, compass.m, etc 보조 함수 : meshgrid.m, hidden on/off, legend.m,rotate3d.m etc 좌표변환 함수 : cart2pol.m, pol2cart.m, cart2sph.m, sph2cart.m Ex) >> x= 1:1:10; >> y= x.^2 + 5; >> plot(x,y) >> figure, plot(x,y,'r*'); % r : red, b blue. point - solid g green o circle : dotted r red x x-mark -. dashdot c cyan + plus -- dashed m magenta * star 14

y yellow s square k black d diamond v triangle (down) ^ triangle (up) < triangle (left) > triangle (right) p pentagram h hexagram 참고문헌 [1] S. D. Stearns and R. A. David, Signal processing algorithms in Matlab, NJ: Prentice Hall, 1996. [2] B. P. Lathi, Linear systems and signals, CA: Berkeley-Cambridge Press, 1992. [3] C. S. Burrus, et al., Computer-based exercises for signal processing using Matlab, NJ: Englewood Cliffs, 1994. [4] R. D. Strum and D. E. Kirk, Comtemporary linear systems, Boston: PWS, 1994. [5] C. M. Thompson and Loren Shure, Image processing toolbox, Mass: MathWorks Inc., 1993. [6] Math Works, Matlab user s quide, Mass: MathWorks Inc., 1993. [7] Math Works, Matlab reference quide, Mass: MathWorks Inc., 1993. 본 매뉴얼은 Matlab 을 공부하는데 필요한 가장 기본적인 내용만을 요약 한 것입니다. 기타 궁금한 사항은 Matlab 매뉴얼인 참고문헌 [6], [7]을 참고하거나, Matlab 에서 help 를 이용하세요. 15