`BESSEL_YN` — N차 제2종 베셀 함수

BESSEL_YN — N차 제2종 베셀 함수

진동이나 파동 문제를 풀다 보면 특정 차수의 제2종 베셀 함수가 필요해지는 경우가 있어요. 그때마다 정수 차수마다 함수를 일일이 계산하기는 번거롭죠. BESSEL_YN은 제2종 베셀 함수를 지정한 차수로 바로 구해 주는 내장 함수예요.

출처: gfortran 문서 — BESSEL_YN

본문

시그니처

RESULT = BESSEL_YN(N, X)
RESULT = BESSEL_YN(N1, N2, X)

설명

BESSEL_YN(N, X)X에 대한 차수 N의 제2종 베셀 함수를 계산해요. 이 함수는 GNU 확장으로 BESYN 이라는 이름으로도 쓸 수 있어요. NX가 모두 배열이면 두 배열의 랭크와 모양(shape)이 일치해야 합니다.

BESSEL_YN(N1, N2, X)는 차수 N1부터 N2까지의 제1종 베셀 함수 값들을 담은 배열을 돌려줘요.

분류

  • 단일 차수 형태 BESSEL_YN(N, X) — 원소별 함수(Elemental function)
  • 차수 범위 형태 BESSEL_YN(N1, N2, X) — 변환 함수(Transformational function)

인자

  • NINTEGER 타입의 스칼라 또는 배열이어야 해요.
  • N1INTEGER 타입의 음이 아닌 스칼라여야 해요.
  • N2INTEGER 타입의 음이 아닌 스칼라여야 해요.
  • XREAL 타입의 스칼라 또는 배열이어야 해요. 다만 BESSEL_YN(N1, N2, X) 형태에서는 X가 스칼라여야 합니다.

반환값

반환값은 REAL 타입의 스칼라이고, X와 같은 kind를 가져요.

주의(Notes)

차수 범위 형태의 변환 함수는 점화(recurrence) 알고리즘을 쓰기 때문에, 일부 X 값에서는 원소별 함수를 따로 부른 결과와 조금 다르게 나올 수 있어요.

예제

program test_besyn
  real(8) :: x = 1.0_8
  x = bessel_yn(5,x)
end program test_besyn

다섯 번째 차수인 bessel_yn(5, x)로 제2종 베셀 함수 값을 계산해서 변수에 되돌려 받는 모습이에요.

지정 이름(Specific names)

이름 인자 반환 타입 표준
DBESYN(N,X) INTEGER N, REAL(8) X REAL(8) GNU 확장

표준

Fortran 2008 이상이며, 음수 N은 GNU 확장으로 허용돼요.