New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
ticket/0846 (diff) – NEMO

Changes between Version 5 and Version 6 of ticket/0846


Ignore:
Timestamp:
2011-09-05T13:50:22+02:00 (13 years ago)
Author:
momme
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • ticket/0846

    v5 v6  
    9797The strategy is open for discussion because it is not urgent matter in the 2011 work plan, but it is important that we find a common way forward that will maximize all development efforts and the research carried on by the community of ecosystem modelling. 
    9898 
     99Alternatively to allow for switching between models at run-time without the need for recompilation, the follwoing approach can be taken: 
     100 
     101{{{ 
     102 
     103par_trc.F90: 
     104 
     105   IMPLICIT NONE 
     106   PUBLIC 
     107 
     108   ! Passive tracers : Total size 
     109   ! ---------------               ! total number of passive tracers, of 
     1102d and 3d output and trend arrays 
     111!=============================================== 
     112! Modification to NEMO trunk for ERSEM coupling 
     113! M.Butenschoen, PML - March 2009 
     114! \/ 
     115! \/ 
     116# if defined key_PMLersem 
     117   INTEGER, PUBLIC, PARAMETER :: jp_pmlersem = 56 
     118   INTEGER, PUBLIC, PARAMETER ::   jptra    =  jp_pmlersem + 
     119jp_lobster    + jp_pisces     + jp_cfc     + jp_c14b     + jp_my_trc 
     120   INTEGER, PUBLIC, PARAMETER :: jp_pmlersem0=1, jp_pmlersem1=jp_pmlersem 
     121# else 
     122! /\ 
     123! /\ 
     124!=============================================== 
     125   INTEGER, PUBLIC, PARAMETER ::   jptra    =  jp_lobster    + 
     126jp_pisces     + jp_cfc     + jp_c14b     + jp_my_trc 
     127!=============================================== 
     128! Modification to NEMO trunk for ERSEM coupling 
     129! M.Butenschoen, PML - March 2009 
     130! \/ 
     131! \/ 
     132# endif 
     133! /\ 
     134! /\ 
     135!=============================================== 
     136   INTEGER, PUBLIC, PARAMETER ::   jpdia2d  =  jp_lobster_2d + 
     137jp_pisces_2d  + jp_cfc_2d  + jp_c14b_2d  + jp_my_trc_2d 
     138 
     139trcini.F90: 
     140 
     141      ENDIF 
     142      
     143!=============================================== 
     144! Modification to NEMO trunk for ERSEM coupling 
     145! M.Butenschoen, PML - March 2009 
     146! \/ 
     147! \/ 
     148# if defined key_PMLersem 
     149      CALL trc_ini_PMLersem       ! MY_TRC  tracers 
     150# else 
     151      WRITE(numout,*) '          ERSEM not used' 
     152# endif 
     153! /\ 
     154! /\ 
     155!=============================================== 
     156 
     157      IF( lk_my_trc  ) THEN   ;   CALL trc_ini_my_trc       ! MY_TRC  tracer 
     158 
     159trc_oce.F90: 
     160 
     161#if defined key_top && defined key_pisces 
     162   !!---------------------------------------------------------------------- 
     163   !!   'key_top'   &   'key_pisces'                       PISCES 
     164bio-model          
     165   !!---------------------------------------------------------------------- 
     166   LOGICAL, PUBLIC, PARAMETER ::   lk_qsr_bio = .TRUE.   !: bio-model 
     167light absorption flag 
     168!=============================================== 
     169! Modification to NEMO trunk for ERSEM coupling 
     170! M.Butenschoen, PML - March 2008 
     171! \/ 
     172! \/ 
     173#elif defined key_top && defined key_PMLersem 
     174   !! light for NEMO-ERSEM 
     175   LOGICAL, PUBLIC, PARAMETER ::   lk_qsr_bio = .TRUE. 
     176! /\ 
     177! /\ 
     178!=============================================== 
     179#else 
     180   !!---------------------------------------------------------------------- 
     181   !! Default option                          No bio-model light absorption 
     182 
     183trcrad.F90: 
     184 
     185      IF( lk_my_trc  )   CALL trc_rad_sms( kt, trb, trn, jp_myt0 , 
     186jp_myt1               )  ! MY_TRC model 
     187!=============================================== 
     188! Modification to NEMO trunk for ERSEM coupling 
     189! M.Butenschoen, PML - March 2009 
     190! \/ 
     191! \/ 
     192# if defined key_PMLersem 
     193      write(6,*) jp_pmlersem0,jp_pmlersem1 
     194      CALL trc_rad_sms( kt, trb, trn, jp_pmlersem0 , jp_pmlersem1)  
     195# endif 
     196! /\ 
     197! /\ 
     198!=============================================== 
     199 
     200 
     201trcsms.F90: 
     202 
     203      IF( lk_my_trc  )   CALL trc_sms_my_trc ( kt )    ! MY_TRC  tracers 
     204 
     205!=============================================== 
     206! Modification to NEMO trunk for ERSEM coupling 
     207! M.Butenschoen, PML - March 2009 
     208! \/ 
     209! \/ 
     210# if defined key_PMLersem 
     211      CALL trc_PMLersem ( kt ) 
     212# endif 
     213! /\ 
     214! /\ 
     215!=============================================== 
     216 
     217trcstp.F90: 
     218 
     219                             CALL trc_sms( kt )           ! tracers: 
     220sink and source 
     221!=============================================== 
     222! Modification to NEMO trunk for ERSEM coupling 
     223! M.Butenschoen, PML - March 2009 
     224! \/ 
     225! \/ 
     226#if defined key_PMLersem      
     227                             CALL trc_trp_PMLersem( kt ) 
     228#else 
     229! /\ 
     230! /\ 
     231!=============================================== 
     232                             CALL trc_trp( kt )           ! transport of 
     233passive tracers 
     234!=============================================== 
     235! Modification to NEMO trunk for ERSEM coupling 
     236! M.Butenschoen, PML - March 2009 
     237! \/ 
     238! \/ 
     239#endif 
     240! /\ 
     241! /\ 
     242!=============================================== 
     243      IF( kt == nittrc000 )  CALL iom_close( numrtr )     ! close input  
     244passive tracers restart file 
     245      IF( lrst_trc )         CALL trc_rst_wri( kt )       ! write tracer 
     246restart file 
     247!=============================================== 
     248! Modification to NEMO trunk for ERSEM coupling 
     249! M.Butenschoen, PML - March 2009 
     250! \/ 
     251! \/ 
     252# if defined key_PMLersem 
     253                             CALL trc_dia_PMLersem( kt )   ! diagnostics 
     254# else 
     255! /\ 
     256! /\ 
     257!=============================================== 
     258      IF( lk_iomput ) THEN 
     259                             CALL trc_wri( kt )           ! output of 
     260passive tracers 
     261      ELSE 
     262                             CALL trc_dia( kt )   ! diagnostics 
     263      ENDIF 
     264!=============================================== 
     265! Modification to NEMO trunk for ERSEM coupling 
     266! M.Butenschoen, PML - March 2009 
     267! \/ 
     268! \/ 
     269# endif 
     270! /\ 
     271! /\ 
     272!=============================================== 
     273      IF( lk_trdmld_trc  )   CALL trd_mld_trc( kt )     ! trends: 
     274Mixed-layer 
     275 
     276}}} 
     277 
    99278=== Status === 
    100279On the dev branch we have now committed the method we currently use and that has to be modified. It is just a placeholder for the status quo at CMCC and very similar to NERC and MetOffice.