레이블이 수학함수인 게시물을 표시합니다. 모든 게시물 표시
레이블이 수학함수인 게시물을 표시합니다. 모든 게시물 표시

2015년 7월 29일 수요일

맥시마(maxima)에서 wxMaxima의 대화창으로 그래프 그리는 법

 wxMaxima에서는 그래프를 그리는 명령으로 wxplot2d 함수와 wxplot3d 함수가 있는데 각각 2차원 그래프와 3차원 그래프를 그려준다. 이번 절에서는 2차원 그래프를 그리는 함수의 사용법에 대해서 알아보자. 일단 메뉴창에서 이 함수를 선택하면 (Plot > Plot 2d...) 아래와 같은 대화창이 화면에 나타난다.
[그림 1] wxMaxima에서 plot>Plot 2d 메뉴 선택

[그림 2] Plot 2d 메뉴의 정보 입력 창
위에서 부터 차례대로

①도시할 함수(expression)
② x축의 범위
③ y축의 범위
④ 그래프의 정밀도
⑤ 표시형식(format)
⑥ 선택사항
⑦ 그래프를 저장할 화일명 (eps)

들을 입력하게 되어 있다. 일단 처음이니까 [그림 2]와 같이 첫 번째 칸만 채우고 [OK]를 클릭(엔터키를 쳐도 된다)하면 다음과 같은 그래프가 입력창에 나타나게 된다. 결과를 보면 알겠지만 대화창은 단순히 wxplot2d 함수의 파라메터를 결정해서 함수를 호출하는 역할을 한다. 따라서 사용자가 직접 이 함수를 입력해도 동일한 결과가 나타나므로 앞으로는 wxplot2d함수를 직접 입력해 보겠다.


맥시마(maxima)에서 수학 함수 정의

 맥시마에서 수학 함수는 := 기호를 써서 정의한다. 변수에 어떤 값을 대입하는 연산자는 콜론(:)이고 함수를 정의하는 기호는 (:=) 이라는 것에 유의해야 한다.


다음 예제를 고려하자.

.

이것을 맥시마로 풀면 다음과 같다.


 조건명령 if를 이용하여 함수를 정의할 때 구간 별로 다른 규칙을 정의할 수 있다. 예를 들어 다음과 같은 불연속 함수를 고려하자.
이 함수는 다음과 같이 입력할 수 있다.


다음 함수도 유사하게 입력할 수 있다.

이와 같이 맥시마에서 함수를 정의할 경우에는 := 연산자를 사용하며 if 조건문을 이용하여 불연속 함수도 자유롭게 생성할 수 있다.




2015년 6월 27일 토요일

MATLAB의 기본적인 수학 함수들

 여기에서는 MATLAB에 내장된 수학 함수들을 소개한다.

  MATLAB의 모든 삼각함수는 입력과 출력의 단위로 라디안(radian)을 사용한다. 라디안을 도(degree)로 혹은 도를 라디안으로 변환하려면 다음과 같이 하면 된다.

>> angle_deg = angle_rad*(180/pi)
>> angle_rad = angle_deg*(pi/180)

[표 1] 삼각함수 관련 함수들
함수
기능
sin(x)
x의 sine값 계산
cos(x)
x의 cosine값 계산
tan(x)
x의 tangent값 계산
asin(x)
x의 arcsine값 계산. 단 x는 -1과 1사이의 값이어야 하고 결과값은 라디안으로 -π/2 와 π/2 사이의 값이다.
acos(x)
x의 arccosine값 계산. 단 x는 -1과 1사이의 값이어야 하고 결과값은 라디안으로 -π/2 와 π/2 사이의 값이다.
atan(x)
x의 arctangent값 계산. 결과값은 라디안으로 -π/2 와 π/2 사이의 값이다.
atan2(y,x)
y/x 의 arctangent값 계산. 결과값은 라디안으로 -π/2 와 π/2 사이의 값이다.

[표 2] 쌍곡선 함수들
함수
기능
sinh(x)
hyperbolic sin 함수
cosh(x)
hyperbolic cos 함수
tanh(x)
hyperbolic tan 함수
asinh(x)
각각의 역함수들
acosh(x)
atanh(x)

[표 3] 공통 함수
함수
기능
abs(x)
절대값(=|x|)
sqrt(x)
sqrtm(A)
제곱근( square root) 요소간 연산
제곱근. 행렬 연산
round(x)
반올림
fix(x)
x를 0의 방향의 가장 가까운 정수로
floor(x)
x를 -inf 의 방향의 가장 가까운 정수로
ceil(x)
x를 +inf 의 방향의 가장 가까운 정수로
sign(x)
x<0이면 -1, x=0이면 0, x>0이면 1을 반환
rem(x,y)
x를 y로 나눈 나머지
exp(x)
expm(A)
지수 함수, 요소간 연산
지수 함수, 행렬 연산
log(x)
logm(A)
밑이 e인 로그(자연 로그) 요소 간 연산
밑이 e인 로그(자연 로그) 행렬 연산
log10(x)
밑이 10인 로그
MATLAB에서 밑이 e인 로그함수는 log()이다. (ln()이 아님에 유의할 것) 밑이 10일 로그 함수는 log10 이다. 보통 수학책에서는 log 가 밑이 10인 로그 함수를 표기하는데 MATLAB에서는 밑이 e인 함수명이라는 것에 유의해야 한다.

[표 4] 복소수 관련 함수
함수
기능
abs(s)
복소수 s의 크기를 계산 (=|s|)
real(s)
복소수 s의 실수부 계산
imag(s)
복소수 s의 허수부 계산
conj(s)
켤레복소수
angle(s)
복소수의 각도(radian)를 계산

여기에서 소개한 함수들은 MATLAB의 기본적인 내장 함수이므로 별다른 조치 없이 바로 사용할 수 있다.