OOPS
qg_stream_mod.F90
Go to the documentation of this file.
1
! (C) Copyright 2009-2016 ECMWF.
2
!
3
! This software is licensed under the terms of the Apache Licence Version 2.0
4
! which can be obtained at http://www.apache.org/licenses/LICENSE-2.0.
5
! In applying this licence, ECMWF does not waive the privileges and immunities
6
! granted to it by virtue of its status as an intergovernmental organisation nor
7
! does it submit to any jurisdiction.
8
9
module
qg_stream_mod
10
11
use
kinds
12
use
qg_gom_mod
13
use
qg_obsvec_mod
14
15
implicit none
16
17
private
18
public
::
qg_stream_equiv
,
qg_stream_equiv_ad
19
! ------------------------------------------------------------------------------
20
contains
21
! ------------------------------------------------------------------------------
22
! Public
23
! ------------------------------------------------------------------------------
24
!> Get equivalent for streamfunction (TL calls this subroutine too)
25
subroutine
qg_stream_equiv
(gom,hofx,bias)
26
27
implicit none
28
29
! Passed variables
30
type
(
qg_gom
),
intent(in)
:: gom
!< GOM
31
type
(
qg_obsvec
),
intent(inout)
:: hofx
!< Observation vector
32
real
(kind_real),
intent(in)
:: bias
!< Bias
33
34
! Local variables
35
integer
:: iobs
36
37
! Loop over observations
38
do
iobs=1,gom%nobs
39
hofx%values(1,iobs) = gom%values(1,iobs)+bias
40
enddo
41
42
end subroutine
qg_stream_equiv
43
! ------------------------------------------------------------------------------
44
!> Get equivalent for streamfunction - adjoint
45
subroutine
qg_stream_equiv_ad
(gom,hofx,bias)
46
47
implicit none
48
49
! Passed variables
50
type
(
qg_gom
),
intent(inout)
:: gom
!< GOM
51
type
(
qg_obsvec
),
intent(in)
:: hofx
!< Observation vector
52
real
(kind_real),
intent(inout)
:: bias
!< Bias
53
54
! Local variables
55
integer
:: iobs
56
57
! Loop over observations
58
do
iobs=1,gom%nobs
59
gom%values(1,iobs) = hofx%values(1,iobs)
60
bias = bias+hofx%values(1,iobs)
61
enddo
62
63
end subroutine
qg_stream_equiv_ad
64
! ------------------------------------------------------------------------------
65
end module
qg_stream_mod
qg_stream_mod
Definition:
qg_stream_mod.F90:9
qg_stream_mod::qg_stream_equiv_ad
subroutine, public qg_stream_equiv_ad(gom, hofx, bias)
Get equivalent for streamfunction - adjoint.
Definition:
qg_stream_mod.F90:46
qg_obsvec_mod
Definition:
qg_obsvec_mod.F90:10
qg_stream_mod::qg_stream_equiv
subroutine, public qg_stream_equiv(gom, hofx, bias)
Get equivalent for streamfunction (TL calls this subroutine too)
Definition:
qg_stream_mod.F90:26
qg_gom_mod::qg_gom
Definition:
qg_gom_mod.F90:33
qg_gom_mod
Definition:
qg_gom_mod.F90:9
qg_obsvec_mod::qg_obsvec
Definition:
qg_obsvec_mod.F90:35
fv3-bundle
oops
qg
model
qg_stream_mod.F90
Generated on Sun Oct 25 2020 12:42:59 for OOPS by
1.8.18