Changes between Initial Version and Version 1 of Ticket #449
- Timestamp:
- 07/19/10 22:28:00 (15 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Ticket #449
- Property Resolution → Fixed
- Property Status new → closed
-
Ticket #449 – Description
initial v1 1 Following the discussion at https://www.myroms.org/forum/viewtopic.php?f=19&t=1718, I'd like to report a bug triggered by PERFECT_RESTARTand related to vertical diffusion processes for the Generic Length Scale formulation.1 Following the discussion in the [https://www.myroms.org/forum/viewtopic.php?f=19&t=1718 forum], I'd like to report a bug triggered by the '''PERFECT_RESTART''' option and related to vertical diffusion processes for the Generic Length Scale formulation. 2 2 3 The variables '''tke''' and '''gls''', together with diffusion coefficients are initialized to their background values (see SUBROUTINE initialize_mixing), but subsequently they are read from the restart NetCDF and the values on land areas (matching _FillValue in NetCDF) are set to 0 (see: SUBROUTINE nf_fread4d).3 The variables '''tke''' and '''gls''', together with diffusion coefficients are initialized to their '''background''' values (see subroutine '''initialize_mixing'''), but subsequently they are read from the restart NetCDF and the values on land areas (matching '''_FillValue''' in NetCDF) are set to '''0''' (see subroutine '''nf_fread4d'''). 4 4 5 The tke and gls values enter as denominators for calculations inside SUBROUTINE gls_corstepand the 0 values generate a floating point exception.5 The '''tke''' and '''gls''' values enter as denominators for calculations inside subroutine '''gls_corstep''' and the 0 values generate a floating point exception. 6 6 7 The resulting NaN are propagated in particular (but not only) to the vertical diffusion coefficient for tracers ( Akt) and this causes a model blow-up in subsequent calculations.7 The resulting NaN are propagated in particular (but not only) to the vertical diffusion coefficient for tracers ('''Akt''') and this causes a model blow-up in subsequent calculations. 8 8 9 I suggest to set the flag SetFillValue to .FALSE. (in: SUBROUTINE def_rst and SUBROUTINE wrt_rst) for variables tke and gls, in order to preserve the background values over land points. Maybe the same should be applied to the other variables added to the restart file when PERFECT RESTART is active (Akp, Akk and Lscale) but they don't seem to be involved in potential floating point exceptions.9 I suggest to set the flag '''!SetFillValue''' to '''.FALSE.''' (in: subroutine '''def_rst''' and subroutine '''wrt_rst''') for variables tke and gls, in order to preserve the background values over land points. Maybe the same should be applied to the other variables added to the restart file when '''PERFECT_RESTART''' is active ('''Akp''', '''Akk''' and '''Lscale''') but they don't seem to be involved in potential floating point exceptions. 10 10 11 Please see post https://www.myroms.org/forum/viewtopic.php?p=6933#p6933in the ROMS Bugs forum for a bit more detailed description of the issue. Thank you,11 Please see [https://www.myroms.org/forum/viewtopic.php?p=6933#p6933 post] in the ROMS Bugs forum for a bit more detailed description of the issue. Thank you, 12 12 Alex