source: branches/dev_001_GM/NEMO/TOP_SRC/CFC/trcini.cfc.h90 @ 764

Last change on this file since 764 was 764, checked in by gm, 13 years ago

dev_001_GM - create new directory and move files only

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 4.4 KB
Line 
1   !!======================================================================
2   !!                         ***  trcini.cfc.h90  ***
3   !! TOP :   Initialisation of CFC chemical model
4   !!======================================================================
5   !! History :    -   !  2004-06  (JC. Dutay) Original code
6   !!             1.0  !  2005-03  (O. Aumont, A. El Moussaoui) F90
7   !!              -   !  2005-10  (C. Ethe) Modularity
8   !!----------------------------------------------------------------------
9
10   CHARACTER (len=34) ::   clname = 'cfc1112.atm' ! ???
11
12   INTEGER  ::   inum                   ! unit number
13   REAL(wp) ::   ylats = -10.           ! 10 degrees south
14   REAL(wp) ::   ylatn =  10.           ! 10 degrees north
15
16   !!----------------------------------------------------------------------
17   !! NEMO/TOP 1.0 , LOCEAN-IPSL (2005)
18   !! $Id$
19   !! Software governed by the CeCILL licence (modipsl/doc/NEMO_CeCILL.txt)
20   !!----------------------------------------------------------------------
21
22CONTAINS
23
24   SUBROUTINE trc_ini
25      !!----------------------------------------------------------------------
26      !!                     ***  trcini.cfc.h90  *** 
27      !!
28      !! ** Purpose : special initialization for cfc model
29      !!----------------------------------------------------------------------
30      INTEGER  ::   ji, jj, jn, jl, jm
31      REAL(wp) ::   zyy,  zyd
32      !!----------------------------------------------------------------------
33
34      ! Initialization of boundaries conditions
35      ! ---------------------------------------
36      pp_cfc(:,:,:) = 0.e0
37      qtr   (:,:,:) = 0.e0
38      xphem (:,:)   = 0.e0
39      DO jn = 1, jptra
40         DO jm = 1, jphem
41            DO jl = 1, jpyear
42               p_cfc(jl,jm,jn) = 0.0
43            END DO
44         END DO
45      END DO
46     
47     
48      ! Initialization of qint in case of  no restart
49      !----------------------------------------------
50      IF( .NOT. lrsttr ) THEN   
51         IF(lwp) THEN
52            WRITE(numout,*)
53            WRITE(numout,*) 'Initialization de qint ; No restart : qint equal zero '
54         ENDIF
55         DO jn = 1, jptra
56            qint(:,:,jn) = 0.e0
57         END DO
58      ENDIF
59
60
61      !   READ CFC partial pressure atmospheric value :
62      !     p11(year,nt) = PCFC11  in northern (1) and southern (2) hemisphere
63      !     p12(year,nt) = PCFC12  in northern (1) and southern (2) hemisphere
64      !--------------------------------------------------------------------
65
66      IF(lwp) WRITE(numout,*) 'read of formatted file cfc1112atm'
67     
68      CALL ctlopn( inum, clname, 'OLD', 'FORMATTED', 'SEQUENTIAL',   &
69         &           1, numout, .FALSE., 1 )
70      REWIND(inum)
71     
72
73      ! Skip over 1st six descriptor lines
74      !-----------------------------------
75      DO jm = 1, 6
76         READ(inum,'(1x)')
77      END DO
78   
79   
80      !   Read file
81      ! ---------
82      DO jn = 31, 98
83         READ(inum,*) zyy, p_cfc(jn,1,jp11), p_cfc(jn,1,jp12), &
84            &              p_cfc(jn,2,jp11), p_cfc(jn,2,jp12)
85         WRITE(numout,'(f7.2, 4f8.2)' ) &
86            &         zyy, p_cfc(jn,1,jp11), p_cfc(jn,1,jp12), &
87            &              p_cfc(jn,2,jp11), p_cfc(jn,2,jp12)
88      END DO
89
90      p_cfc(32,1:2,jp11) = 5.e-4
91      p_cfc(33,1:2,jp11) = 8.e-4
92      p_cfc(34,1:2,jp11) = 1.e-6
93      p_cfc(35,1:2,jp11) = 2.e-3
94      p_cfc(36,1:2,jp11) = 4.e-3
95      p_cfc(37,1:2,jp11) = 6.e-3
96      p_cfc(38,1:2,jp11) = 8.e-3
97      p_cfc(39,1:2,jp11) = 1.e-2
98     
99     
100      IF(lwp) THEN
101         WRITE(numout,*)
102         WRITE(numout,*) ' Year   p11HN    p11HS    p12HN    p12HS '
103         DO jn = 30, 100
104            WRITE(numout, '( 1I4, 4F9.2)')   &
105               &         jn, p_cfc(jn,1,jp11), p_cfc(jn,2,jp11), &
106               &             p_cfc(jn,1,jp12), p_cfc(jn,2,jp12)
107         END DO
108      ENDIF
109
110
111      ! Interpolation factor of atmospheric partial pressure
112      ! Linear interpolation between 2 hemispheric function of latitud between ylats and ylatn
113      !---------------------------------------------------------------------------------------
114      zyd = ylatn - ylats     
115      DO jj = 1 , jpj
116         DO ji = 1 , jpi
117            IF(     gphit(ji,jj) >= ylatn ) THEN   ;   xphem(ji,jj) = 1.e0
118            ELSEIF( gphit(ji,jj) <= ylats ) THEN   ;   xphem(ji,jj) = 0.e0
119            ELSE                                   ;   xphem(ji,jj) = ( gphit(ji,jj) - ylats) / zyd
120            ENDIF
121         END DO
122      END DO
123      !
124   END SUBROUTINE trc_ini
Note: See TracBrowser for help on using the repository browser.