Opened 20 months ago
Last modified 20 months ago
#955 closed upgrade
IMPORTANT: Refactored state vector indices — at Initial Version
Reported by: | arango | Owned by: | |
---|---|---|---|
Priority: | major | Milestone: | Release ROMS/TOMS 4.2 |
Component: | Nonlinear | Version: | 4.1 |
Keywords: | Cc: |
Description
- The state vector indices are used in various algorithms. The numeric order is essential in data assimilation because they are used to associate observations to the type of variables in the state vector:
isFsur = 1 ! free-surface isUbar = 2 ! 2D U-velocity isVbar = 3 ! 2D V-velocity isUvel = 4 ! 3D U-velocity isVvel = 5 ! 3D V-velocity ic=5 #ifdef SOLVE3D DO i=1,MT ic=ic+1 isTvar(i)=ic ! Active/Passive tracers END DO #endif #if defined ADJUST_WSTRESS || defined FORCING_SV || \ defined HESSIAN_FSV || defined SO_SEMI || \ defined STOCHASTIC_OPT ic=ic+1 isUstr=ic ! surface U-velocity stress ic=ic+1 isVstr=ic ! surface V-velocity stress #endif #ifdef SOLVE3D # if defined ADJUST_STFLUX || defined FORCING_SV || \ defined HESSIAN_FSV || defined SO_SEMI || \ defined STOCHASTIC_OPT DO i=1,MT ic=ic+1 isTsur(i)=ic ! surface tracer flux END DO # endif #endif #ifdef WEC ic=ic+1 isU2Sd=ic ! 2D Stokes U-velocity ic=ic+1 isV2Sd=ic ! 2D Stokes V-velocity # if defined SOLVE3D ic=ic+1 isU3Sd=ic ! 3D Stokes U-velocity ic=ic+1 isV3Sd=ic ! 3D Stokes V-velocity # endif #endif #ifdef SOLVE3D # if defined GLS_MIXING || defined MY25_MIXING ic=ic+1 isMtke=ic ! TKE # endif ic=ic+1 isWvel=ic ! vertical velocity #endif
Therefore, all the state indices from the zeta to the last Tvar(:) tracer variables cannot be changed.
- Updated the GNU make configuration (*.mk) files to include the environmental variable ESMFMKFILE. Thus, now we have:
ifdef USE_ESMF include $(ESMFMKFILE) ESMF_OS ?= $(OS) ESMF_SUBDIR := $(ESMF_OS).$(ESMF_COMPILER).$(ESMF_ABI).$(ESMF_COMM).$(ESMF_SITE) ESMF_MK_DIR ?= $(ESMF_DIR)/lib/lib$(ESMF_BOPT)/$(ESMF_SUBDIR) FFLAGS += $(ESMF_F90COMPILEPATHS) LIBS += $(ESMF_F90LINKPATHS) $(ESMF_F90ESMFLINKLIBS) endif
Many thanks to Ufuk Turuncoglu for bringing this issue to my attention.
- Made tiny changes to NUOPC cap modules cmeps_roms.F and esmf_roms.F.
Note:
See TracTickets
for help on using tickets.