서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> 1. MATLAB의 일반적인 사항 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

Slides:



Advertisements
Similar presentations
10-7 부동소수점 (Floating-Point) 계산  컴퓨터에서 숫자를 표기하는 방법  가수 (Fraction) : 부호화된 고정소수점 숫자 지수 (Exponent) : 소수점의 위치를 표시 ( 예 )10 진수 를 표기하면 Fraction Exponent.
Advertisements

Python Ch.06 RaspberryPi Sejin Oh. Raspberry Pi Python  IDLE(Integrated Development Environment)  라즈베리 파이 배포본들은 일반적으로 파이썬과 파이썬 3 의 IDLE 파 이썬 개발 도구를.
6 장. printf 와 scanf 함수에 대한 고찰 printf 함수 이야기 printf 는 문자열을 출력하는 함수이다. – 예제 printf1.c 참조 printf 는 특수 문자 출력이 가능하다. 특수 문자의 미 \a 경고음 소리 발생 \b 백스페이스 (backspace)
1 08 배열. 한국대학교 객체지향연구소 2 C 로 배우는 프로그래밍 기초 2 nd Edition 배열  동일한 자료유형의 여러 변수를 일괄 선언  연속적인 항목들이 동일한 크기로 메모리에 저장되는 구조  동일한 자료 유형이 여러 개 필요한 경우에 이용할 수 있는.
1. 2 차원 배열  배열은 동일한 데이터 유형으로 여러 개의 변수를 사용할 경우 같은 이 름으로 지정하여 간편하게 사용할 수 있도록 하는 것으로서 앞에서 1 차원 배열을 공부하였습니다.  2 차원 배열은 바둑판을 생각하면 되며, 1 차원 배열에서 사용하는 첨자를 2.
출석수업 과제 – 총 5문제, 10월 25일 제출 정보통계학과 장영재 교수.
컴퓨터와 인터넷.
DB 프로그래밍 학기.
DB 프로그래밍 학기.
2장. 프로그램의 기본 구성. 2장. 프로그램의 기본 구성 2-1"Hello, World!" 들여다 보기 /* Hello.c */ #include int main(void) { printf("Hello, World! \n"); return 0;
Excel 일차 강사 : 박영민.
제 9 장 구조체와 공용체.
부록 1: 행렬대수의 기본개념 1. 기본정의 2. 행렬 연산 전치(transpose) 행렬의 동등(equal)
제 3장. C보다 나은 C++ II.
Communication and Information Systems Lab. 황재철
11장. 포인터 01_ 포인터의 기본 02_ 포인터와 Const.
Ch1 MATLAB Environment 제1장 매트랩 환경.
SqlParameter 클래스 선문 비트 18기 발표자 : 박성한.
컴퓨터 프로그래밍 기초 #02 : printf(), scanf()
                              데이터베이스 프로그래밍 (소프트웨어 개발 트랙)                               퍼스널 오라클 9i 인스톨.
CAS (Computer Algebra System) 소개
학습목표 학습목차 다른 홈페이지의 HTML 파일 코드를 보는 방법에 대해 알아봅니다.
6장. printf와 scanf 함수에 대한 고찰
11장. 1차원 배열.
일차방정식의 풀이 일차방정식의 풀이 순서 ① 괄호가 있으면 괄호를 먼저 푼다.
C#.
JA A V W. 03.
프로그래밍 개요
어서와 C언어는 처음이지 제14장.
인터넷응용프로그래밍 JavaScript(Intro).
Linux/UNIX Programming
27장. 모듈화 프로그래밍.
MATLAB(6.5)의 기본 사용법 오 승 택.
Linux/UNIX Programming
3장. 변수와 연산자 교안 : 전자정보통신 홈페이지 / 커뮤니티/ 학술세미나
Term Projects 다음에 주어진 2개중에서 한 개를 선택하여 문제를 해결하시오. 기한: 중간 보고서: 5/30 (5)
Chapter6 : JVM과 메모리 6.1 JVM의 구조와 메모리 모델 6.2 프로그램 실행과 메모리 6.3 객체생성과 메모리
3D 프린팅 프로그래밍 01 – 기본 명령어 강사: 김영준 목원대학교 겸임교수.
컴퓨터 프로그래밍 기초 - 10th : 포인터 및 구조체 -
8장. spss statistics 20의 데이터 변환
컴퓨터 프로그래밍 기초 - 8th : 함수와 변수 / 배열 -
보고서 #7 (기한: 6/2) 2개의 스택, stk1, stk2를 이용하여 큐를 구현하라.
1. 스크립트 작성 마법사 2. NSIS 스크립트 컴파일
Choi Seong Yun 컴퓨터 프로그래밍 기초 #03 : 변수와 자료형 Choi Seong Yun
CAS (Computer Algebra System) 소개
Linux/UNIX Programming
Linux/UNIX Programming
에어 PHP 입문.
4장. 데이터 표현 방식의 이해. 4장. 데이터 표현 방식의 이해 4-1 컴퓨터의 데이터 표현 진법에 대한 이해 n 진수 표현 방식 : n개의 문자를 이용해서 데이터를 표현 그림 4-1.
Chapter 1 단위, 물리량, 벡터.
DA :: 퀵 정렬 Quick Sort 퀵 정렬은 비교방식의 정렬 중 가장 빠른 정렬방법이다.
Chapter 1 단위, 물리량, 벡터.
Linux 9.X 기초에서 활용까지 Chapter 06 VI 편집기.
7주차: Functions and Arrays
Chapter 10 데이터 검색1.
시스템 인터페이스 Lab1 X-window 및 명령어 사용.
1. 입력 데이터 ② 대학, 학과: 대학이 존재하지 않을 경우 학과명을 대학에 입력 학과명은 공백으로 유지 (하단 참조)
Numerical Analysis Programming using NRs
I. 수와 식 1. 유리수와 순환소수.
수치해석 ch3 환경공학과 김지숙.
1장 C 언어의 개요 C 언어의 역사와 기원 C 언어의 특징 프로그램 과정 C 프로그램 구조 C 프로그램 예제.
Microsoft Word 2002 제1장 문자열의 삽입과 변경.
2014년 가을학기 손시운 지도 교수: 문양세 교수님 행렬과 배열 2014년 가을학기 손시운 지도 교수: 문양세 교수님.
어서와 C언어는 처음이지 제21장.
 6장. SQL 쿼리.
Power Point 예제 디자인 적용 (서식) - (디자인적용) - (원하는 디자인 선택)
7 생성자 함수.
Linux/UNIX Programming
6 객체.
Linux/UNIX Programming
Presentation transcript:

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> 1. MATLAB의 일반적인 사항 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> Cont - 1 MATLAB은 Matrix Laboratory를 위한 단순 행렬 연산을 위해서 개발 현재의 MATLAB은 Math Works사에 의해서 개발됨 행렬 연산뿐만 아니라 행렬 연산을 기초로 하여 과학 계산을 위한 하나의 프로그래밍 언어와 데이터를 그래픽하게 처리하기 위한 후처리기와 GUI(Graphical User Interface) 및 기타 application 등으로 사용할 수도 있고 SIMULINK라는 도구를 내장하여 동적 시스템을 그래픽하게 simulation할 수도 있다. 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> Cont - 2 모든 MATLAB의 기능은 행렬 연산을 기초로 하여 수행되기 때문에 MATLAB을 유용하게 사용하기 위해서는 먼저 행렬에 대해서 이해를 하고 있어야 함. 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

Cont - 3 MATLAB은 초기에는 Fortran 그리고 C언어에서 C++로 6.0에서는 Java언어를 사용하여 개발되고 있으며 여려 종류의 OS에서 사용 할 수 있다. Language 수치계산, 프로그래밍 MATLAB Graphics Data Visualization, GUI Application Programming Interface 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> 1.1 MATLAB의 특징 행렬 데이터가 기본 연산 M-file을 사용한 프로그래밍 Toolbox(도구상자) 심볼로 이루어진 수식을 계산하는 기호계산 GUI 프로그래밍 SIMULINK 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> 1.2 MATLAB시작하기 MATLAB 아이콘을 클릭하면 MATLAB이 실행되어 MATLAB Command Window 가 뜬다. 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> 1.3 Desktop구성요소의 종류 및 기능 Command Window : MATLAB함수나 명령어, 사용자 M-file등을 실행 Command History : 사용자가 Command Window에 입력한 명령어를 기록하고, 실행하고, 복사하고, M-file롤 만들 수 있도록 한다. 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> Cont - 2 Current Directory browser 현재 디렉토리 내의 MATLAB과 관련된 파일을 보여주고, 파일을 Editor/Debugger를 사용하여 열거나, 그 파일을 실행하고, 복사하고 삭제하거나 이름을 바꾸는 파일 관리자와 같은 역할을 한다. 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> Cont - 3 Workspace browser : MATLAB Workspace에 저장된 변수들을 보여주고, Array Editor를 사용하여 변수를 열거나, 변수를 삭제하거나, 변수의 데이터 값을 직접 그래프를 그리도록 한다. Launch Pad : MATLAB 도구들을 실행 시킨다. Help browser : MATLAB에 관한 도움말을 보여주고 검색하도록 해준다. 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> 1.3-1 File Menu ① New : M-file, Figure, Model을 새로 만든다 Open : MATLAB M-file과 SIMULINK MUL-file을 text 편집기로 읽어오는 부분 Close Command Window : Command Window를 닫는다. Save Workspace as : Workspace에 저장되어 있는 특정 변수들이나 모든 변수는 MAT-file형식으로 하드 디스크에 저장될 수 있다. Set Path : Path를 사용하여 파일들을 관리한다. 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> 1.3-1 File Menu ② Preferences : Prompt나 파일에 출력되는 수의 정밀도나 형식, 텍스트 편집기, Window의 색등을 설정하는 부분 General : Numerical Format,Editor Preference, Echo on 등이 있다. Numerical Format Short : default 값으로써 소수점 아래 4자리 까지 표시 Long : 소수점 아래 14자리까지 표시 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> 1.3-1 File Menu ③ Hex : 16진수(Hexadecimal)표시법으로 표시 Bank : 소수점아래 2자리 까지만 표시 Plus : 숫자의 부호를 표시 Short E : 부동 소수점 표시 방법에 의하여 소수점 4자리까지 표시 Long E : 부동 소수점 표시 방법에 의하여 소수점 14자리까지 표시 Short G : 이하는 부동 소수점으로 그 외는 고정 소수점으로 표시하되 소수점 이하 4자리까지 표시 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> 1.3-1 File Menu ④ Long G : 이하는 부동 소수점으로 그 외는 고정 소수점으로 표시하되 소수점 이하 14자리까지 표시 Rational : 소수점 대신 “/”를 사용하여 표시 Loose : 행렬을 출력할 때 행렬의 전후에 Blank를 삽입 Compact : 행렬을 출력할 때 행렬의 전후에 Blank를 삽입하지 않음 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> 1.3-2 Edit Menu ① Undo : 붙여넣기(Paste)를 취소하는 메뉴 Cut : Command Prompt에서 키보드나 마우스에 의해서 선택된 내용을 잘라내어서 클립보드에 저장 Copy : Command Windows에서 키보드나 마우스에 의해서 선택된 내용을 복사하여 클립보드에 저장 Paste : 현재의 클립보드에 저장되어 있는 내용을 선택된 창으로 복사 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> 1.3-2 Edit Menu ② Clear : Command Prompt에서 키보드나 마우스에 의해서 선택된 내용을 삭제 Select All : Command Windows에 있는 모든 내용을 선택 Find : Command Wondow, Command Directory에 있는 내용을 찾을 때 사용. 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> 1.3-3 Help Menu MATLAB에서 도움말을 보기 위하여 사용 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> 1.4 명령어 demo : demo는 MATLAB또는 각 Toolbox의 데모를 보는 명령어 who, whos : 현재의 workspace에 저장된 변수들의 리스트를 보기 위해 사용. who는 변수들의 리스트만 출력하고 whos는 변수들의 리스트와 크기와 데이터형 등을 출력 help : MATLAB명령어나 M-file 대한 도움말을 출력 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> Cont - 2 lookfor : 키워드를 사용하여 MATLAB 함수나 명령어를 찾는 명령어 dir, cd, delete : dir : 디렉토리의 파일 목록을 출력 cd : 현재의 디렉토리를 변경하는데 사용 delete : 파일과 그림창을 지운다 type : 특정파일의 내용을 보기 위해서 사용 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> Cont - 3 what : 현재의 디렉토리에 있는 파일 중에서 M-file, MAT-file, MEX-file, P-file등의 리스트를 출력 clear : Workspace나 메모리에서 특정 항목을 지우는데 사용. Workspace내의 모든 변수를 지우고 싶으면 all을 인자로 사용. clc : MATLAB Command Prompt를 지운다 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> Cont – 4 echo : M-file이 실행될 때 M-file 내의 명령어들이 Command Prompt로 출력되게 하거나 되지 않도록 한다. open : 이름에 따라 파일 또는 변수를 여는 명령어 quit : 현재 MATLAB Workspace에 저장된 변수들을 저장하지 않고 MATLAB을 종료 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> 2. MATLAB에서의 기본적인 연산 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> Cont – 1` 수치 데이터에는 스칼라, 벡터, 행렬 3가지 수치 연산은 3가지 데이터간의 연산 MATLAB에서는 행렬이 기본적인 연산이 되기 때문에 벡터 연산을 위한 배열연산(array operation)이 존재 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> 2.1 스칼라, 벡터 행렬의 입력 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> 2.1-1 스칼라의 입력 Command Prompt 에서 직접 입력하는 방법 MATLAB Command Prompt에서 키보드를 이용해서 변수에 스칼라를 입력 M-file을 이용하는 방법 스크립트 모드로 작성된 M-file에 어떤 변수에 값을 배정하는 문장이 있으면 그 변수는 MATLAB Workspace에 그대로 저장된다. 파일로부터 읽어오는 방법 텍스트나 2진 파일로부터 스칼라 데이터를 읽어오는 방법 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> 2.1-2 MATLAB에서 정의되는 특별한 상수① pi : 원주율 π(3.14159265358979)를 나타낸다 i, j : , 허수를 의미 inf : 무한대(∞)를 의미. 보통 분수에서 분모가 0인 경우에 해당 NaN : 수가 아니라는 의미(Not a Number) eps : 부동 소수점의 상대적인 정확도 ans : 가장 최근의 값을 나타내는 변수 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> 2.1-2 MATLAB에서 정의되는 특별한 상수② flops : 부동 소수점 연산을 시행한 횟수 realmax : 가장 큰 양의 부동 소수점 realmin : 가장 작은 양의 부동 소수점 computer : MATLAB을 수행하고 있는 computer의 종류 및 그 computer에 설치된 MATLAB에서 사용할 수 있는 행렬의 최대 원소의 개수를 정수로 출력 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> 2.1-2 MATLAB에서 정의되는 특별한 상수③ cputime : MATLAB을 시작한 후부터 MATLAB에서 사용한 cpu time을 초로 계산하여 출력 clock : 현재 시간을 행벡터로 출력 date : 문자열로 이루어진 현재 날짜를 출력 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> 2.1-3 행렬의 입력 ① Command Prompt 에서 직접 입력하는 방법 MATLAB에서 행렬이나 벡터와 같이 여러 개의 스칼라 요소를 가지는 데이터 형은 []를 사용하여 나타낸다. MATLAB에서 행을 구분하는 데는 세미콜론(;)을 사용하거나 new line을 사용하고 열을 구분할 때는 콤마(,)나 공백을 사용 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> 2.1-3 행렬의 입력 ② 이미 값을 가지고 있는 행렬 데이터에서 그 행렬내의 임의의 요소의 값을 다시 할당하거나 읽기 위해서는 첨자(subscript)를 사용 A(i,j)=b는 행렬 A의 i번째 행과 j번째 열의 요소에 b를 할당 b=A(i,j)는 행렬 A의 i번째 행과 j번째 열의 요소 값을 b에 할당 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> 2.1-3 행렬의 입력 ③ 행렬의 첨자는 정수 부분행렬(submatrix)를 지정하는 방법 : 행렬의 이름 다음의 괄호 안에 “시작행:끝행, 시작열:끝열” 과 같이 지정 행벡터 : 행렬의 이름 다음의 괄호 안에 “행, 시작열:끝열”과 같이 지정 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> 2.1-3 행렬의 입력 ④ 열벡터 : 행렬의 이름 다음의 괄호 안에 “시작행:끝행, 열”과 같이 지정 행렬의 한 행이나 열의 데이터를 모두 하나의 벡터로 저장하는 방법 : B=A( k, : )는 행렬 A의 k번째 행을 B에 저장하라는 의미 B=A( :, k )는 행렬 A의 k번째 열을 B에 저장하라는 의미 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> 2.1-3 행렬의 입력 ⑤ M-file을 이용하는 방법 스크립트 모드로 작성된 M-file에 어떤 변수에 값을 배정하는 문장이 있으면 그 변수는 MATLAB Workspace에 저장된다. 파일로부터 읽어오는 방법 텍스트 파일 형식으로 수치 값으로만 저장된 행렬 형태의 데이터를 load를 사용하여 읽으면 파일명을 변수 명으로 하여 데이터를 Workspace에 저장 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> 2.1-3 행렬의 입력 ⑥ 이미 존재하는 행렬을 이용한 행렬의 생성 MATLAB에서는 Workspace에 이미 저장되어 있는 행렬을 이용하여 다른 행렬을 정의할 수 있도록 한다. 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> 2.1-4 MATLAB에서 정의되는 특별한 행렬① 빈행렬(empty matrix) : 0×0의 행렬로써 행렬 자체는 존재하지만 요소가 하나도 없는 행렬 영행렬(zero matrix) : 모든 행렬의 요소가 0이 되는 행렬 모든 요소가 0인 정방행렬의 경우 : zeros(n) 모든 요소가 0인 m×n행렬의 경우 : zeros(m, n) 임의의 행렬 A와 크기가 같고 모든 요소가 0인 행렬의 경우 : zeros(size(A)) 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> 2.1-4 MATLAB에서 정의되는 특별한 행렬② 모든 요소가 1로 이루어진 행렬(matrix of ones) 모든 요소가 1인 정방행렬의 경우 : ones(n) 모든 요소가 1인 m×n행렬의 경우 : ones(m, n) 임의의 행렬 A와 크기가 같고 모든 요소가 1인 행렬의 경우 : ones(size(A)) 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> 2.1-4 MATLAB에서 정의되는 특별한 행렬③ 단위행렬(identity matrix) 정방행렬의 경우 : eye(n) m×n행렬의 경우 : eye(m, n) 임의의 행렬 A와 크기가 같은 단위 행렬의 경우 : eye(size(A)) 0과 1사이의 값으로 균등분포 된 난수들로 이루어진 행렬 : rand(n) 또는 rand(n, m) 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> 2.1-4 MATLAB에서 정의되는 특별한 행렬④ 0과 1사이의 값으로 정규분포 된 난수들로 이루어진 행렬 : randn(n) 또는 randn(n, m) 파스칼의 삼각행렬(Pascal’s triangle matrix) : 파스칼의 삼각형은 의 이항식을 전개 했을 때 나타나는 전개계수를 의미하고 pascal(n)으로 쓴다. 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> 2.1-4 MATLAB에서 정의되는 특별한 행렬⑤ 마방진(magic square) : 마방진은 가로, 세로, 대각선으로 수의 합이 모두 같은 숫자 배열표. magic(n)으로 나타낸다. 동반행렬(companion matrix) : compan(p)는 다항식 p와 관련된 동반행렬을 생성 Hadamard행렬 : 모든 요소가 1 또는 –1로 이루어져 있어서 다음 관계식을 만족하는 n차 정방행렬 H = hadamard(n) 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> 2.1-5 벡터의 입력 벡터는 데이터의 저장 형태에 따라서 행벡터(row vector)와 열벡터(column vector)가 있다. []을 사용한 벡터의 입력 : 행렬과 같은 방법 콜론(:)을 사용한 벡터의 입력 : 콜론을 사용하여 벡터를 만들 때는 “시작값 : 증분값 : 최종값”의 형식을 따른다. 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> 2.2 스칼라, 행렬, 벡터의 연산 및 조작 MATLAB에서 10의 거듭제곱은 e 또는 E를 사용하여 나타낸다. 복소수 데이터의 경우에 허수부는 i나 j를 사용하여 나타낸다. 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> 2.2-1 스칼라의 연산 및 조작 연산작용 수 식 MATLAB에서의 수식 더 하 기 a + b 빼 기 a – b 곱 하 기 a × b a * b 우측 나누기 a / b 좌측 나누기 b / a a \ b (a \ b) 지 수 a ^ b 연산의 우선수위 1순위 괄호 2순위 지수 3순위 곱하기, 나누기 4순위 더하기, 빼기 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> 2.2-2 행렬의 연산 및 조작 ① 행렬의 더하기와 빼기 : 크기가 같은 두 행렬의 같은 위치에 있는 원소끼리 더하거나 뺀다. 행렬의 곱하기 : 첫번째 행렬의 열의 개수와 두 번째 행렬의 행의 개수가 일치할 때 정의된다. 행렬의 나누기 : 에서 로 는 inv(A)*B로 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> 2.2-2 행렬의 연산 및 조작 ② 행렬의 거듭제곱 : 양의 정수 k에 대한 행렬의 거듭제곱은 한 행렬 A를 k번 곱한 것과 같다. k가 양의 정수가 아닌 경우는 λ를 행렬 A의 고유값, V를 A의 고유벡터라 하면 AV = λV 여기에서 양변에 A를 곱하면 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> 2.2-2 행렬의 연산 및 조작 ③ 다시 양변에 A를 곱하면 따라서 = V*λ.^k*inv(v) = V*λ.^k/V 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> 2.2-2 행렬의 연산 및 조작 ④ 행렬의 조작 : 행렬의 형태를 바꾸는 함수들 rot90 : 행렬을 90˚씩 회전 시킨다. rot90(A, k) : k가 + 이면 반시계 방향으로, - 이면 시계 방향으로 90˚ × k 만큼 회전 flipup : 주어진 행렬을 상하 방향으로 교환한다. 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> 2.2-2 행렬의 연산 및 조작 ⑤ fliplr : 주어진 행렬을 좌우 방향으로 교환한다. reshape : 한 행렬에서 원소들을 취하여 다른 행렬을 만든다. reshape(A,m,n)은 k개의 원소를 가지는 행렬 A에서 k개의 요소를 취하여 m×n 행렬을 만든다. 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> 2.2-3 벡터의 연산 및 조작 ① 배열 연산은 행렬 전체로서가 아니라 행렬 내의 각 요소가 연산의 중심이 되어서 행렬이나 벡터의 요소 대 요소의 산술 연산이 수행된다. 연산작용 수 식 MATLAB에서의 수식 더 하 기 a + b 빼 기 a – b 곱 하 기 a × b a. * b 우측 나누기 a / b a. / b 좌측 나누기 b / a a. \ b (a. \ b) 지 수 a. ^ b 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> 2.2-3 벡터의 연산 및 조작 ② 벡터의 내적 dot(A, B) - 두 벡터 A와 B의 내적 벡터의 외적 cross(A, B) - 두 벡터 A와 B의 외적 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>

서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr> 2.2-4 다차원 배열의 연산 및 조작 벡터나 행렬은 1차원 배열(벡터의 경우)이나 2차원 벡터(행렬의 경우)이다. 데이터의 index가 2차원 이상 필요한 경우 사용하는 배열 2차원 배열에서 1번째 index를 행, 2번째 index를 열이라고 하고 3차원 배열의 경우에 세 번째 index를 페이지(page)라 한다. 2차원 배열인 행렬의 경우에 첨자를 사용해서 모든 행과 열은 A(:, :)로 나타내므로 A(:, :)에 페이지에 해당하는 index를 추가한다. 서경대학교 수리정보통계학부 안가경교수<kkahn@skuniv.ac.kr>