LAPACKサンプル実行手順

ホーム >LAPACKサンプル目次 >LAPACKサンプル実行手順
※本資料はLAPACK(及びBLAS)が利用可能な状態であることを前提としています。
※ご参考:弊社ソフトFortran Builderを使えばより簡単な手順でLAPACKサンプルをご利用いただけます。
概要
  • 行列出力ユーティリティールーチン群とインタフェースモジュールを含む補助ライブラリ(ソース一式+Makefile)をダウンロードしてください。
  • 尚、補助ライブラリで提供される補助ルーチン詳細につきましてはこちらをご参照下さい。
    例)
    % wget http://www.nag-j.co.jp/lapack/extra/aux_routines.tgz
    
  • 適当なディレクトリに解凍して下さい。
  • 例)
    % tar xvzf aux_routines.tgz
    
  • ご利用環境に応じて Makefile を適宜編集してから Make して下さい。
    • libaux.a というライブラリファイルと、以下の4つのモジュールファイル(*.mod ファイル) が出来上がります。
      • blas_interfaces.mod - BLASのインタフェースモジュール
        lapack_example_aux.mod - 行列出力補助ルーチンのインタフェースモジュール
        lapack_interfaces.mod - LAPACKのインタフェースモジュール
        lapack_precision.mod - 実数精度の種別パラメタを持つモジュール
  • 例)
    % cd aux_routines
    % ここでMakefileを適宜編集
    例えばifortを用いる場合にはMakefileの1行目をコメントアウトして3行目のコメントを解除します。
    Before)
    1: F90 = gfortran
    2: #F90 = nagfor
    3: #F90 = ifort
    
    After)
    1: #F90 = gfortran
    2: #F90 = nagfor
    3: F90 = ifort
    
    % make
    
  • 実行したいサンプルプログラムのソースコードとデータをダウンロードし、libaux.a及び*.modがあるディレクトリに保存します。以下に一例として最小二乗問題を解くLAPACKルーチンDGELSYを用いるサンプルプログラムを利用する場合を示します。
  • % wget http://www.nag-j.co.jp/lapack/examples/data/dgelsy-ex.d
    % wget http://www.nag-j.co.jp/lapack/examples/source/dgelsy-ex.f90
    
  • サンプルプログラムのビルドを行います。この際に LAPACK(及びBLAS)のリンクを指定する他、上記でビルドしたlibaux.a もリンクするようにします。
    例1)nagfor dgelsy-ex.f90 -o a.exe -L. -laux -llapack -lblas
    例2)gfortran dgelsy-ex.f90 -o a.exe -L. -laux -llapack -lblas
    例3)ifort dgelsy-ex.f90 -o a.exe -L. -laux -mkl
    
  • 入力データを標準入力から与えて実行します。
    ./a.exe < dgelsy-ex.d
    
    出力例)
     DGELSY Example Program Results
    
     Least squares solution
          0.6344     0.9699    -1.4402     3.3678     3.3992
    
     Tolerance used to estimate the rank of A
          1.00E-02
     Estimated rank of A
          4
     

以上です。

 

ご案内
関連情報
© 日本ニューメリカルアルゴリズムズグループ株式会社 2025
Privacy Policy  /  Trademarks