source: branches/jerome/src_flexwrf_v3.1/interpol_vdep.f90 @ 16

Last change on this file since 16 was 16, checked in by jebri, 11 years ago

sources for flexwrf v3.1

File size: 3.8 KB
Line 
1!**********************************************************************
2! Copyright 1998,1999,2000,2001,2002,2005,2007,2008,2009,2010         *
3! Andreas Stohl, Petra Seibert, A. Frank, Gerhard Wotawa,             *
4! Caroline Forster, Sabine Eckhardt, John Burkhart, Harald Sodemann   *
5!                                                                     *
6! This file is part of FLEXPART.                                      *
7!                                                                     *
8! FLEXPART is free software: you can redistribute it and/or modify    *
9! it under the terms of the GNU General Public License as published by*
10! the Free Software Foundation, either version 3 of the License, or   *
11! (at your option) any later version.                                 *
12!                                                                     *
13! FLEXPART is distributed in the hope that it will be useful,         *
14! but WITHOUT ANY WARRANTY; without even the implied warranty of      *
15! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the       *
16! GNU General Public License for more details.                        *
17!                                                                     *
18! You should have received a copy of the GNU General Public License   *
19! along with FLEXPART.  If not, see <http://www.gnu.org/licenses/>.   *
20!**********************************************************************
21
22subroutine interpol_vdep(level,vdepo,ix,jy,ixp,jyp, &
23                         p1,p2,p3,p4,dt1,dt2,dtt,depoindicator)
24  !                           i     o
25  !****************************************************************************
26  !                                                                           *
27  !  Interpolation of the deposition velocity on 2-d model layer.             *
28  !  In horizontal direction bilinear interpolation interpolation is used.    *
29  !  Temporally a linear interpolation is used.                               *
30  !                                                                           *
31  !  1 first time                                                             *
32  !  2 second time                                                            *
33  !                                                                           *
34  !                                                                           *
35  !     Author: A. Stohl                                                      *
36  !                                                                           *
37  !     30 May 1994                                                           *
38  !                                                                           *
39  !****************************************************************************
40  !                                                                           *
41  ! Variables:                                                                *
42  !                                                                           *
43  ! level                number of species for which interpolation is done    *
44  !                                                                           *
45  !****************************************************************************
46
47  use par_mod
48  use com_mod
49! use interpol_mod
50
51  implicit none
52
53  integer :: level,indexh,m
54  real :: y(2),vdepo
55  real :: p1,p2,p3,p4,dtt,dt1,dt2
56  integer :: ix,jy,ixp,jyp
57  logical :: depoindicator(maxspec)
58
59  ! a) Bilinear horizontal interpolation
60
61  do m=1,2
62    indexh=memind(m)
63
64    y(m)=p1*vdep(ix ,jy ,level,indexh) &
65         +p2*vdep(ixp,jy ,level,indexh) &
66         +p3*vdep(ix ,jyp,level,indexh) &
67         +p4*vdep(ixp,jyp,level,indexh)
68  end do
69
70
71
72  ! b) Temporal interpolation
73
74  vdepo=(y(1)*dt2+y(2)*dt1)*dtt
75
76  depoindicator(level)=.false.
77
78
79end subroutine interpol_vdep
Note: See TracBrowser for help on using the repository browser.
hosted by ZAMG