Opened 16 years ago

Closed 16 years ago

#138 closed bug (Fixed)

Updated all biology models

Reported by: arango Owned by: arango
Priority: major Milestone: Release ROMS/TOMS 3.1
Component: Nonlinear Version: 3.1
Keywords: Cc:

Description

All the biology models were updated to use t(:,:,:,nstp,:) values in the right-hand-side terms instead of t(:,:,:,nnew,:). The nnew index is incomplete and only has the surface flux conditions applied in pre_step3d. We are not diffusing this term yet because we have lambda=1 (backward implicit) instead of lambda=0.5 (Crack-Nicolson implicit). Well, this is not a big deal with the biology since the surface tracer flux is zero for now. However if the biology has temperature dependency in the right-hand-side terms, there is a big problem because the nnew index is nothing like temperature at this intermediate step. It has transport units (Tunits meter) since we do not have yet the new values for zeta and Hz. These are known after the 2D barotropic time-stepping. The t(:,:,:,3,:) has the contribution (predictor) for horizontal and vertical advection which will be used in step3d_t to finalize time-stepping (corrector). The t(:,:,:,nstp,:) has the full previous time step values and it is in tracer units.

This change affects Fasham (fasham.h), Nemuro (nemuro.h), and Ecosim (ecosim.h). For consistency, the NPZD models (npzd_Franks.h and npzd_Powell.h) were also corrected including their tangent linear, adjoint, and representer model versions. The NPZD_POWELL passes the sanity check. However, there are still adjoint problems in NPZD_FRANKS. Perhaps, we will take a look at this in the future. Anyway, we only use NPZD_POWELL in all our adjoint-based applications.

Many thanks to Kate Hedstrom for reporting this problem with the biology models.

Change History (1)

comment:1 by arango, 16 years ago

Resolution: Fixed
Status: newclosed
Summary: Update all biology modelsUpdated all biology models
Note: See TracTickets for help on using tickets.