본문 바로가기

matlab215

MATLAB diag(), eye(), zeros(), ones() 이번 글에서는 MATLAB 의 기본적인 몇몇 함수들에 대해 알아 보겠습니다. diag() 함수를 이용하여 diagonal matrix 를 만들거나 matrix 의 diagonal 값을 얻을 수 있습니다. eye() 함수를 이용하여 identity matrix 를 만들 수 있습니다. zeros() 함수를 이용하여 zero matrix 를 만들 수 있습니다. ones() 함수를 이용하여 1로 구성된 matrix 를 만들 수 있습니다. blkdiag() 함수를 이용하여 diagonal 값이 matrix 로 구성된 matrix 를 만들 수 있습니다. 2011. 3. 27.
MATLAB persistent MATLAB 함수 내부의 변수는 함수 사용 후에는 메모리 상에서 지워지게 됩니다. 하지만 경우에 따라 함수 내부에서 변수가 계속 유지 되게 할 필요가 있는 경우가 있습니다. 이러한 경우에 persistent keyword 를 사용합니다. 다음 예를 통해 persistent 에 대해 알아보죠. 아래 그림의 y=persistent_func(a,b) 함수는 a, b 값 입력을 받아서 a+b+c 값을 출력하는 함수 입니다. c 값에는 함수 내부에서 메모리상에 계속 남아 있도록 하기 위하여 persistent 로 설정했습니다. 그리고 초기값 설정을 위하여 isempty() 함수를 써서 c 값이 비어 있으면 초기값을 설정하도록 하였습니다. 위 함수에 대하여 다음과 같이 사용해 보도록 하겠습니다. 함수 내부에서 c .. 2011. 3. 27.
MATLAB contour 등고선 그리기 MATLAB contour() 함수를 이용하면 등고선 그래프를 매우 쉽게 그릴 수 있다. 다음과 수식에 따른 값에 대해 등고선을 그려 보자. [X,Y] = meshgrid(-2:2); % X,Y 값 설정 Z = 10*(X/5 - X.^3 - Y.^5).*exp(-X.^2-Y.^2); % Z 값 계산 위 식에 대해 아래 명령으로 등고선을 간단하게 그릴 수 있다. figure, contour(X,Y,Z), colorbar 등고선 사이의 표면에 색을 입히고 싶다면 contourf() 함수를 이용한다. figure, contourf(X,Y,Z), colorbar 다음과 같은 등고선 그래프를 얻을 수 있다. 위 그래프를 보면 간격이 너무 넓어서 등고선이 너무 각진 형태로 나오는 것을 확인 할 수 있다. 이럴 때는.. 2011. 3. 27.
MATLAB, Newton method 를 이용하여 해를 구해 보자 Newton method 는 미분 가능한 연속 함수 f(x) 에 대하여 다음과 같은 방식으로 f(x) =0 의 해를 구하는 방법이다. 위 식에 대하여 Newton method 를 이용하여 f(x) =0 이 되는 실수 해 x 를 구해 보자. 위 식에 대한 미분 결과는 다음과 같다. Newton method 의 최대 반복 횟수는 100 회로 하고 상대 오차는 10-9 으로 설정 한 후 이를 만족하는 해를 찾아 본다. MATLAB code 는 다음과 같다. command 창에서 결과를 확인 하면 Newton method 를 이용한 결과와 roots() 함수를 이용한 결과가 근사적으로 일치 함을 확인 할 수 있다. 2011. 3. 27.
MATLAB QPSK BER simulation in AWGN channel 이번 포스팅에서는 AWGN (Additive white gaussian noise) 채널 환경에서의 QPSK Bits Error Rate(BER)에 성능 검증 simulation 에 대해 설명한다. QPSK 및 잡음의 분산(σ2) 과 No(noise power spectral density) 의 관계에 대한 내용은 다음 포스팅을 참조 하기 바란다. 2011/03/19 - [MATLAB] - MATLAB BPSK BER simulation in AWGN channel 2011/03/08 - [통신] - [디지털 통신] BPSK, QPSK QPSK 에서는 아래 식의 M =4 이다. 따라서 다음 식과 같이 정리 된다. QPSK 시뮬레이션 시의 주의할 점은 신호의 파워를 1 로 정규화 해 줘야 하며 잡음 역시 .. 2011. 3. 27.
MATLAB break, continue 이번 포스팅에서는 루프 문(for, while) 사용시의 제어를 위한 keyword 인 break 와 continue 에 대해 설명 드립니다. 보통 if 문 안에 써서 특정 조건 일 때 루프를 멈추게 하거나 또는 건너뛰게 할 때 이용합니다. break 는 루프 문의 동작을 멈추는 기능을 합니다. 다음 코드를 실행해 보면 for k=1:5 if k==3 break end fprintf('%d\n',k) end 1, 2 만 출력이 되고 k = 3 일 때 break 명령에 의해 for 루프를 빠져 나오게 됩니다. 루프 문 안에 또 루프 문이 있는 nested 루프의 형태에서 break 를 이용할 경우에는 break 를 둘러 싸고 있는 루프문 하나만 빠져 나오게 됩니다. continue 문은 특정 루프를 건너 .. 2011. 3. 26.
MATLAB piecewise 수식 표현 MATLAB 을 이용하여 그림과 같은 piecewise 식을 나타내 보자. 이러한 piecewise 식은 비교 연산자와 논리 연산자를 이용하면 매우 간단하게 표현이 가능하다. 위 그래프에 대한 식은 다음과 같다. 위 식을 y = my_piecewise(t) 라는 함수로 표현해 보자. 위 그림의 오른쪽의 빨간색 네모 칸 친 부분 처럼 각각의 조건을 비교 연산( 2011. 3. 26.
MATLAB global keyword MATLAB 의 함수 내부의 변수 값들은 함수가 사용된 이후에는 자동으로 메모리 상에서 없어진다. 하지만 같은 변수를 다른 함수 또는 파일에서도 이용하려는 경우 함수 내부에서 변화된 값이 계속 남아 있게 해야 하는 경우가 있다. 이러한 경우 global keyword 를 이용한다. global 은 하나의 변수를 여러 파일에서 이용하기 위해서 사용한다. global keyword 의 이용 방법은 변수 사용 전에 선언을 해 주고 사용해야 한다. 다음과 같이 예를 들어 보자. 위 예에서 global_test.m 파일에서 변수 a 값을 my_func() 함수에서도 이용하고 함수 내부에서 a 값을 변경했다. 그리고 global_test.m 파일에서 my_func() 사용 전과 사용 후의 a 값이 다음과 같이 달라.. 2011. 3. 26.
MATLAB Tex character 수학 기호 넣기 MATLAB 이용시 그래프 또는 command 창에 text 출력시 수학 기호등을 넣고 싶을 때가 있다. 다음 예는 sin 그래프를 그리고 x 축과 y 축에 θ 라는 특수 기호를 넣었다. MATLAB 에서 이런 특수 기호를 넣기 위해서는 위 코드에서 보는 것처럼 \character 형태로 입력해 줘야 한다. 아래 표를 참조하면 원하는 기호를 넣을 수 있을 것이다. Reference : MATLAB HELP 2011. 3. 25.
MATLAB PDF, CDF, CCDF 이번 포스팅에서는 각종 랜덤 값들을 이용한 PDF(Probability Density Function), CDF(Cumulative Distribution Function), CCDF(Complementary Cumulative Distribution Function) 를 그리는 방법에 대해 살펴 보려 합니다. PDF 를 나타내는 방법에 대해 모르시는 분들은 다음 포스팅을 참조하시길 ~ 2010/01/03 - [programming language/MATLAB] - MATLAB PDF (Probability Density Function) 평균이 2 이고 분산이 10 인 가우시안 잡음을 생성해 보겠습니다. 평균이 2 이므로 +2 를 하고 분산 값이 10 이므로 sqrt(10) 을 곱해 주게 됩니다. 이제.. 2011. 3. 23.
MATLAB 함수 만들기, inline, function handle 어느 컴퓨터 언어나 반복되는 부분은 함수화 하기 마련 입니다. MATLAB 도 예외는 아니죠. 이번 포스팅에서는 MATLAB 에서 함수 작성 방법에 대해 알아보도록 하겠습니다. MATLAB 에서는 함수를 만들 수 있는 방법이 3 가지 정도 됩니다. 첫 번째로는 함수 파일을 만드는 방법이고, 두 번째로는 inline() 객체를 이용하여 함수화 하는 방법, 세 번째로는 function handle 을 이용하는 방법 입니다. 함수 파일을 만드는 방법부터 설명 드리도록 하겠습니다. 예를 들어 설명해 보죠. a, b 라는 두 값을 입력 받아서 그 합과 차를 출력하는 함수를 만들어 보도록 하죠. 함수는 function 이라는 키워드를 먼저 써줘야 합니다. 그리고 다음 그림과 같이 구성을 합니다. 함수 이름은 fun.. 2011. 3. 21.
MATLAB input() 이번 포스팅에서는 input() 함수에 대해 설명해 보겠습니다. input() 함수는 말 그대로 사용자로부터 입력을 받는 함수 입니다. 사용 방법은 매우 간단합니다. >> A=input('입력해 주세요: ') ; 입력해 주세요: 12 >> A A = 12 다음과 같이 벡터도 입력 가능 합니다. >> A=input('입력해 주세요: ') ; 입력해 주세요: [1 2 3] >> A A = 1 2 3 그럼 다음과 같이 좀 엄한 값을 한번 넣어 보죠. >> A=input('입력해 주세요: ') ; 입력해 주세요: T ??? Error using ==> input Undefined function or variable 'T'. 입력해 주세요: 그럼 위 결과처럼 라는 부분이 다시 나오게 됩니다. 여기서 T 라는 값.. 2011. 3. 21.
MATLAB 기본3, sort, if ~ end, for ~ end, max, min MATLAB 은 공학적으로 굉장히 편리 한 툴입니다. 하지만 편리함 속에는 단점도 있는 게 사실 입니다. 쉽다고 함부로 쓰다가는 정말 예상치 못한 결과에 당황하는 경우가 있곤 합니다. 따라서 MATLAB 함수 등을 쓰실 때는 help 문 이나 예제 등을 통해 정확히 알고 난 이후에 이용하는 것이 좋습니다. 이번 포스팅에서는 그럼 기본 함수 몇 가지를 비롯한 몇몇 주의 할 점 들에 대해 설명 드리겠습니다. 첫 번째로 소개해 드릴 함 수는 sort() 함수 입니다. 함수 이름만 봐도 이게 정렬을 해주는 함수구나 하는 건 아실 겁니다. 예를 통해 설명해 보도록 하죠~ A=magic(3) A = 8 1 6 3 5 7 4 9 2 A 에 대해 sort() 함수를 적용해 보면 다음과 같습니다. A1=sort(A) A.. 2011. 3. 21.
MATLAB BPSK BER simulation in AWGN channel 오늘은 AWGN (Additive white gaussian noise) 채널 환경에서의 BPSK Bits Error Rate(BER)에 대해 설명한다. 일단 BPSK 가 뭔지 잘 모르는 사람은 다음 페이지를 참조 하기 바란다. 2011/03/08 - [통신] - [디지털 통신] BPSK, QPSK 위 페이지를 참조하면 bit 를 BPSK 심볼로 mapping 하는 방식에 대해 알았을 테고, 이제 잡음을 생성하는 방법을 알아 보자. 잡음을 생성하기 위해서는 몇 지 통신 관련 수식에 대해 알아야 한다. 보통 BER 그래프를 그릴 때는 SNR 축에 따른 그래프가 아닌 Eb/No 에 따른 그래프를 그리곤 한다. 따라서 BER 시뮬레이션을 정확히 하려면 Eb/No 에 따른 잡음을 생성할 수 있어야 하겠다. 잡음.. 2011. 3. 19.
MATLAB interpolation, interp1() 실험 데이터가 너무 적을 경우 그 경향성을 알아보기 위하여 실험 데이터의 중간 값들을 알아내야 하는 경우가 있다. 이런 경우 interpolation 을 수행하여 수학적으로 중간의 값들을 추정 하곤 한다. 이러한 수치적인 interpolation 을 해 주는 함수 중 하나가 interp1 함수 이다. 다음과 같은 데이터를 가정해 보자. X=0:10 X = 0 1 2 3 4 5 6 7 8 9 10 Y=sin(X) Y = 0 0.8415 0.9093 0.1411 -0.7568 -0.9589 -0.2794 0.6570 0.9894 0.4121 -0.5440 위 코드의 Y 값은 간단하게 0, 1, 2, … 10 값에 대한 sin() 값을 나타낸다. 위 값들을 이용하여 X 값이 0, 0.01, 0.02, 0.03.. 2011. 3. 19.
MATLAB 기본 2 MATLAB 에서 매트릭스의 인덱스에 대한 처리는 정말 기본 중에 기본이라 할 수 있다. 이번 포스팅에서는 매트릭스 인덱스 처리에 대해 설명한다. 1부터 10까지의 정수로 구성된 벡터 X를 발생시켜 보자. 콜론 연산자 이용 X=1:10 X = 1 2 3 4 5 6 7 8 9 10 linspace() 함수 이용 X=linspace(1,10,10) X = 1 2 3 4 5 6 7 8 9 10 무식하게 다 써주기 X=[1 2 3 4 5 6 7 8 9 10] X = 1 2 3 4 5 6 7 8 9 10 위 세가지 방법 모두 동일한 결과를 나타낸다. linspace(1, 10, 10) 함수의 첫 번째 1 은 시작 값 , 두 번째 10은 마지막값, 그리고 세번째 10 은 전체 개수를 의미 한다. 그럼 X 라는 벡터.. 2011. 3. 19.
MATLAB subplot() 오늘은 MATLAB subplot()에 대해 알아본다. subplot()은 하나의 figure 창에 여러 그래프를 표시 할 때 이용한다. 다음 예를 통해 subplot() 에 대해 설명한다. x=1:5; y=1:5; y2=(1:5)*2; figure, subplot(3, 2, 1), plot(x,y) subplot(3, 2, 4), plot(x,y2,'r:.') subplot(3, 2, 1) 에서 첫 번째 3은 그래프의 행의 개수를 의미하고, 두 번째 2는 그래프의 열의 개수를 의미한다. 세 번째 숫자 1은 위 그림에서 빨간색 글자로 표시한 1 부분에 그림을 넣겠다는 의미이다. subplot(3, 2, 4)는 에서 세 번째 숫자 4는 위 그림의 4번 부분에 그래프를 넣겠다는 의미이다. 그럼 위 그림을 다.. 2011. 3. 16.
MATLAB 입력 신호의 delay 확인 xcorr(), finddelay() 통신 또는 신호 처리에 있어서 delay 는 항상 존재 하기 마련이다. 필터링이나, 공기중의 매질을 통과하는 동안의 시간 지연RF 소자에 의한 지연 등.. 굉장히 다양한 지연 요소가 있다. 이런 delay 값을 확인 하기 위하여 수신신호와 기준 신호의 correlation을 이용하곤 한다. correlation 은 상관도로서 reference 값과 들어오는 값이 얼마나 잘 매치가 되는지를 알아 보는 척도이다. 이런 correlation 을 수행하는 함수로 xcorr() 함수가 있다. 본 함수는 Signal processing toolbox 내에 포함된 함수이다. x=1:5 x = 1 2 3 4 5 y=[0 0 0 1:5] y = 0 0 0 1 2 3 4 5 위의 x와 y 값을 비교 해 보면 y 가 x 에.. 2011. 3. 14.
MATLAB 적분 추가 내용 trapz() 다음 페이지에서 2011/03/14 - [programming language/MATLAB] - MATLAB 적분 int(), quad() MATLAB 에서 이용 가능한 적분에 대해 학습을 한 적이 있다. 오늘은 추가적으로 수치 적분 함수 중 사다리꼴 기법으로 적분을 수행하는 trapz() 함수에 대해 설명한다. trapz() 함수의 원형은 다음과 같다. Z = trapz(X,Y) X 값은 함수의 입력이고 Y 값은 함수의 출력이다. trapz() 함수를 이용하여 다음 수식에 대한 적분을 수행해 보자. 일단 X 의 범위를 정한다. 적분 구간이 0~3 이므로 X=0:3 X = 0 1 2 3 Y= X.^2 + 2.*X + 1 Y = 1 4 9 16 integral_value=trapz(X,Y) integral.. 2011. 3. 14.
MATLAB 함수의 해를 구해 보자~ fzero(), roots(), poly() MATLAB 에서 다항식 또는 연속 함수의 해를 구하는 방법에 대해 설명한다. fzero() 은 연속 함수의 한 지점에서의 해를 구하는 함수이다. 함수의 원형은 x = fzero(fun,x0) 이며 fun 이라는 함수에 대하여 x0 근처에서의 해를 찾아 준다. fzero() 함수는 y 값의 부호가 바뀌는 지점을 찾아서 해를 구하는 방식이다. 내부 알고리즘으로는 bisection, secant, inverse quadratic interpolation methods 이렇게 세 개 알고리즘이 조합된 방식을 이용한다고 한다. 해를 찾는 방식이 y 의 부호 변경 지점을 찾는 것이므로 y=x2 과 같이 x축에 접하는 함수에 대한 해를 찾을 때는 사용하지 않는 것이 좋다. Command 창에 다음과 같은 명령을 해.. 2011. 3. 13.
MATLAB ezplot() 함수로 그래프를 쉽게 그리자 오늘은 ezplot() 함수를 이용하여 그래프를 그리는 방법에 대해서 설명하겠습니다. ezplot() 함수는 함수에 대해 기본적으로 x 축의 범위가 -2π ~ 2π 범위에 대해 그래프를 그려 주는 함수 입니다. 물론 함수의 범위는 사용자가 설정할 수도 있습니다. 몇 가지 예를 통해 사용 방법을 설명 드리겠습니다. y=sin(x) + x2 + 2x+4 라는 함수에 대해 그래프를 그려 보겠습니다. 위 수식에 대한 그래프를 그리는 방법은 다음과 같습니다. matlab command 창에서 ezplot('sin(x) + x.^2 + 2.*x+4 ') 라고 타이핑 하면 다음과 같은 결과가 나옵니다. 다음 결과는 x 축의 범위가 위에 설명 드린 데로 -2π ~ 2π 범위의 값이 나왔습니다. 그럼 조금 다른 형태로 .. 2011. 3. 13.
MATLAB 다항식의 계수 추정 polyfit(), polyval() polyfit() 함수는 입력과 출력 값으로부터 다항식의 계수를 찾아 주는 함수 입니다. 예를 들면 라는 식에서 x, y 값을 알고 있으면 다항식의 계수값 a, b, c 값을 찾아 준다는 것입니다. polyfit() 함수의 원형은 다음과 같습니다. p = polyfit(x,y,n) x 는 다항식의 입력값, y 는 다항식의 결과값입니다. n 은 차수를 의미 합니다. p 는 차수에 따른 다항식의 계수 값을 의미 합니다. 다음과 같은 x, y 값에 대하여 다항식의 계수를 찾아보겠습니다. x=0:5 x = 0 1 2 3 4 5 y=2*x.^3 + 5*x.^2 + 6*x+4 y = 4 17 52 121 236 409 위와 같은 값이 있을 때 다음과 같이 3차 다항식의 계수를 찾습니다. 결과 p 의 값을 보면 위에.. 2011. 3. 12.
MATLAB 과 유사한 공학용 프로그램 SCILAB 오늘은 괜찮은 공학용 프로그램 하나 소개해 드리겠습니다. 바로 제목에 있는 SCILAB 이라는 프로그램인데요…… 이 프로그램이 뭐냐 하면 MATLAB 하고 굉장히 유사한 공학용 프로그램 입니다. MATLAB 은 뭐 툴 박스 하나만 해도 몇 백만원씩 하는 고가의 프로그램이라 학교나 회사 등에서 사주지 않는 이상은 개인들이 사기에는 부담스러운 프로그램입니다. 반면에 SCILAB은 완전 공짜의 프로그램 입니다. 공짜라고 해서 허접하거나 하지도 않군요. 익숙해 지기만 하면 MATLAB 대용으로도 써도 괜찮겠다는 생각이 듭니다. 프로그램은 http://www.scilab.org/ 에서 다운 받을 수 있습니다. 현재 5.3.1 버전까지 나와 있군요. 운영 체제는 Linux, Windows, MAC os X 지원하구.. 2011. 3. 11.
MATLAB 소스 코드 protection, pcode MATLAB 으로 M 파일 작성시 가끔 다른 사람들과 파일을 교환해야 하는 경우가 종종 있습니다. 이런 경우 회사 또는 개인의 보안상 파일의 소스는 숨겨서 보내야 할 경우가 있죠. C/C++ 같은 경우에는 라이브러리 파일처럼, MATLAB 에는 .p 라는 확장자를 갖는 파일을 만들 수가 있습니다. 이렇게 m 파일을 p 파일로 바꿔주는 함수가 바로 pcode 함수 입니다. pcode 함수의 사용 방법은 굉장히 간단 합니다. pcode abc.m 과 같은 형태로 써주면 abc.p 라는 pcode 가 만들어 집니다. 외부 또는 다른 사람에게 이 abc.p 파일을 넘겨주면 파일 소스는 볼 수 없지만 실행은 시킬 수가 있습니다. pcode *.m 이라고 써 주게 되면 현재 폴더 안의 모든 m 파일들을 다 p 파일.. 2011. 3. 11.
MATLAB [디지털 통신] EYE PATTERN 오늘은 EYE PATTERN 에 대해 알아 보려 합니다. 학부 때 EYE PATTERN 이란 걸 보고 이게 뭘까 ~ 정말 도무지 감이 안 왔던 기억이 있습니다. EYE PATTERN 이란 특정 시간 구간 동안 들어오는 신호의 파형을 계속 겹쳐서 나타낸 것뿐입니다. 보통 EYE PATTERN을 그릴 때는 2 심볼 구간 동안 표시를 하곤 하죠. 오늘 EYE PATTERN을 하기 전에 BPSK 에 모르시는 분들은 아래 글을 읽고 오시기 바랍니다. 2011/03/08 - [잡담,잡다] - [디지털 통신] BPSK, QPSK 그리고 Raised cosine filter 에 대해서는 아래 글을 참조해 주세요. 2011/03/02 - [MATLAB] - [디지털 통신] Raised Cosine Filter 그럼 이제.. 2011. 3. 9.
MATLAB Editor 파일 비교 MATLAB 은 대화형 언어로서 Command 창에 명령어를 치면 결과가 바로 밑에 뚝딱 뚝딱 나옵니다. 그런데 코드가 길어 진다면 Command 창에서 작업을 하는 것은 비 효율적입니다. 그래서 보통은 Editor 창에서 코딩을 하고 M 파일로 저장하고 실행을 시켜서 Command 창에서 확인을 합니다. Editor 창에서 F5 를 누르거나 초록색 삼각형 모양으로 생긴 실행 단추를 클릭하면 M 파일이 실행이 됩니다. 오늘 소개할 내용은 MATLAB Editor 창의 파일 비교 기능 입니다. M 파일을 버전 별로 작성하다 보면 꼭 변경 내용을 추적해야 될 때가 있습니다. 코드가 짧다면 상호 비교하는데 문제가 안되지만, 코드가 100 줄 넘어가기 시작하면 비교하는 것도 참 눈 아프고 힘든 일입니다. 이럴 .. 2011. 3. 8.
Programming language 인기도 전세계의 사람들은 어떤 프로그래밍 언어를 주로 이용할까에 대한 궁금함을 항상 가지고 있었다. 인터넷 검색을 통해 이런 궁금증을 해결해 줄 수 있는 사이트를 발견했다. TIOBE 소프트웨어라는 회사의 홈페이지에는 한 달에 한번씩 프로그래밍 언어의 인기도에 대한 순위를 올려 놓는다. 아래 순위의 출처는 http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html 다. 이번 달의 프로그래밍 언어 인기도는 다음과 같다. 역시나 이번에도 1등은 자바다. 2~3 등을 하고 있는 C/C++ 야 뭐 워낙에 기본이 되는 프로그램 이니깐 할 말이 없고, 파이썬과 C#의 약진이 눈에 뜬다. 작년 까지만 해도 파이썬이 저 정도는 아니었던 것 같은데…… 요즘 진짜 많이 사.. 2011. 3. 7.
MATLAB 부분 분수 전개 residue() MATLAB 에는 다항식 계수와 부분 분수 사이의 변환을 해주는 함수로서 residue() 함수를 제공해준다. residue() 함수의 원형은 다음과 같다. [r,p,k] = residue(b,a) [b,a] = residue(r,p,k) 위 식에서 b 는 다항식의 분자 부 계수 이다. a 는 다항식의 분모 부 계수 이다. r 은 나머지 성분이다. p 는 pole 성분이다. k 는 몫의 값이다. 이라는 다항식에 대해 부분 분수 전개를 수행해 보자. 수학적으로는 다음과 같다. (1) 이제 residue() 함수를 이용하여 부분 분수 전개를 해보자. 분자 부의 계수를 설정한다. b=[2 1] b = 2 1 분모 부의 계수를 설정한다. a=[1 3 2 ] a = 1 3 2 부분 분수 전개를 수행한다. [r,p.. 2011. 3. 7.
MATLAB figure 창 위치를 바꿔보자 MATLAB 에서 그래프를 그려 보자. x=1:10 x = 1 2 3 4 5 6 7 8 9 10 y=1:10 y = 1 2 3 4 5 6 7 8 9 10 figure, plot(x, y, 'r*--'), grid on 위 명령어를 치면 아래와 같이 윈도우 창의 중간 좀 위 부분에 그림이 뜬다. 저런 그림을 여러 개 그릴 경우에는 그림이 겹쳐서 한번에 보기에는 좀 곤란한 경우가 많다. 이런 경우에 그림의 위치를 설정해 줄수 있다면 굉장히 편리하다. matlab 에서 화면의 크기를 알려면 다음과 같이 명령어를 입력하면 된다. get(0, 'screensize') ans = 1 1 1680 1050 내 모니터는 현재 1680 바이 1050 픽셀의 크기를 가지고 있다고 나온다. 그럼 이제 화면상의 좌 하단과 우.. 2011. 3. 6.
MATLAB 기본 함수들 오늘은 MATLAB 기본 함수들에 대해 설명하려 한다.너무 많은 함수들이 있어서 다 설명하기는 힘들고 생각날 때 마다 본 페이지에 추가 하는 방식으로 설명하는 것이 좋을 것 같다. 아래와 같은 매트릭스를 예를 들어 보자. x=magic(4) % 4행 4열의 마 방진 매트릭스 행 또는 열의 모든 합이 같은 매트릭스를 만들어 준다. x = 16 2 3 13 5 11 10 8 9 7 6 12 4 14 15 1 flipud() 함수는 위 아래를 변경 할 때 이용한다. 즉 행의 순서를 바꿀 때 사용한다. x2=flipud(x) x2 = 4 14 15 1 9 7 6 12 5 11 10 8 16 2 3 13 fliplr() 함수는 좌 우를 변경 할 때 이용한다. 즉 열의 순서를 바꿀 때 사용한다. x3=fliplr(.. 2011. 3. 2.