Kelvin Demo Compile Fails

Bug reports, work arounds and fixes

Moderators: arango, robertson

Post Reply
Message
Author
User avatar
CharlesJames
Posts: 43
Joined: Thu May 24, 2007 12:12 pm
Location: South Australian Research and Development Institute

Kelvin Demo Compile Fails

#1 Unread post by CharlesJames »

We've been working with a number of the test cases since the recent update (we are currently on 299) and have found a problem with the existing Kelvin wave demo. The kelvin.h file included with the model sets EAST_FSRADIATION and EAST_M2RADIATION. However,the Kelvin test case also provides analytical values for the eastern open boundary in ana_fsobc.h and ana_m2obc.h.

The problem is that the fields for the boundary structure, zeta_east, ubar_east, and vbar_east are never defined unless EAST_FSOBC and EAST_M2FSOBC are set, and these are not set in globaldefs for EAST_FSRADIATION and EAST_M2RADIATION (unless nudging is also set). For this reason, someone trying the Kelvin test for the first time will not be able to compile it unless they define EAST_FSOBC and EAST_M2FSOBC in the kelvin header file or pass them directly to the precompiler in their build script.

I suspect that the best solution would be to drop the eastern analytical open boundary conditions entirely from the kelvin demo and let the radiation condition do its thing, my own tests indicate that this does not significantly change the results.

User avatar
arango
Site Admin
Posts: 1367
Joined: Wed Feb 26, 2003 4:41 pm
Location: DMCS, Rutgers University
Contact:

Re: Kelvin Demo Compile Fails

#2 Unread post by arango »

Yes, the definition and allocation of boundary arrays is very strict now and controlled by internal CPP options. There are several expressions in the analytical functions that are not actually used. However, it is a good idea to retain them in case that the configuration for such test cases is changed and use such boundaries. This problem is now :arrow: fixed.

Please update your code :wink:

Post Reply