!-------------------------------------- LICENCE BEGIN ------------------------------------ !Environment Canada - Atmospheric Science and Technology License/Disclaimer, ! version 3; Last Modified: May 7, 2008. !This is free but copyrighted software; you can use/redistribute/modify it under the terms !of the Environment Canada - Atmospheric Science and Technology License/Disclaimer !version 3 or (at your option) any later version that should be found at: !http://collaboration.cmc.ec.gc.ca/science/rpn.comm/license.html ! !This software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; !without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. !See the above mentioned License/Disclaimer for more details. !You should have received a copy of the License/Disclaimer along with this software; !if not, you can write to: EC-RPN COMM Group, 2121 TransCanada, suite 500, Dorval (Quebec), !CANADA, H9P 1J3; or send e-mail to service.rpn@ec.gc.ca !-------------------------------------- LICENCE END -------------------------------------- !SUBROUTINE amhu2es 1 #if defined (DOC) * ***s/r amhu2es - Lnq, temperature and sfc pressure adjoints from dewpoint depression * adjoints from transformation * * *Author : C. Chouinard *ARMA/AES September 1998 *Revision: * P. Koclas CMC Apr 2003 * -changed loop nesting order for ibm conversion * * ** Purpose: -Computation of Lnq, temperature and sfc pressure adjoints from * dewpoint depression adjoint using precalculated invariant adjoint operators * * *Arguments * #endif IMPLICIT NONE *implicits c------------------------------------------------------------------------ #include "comdim.cdk"
#include "comdimo.cdk"
c #include "commvo.cdk"
#include "commvog.cdk"
c integer jobs,jlev c Computation of adjoints from dewpoint depression adjoint do jobs = 1, nobtot do jlev = 1, nflev gomq (jlev,jobs) = gomq(jlev,jobs)+ $ ollq2es(1,jlev,jobs)*gomes(jlev,jobs) gomps(1,jobs) = gomps(1,jobs)+ $ ollq2es(2,jlev,jobs)*gomes(jlev,jobs) gomt (jlev,jobs) = gomt(jlev,jobs)+ $ ollq2es(3,jlev,jobs)*gomes(jlev,jobs) enddo enddo c return end