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.
WorkingGroups/TAM/ReferenceManual/CodingNorm (diff) – NEMO

Changes between Version 1 and Version 2 of WorkingGroups/TAM/ReferenceManual/CodingNorm


Ignore:
Timestamp:
2009-08-19T15:47:31+02:00 (15 years ago)
Author:
avidard
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • WorkingGroups/TAM/ReferenceManual/CodingNorm

    v1 v2  
    66However additional rules hes to be followed: 
    77 
    8 * For a given direct module <tt>mod.F90</tt> (that contains the subroutine sub), a corresponding module <tt>mod_tam.F90</tt> has to be created and it should contain the tangent linear subroutine called <tt>sub_tan</tt>, the adjoint subroutine <tt>sub_adj</tt> and the corresponding testing routine <tt>sub_adj_tst</tt>. 
     8* For a given direct module '''mod.F90''' (that contains the subroutine sub), a corresponding module '''mod_tam.F90''' has to be created and it should contain the tangent linear subroutine called '''sub_tan''', the adjoint subroutine '''sub_adj''' and the corresponding testing routine '''sub_adj_tst'''. 
    99 
    10 * For a given active direct variable <tt>var</tt>, the corresponding tangent linear and adjoint variable should be named <tt>var_tl</tt> and <tt>var_ad</tt> respectively. The underscore is omitted for local active variable. To summarize, active variables <tt>un<\tt>, <tt>pun<\tt> and <tt>zun<\tt> will give <tt>un_tl<\tt>, <tt>pun_tl<\tt> and <tt>zuntl<\tt> in the tangent module 
     10* For a given active direct variable '''var''', the corresponding tangent linear and adjoint variable should be named '''var_tl''' and '''var_ad''' respectively. The underscore is omitted for local active variable. To summarize, active variables '''un''', '''pun''' and '''zun''' will give '''un_tl''', '''pun_tl''' and '''zuntl''' in the tangent module 
    1111 
    1212* For historical reasons, some modules do not follow these rules, feel free to update them.