next up previous contents
Next: Developer Notes Up: qtcm User's Guide Previous: Using qtcm   Contents

Subsections


Troubleshooting

Error Messages Produced by qtcm

Error-Value too long in SetbyPy module getitem_str for key:
This message is produced by the Fortran subroutine getitem_str in the module SetbyPy in the compiled QTCM1 Fortran code. The code is in the file setbypy.F90. This error occurs when the Fortran variable whose name is given by the string key has a value that is greater than the local parameter maxitemlen in getitem_str. To fix this, you have to go into setbypy.F90 and change the value of maxitemlen.

Error-real_rank1_array should be deallocated:
Fortran module SetByPy's subroutine getitem_real_array generates this message (or a similar message for other ranks) if the Fortran variable for the input key are allocated on entry to the routine. This may indicate the user has written another Fortran routine to access the real_rank1_array variable outside of the standard interfaces..

Error-Bad call to SetbyPy module ...:
Often times, this error occurs because a get or set routine in SetByPy tried to act on a variable for which the corresponding input key is not defined. The solution is to add that case in the if/then construct for the get and set routines in SetByPy and rebuild the extension modules.

Other Errors

Python cannot find some packages:
This error often happens when the version of Python in which you have installed all your packages is not the version that is called at the Unix command line by typing in python. To get around this, define a Unix alias that maps python2.4 (or whichever version of Python has all your packages installed) to python. If you have multiple Python's installed on your system, you might have to use a more specific name for the Python executable. As a result, you may have to change the test scripts in test in the qtcm distribution directory.

get_qtcm1_item and compiled QTCM1 model pointer variables:
If you try to use the get_qtcm1_item method on a compiled QTCM1 model pointer variable (i.e., u1, v1, q1, T1), before the compiled model varinit subroutine is run, you'll get a bus error with no additional message.

Mismatch between Python and Fortran array field variables:
You change an array field variable on the Python side, but it seems like the wrong elements are changed on the Fortran side. Or you type in the same index address for accessing a qtcm netCDF output array as well as its Qtcm instance attribute counterpart, and find you get different answers. Some possible reasons and fixes:


next up previous contents
Next: Developer Notes Up: qtcm User's Guide Previous: Using qtcm   Contents
Johnny Lin 2008-09-12