본문 바로가기

programming language/MATLAB215

MATLAB 기하 분포(geometric distribution) 랜덤 변수 생성 아래 포스팅에서 포아송 분포에 대해서 CDF(Cumulative Distribution Function) 를 사용하여 랜덤 변수를 생성하는 방법에 대해서 소개를 했었습니다. https://iamaman.tistory.com/206 오늘은 어떤 분이 기하분포는 어떻게 생성을 하는지 문의를 하셔서 기하분포 CDF(Cumulative Distribution Function) 를 사용하여 랜덤변수를 생성하는 방법에 대해서 소개해 보려고 합니다. 기하분포의 정의에 대해서는 아래 주소를 참조하시기 바랍니다. https://en.wikipedia.org/wiki/Geometric_distribution 기하분포는 첫 번째 성공까지의 시도 횟수를 모델링 할때는 아래와 같이 정의됩니다. k 는 1 부터 시작하는 것을 확.. 2020. 4. 12.
MATLAB 입사 반사파 그리기 애니메이션 animatedline, drawnow 아주 예전에 아래 포스팅에서 MATLAB 에서 movie, getframe 등을 사용하여 움직이는 그래프를 그리는 방법에 대해서 소개를 한 적이 있습니다. https://iamaman.tistory.com/27 그런데 최근에 입사파 반사파 그리는 방법에 대해서 질문이 있어서 애니메이션 그래프를 그리는 방법에 대해서 다시 한번 찾아 보게 되었습니다. 위 포스팅이 2010년도에 쓴 글이라… 매트랩 몇 버전인지 기억도 안 하네요. 찾아보니 최근에는 animatedline 을 사용해서 그릴수 있는 것 같더군요. h = animatedline; 라고 하는 애니메이션 선 핸들을 하나 만들어 주고~ addpoints() 함수를 사용하여 점들을 추가 해 주거나 clearpoints() 함수를 사용하여 해당 핸들의 점들.. 2019. 10. 22.
MATLAB cell 중복 제거 및 중복 내용 확인하기 저는 MATLAB을 비롯하여 다양한 컴퓨터 언어들을 사용하는 것을 좋아하는데 ~ 최근에는 회사에서 실험 데이터를 다루는 과정에서 파이썬을 많이 사용하고 있고 그 중에서 많은 분들이 아실 만한 pandas 라이브러리를 사용하고 있습니다 . 파이썬은 공짜이기도 하지만 pandas 를 비롯한 정말 좋은 라이브러리들이 많아서 앞으로도 꾸준히 사용하게 될 것 같습니다. 실험 데이터들은 많은 경우 엑셀이나 csv 파일 형태로 저장을 하게 되는데, MATLAB에서 xlsread, csvread 와 같은 함수를 통해 이런 데이터들을 불러오게 되고 MATLAB cell 타입에 대해서 다루어야 되는 경우가 종종 있습니다. 셀 타입으로 된 데이터 중 중복되는 내용을 제거하거나~ 유일한 데이터만 추려해야 되는 경우가 종종 발.. 2019. 10. 13.
MATLAB 주기함수 만드는 방법 사인 코사인을 비롯해서 많은 주기 함수들이 있고 가끔씩은 MATLAB 을 사용하여 사용자 지정 주기 함수를 만들어야 되는 경우도 있습니다. 이러한 경우 주기를 만들기 위해서 MATLAB 함수중 나머지를 계산하는 mod(), rem() 과 같은 함수를 사용하게 되는데~ 둘 다 나머지를 계산하는 함수이지만 음수에 있어서 약간 계산이 다르게 됩니다. 다음 예를 보면 차이점을 정확히 알 수 있는데~ mod() 함수는 modulo 연산을 하기 때문에 음수 부분에서도 주기적으로 나오는 반면에 rem() 함수는 플러스 방향끼리 그리고 마이너스 방향 끼리만 주기적인 것을 확인할 수 있습니다. f = @(t) mod(t, 4);figurefplot(f, [-10 10])title('mod')figuref2 = @(t) .. 2019. 10. 10.
MATLAB brush 데이터 가져오기 최근에 매트랩 브러시 기능을 자주 사용하고 있습니다. 그래프를 그리고 유효한 데이터를 선택하기 위해서 아래 포스팅에서 소개를 했었던 브러시, 데이터 커서 기능을 굉장히 많이 사용하고 있고 브러시 된 데이터들을 변수를 저장하여 MATLAB 워크스페이스에서 가공을 하고 유효한 데이터들을 얻는 작업들을 수행하곤 합니다. https://iamaman.tistory.com/2830 위 포스팅에서 브러쉬 된 데이터들을 “변수 만들기” 를 통해서 변수로 저장할 수 있다는 것을 소개한 적이 있었는데~ MATLAB 에서는 조금 더 다양한 방법으로 brush 된 데이터들에 접근할 수 있었습니다. 일단 아래와 같이 그래프를 하나 그리고~ brush on 을 해 줍니다~ x=1:10 p = plot(x) brush on Fi.. 2019. 6. 7.
MATLAB 그래프 사이 공간 색칠하기 fill, patch, area MATLAB 을 사용하여 알고리즘을 개발하고 분석하면서 MATLAB 의 다양한 그래프 기능을 사용하실 것이라고 생각합니다. 10 년도 전에 MATLAB 을 학부 시절에 접하고, MATLAB 의 그래프 기능들이 정말 유용하다는 생각을 했던 기억이 있습니다. 오늘은 MATLAB 을 사용하여 그래프의 영역을 나타내는 방법에 대해서 조금 소개를 하려 합니다. 예를 들어 아래 두 그래프로 둘러싸인 영역을 표시하고 싶을 때 MATLAB으로 어떻게 표현해야 되는지에 대해서 소개를 하려 합니다. y = x+3 y = 2*x-6 위 두개의 그래프로 둘러싸인 영역을 표시하는 간단한 코드는 아래와 같습니다. 아래 코드에서 설명할 부분은 x_, y_ 를 설정하는 부분과 fill() 이라는 함수에 대한 부분이 될 거 같은데~ .. 2019. 4. 30.
MATLAB 그래프 내에 그래프 넣기 이 포스팅을 보시는 분들이라면 다들 아시겠지만 MATLAB 의 그래픽 표현 능력은 정말 뛰어난 편입니다. 신호 처리를 비롯해서 많은 분야에서 그래프를 사용하고 있고~ 그런 의미에서 MATLAB 은 정말 큰 장점이 있는 툴 인 것 같습니다. MATLAB 에서 하나의 Figure 창에 다양한 그래프를 나타내기 위해서 아래 포스팅에서 소개했던~ subplot 과 같은 함수를 사용하곤 하는데~ https://iamaman.tistory.com/101 오늘은 axis 를 사용하여 그래프 안에 조그맣게 또 다른 그래프를 그리는 방법에 대해서 소개를 하려 합니다. 샘플 코드는 아래와 같습니다. 그래프 안에 조그만 또 다른 그래프를 그리기 위해서~ axes() 함수를 사용하여 작은 그래프가 들어갈 위치를 잡아주고~ 바.. 2019. 4. 13.
MATLAB 스트럭처 정렬 방법 MATLAB 을 사용하다 보면 struct 타입을 종종 사용하곤 합니다. 그리고 struct 타입을 모아서 배열로도 사용하곤 하는데 MATLAB 기본 함수중에 struct 타입 배열을 정렬하는 기능의 함수는 없는것 같더군요. 그냥 만들어 사용해도 되겠지만 검색을 조금 해보니 비슷한 코드를 발견했고 해당 코드를 정리해서 아래와 같은 함수로 만들었습니다. 이제 함수를 만들었으니 한번 사용해 보죠. a = struct('id',1, 'data', [1:10])b = struct('id',2, 'data', [2:11])beforeVec= [b a]; % 두 struct 를 사용하여 배열로 만듬sortedVec = struct_sort_by_field(beforeVec,1,1); % 첫번째 field 의 첫번째.. 2019. 3. 27.
MATLAB 브러시, 데이터 커서 기능을 사용하여 데이터 가공하기 많은 분들이 MATLAB을 사용하여 데이터 처리를 할 것이라고 생각을 합니다. 사실 MATLAB을 사용할 수 있는 분야는 너무나 무궁무진해서 저도 다 알지는 못 하고 저는 회사에서 신호 처리를 하고 있는데 데이터를 가공하기 위해서 MATLAB 을 주로 사용하는 편입니다. 아래 포스팅에서 소개를 했었지만 매트랩 그래프를 보면서 데이터를 선택하고 값을 읽고 텍스트를 입력하거나 다양한 효과를 줄 수가 있습니다. https://iamaman.tistory.com/204 오늘은 그 중에서 데이터 커서를 사용하여 그래프에서 값을 읽거나 브러시 기능을 사용하여 많은 데이터들을 선택하는 방법에 대해서 살펴보려 합니다. 다음과 같은 코드를 준비하고 그래프를 하나 드려 보겠습니다. x=[ones(1,100)*2 ones(.. 2019. 3. 4.
MATLAB 필터 pass band 게인 normalization 방법 MATLAB 을 사용하여 신호 처리를 하다 보면 필터를 설계하는 경우가 있고 필터의 게인을 조절해야 되는 경우가 있습니다. 보통 디지털 필터 설계를 할 때는 pass band 의 게인을 1 (0 dB) 로 맞춰 주게 되는데 오늘은 이 방법에 대해서 소개를 하려 합니다. MATLAB 을 사용하여 필터 설계하고 코드를 생성하거나 모델을 만들때는 fdatool (Filter Design & Analysis Tool) 을 주로 사용하게 되고 필터를 확인하고 싶을때는 fvtool(Filter Visualization Tool) 을 주로 사용합니다. FIR 필터 계수가 CoeffV 인 경우 MATLAB 명령창에 fvtool(CoeffV,1) 라고 명령하면 아래와 같은 Filter Visualization Tool .. 2019. 2. 1.
MATLAB 을 사용하여 원의 방정식에 대해 Gradient Descent 방법 적용 실험 아래 포스팅에 가우스-뉴턴 방법을 사용하여 원의 방정식의 파라미터들을 찾는 실험을 수행한 적이 있었습니다. https://iamaman.tistory.com/2759 가우스-뉴턴 방법을 적용한 결과 수렴이 되긴 하지만 초기값 설정에 따라 발산하는 경우가 너무나 많은 걸 확인 할 수 있었습니다. 그래서 이번에는 같은 문제에 대해 Gradient Descent 방법을 적용해 보았습니다. Gradient Descent 방법 적용을 위한 수식은 위 주소의 포스팅과 아래 포스팅을 참조하시기 바라고 원의 방정식에 대한 MATLAB 코드 역시 마찮가지로 위 주소의 포스팅을 참조하시기 바랍니다. https://iamaman.tistory.com/2760?category=422993 원의 방정식에 대해 Gradient .. 2019. 1. 31.
병렬 저항 계산 MATLAB 코드 예전에 학부생 때는 회로이론 과목을 굉장히 좋아했던 기억이 있는데 오랜만에 저항을 보니 적응이 잘 안되더군요. 역시나 간단한 것이라고 해도 배운 것들은 그때그때 기록을 해놓는게 좋은것 같습니다.오늘 기록하려고 하는 내용은 병렬저항 계산 공식인데 아시는 바와 같이 저항은 직렬 연결 됐을 경우에는 그냥 더하면 되고 병렬로 연결된 경우 아래와 같이 계산이 됩니다.R1, R2 병렬 연결R1, R2, R3 병렬 연결R1, R2, R3, R4 병렬 연결R1, R2, R3, R4, R5 병렬 연결MATLAB 에서 병렬 저항을 조금더 편리하게 계산하기 위해 병렬 저항을 계산하는 MATLAB 코드를 작성했고 아래와 같습니다. 임의의 숫자의 아규먼트에 대해서 처리하기 위하여 아래의 포스팅에서 소개를 했던 varargin .. 2019. 1. 6.
MATLAB 을 사용하여 원의 방정식에 대해 가우스-뉴턴 방법 적용 실험 최근에 개인적인 필요에 의해 nonlinear regression 을 접하고 있는데 아래 포스팅을 보면서 개념을 잡아가고 있습니다. http://darkpgmr.tistory.com/58 nonlinear regression 알고리즘 중 유명한 것이 Levenberg-Marquardt 라고 하는데 Levenberg-Marquardt 알고리즘은 gradient descent 와 Gauss–Newton 방법이 합쳐진 형태라고 하더군요. 그래서 일단 gradient descent 는 아니까 Gauss–Newton 방법이 무엇인지에 대해 공부를 하기 위해 검색을 하던 중 위 블로그를 발견하게 되었고 백문이 불여일타라고 일단 코딩해 봐야 이해가 되니까 위 포스팅에서 맨 아래 있던 예제를 MATLAB 으로 돌려 봤.. 2019. 1. 3.
MATLAB si-prefix string 표현 MATLAB 의 format 명령을 사용하면 명령 창의 출력 표시 형식을 rat, hex, short, long 등으로 변경할 수 있습니다. 공학을 하다보면 숫자를 표현할때 단위에 따라 kilo, giga, mega 등과 같은 단위를 사용하곤 하고 이런 형식으로 바꾸기 위한 방법을 찾아보니 아래 주소에서 괜찮은 코드를 발견해서 소개합니다. https://kr.mathworks.com/matlabcentral/fileexchange/53886-scientific-prefix-to-number 위 주소에서 다운로드 버튼을 누르면 num2sci.zip 파일을 다운로드 할 수 있고~ num2sci.zip 파일을 압축 해제 한 후에 해당 폴더를 path 에 추가하면 MATLAB 의 아무 디렉토리에서나 사용할 수 .. 2018. 12. 29.
Simulink shift register generation function Simulink 를 사용하면서 shift register 가 필요한 경우가 종종 있는데 개인적으로는 unit delay 를 사용하여 shift register 를 구성하곤 합니다. 그런데 shift register 의 사이즈가 얼마 안된다면 그냥 노가다로도 만들수 있지만 그 사이즈가 커 진다면 이렇게 일일이 만들어서 사용하는것이 힘들더군요. 그래서 오늘은 unit delay 를 사용한 shift register 를 자동으로 만들어주는 스크립트를 소개하려 합니다. shiftRegisterGeneration 함수를 만들었고 코드는 아래와 같습니다. 아래 명령어는 shiftRegisterGeneration 함수를 사용하여 15 사이즈의 shift register 를 만드는 명령어 입니다. MATLAB Comm.. 2018. 12. 23.
MATLAB Simulink configuration 스크립트 사용방법 MATLAB 은 일종의 소프트웨어 플랫폼이라고 볼 수가 있어서 매트랩 툴박스들은 MATLAB 위에서만 실행됩니다. 따라서 시뮬링크를 사용한다라고 해도 매트랩을 잘 다루어야 시뮬링크를 조금 더 효율적으로 사용할 수 있습니다. 요즘 저는 많은 차량용 로직들을 Simulink Stateflow 로 설계하고 Embedded Coder 를 사용하여 C 코드를 생성해서 개발 보드에 탑재하는 업무를 하고 있습니다. Simulink 를 사용하기 위해서는 샘플레이트를 비롯하여 다양한 configuration 을 하게 되고~ Embedded Coder 를 사용할 때 역시도 마찬가지로 설정 할 것들이 많이 있습니다. 이런 설정들은 그때그때 달라지기도 하지만 사용하는 MCU 가 동일하다면 그리 크게 달라지지는 않습니다. 따라.. 2018. 12. 22.
MATLAB DC 제거 디지털 필터 신호 처리 업무를 하면서 가끔씩은 디지털 필터가 필요한 경우가 있습니다. 저도 최근에 DC 성분을 제거하는 DC 제거 필터가 필요해서 검색을 해보니 아래 주소에서 굉장히 좋은 글을 발견할 수 있었습니다. DC 제거 필터 관련 읽어볼만한 글 https://www.embedded.com/design/configurable-systems/4007653/DSP-Tricks-DC-Removal 위 링크의 글에서 확인할 수 있는 바와 같이 가장 기본적인 DC 제거 필터의 시간 도메인 수식은 아래와 같습니다. DC 제거 필터 수식 x[n] - x[n-1] = y[n] – a* y[n-1], a < 0 2018. 12. 19.
Simulink subsystem의 종류와 공부 방법 Simulink 를 사용하다보면 다양한 subsystem 을 사용하게 되고 이에 대해 공부하고 싶다면 메뉴얼 또는 demo 파일들을 확인하는 것이 좋습니다. 이를 위해 MATLAB 에는 명령어를 제공해 주는데 MATLAB command line 에 sl_subsys_semantics 이라고 명령하면 아래와 같은 Subsystem Semantics Simulink 창을 확인 할 수 있습니다. Simulink Library Browser 에서 subsystem 으로 검색을 해서 "Subsystem Examples" 라고 되어 있는 라이브러리를 확인해도 됩니다. Simulink 에는 아래와 같이 9 개의 subsystem 이 있는 것을 확인 할 수 있고 내역은 아래와 같습니다. lf and switch-cas.. 2018. 12. 18.
MATLAB Simulink 시작하기 요즘 자동차 분야에서 제어기를 설계할때 MATLAB 의 Simulink 제품을 많이들 사용합니다. 제어기 사양서는 state machine 으로 구성되기 때문에 주로 Stateflow 를 사용하여 설계되고 Embedded Coder 등을 사용하면 시뮬레이션 후에 코드 생성까지 되기 때문에 기존에 시뮬레이션 후 C 코드를 다시 작성하고 하는 번거로움을 줄일 수 있습니다. 저도 회사에서 과제를 하면서 MATLAB 으로 알고리즘 시뮬레이션을 하고 Embedded Coder 를 사용하여 C 코드를 생성해서 사용한 경험이 있고~ 나름 신뢰할만한 코드가 나와서 편리하다는 생각을 많이 합니다. 그래서 일단 오늘은 Simulink 를 시작하는 방법에 대해 소개하려 합니다. 1. Simulink 실행 Simulink 를.. 2018. 11. 16.
MATLAB recursive 경로 문자열 생성 genpath MATLAB 에 경로를 추가하기 위해서는 주로 addpath 함수를 사용하거나 아니면 pathtool 을 사용합니다. pathtool 에서 아래 그림과 같이 하위폴더와 함께 추가하기를 통해 특정 폴더와 그 하위 폴더 모두를 path 로 추가 할 수 있습니다. 그런데 pathtool 이 아닌 명령어를 통해 하위 폴더와 함께 추가하기를 하는 방법도 있습니다. 이런 경우에는 addpath 라는 명령어를 사용하는데 addpath() 함수의 사용방법은 그냥 아래와 같이 해 주시면 되서 사실 설명할게 없습니다. addpath(‘폴더 경로’) 하위 폴더와 함께 추가하기를 하기 위해서는 당연히 하위 경로를 알아야 하고 ~ 특정 폴더에 대한 하위 폴더를 알기 위해서는 genpath 라는 명령어를 사용 할 수 있습니다. .. 2018. 10. 15.
MATLAB Simscape 로 간단하게 회로 구성해보기 회사에서 MATLAB 을 사용하는데 ver 명령어를 통해 어떤 툴박스가 설치되어 있는지 확인해 보니~ Simscape 툴박스가 설치되어 있더군요. Simscape 와 함께 Simscape Electronics, Simscape Power Systems 도 함께 깔려 있던데 저는 정확히 어떤 차이인지는 잘 모르겠더군요. 어쨌든 학부때 회로이론, 전자회로와 같은 과목을 좋아했던 지라 기왕 깔려 있는거 Simscape 를 한번 사용해 보고 싶다는 생각이 들어서 아래 메뉴얼을 조금 들여다 보고 Simscape 블록으로 아주 간단한 RC 회로를 구성해 봤습니다. https://kr.mathworks.com/help/physmod/simscape/gs/essential-steps-for-constructing-a-.. 2018. 10. 10.
MATLAB Editor Publish 할때 주의 할 점 MATLAB 에디터에서 코드를 작성하고 해당 코드에 대해서 문서를 생성할때 MATLAB 에디터의 퍼블리시 기능을 사용하곤 합니다. MATLAB 퍼블리시에서는 코드에 대해서 html, xml, latex, doc, ppt, pdf 등으로 문서를 생성해 줍니다. 퍼블리시 창에서 작업 폴더나 몇몇 옵션 등을 변경해 줄 수 있지만 사용 방법은 그냥 버튼 하나만 누르면 되기 때문에 뭐 그리 설명할게 없을 것 같습니다. MATLAB Command Window 에서 문서를 생성하기 위해서는 아래와 같이 publish 명령어를 사용하면 됩니다. 첫 번째 인자로 파일명을 넣어 주고 두 번째 인자로 생성 하고자 하는 문서의 형태를 넣어주면 됩니다. publish(‘publishTest.m’, ’doc’); 그런데 이렇게 .. 2018. 10. 5.
MATLAB 에서 C/C++ 컴파일러 TDM-GCC 설치 예전에는 Visual Studio Express 를 설치해서 MATLAB 에 필요한 C/C++ 컴파일러를 설치 했었지만 최근에는 Mingw 를 설치하면 되더군요. 아래 주소에서 Add-On 을 통해 MinGW-w64 Compiler 설치하는 방법을 소개 했었는데~ http://iamaman.tistory.com/1664 현재 회사 컴퓨터의 MATLAB 라이센스 Software Maintenance 가 유지되고 있지 않아서 Add-On 에서 TDM-GCC 설치를 할수 없게 막아 놨더군요. 아래 주소에서 TDM-GCC 를 설치했고 path 환경변수도 분명 등록을 했는데 MATLAB 에서 mex -setup 이 안 먹어서 어케 하나 하다가~ http://tdm-gcc.tdragon.net/download 아래.. 2018. 9. 12.
MATLAB 공부 자료 많은 공학도 분들이 MATLAB 의 사용법에 대해서 공부하실 거라고 생각합니다. MATLAB 은 아시는 바와 같이 매우 비싼 툴이고 업데이트를 위한 라이센스 유지비용 역시도 1년에 20~30 % 정도를 내는 걸로 알고 있습니다. 저는 학교에서 MATLAB 수업 과목의 조교를 했었고~ 이런 경험을 바탕으로 MATLAB 사용 방법을 소개하기 위해서 본 블로그를 만들었습니다. 개인적으로도 회사에서 MATLAB 을 사용한 업무를 하지만, 일반적으로 학생들이 학교에서 배우는 MATLAB 을 사용한 알고리즘 개발까지는 사실 MATLAB을 사용할 필요가 없다고 생각합니다. 제 블로그에서 소개했었던 Python, Scilab, Octave 를 비롯해서 매틀랩을 대신하여 알고리즘을 개발해 볼 수 있는 오픈소스 또는 프리.. 2018. 7. 18.
Simulink Signal Builder 사용시 Data Type Conversion 생성하기 Simulink 에서 테스트 진행시 Signal Builder 를 사용하여 test case 를 만들곤 하는데 signal builder 의 출력은 double 값으로 나오기 때문에 해당 출력을 입력으로 사용하는 블록과 데이터 타입을 맞춰주는 과정이 필요 합니다. 이렇게 데이터 타입을 맞춰주기 위해 Simulink 에서는 Data Type Conversion 블록을 사용하는데 Signal 이 여러 개가 되는 경우 일일이 Data Type Conversion 블록을 붙여주는 것도 고된 잡업이더군요. 그래서 여러개의 Data Type Conversion 블록을 자동으로 생성하도록 하는 MATLAB 코드를 만들어 봤습니다. 코드는 다음과 같습니다. dataTypeConversionMake 함수를 사용하기 위해.. 2017. 7. 14.
Simulink slx 파일을 텍스트 에디터에서 열어보기 아래 포스팅에서도 소개한적이 있지만 요즘 Simulink 에서는 MDL 확장자 대신에 SLX 를 주로 사용합니다. http://iamaman.tistory.com/1822 MDL 파일의 경우 에디터에서 열어서 확인 해 볼 수가 있었는데 SLX 파일의 경우 에디터에서 열어 볼 수가 없더군요. 그래서 오늘은 SLX 파일을 텍스트 에디터에서 확인 하는 방법에 대해 소개해 보려 합니다. SLX 파일은 JAR 와 같이 아카이브 파일 형태라고 합니다. test.slx 파일이 잇다면 파일의 확장자를 test.zip 으로 변경합니다. 다음과 같은 메시지가 나오는데 예를 클릭합니다. test.zip 파일을 압축 프로그램을 사용하여 압축 해제 합니다. 저는 반디집을 사용했습니다. 압축을 해제 하고 폴더에 들어가 보면 아래.. 2017. 2. 25.
MATLAB 바로 가기 백업 방법 MATLAB 에서 바로가기를 통해 작업 폴더에 접근하면 작업 폴더에 조금 더 효율적으로 접근 할 수 있습니다. 이에 관련된 내용들에 대해서는 아래 포스팅에서 설명한 적이 있습니다. http://iamaman.tistory.com/40 그런데 이러한 셋팅 파일들의 경우 보통 C 드라이브에 저장이 되기 때문에 컴퓨터를 포멧하거나 하면 설정들이 날아가 버려서 다시 설정해야 합니다. 바로가기가 한 두개라면 쉽게 복구 가능 하겠지만 저 처럼 바로가기를 많이 사용 하시는 분들이라면 바로가기를 백업 해 놓는게 좋을 겁니다. MATLAB 설정 관련된 파일들은 아래 폴더에서 확인 할 수 있습니다. MATLAB Command Window 에서 prefdir 라고 타이핑 하면 아래와 같이 설정 파일들이 들어 있는 폴더가 나.. 2017. 2. 21.
Matlab 그래프 축 반전 방법 MATLAB 을 사용하여 그래프를 그리는 경우 축을 반전해서 보는게 편한 경우가 종종 있습니다. 이런 경우에는 두가지 방법을 사용할 수 있습니다. 아래 예에 대해 축을 반전하고 싶은 경우 x=1:0.1:10; y=sin(x); plot(x,y) grid on 플롯 툴을 사용하여 변경하는 방법 플롯 툴 아이콘을 클릭하여 플롯 툴을 실행 합니다. 다음으로 그래프의 Axis 선택한 이후에 반전하고 싶은 축을 선택하고 반전에 체크를 하고 마지막으로 플롯 툴 숨기기를 클릭 합니다. 위 그림과 비교해보면 X 축의 값이 좌우가 바뀐것을 확인 할 수 있습니다. Y 축 또는 Z 축 값을 반전하고 싶은 경우라면 아래 그림에서 X축 Y축 탭을 선택한 이후에 반전을 체크해 주면 되겠죠~ 코드 상에서 변경하는 방법 코드에서 반.. 2017. 2. 13.
MATLAB title 에 underscore 글자 그대로 표시하기 다음과 같이 간단한 그래프를 하나 그리고 title 을 설정해 보자. x=1:10; plot(x) title('X_Y') 위 코드를 실행 시키면 아래와 같은 그래프가 나온다. 그래프에서 확인 할 수 있는 바와 같이 title 이 XY 로 즉 underscore(_) 로 인해 Y 라는 텍스트가 아래 첨자로 된 것을 확인 할 수 있다. underscore 로 인한 아래첨자 효과를 없애 주려면 underscore 앞에 \ 로 escaping 하면 된다. 다음과 같이 코딩하면 title('X\_Y') 이런 결과가 나온다. 그런데 이런 식으로 모든 underscore 에 escaping 을 하는 것도 귀찮은 경우에는 다음과 같이 underscore 와 같은 문자들을 Interpretering 하지 않도록 설정할 .. 2016. 12. 28.
MATLAB 환경변수를 사용하여 path 설정 방법 MATLAB 에서 특정 폴더의 m 파일을 모든 workspace 에서 사용하기 위해서는 해당 폴더를 path 로 설정해야 합니다. 그래야 MATLAB 에서 해당 폴더 내의 파일을 인식 할 수 있죠. 보통은 MATLAB 의 pathtool 에서 설정하곤 하는데~ Startup 파일을 만들어서 설정할 수도 있습니다. startup.m 파일 관련해서는 아래 주소 글 참조 바랍니다. http://iamaman.tistory.com/995 오늘 소개할 내용은 MATLAB 환경변수를 설정해서 MATLAB path 를 설정하는 방법인데 이에 대해서는 아래 매뉴얼에 소개가 되어 있습니다. https://kr.mathworks.com/help/matlab/matlab_env/add-folders-to-matlab-sea.. 2016. 11. 3.