전체 글 725

Xcas 란?

Xcas 는 CAS(Computer Algebra System) 중 하나이며 GNU GPL 로 배포되는 자유 소프트웨어로서, X 터미널에서 동작하는 CAS 구현 애플리케이션이다. Mathematica, Maple, Maxima 부류의 소프트웨어라고 보면 되고, Lixux, Mac OS X, Windows 등 많은 OS 환경에서 사용가능한 무료(free) 소프트웨어이다. 현재 Xcas 의 안정적 버전은 0.9.3 이다. 설치할 때는 불어로 되어 있어서 혼돈이 되지만 적당히 "동의", "다음", "마침"의 뜻이라고 판단되는 버튼을 클릭하면 설치된다. * Xcas 의 홈페이지는 http://www-fourier.ujf-grenoble.fr/~parisse/giac.html 이다. * Xcas 의 다운로드는 h..

여러 가지 도구를 이용한 행렬 계산 / QR 분해(decomposition)

For a given square matrix A, if there exist two matrices Q and R such that A = QR where Q is an orthogonal matrix (i.e transpose(Q)=inverse(Q)) and R is an upper traingular matrix. then the product QR is called a QR decomposition or QR fatorization of A * Mathematica 에서 QR 분해하기 (분수로 계산) * Mathematica 에서 QR 분해하기 (부동소수점수 계산) * 64bit Ubuntu 의 Octave 에서 QR 분해하기 octave:1> a = [3, 4; 1, 2]; octave:2> ..

학습/수학 2011.09.22

GSL 이란?

GSL 소개 GSL(GNU Scientific Library) 은 C 언어와 C++ 언어 프로그래머들을 위한 수치해석학 라이브러리이다. GSL은 GNU GPL(GNU General Public License) 하에 배포되는 자유 소프트웨어이다. 이 라이브러리는 난수 발생, 특수 함수, 촤소제곱적합 등을 포함한 광범위한 수학 문제 처리 과정을 제공한다. 여기에는 테스트 모음(test suit)을 포합하여 무려 1000 여개의 함수들이 있다. 이 라이브러리는 다음의 여러 가지 분야들을 취급한다. 복소수(Complex Numbers) 다항식의 근(Roots of Polynomials) 특수함수(Special Functions) 벡터와 행렬(Vectors and Matrices) 순열(Permutations) ..

Mathematica 언어의 동적 프로그래밍 기능의 이해 / 재귀호출

Python, Ruby, Groovy 등의 스크립팅 언어를 동적 프로그래밍 언어라고 부르는 이유는 함수를 변수에 저장하여 필요할 때 변수를 부르둣이 함수를 부를 수 있기 때문이다 Ruby 언어와 Groovy 언어에서는 이를 클로저(closer)라고 부르고, Python 언어에서는 이를 람다 함수(lambda function) 이라고 부른다. Mathenatica 언어도 이러한 기능을 제공한다. 다음은 이 기능을 이용하여 피보나티 수열과 유클리드 호제법을 구현한 것이다. (참고. 유클리드 호제법을 구현한 gcd 함수는 Mathematica Developer에 올라와 있는 예제가 음의 정수에 대하여는 잘 못 처리하기 때문에 수정한 것이다.) * Mathematica 에서 Module 함수를 이용한 동적 프로..

여러 가지 도구를 이용한 행렬 계산 / LU 분해(decomposition)

여기서는 2x2 정방행렬 A = [4, 3; 6, 3] 의 LU 분해(LU decomposition)를 위해 여러 가지 도구 Mathematica, Maxima, Octave, Scipy, Jama 패키지를 이용한 Java 애플리케이션, Jama 패키지를 이용한 Groovy 애플리케이션 로는 각각 어떻게 해결하는지 알아보고자 한다. , * Mathematica 를 이용하여 행렬 계산하기 (참고: Mathematica 에서는 LUDecompostion 이라는 함수가 준비되어 있다.) * Maxima 를 이용하여 행렬 계산하기 (행렬 곱셈, 전치행렬, 행렬식, 역행렬 등) (참고: Maxima 애서는 변수에 수식 계산에 의한 값을 할당할 때 쓰는 할당 연샂자가 등호(=)가 아니라 콜론(:)임에 유의한다. M..

학습/수학 2011.09.18

여러 가지 도구를 이용한 행렬 계산 / 행렬 곱셈, 전치행렬, 행렬식, 역행렬 등

A = [1, 2; 3, 4] B = [2, 1; -1, 2] 로 주어진 두 2x2 행렬 A, B 에 대하여 AB, BA. transpose(A), transpose(A) B det(A), inverse(A), inverseA) A, A inverse(A) 를 각각 구하는 방법을 여러 가지 도구 Mathematica, Maxima, Octave, Scipy 들을 각각 이용하여 알아본다. , * Mathematica 를 이용하여 행렬 계산하기 (행렬 곱셈, 전치행렬, 행렬식, 역행렬 등) (참고: Mathematica 에서 행렬 곱샘 연산자는 .(점) 이다.) * Maxima 를 이용하여 행렬 계산하기 (행렬 곱셈, 전치행렬, 행렬식, 역행렬 등) (참고: Maxima 애서도 Mathematica 에서와 ..

학습/수학 2011.09.17

여러 가지 도구를 이용한 행렬 계산 / 스칼라배. 덧셈, 뻴셈 등

A = [1, 2, 3; 4, 5. 6] B = [3, 0, 1; -1, 2, -2] 로 주어진 두 2x3 행렬 A, B 에 대하여 2A, 3B. 2A + 3B. 2A - 3B, A의 첫째 행, B의 둘째 행, A의 첫째 행과 B의 둘째 행의 3배의 합, A의 첫째 행 첫째 열 요소, B의 둘째 행 셋째 열 요소, A의 첫째 행 첫째 열 요소의 5배와 B의 둘째 행 셋째 열 요소의 차 를 각각 구하는 방법을 여러 가지 도구 Mathematica, Maxima, Octave, Scipy 들을 각각 이용하여 알아본다. , * Mathematica 를 이용하여 행렬 계산하기 (스칼라배, 합, 차 등) * Maxima 를 이용하여 행렬 계산하기 (스칼라배, 합, 차 등) * Octave 를 이용하여 행렬 계산하..

학습/수학 2011.09.17

매개방정식으로 곡면 그리기 / 구면(sphere)

3차원 직교좌표계에서 구면(sphere)의 매개방정식은 으로 주어진다. 이 매개방정식을 이용하여 구면을 여러가지 그리기 도구 Mathemarica, Maxima, Grapher, Gnuplot, Octave, Matplotlib 들로 각각 그려보자. * 윈도우 XP 에서 Mathematica 8 을 이용하여 그리기 * 윈도우 XP 에서 wxMaxima 를 이용하여 그리기 ** 명령 입력 ** 위의 명령으로 별도의 창에 그려진 곡면 * Mac OS X Lion 에서 Grapher 를 이용하여 그리기 * 윈도우 XP 에서 Gnuplot 을 이용하여 그리기 ** Gnuplot 소스 # # parametricSphere.dem set term win set parametric set isosamples 80, ..

학습/수학 2011.09.17

매개방정식으로 곡면 그리기 / 토러스(torus)

3차원 직교좌표계에서 토러스(torus)의 매개방정식은 으로 주어진다. 이 매개방정식을 이용하여 torus 를 여러가지 그리기 도구 Mathemarica, Maxima, Grapher, Gnuplot, Octave, Matplotlib 들로 각각 그려보자. * 윈도우 XP 에서 Mathematica 8 을 이용하여 그리기 * 윈도우 XP 에서 wxMaxima 를 이용하여 그리기 ** 명령 입력 ** 위의 명령으로 별도의 창에 그려진 곡면 * Mac OS X Lion 에서 Grapher 를 이용하여 그리기 * 윈도우 XP 에서 Gnuplot 을 이용하여 그리기 ** Gnuplot 소스 # # parametricTorus.dem set term win set parametric set isosamples 8..

학습/수학 2011.09.17