Matlab에서 Symbolic Polynomial 처리
지인의 부탁으로 기호로 된 다항식을 Matlab에서 미분하거나 상수를 대입해서 값을 구하는 문제를 찾아보게 되었다. 몇 해 전에 한번 잠깐 해 본 적이 있어서, 간단하지 싶었는데, 어찌된 일인지 학교 컴퓨터에 설치해놓은 Matlab에서 되질 않는거다. 허.. 참... 한참을 인터넷을 뒤져보니 64비트용 Matlab에는 Symbolic Math Toolbox가 설치되어 있지 않다는 것을 알아냈다.
이걸 몰라서, 옥타브(Octave: 무료)를 깔아서 해봤는데, 이것은 기호 다항식까지는 처리가 되는데, 그 기호로 된 다항식의 미분을 하려면 또 다른 걸 써야한다는 거다.
그냥 32비트용 Matlab을 설치하는 게 가장 편한 일이다 싶어서, 새로 32비트용을 설치했다.
참.. Matlab R2007a는 Windows 7에서 그냥은 설치가 안된다. 이것도 별 짓 다하다가 인터넷에서 그 해답을 찾았는데, 우습게도 Windows 7의 Theme과 Java Rumtime Version 때문이라는..
먼저 설치를 위해서는 Windows 7의 Theme을 Classic으로 바꿔줘야 한다. 이렇게 하면 일단 설치는 되는데, 실행을 해보면.. 한 바가지의 오류 메시지를 보게되는데, 이걸 없애려면, java rumtime을 바꿔줘야 한다.
C:\Program Files\MATLAB\R2007a\sys\java\jre\win32 (64비트 Windows를 쓰고 있고, 32비트 Matlab을 설치했다면 경로는 C:\Program Files (x86)\MATLAB\R2007a\sys\java\jre\win32 이 되겠다)에 있는 jer1.5.0_07 을 지우든지, 이름을 바꿔놓는지 하고, Windows 7에 설치되어 있는 자바 런타임 (C:\Program Files\Java에 있는 jre6 폴더)을 복사해 놓는다. 그리고 이름을 jre6에서 jer1.5.0_07 으로 바꿔놓으면 준비 끝!
Symbolic Polynomial 처리를 위한 핵심 함수들 몇 가지만 적어두자.
sym, syms, diff, subs
diff는 기특하게도 기호로된 다항식도 미분해준다.
이 중에 subs는 다항식에서 변수의 값을 대입해서 그 결과값을 얻어주는 함수. 이거 찾는데 10분 이상 걸렸다. ^ ^'
받은 글 주소 :: http://blog.comjirock.com/comji/trackback/335