Custom Query (964 matches)
Results (31 - 33 of 964)
Ticket | Resolution | Summary | Owner | Reporter |
---|---|---|---|---|
#935 | Fixed | IMPORTANT: Corrected initialization of boundary indices in 2D applications | ||
Description |
Removed the initialization of 3D boundary indices in mod_ncparam.F for shallow-water applications where SOLVE3D is undefined. Now we have: ! ! Set generic lateral boundary indices for LBC structure. Use the same ! values of the state variables at the same C-grid location. Generic ! indices are used for testing periodicity. The PSI-variables and ! W-variables are assigned the same value as the RHO-variables. ! isBp2d=isFsur ! 2D PSI-variables isBr2d=isFsur ! 2D RHO-variables isBu2d=isUbar ! 2D U-variables isBv2d=isVbar ! 2D V-variables #if defined SOLVE3D isBp3d=isTvar(1) ! 3D PSI-variables isBr3d=isTvar(1) ! 3D RHO-variables isBu3d=isUvel ! 3D U-variables isBv3d=isVvel ! 3D V-variables isBw3d=isTvar(1) ! 3D W-variables # if defined GLS_MIXING || defined MY25_MIXING isMtke=isTvar(MT)+1 ! turbulent variables # endif #endif In 2D applications, the total number of tracers, MT=0. Therefore, the isTvar vector is allocated as IF (.not.allocated(isTvar)) THEN allocate ( isTvar(MT) ) Dmem(1)=Dmem(1)+REAL(MT,r8) END IF Thus, we have only access to element zero of the vector isTvar, which may trigger a segmentation violation when accessing isTvar(1). Many thanks to Moein DoostMohammadi for bringing this issue to my attention. |
|||
#934 | Done | Added new module get_env.F | ||
Description |
A new module get_env.F was added to retrieve system environmental variables, which can be decoded as logical, integer, or string values. For example, we can have in the environment: setenv ROMS_DEBUG 1 setenv ROMS_TRACE 4 setenv ROMS_HOME /Users/arango/ocean/repository/git Then, we can retrieve such values into a logical, integer, and strings variables, respectively, inside ROMS code by using: Logical :: Ldebug integer :: Itrace character (len=256) :: roms_home status = get_env('ROMS_DEBUG', Ldebug) status = get_env('ROMS_TRACE', Itrace) status = get_env('ROMS_HOME', roms_home) Notice that get_env is a PUBLIC overloading function that decodes the string value of the environmental variables to another type of variable like integer and logical. Currently, this capability is used in the ROMS-JEDi interface, but I can see its usage in the ROMS source code in the future. The get_env.F module uses Fortran 2003 GET_ENVIRONMENT_VARIABLE intrinsic function. |
|||
#933 | Done | Updated several Matlab scripts | ||
Description |
|