Edited at

NetCDF > Error: NC_UNLIMITED size already in use -54 > NF90_DEF_DIM()にて次元を0にしていた

More than 1 year has passed since last update.


動作環境

Xeon E5-2620 v4 (8コア) x 2

32GB RAM
CentOS 6.8 (64bit)
gcc version 4.9.2 (とgfortran): Software Collections (SCL) で有効にした状態
NCAR Command Language Version 6.3.0
Python 2.6.6 (r266:84292, Aug 18 2016, 15:13:37)
Python 3.6.0 on virtualenv
NetCDF v4.4.1.1 / NetCDF (Fortran API) v4.4.4
WRF/WPS v3.9

WRF(Weather Research and Forecasting Model)に関して。

WRFのデータをもとに処理を行う「とある」ソフトウェアの最新版を試していた。

ビルドはできたが、実行した時に以下のエラーがある。

nc_create_header_outfile: Setting up receptor point dimensions

Error: NetCDF: NC_UNLIMITED size already in use -54

問題の箇所をデバッグprintで特定していくと以下にたどり着いた。

  ncret = NF90_DEF_DIM(ncid,'receptors',numreceptor,ncrepid)

call check_ncerror(ncret)

エラーの原因はnumreceptorが0になっていることのようだ。

同じソフトウェアの旧バージョンにおいては設定ファイルにおいてnumreceptorを0としていても動作していた。

NF90_DEF_DIM()を使うようになったのは最新版のソフトにおいて。

このあたりで動作検証抜けがあるのかもしれない。


関連リンク

エラーコード

http://www.unidata.ucar.edu/software/netcdf/docs/nc-error-codes.html

以下の情報にて設定値に問題があると気づいた。

https://www.myroms.org/forum/viewtopic.php?f=16&t=1270


But the old standard input file that I was using did not have

this parameter so that ROMS tried to assign unlimited dimension to

'frc_adjust'.