--- title: ' NAGライブラリ' taxonomy: category: - docs external_links: process: true title: false no_follow: true target: _blank mode: active published: true --- [toc] ## NAGライブラリとは{#summary} NAGライブラリは、1000種類以上の機能をもち、非常に信頼性が高い科学技術計算および統計計算のライブラリです。SMP向けに並列化されたライブラリである NAG Fortran SMP Library (SMP版)とともに、分散メモリ環境で並列科学技術計算を行うための NAG Parallel Library(MPI版)が利用できます。 ## 利用環境{#enviroment} ### 利用できるバージョン・システム{#version} バージョン | モジュールファイル名 | システムA |システムB/C | システムG/クラウド --------------------------- | ------ | ----- | ----- | ----- SMP版 Mark 26 (default) | nag_fortran/26 | - | AU | - MPI版 Release 3 (default) | nag_paralell/3 | - | AU | - AU : 学術研究機関限定で利用可能 \- : 利用不可 ### 環境設定{#modules} NAGライブラリを利用する場合は、Intelコンパイラを利用する必要があります。環境設定については、 [Intelコンパイラ](/compilers/intel#modules) をご覧ください。 以下のようにmoduleコマンドを実行し、利用したいバージョンのmoduleファイルをロードします。 ```nohighlight ## SMP版を利用する場合 $ module load nag_fortran -- ## MPI版を利用する場合 $ module load nag_parallel ``` SMP版とMPI版の環境を同時に設定することはできません。 moduleコマンドの詳細は [Modules](/config/modules) をご覧ください。 ## 利用方法{#usage} 環境設定により、コンパイルに必要なコマンドおよびオプションが環境変数に設定されます。この環境変数を使い、翻訳時にNAGライブラリをリンクしてご利用下さい。 種類 | 環境変数 | 備考 -------- | --------- | ----- コンパイルオプション | $NAGFLAGS | 環境変数にコンパイルに必要なコンパイルオプションが含まれています。 リンクオプション | $NAGLINK | 環境変数にリンクが必要なライブラリが含まれています。 * **コンパイル&リンク例** ```nohighlight $ ifort $NAGFLAGS sample.f90 $NAGLINK ``` * **実行例** ```nohighlight $ tssrun ./a.out ``` ## サンプルプログラム{#sample} NAGライブラリのほぼすべてのルーチンに対して、サンプルのプログラムが用意されています。表に示すディレクトリ配下のファイルをコピーしてご利用ください。 #### SMP版 サンプルファイル | ファイルパス --------- | --------------------------------------------------- プログラム本体 | /opt/system/app/nag_fortran/26/fsl6i26dcl/examples/source 入力データ | /opt/system/app/nag_fortran/26/fsl6i26dcl/examples/data 出力結果例 | /opt/system/app/nag_fortran/26/fsl6i26dcl/examples/results #### MPI版 サンプルファイル | ファイルパス --------- | ------------------------------------------------ プログラム本体 | /opt/system/app/nag_parallel/3/fdl6i03dcl/examples/source 入力データ | /opt/system/app/nag_parallel/3/fdl6i03dcl/examples/data 出力結果例 | /opt/system/app/nag_parallel/3/fdl6i03dcl/examples/results ## マニュアル{#manual} ### SMP * [NAGライブラリマニュアル(MARK 26)](https://web.kudpc.kyoto-u.ac.jp/auth/manual/nag/nagdoc_fl26/index.html) ### MPI * [NAGライブラリマニュアル(Release 3)](https://web.kudpc.kyoto-u.ac.jp/auth/manual/nag/nagdoc_pl3/fd/html/genint/libconts_fd03.html) ## リンク{#link} * [日本NAG](http://www.nag-j.co.jp/index.htm)