関連情報

複素数zの多ガンマ関数

Fortranによるサンプルソースコード
使用ルーチン名:s14aff

Keyword: 多ガンマ関数, ポリガンマ関数, 複素数

概要

本サンプルは複素数zの多ガンマ関数(プサイ関数の導関数)を求めるFortranによるサンプルプログラムです。 本サンプルは引数zを読み込み、zの各値について以下に示される多ガンマ関数を求めて出力します。

多ガンマ関数のデータ 

※本サンプルはNAG Fortranライブラリに含まれるルーチン s14aff() のExampleコードです。本サンプル及びルーチンの詳細情報は s14aff のマニュアルページをご参照ください。
ご相談やお問い合わせはこちらまで

入力データ

(本ルーチンの詳細はs14aff のマニュアルページを参照)

このデータをダウンロード
S14AFF Example Program Data
 (-1.5, 2.5)   1  : Values of Z and K 

  • 1行目はタイトル行で読み飛ばされます。
  • 2行目に引数zの値と導関数の階数(k)を指定しています。

出力結果

(本ルーチンの詳細はs14aff のマニュアルページを参照)

この出力例をダウンロード
 S14AFF Example Program Results

        Z           K         (d^K/dz^K)psi(Z)

 ( -1.5,  2.5 )     1   ( -1.9737E-01, -2.4271E-01 )

  • 5行目に引数zの値、導関数の階数、多ガンマ関数の値が出力されています。

ソースコード

(本ルーチンの詳細はs14aff のマニュアルページを参照)

※本サンプルソースコードは科学技術・統計計算ライブラリである「NAG Fortranライブラリ」のルーチンを呼び出します。
サンプルのコンパイル及び実行方法


このソースコードをダウンロード
    PROGRAM s14affe

!      S14AFF Example Program Text

!      Mark 23 Release. NAG Copyright 2011.

!      .. Use Statements ..
       USE nag_library, ONLY : nag_wp, s14aff
!      .. Implicit None Statement ..
       IMPLICIT NONE
!      .. Parameters ..
       INTEGER, PARAMETER              :: nin = 5, nout = 6
!      .. Local Scalars ..
       COMPLEX (KIND=nag_wp)           :: y, z
       INTEGER                         :: ifail, ioerr, k
!      .. Executable Statements ..
       WRITE (nout,*) 'S14AFF Example Program Results'

!      Skip heading in data file
       READ (nin,*)

       WRITE (nout,*)
       WRITE (nout,*) '       Z           K         (d^K/dz^K)psi(Z)'
       WRITE (nout,*)

DATA:  DO
          READ (nin,*,IOSTAT=ioerr) z, k

          IF (ioerr<0) THEN
             EXIT DATA
          END IF

          ifail = -1
          y = s14aff(z,k,ifail)

          IF (ifail<0) THEN
             EXIT DATA
          END IF

          WRITE (nout,99999) z, k, y
       END DO DATA

99999  FORMAT (1X,'(',F5.1,',',F5.1,' )',I6,'   (',1P,E12.4,',',E12.4,' )')
    END PROGRAM s14affe


Results matter. Trust NAG.

Privacy Policy | Trademarks