본문 바로가기

programming language/MATLAB215

MATLAB 을 사용하여 Windows 환경에서 outlook 으로 메일 보내기 MATLAB 은 정말 많은 부분을 자동화 할 수 있는 툴입니다. Simulink 를 사용하신다고 하더라도 MATLAB 을 제대로 다룰 줄 알아야 Simulink 를 효율 적으로 사용 할 수 있습니다. 코드 생성과 같이 시간이 좀 많이 걸리는 작업을 실행할 때 컴퓨터 앞에서 계속 앉아 있다면 참 답답 할 겁니다. 이럴 때 저는 MATLAB 에서의 작업이 끝나면 메일을 보내도록 설정해 놓고 나가서 커피 한잔 하면서 쉬곤 합니다. 요즘 대부분 스마트폰을 사용하니 휴대폰으로 메일을 확인 할 수 있을테고 작업이 완료 됐다는 메일을 받으면 들어와서 그 이후의 작업을 하는거죠. 저는 Windows 환경이고 메일 프로그램으로 Ms 아웃룩을 사용 합니다. MATLAB 에서는 MS Office 제품군을 자동활 할 수 있습.. 2016. 10. 31.
MATLAB zip() 함수를 사용하여 현재 폴더 하위의 내용들 압축하기 MATLAB 을 사용하여 압축을 하고 싶으면 zip() 이라는 함수를 사용 합니다. 현재 폴더의 하위 내용들을 압축하고 싶은 경우 보통은 현재 폴더를 압축하곤 하는데 이렇게 하려면 현재 폴더가 아닌곳에 zip 파일을 저장해야 합니다. 오늘은 현재 폴더 하위의 내용들을 압축하는 방법에 대해 소개하려 합니다. 현재 폴더의 내용을 검색하는 방법은 dir() 이라는 함수를 사용합니다. dir() 함수는 recursive 한 파일 검색은 되지 않습니다. recursive 한 파일 검색을 하고 싶다면 아래 포스팅을 참조하시면 됩니다. http://iamaman.tistory.com/757 아무튼 오늘은 그냥 현재 폴더에 대해서만 검색 할것이므로 dir() 함수를 사용합니다. 그런데 dir() 함수를 사용하여 현재 .. 2016. 10. 29.
MATLAB 현재 폴더 안의 모든 Simulink MDL 파일 SLX 로 변경하기 MATLAB 은 1 년에 두 번 업데이트를 진행하고 이에 따라 a, b 버전을 release 합니다. 2016 년에는 2016a, 2016b 버전이 나왔죠. 2012a 버전부터 Simulink 모델 파일의 확장자가 MDL 에서 SLX 형태로 변경 됐습니다. 최신 버전에서는 하위 호환을 위해 MDL, SLX 를 둘 다 지원하고 있습니다. 그냥 MDL 파일을 그대로 사용해도 되지만 기왕이면 최신 버전으로 사용하기 위해 저는 과거에 만들었던 MDL 파일을 SLX 로 변환해서 사용하고 있습니다. 단순히 MDL 확장자를 SLX 로 변경하는건 탐색기를 통해서도 가능 하겠지만 이렇게 변환한 경우에는 해당 모델 파일이 정상적으로 동작하지 않습니다. 단순히 확장자만 바뀐게 아니기 때문이죠. MDL 파일을 SLX 로 변경.. 2016. 10. 26.
MATLAB Simulink 블록의 존재 유무를 확인 하는 방법 Simulink 는 많은 경우 MATLAB script 를 사용하여 자동화를 할 수가 있습니다. 당연히 MATLAB 코딩을 잘해야 Simulink를 자유자재로 다룰 수 있을 겁니다. 물론 그냥 노가다로 Simulink를 구현 할 수도 있지만 이렇게 하면 무수한 클릭질에 Simulink 설계가 정말 싫어 질 겁니다. 암튼 오늘은 Simulink 블록의 존재 유무를 MATLAB Command Window 에서 확인 하는 방법에 대해 소개 하려 합니다. Simulink 블록의 존재 유무를 확인하기 위해서는 getSimulinkBlockHandle() 함수를 사용하면 됩니다. 함수의 이름을 보면 알겠지만 Simulink 블록의 handle 을 구하는 함수 입니다. getSimulinkBlockHandle() 함.. 2016. 10. 20.
Simulink scope 한번에 다 닫는 명령어 Simulink 를 사용하다 보면 여러 Scope 를 여는 경우가 종 종 있습니다. 이러한 경우 한번에 Scope 를 다 닫는 명령어가 있나 해서 찾아보니 아래 주소에 그 방법이 나와 있더군요. https://kr.mathworks.com/matlabcentral/answers/94334-how-can-i-programmatically-close-simulink-scope-windows-in-simulink-7-1-r2008a 위 주소의 코드를 활용하여 아래와 같이 Simulink Scope 를 다 닫는 함수를 만들어서 사용한다면 편리 할 것 같네요. function scopeCloseAll shh = get(0,'ShowHiddenHandles'); set(0,'ShowHiddenHandles','On.. 2016. 8. 11.
MATLAB finish.m 파일 설정 방법 아래 포스팅에서 MATLAB 시작시 스크립트 실행 방법에 대해 소개한 적이 있습니다. http://iamaman.tistory.com/995 이와 비슷하게 MATLAB 을 종료 할 때 스크립트를 실행하도록 하는 방법에 대해 소개하려 합니다. MATLAB 의 path 에 finish.m 파일을 설정해 놓으면 MATLAB 을 닫을 때 마다 해당 파일이 실행됩니다. finish.m 파일 설정 관련 매뉴얼은 아래 주소에 있습니다. http://kr.mathworks.com/help/matlab/ref/finish.html MATLAB Command Window 에 path 라고 타이핑 하면 설정된 path 를 쉽게 확인 할 수 있고~ path 를 추가하기 위해서는 Command Window 에 pathtool .. 2016. 8. 8.
MATLAB bsxfun(The binary singleton expansion function) MATLAB 은 기본적으로 matrix 연산을 수행 합니다. element-by-element 연산을 수행하고자 하는 경우에는 보통 점(.) 을 붙여서 다음과 같이 .* 와 같이 표현하곤 하죠. 또한 이런 element-by-element 연산을 하기 위해서는 변수의 차원이 맞아야 합니다. 즉 같은 크기여야 합니다. 다음과 같이 1행 ×3 열 의 x와 3행 × 1열의 y 를 3 × 3 행열을 만든 다음에 더하고 싶을 때는 다음과 같이 구성해야 할 것입니다. 일단 repmat 을 사용해서 x, y 를 3×3 행열로 만들어 주고~ 다음에 더해야 에러 없이 정상적으로 element-by-element 연산을 수행 할 것입니다. 그런데 오늘 소개할 bsxfun(binary singleton expansion f.. 2016. 2. 14.
MATLAB Exponential random variable generation 이번 포스팅에서는 Exponential r.v. 의 생성 방법에 대해 설명한다. Exponential r.v. 의 pdf 는 다음과 같다. 위 pdf 를 적분하면 cdf 를 구할 수가 있고, cdf 는 다음과 같다. Exponential r.v. 은 위 CDF 수식의 inverse 를 통해 구할 수 있으며 rand() 함수를 이용하여 다음과 같이 생성 할 수 있다. 위 exponential generation 함수를 이용하여 exponential r.v. 을 생성해 보자. 아래 코드는 λ = 1 인 경우의 exponential r.v. 을 생성하고 그에 대한 pdf 및 cdf 그래프를 그리는 코드이다. 위 코드에 따른 pdf 및 cdf 는 다음과 같다. pdf, cdf code 에 대한 내용은 다음 글을.. 2016. 1. 13.
MATLAB을 사용한 파일 내용 검색하기 grep() 컴퓨터를 사용시 텍스트를 검색할 때 주로 grep 와 같은 툴을 사용 합니다. 물론 grep 말고도 아래 주소에서 소개한 Ack, The Platinum Searcher 와 같은 툴들도 있습니다. http://iamaman.tistory.com/1310 http://iamaman.tistory.com/1572 그런데 MATLAB 에서 grep와 같은 기능이 없을까 해서 찾다 보니 아래 주소의 MATLAB File Exchange 에 grep 가 있더군요. http://www.mathworks.com/matlabcentral/fileexchange/9647-grep--a-pedestrian--very-fast-grep-utility/content/grep.m 다운로드를 클릭해서 다운로드 받은 후에 압축을 .. 2015. 10. 26.
MATLAB Dependency 파일 모두 압축하기~ 오늘은 MATLAB을 사용하여 파일을 압축하는 방법에 대해 소개하려 합니다. MATLAB 에서 파일을 압축하기 위해서는 다양한 함수가 있는데~ zip, unzip, gzip , gunzip, tar, untar 등과 같은 함수가 있습니다. 압축방법은 아래 매뉴얼에 나와 있는 바와 같이~ http://kr.mathworks.com/help/matlab/ref/zip.html zip 파일명을 넣고 뒤에 압축하고자 하는 파일 명들을 셀 타입으로 넣으면 됩니다. zip('backup.zip',{'*.m','*.mat'}); OR zip('backup.zip',{'abc.m','aaa.mat'}); 그런데 파일이 현재 폴더에 있다면 위와 같은 방식으로 하면 되는데~ 저 같은 경우에는 파일이 여러 군데로 분산되어 .. 2015. 10. 20.
MATLAB Symbolic Math Toolbox C code generation MATLAB Symbolic Math Toolbox 를 사용하여 수식을 계산 한 경우 이 수식은 다양한 형태로 표현 가능 합니다. 아래에서 소개했던 latex() 함수를 사용하여 latex 형태로 만들 수도 있고~ http://iamaman.tistory.com/201 pretty() 함수를 사용하여 좀더 보기 좋은 형태로 표현 할 수 도 있습니다. http://iamaman.tistory.com/172 이런 다양한 경우 중 오늘은 C code 의 형태로 표현하는 방법에 대해 소개 하려 합니다. http://kr.mathworks.com/help/symbolic/ccode.html;jsessionid=b2c0465dae2d536f7538bfbdb5c3?refresh=true 위 주소에 있는 바와 같이 c.. 2015. 10. 16.
MATLAB Convolution index 계산 신호 처리에서 convolution은 필터링의 기본이 되는 만큼 매우 자주 사용하게 되는데요~ 아래 글에서는 MATLAB conv() 함수를 사용하는 게 아닌 for 문을 사용해서 Convolution 을 수행하는 방법에 대해 소개한 적이 있고~ http://iamaman.tistory.com/317 아래 글에서는 FFT 를 활용하여 convolution 을 하는 방법에 대해 소개한 적이 있습니다. http://iamaman.tistory.com/131 오늘은 convolution 수행 시 인덱스를 계산하는 방법에 대해 소개하려 합니다. 보통 conv() 함수는 convolution을 수행한 결과만 나오게 됩니다. 그런데 신호 및 시스템이나 DSP 등의 과목에서 convolution을 배울 때는 인덱스도.. 2015. 10. 16.
MATLAB strjoin 함수를 사용한 string 붙이기 파이썬을 사용하다 보면 string 처리가 굉장히 편하다는 생각이 많이 했습니다. 배열의 각 인자들로 구성된 string 들을 하나로 합치거나 특정 delimiter 로 나누는 등의 일들이 너무나 간단하게 처리 되어서 좋다는 생각이 많이 했습니다. 오늘은 MATLAB 에서 string 을 붙이는 방법에 대해 알아보려 합니다. MATLAB 에서는 다음과 같은 경우 그냥 그냉 배열로 구성 하면 string 을 붙일 수 있습니다. a='abc' b='def' c=[a b] 다음과 같이 c 값은 a, b 값이 붙어서 나옵니다. c = abcdef 하지만 중간에 delimiter 를 넣고 싶은 경우에는 얘기가 좀 달라잡니다. 중간에 쉼표를 넣고 싶다면 다음과 같이 쉼표를 넣어 줘야 겠죠~ c=[a ', ' b] .. 2015. 10. 12.
MathJax 를 활용한 MATLAB 수식 입력 MATLAB Symbolic Math Toolbox 를 사용하는 경우 아래 포스팅에서 소개한 바와 같이 latex() 함수를 통해 latex 코드가 생성 됩니다. http://iamaman.tistory.com/172 http://iamaman.tistory.com/201 워드 등에서는 mathtype 를 활용 하면 latex 으로 나온 수식을 삽입 할 수가 있습니다. 그런데 블로그와 같은 웹에서 수식을 표현하고 싶은 경우에는 mathtype 을 사용 할 수는 없죠~ 물론 그림으로 만들어서 넣는 방법도 있지만 그리 편리한 방법은 아닌 것 같습니다. 위 포스팅에서 소개했던 아래 코드를 실행해보면~ syms a b c d x f=a*x^2+b*x+c S=solve(f,x) latex(S) 2차 방정식에 대한.. 2015. 10. 8.
MATLAB 에서 MinGW-w64 Compiler 사용하기 보통 윈도우 환경에서 MATLAB 에서 컴파일러 사용시 Microsoft windows SDK 를 주로 사용하곤 하는데~ 아래 글을 보니 윈도우 환경에서 아래 글에서 소개드렸던 MinGW 를 사용 할 수도 있더군요. http://kr.mathworks.com/help/matlab/matlab_external/install-mingw-support-package.html 일단 MinGW 를 설치해야는데~ 위 주소에 있는 바와 같이 홈 화면에 있는 Add-Ons을 통해 설치 할 수 있습니다. 아래 그림과 같이 MinGW 를 선택해서 Add 를 누르면 설치가 되더군요. 설치시 주의 할 점은 아래 그림과 같이 아래 그림과 같이 체크를 해제 해야 한다는 겁니다. 다음으로 MinGW 설치 폴더의 경로에는 스페이스가.. 2015. 10. 7.
MATLAB 다차원 Newton’s Method 오늘은 아래 포스팅의 Newton's Method 에 대한 연장으로 다차원 Newton's Method 에 대해 소개해 보려 합니다.http://iamaman.tistory.com/156 일단 오늘 포스팅에서 참조한 코드는 아래 주소와 같습니다. http://people.whitman.edu/~hundledr/courses/M467/MultiNewton.pdf 다음과 같은 수식에 대해 Newton's Method 를 사용하여 해를 구해 보도록 하죠~ 일단 MATLAB 의 solve() 를 사용하여 해를 구해 보면 ~format long syms x1 x2 real S = x1^2+x2^2-x1==0;S1 = x1^2-x2^2-x2==0; [x1,x2]=solve(S,S1); x1=double(x1)x2=.. 2015. 9. 30.
MATLAB 64 QAM BER Simulation 이전에 아래 포스팅에서 QAM constellation 에 대해 소개를 드렸었고~~ http://iamaman.tistory.com/205 아래 포스팅에서 16 QAM BER 시뮬레이션에 대해 소개한적이 있는데~ http://iamaman.tistory.com/120 간만에 64 QAM BER 시뮬레이션에 대해 소개 드리려 합니다. 생각도 안하고 있었던 내용인데 홍팡이라는 분이 부탁을 해서 하드를 뒤져 보니 있긴 있더군요. 이전에는 그냥 MATLAB Communications System Toolbox 의 이론적 BER 함수들을 사용했었는데 ~ 오늘은 아래 주소에 있던 이론적 BER(Bit Error Rate) 수식을 사용했습니다. http://www.raymaps.com/index.php/ber-64-.. 2015. 8. 4.
MATLAB dbtype 을 사용한 파일 내용과 라인 넘버 확인 리눅스 쉘을 자주 사용하시는 분들은 쉘에서 파일의 내용을 보기 위해 cat 과 같은 명령어를 주로 사용 하실 겁니다. MATLAB 에서 파일을 열대는 open() 이라는 명령을 사용하거나 파일을 더블 클릭해서 파일을 여는데~ 그냥 간단하게 command window 에서 파일의 내용을 확인 하고 싶을 때는 type 이라는 명령어를 사용합니다. 아래는 type 의 사용 예입니다. type f_func.m 라는 명령어를 통해 f_func.m 파일의 내용을 명령 창에서 확인 하는 겁니다. 그런데 가끔은 파일의 내용과 라인 넘버를 같이 보고 싶은 경우가 있습니다. 이러한 경우 MATLAB 에서는 dbtype 이라는 명령어를 사용 합니다. 다음과 같이 dbtype f_func.m 이라고 명령 하면 f_func.m.. 2015. 7. 21.
MATLAB Python 실행 MATLAB 을 사용하면서 이전에 Perl 을 실행 시킬 수 있다는 포스팅을 한 적이 있습니다. http://iamaman.tistory.com/170 그런데 요즘은 Perl 보다도 많은 사람들이 Python 을 많이 사용하는 것 같은데 왜 MATLAB 에서 파이썬이 실행이 안될까 궁금하더군요. MATLAB 최신 버전을 찾아보니 역시나 MATLAB 에서 Python 역시도 실행이 되더군요. 저는 현재 Anaconda를 설치해서 사용 중이며 python 3.4 버전을 설치해서 사용 중입니다. Default setting 으로 Anaconda 를 설치하면 C:\Anaconda3\python.exe 에 설치가 됩니다. MATLAB command window 에서 pyversion 이라는 명령을 사용하면 현재 .. 2015. 7. 20.
MATLAB stateflow 현재 차트의 data 다 찾기 MATLAB 의 Stateflow 는 Stateflow API 를 활용하여 m 파일 명령어로 구성 및 조정이 가능 합니다. 때에 따라서는 일일이 사람이 Stateflow 를 그리는것 보다는 Stateflow API 를 활용하는것이 효율 적인 경우가 많이 있습니다. Stateflow API 를 활용하면 Python 과 같은 스크립트 언어등을 활용하여 Stateflow 를 그리는 Code generation 등도 가능 합니다. 오늘은 Stateflow 에서 사용중인 Data 를 다 찾는 방법에 대해 알아보려 합니다. Stateflow 에서 Data 를 다루기 위해서는 Stateflow.Data Object 를 다 찾으면 됩니다. Stateflow 에서 data 를 다 찾는 스크립트는 다음과 같습니다. 위 코.. 2015. 7. 16.
MATLAB 으로 음계 재생 오늘은 MATLAB 을 사용하여 계이름을 재생하는 방법에 대해 알아보려 합니다. 일단 음계에 대한 특징을 알아야 하는데요. 음성은 주파수에 따라 음계가 달라지고~ 음성의 크기는 신호의 크기에 영향을 받습니다. 즉 위상에 따른 음성의 차이가 없다는 거죠. 우리가 알고 있는 도레미파솔라시도~~ 는 다음과 같은 주파수를 갖습니다. 도레미파솔라시도260 Hz294 Hz330 Hz349 Hz392 Hz440 Hz495 Hz524 Hz 이제 간단하게 MATLAB 을 사용하여 위 사실이 맞는지 테스트 해보죠. 테스트를 위한 코드는 다음과 같습니다. Sample rate 는 CD 음질인 44.1 k 로 했고 주파수, 위상, 크기 에 따른 시뮬레이션을 해 보시길 바랍니다. 위 코드에서 A 라는 변수가 Amplitude .. 2015. 6. 15.
LMS Test Using Simulink 아래 포스팅에서 간단하게 LMS 알고리즘에 대해 소개한 적이 있습니다. http://iamaman.tistory.com/221 오늘은 하드를 뒤지다 보니 예전에 한 LMS 테스트 자료가 있어서 공개하려 합니다. 이번에는 Simulink 를 사용한 자료이며 보시면 아시겠지만 역시 LMS 는 참 간단하면서도 효율적인 알고리즘이라는 생각이 드네요. FIR 필터 identification 을 수행했으며 필터 탭은 [0.5 2 1 0.3 0.1 0.05 0 0 0 ] 로 설정했습니다. 위 필터를 identification 하기 위해 LMS 필터 탭은 13 탭을 사용했고 Gain은 보시다시피 0.04 로 줬습니다. 잡음이 안 들어갔으니 뭐…. 잘 될 수 밖에 없죠~ 수식이나 코드로 보는 것 보다는 훨씬 쉽게 이해 .. 2015. 6. 14.
무료 클라우드 MATLAB, freematlab 요즘 MATLAB 많이들 사용하시나요? 산업계뿐만 아니라 학교에서도 이 비싼 MATLAB 을 가르치니 학생들도 MATLAB 을 많이들 사용하는 것 같네요. 아래 tiobe 사이트에서도 비싼 툴임에도 불구하고 MATLAB 이 14위에 랭크 되어 있는 걸 보면 MATLAB 이 요즘 잘 나가고 있다는 건 확실 한 듯 하네요. 그래서 일까~ 아래 포스팅에도 소개 했지만 MATLAB 과 유사한 오픈 소스 프로그램들도 굉장히 많이 있습니다. 사실 스크립트만 활용한다면 MATLAB 을 굳이 살 필요는 없다는 생각이 드네요. http://iamaman.tistory.com/639 http://iamaman.tistory.com/1427 그런데 요즘은 MBD(Model Based Design) 과 같은 이슈들로 Simu.. 2015. 6. 7.
MATLAB Code를 사용하여 Simulink model 구성하기 Simulink 사용시 보통 마우스를 사용하여 모델을 구성하곤 합니다. 하지만 이런 GUI 방식은 자동화를 위해서는 그리 좋은 방법은 아닙니다. 대량의 시스템 구성시 GUI 을 사용한 구성방식은 한없는 노가다일 수 있습니다. 단순 반복적인 작업들은 당연히 자동화를 해야 하고 이를 위해서는 Script 가 필수라고 할 수 있죠. simulink 를 구성하기 위한 MATLAB 명령어들로는 add_block, add_line, new_system, open_system, delete_line, delete_block, replace_block, set_param 와 같은 명령어들이 있습니다. new_system() 을 사용하여 Simulink 블록을 구성하고 open_system 명령어를 사용하여 해당 파일을.. 2015. 3. 29.
MATLAB Command History 표시 방법 MATLAB Command Window 를 사용하다보면 이전 명령들을 다시 실행하고 싶은 경우가 많은데요. 이런 경우에는 Command Window 에서 위 아래 화살표를 눌러서 이전 또는 다음 명령어를 실행 시키곤 하는데~ Command Window 에서 실행했던 명령어들은 보통 Command History 에 저장이 되므로 command history 에서 해당 명령어를 더블 클릭해서 재실행 할 수 있습니다. 그런데 최근에 MATLAB 을 사용하다 보니 Default Layout 에서 Command History 가 안 나오더군요. 그래서 명령어를 찾아보니 아래 그림과 같이 Command Window 에서 commandhistory 라는 명령어를 타이핑 하면 Command History 가 나오게 됩.. 2015. 1. 11.
MATLAB dirac delta 함수 신호처리 등을 배우다 보면 많이 접하는 함수가 바로 dirac delta 함수다 아래 주소에 dirac delta 함수에 대해 장황하게 소개 하고 있으니 dirac delta함수에 대해 모르시는 분들은 참조하시길~ http://ko.wikipedia.org/wiki/%EB%94%94%EB%9E%99_%EB%8D%B8%ED%83%80_%ED%95%A8%EC%88%98 dirac delta 함수는 그 값이 0 일때 무한대의 값을 갖고 그렇지 않은 경우에는 0 을 갖는 매우 단순한 함수이다. MATLAB 에서는 Symbolic Math Toolbox 가 설치되어 있다면 direc()함수를 사용할 수 있다. Symbolic Math Toolbox 가 설치되어 있지 않다면 매우 간단한 함수이므로 다음과 같이 만들.. 2014. 9. 21.
MATLAB OOP(Object-Oriented Programming) Filter Class 아래 글에도 답변을 달았지만 MATLAB 에서도 linked list 를 구성 할 수 있습니다. http://kin.naver.com/qna/detail.nhn?d1id=1&dirId=104&docId=194575538&page=1#answer1 위 글에서 소개한 바와 같이 MATLAB 에서 linked list 를 구성하고자 하는 경우 classdef 을 사용했는데요~ 오늘은 간단하게 Filter Class 를 하나 만들어보죠. Filter 함수는 아래 주소에서 소개하듯이 1차원 디지털 필터입니다. http://www.mathworks.co.kr/kr/help/matlab/ref/filter.html MATLAB filter() 함수에 대해서는 아래 포스팅에서도 소개한 바가 있습니다. 2013/09/2.. 2014. 7. 9.
MATLAB 16QAM AWGN & Flat Fading Diversity Simulation 오늘 포스팅에서는 16QAM AWGN & Flat Fading Diversity Simulation 에 대해 소개 드리려 합니다. 아래 포스팅에서 16 QAM BER Simulation 에 대해 소개 드린적이 있는데요~ 2011/04/09 - [통신] - [디지털 통신] QAM mapping & demapping 2014/04/04 - [programming language/MATLAB] - MATLAB 16 QAM BER Simulation 오늘 시뮬레이션에서는 Flat Fading 환경과 안테나 개수에 따른 다이버시티 효과에 대해 시뮬레이션을 해 봤습니다. 코드는 아래 주소의 제 Github repository 에 저장을 해 놨으니 궁금 하신 분들은 다운로드 받아서 시뮬레이션 해보시길~ https:/.. 2014. 7. 5.
MATLAB Combination 구하기 nchoosek 아래 포스팅에서 국내 로또와 미국 로또의 경우의 수를 구한 파일을 올린 적이 있는데요~ 2014/05/16 - [로또] - 미국 로또 메가 밀리언 모든 경우의 수 2011/03/02 - [로또] - 로또 복권의 모든 경우의 수 우리 나라 로또의 경우의 수는 45C6 (45 Combination 6)이죠~ Combination에 대한 정의는 아래 위키피디아에 설명이 자세히 나와 있습니다. http://ko.wikipedia.org/wiki/%EC%A1%B0%ED%95%A9 MATLAB 에서는 이런 조합의 경우의 수를 매우 쉽게 구할 수 있습니다. 이런 조합의 경우의 수를 구하는 함수는 nchoosek() 라는 함수 입니다. 간단하게 로또로 예를 들어보면~ 45 개의 숫자중에 6개를 뽑는 경우의 수니까~ M.. 2014. 6. 19.
MATLAB Figure 창 그림으로 저장 하기 saveas MATLAB 에서 Figure 창에 대해 그림 파일로 저장 할 때는 Figure 의 File → Save As 에 들어가서~~ 아래 그림과 같이 다양한 포맷으로 그림 파일을 저장 할 수 있습니다. 몇 개 안 되는 Figure 창에 대해 그림 파일로 저장할 때는 아래 그림과 같이 수동으로 하겠지만 다수의 Figure 창에 대해 그림으로 저장할 때는 아무래도 명령어를 사용하는 게 편리 합니다. MATLAB 에서 Figure 창을 그림으로 저장 할 때는 saveas 라는 명령어를 사용합니다. http://www.mathworks.co.kr/kr/help/matlab/ref/saveas.html 위 주소의 설명에 나와 있듯이 saveas 를 이용하면 다음 확장자의 그림 파일로 저장 할 수 있습니다. ai, bm.. 2014. 6. 18.