역삼각함수란 삼각함수의 역함수를 의미하고,
역쌍곡선함수란 쌍곡선함수의 역함수를 의미한다.
수학에서 sin 함수의 역함수는 arcsin 으로 표기되는데, Octave 언어에서는 asin 함수로 구현되어 있다.
또한 Octave 언어에는 쌍곡선함수 sinh 와 cosh 의 역함수로 각각 asinh 와 acosh 가 구현되어 있지만, 비교를 위해 arcsinh 와 arccosh 라는 이름의 함수로 아래의 소스에 구현해 보았다.
% Filename: testArcSine.m
%
% Execute: octave -qf testArcSine.m
%
% Date: 2013. 1. 8.
% Copyright (c) pkim _AT_ scripts.pe.kr
%}
function y = arcsinh(x)
y = log(x + sqrt(x*x + 1));
endfunction
function y = arccosh(x)
y = log(x + sqrt(x*x - 1));
endfunction
x = -0.9;
y = asin(x);
printf("y = asin(%g) = %.9f\n", x, y);
printf("sin(y) = sin(%.9f) = %g\n", y, sin(y));
printf("\n");
x = 1.1;
u = acosh(x);
printf("u = acosh(%g) = %.10f\n", x, u);
v = asinh(x);
printf("v = asinh(%g) = %.10f\n", x, v);
printf("cosh(u) = cosh(%.10f) = %g\n", u, cosh(u));
printf("sinh(v) = sinh(%.10f) = %g\n", v, sinh(v));
printf("\n");
printf("arccosh(%g) = %.10f\n", x, arccosh(x));
printf("arcsinh(%g) = %.10f\n", x, arcsinh(x));
#{
Output:
y = asin(-0.9) = -1.119769515
sin(y) = sin(-1.119769515) = -0.9
u = acosh(1.1) = 0.4435682544
v = asinh(1.1) = 0.9503469298
cosh(u) = cosh(0.4435682544) = 1.1
sinh(v) = sinh(0.9503469298) = 1.1
arccosh(1.1) = 0.4435682544
arcsinh(1.1) = 0.9503469298
#}
'프로그래밍 > Octave' 카테고리의 다른 글
Octave 로 계산 하는 집합 연산 몇 가지 (0) | 2014.01.27 |
---|---|
Cygwin 의 Octave 로 그린 평면 매개곡선을 jpg 파일로 저장하기 (0) | 2014.01.27 |
Octave 를 이용하여 비선형 연립미분방정식의 해곡선 그리기 (0) | 2014.01.26 |
Octave 를 이용하여 간단한 그래프 그리기 (0) | 2014.01.26 |
이진 파일을 읽어서 16진수로 보여주는 HexView 소스 with Octave (0) | 2013.08.18 |