6.1 FMLIBとは

David M. Smith が作成した Fortran 90 用の多倍長計算パッケージである。 採用しているアルゴリズムは一連の論文に示されている ([4], [5], [6], [7], [8], [9])。

Fortran 90 では演算子も多重定義されている。

IM 整数型
FM 浮動小数点型
ZM 複素数型
  use FMZM
FMLIBの多倍長型変数の宣言
  type(IM) :: i,j
  type(IM) :: x,y
  type(ZM) :: z
  call FMSET(100)
表示
  call IMPRNT(i)
  call FMPRNT(x)
  call ZMPRNT(z)
書式付きの表示
  character(LEN=32) :: ST
  type(FM) :: x

  ST=FM_FORMAT('F32.24',x)
  write(*,*) ST
型変換
IM_IM 多倍長整数型
IM_FM 多倍長浮動小数点型
IM_ZM 多倍長複素数型
IM_INT 多倍長整数型
IM_SP 単精度浮動小数点型
IM_DP 倍精度複素数型
IM_SPZ 単精度複素数型
IM_DPZ 倍精度複素数型

高次代数方程式の数値解法ライブラリの研究開発 では FMLIB を採用している。

一度自分でプログラムを書いてみるのだな。

桂田 祐史
2017-09-13