1 | MODULE trcrst_cfc |
---|
2 | !!====================================================================== |
---|
3 | !! *** MODULE trcrst_cfc *** |
---|
4 | !! TOP : create, write, read the restart files of CFC tracer |
---|
5 | !!====================================================================== |
---|
6 | !! History : 1.0 ! 2010-01 (C. Ethe) Original |
---|
7 | !!---------------------------------------------------------------------- |
---|
8 | #if defined key_cfc |
---|
9 | !!---------------------------------------------------------------------- |
---|
10 | !! 'key_cfc' CFC tracers |
---|
11 | !!---------------------------------------------------------------------- |
---|
12 | !! trc_rst_read_cfc : read restart file |
---|
13 | !! trc_rst_wri_cfc : write restart file |
---|
14 | !!---------------------------------------------------------------------- |
---|
15 | USE oce_trc ! Ocean variables |
---|
16 | USE par_trc ! TOP parameters |
---|
17 | USE trc ! TOP variables |
---|
18 | USE trcsms_cfc ! CFC sms trends |
---|
19 | USE in_out_manager ! I/O manager |
---|
20 | USE iom |
---|
21 | |
---|
22 | IMPLICIT NONE |
---|
23 | PRIVATE |
---|
24 | |
---|
25 | PUBLIC trc_rst_read_cfc ! called by trcini.F90 module |
---|
26 | PUBLIC trc_rst_wri_cfc ! called by trcini.F90 module |
---|
27 | |
---|
28 | CONTAINS |
---|
29 | |
---|
30 | SUBROUTINE trc_rst_read_cfc( knum ) |
---|
31 | !!---------------------------------------------------------------------- |
---|
32 | !! *** trc_rst_read_cfc *** |
---|
33 | !! |
---|
34 | !! ** Purpose : Read in restart file specific variables from CFC model |
---|
35 | !! |
---|
36 | !!---------------------------------------------------------------------- |
---|
37 | INTEGER, INTENT(in) :: knum ! unit of the restart file |
---|
38 | INTEGER :: jn ! dummy loop indices |
---|
39 | !!---------------------------------------------------------------------- |
---|
40 | |
---|
41 | IF(lwp) WRITE(numout,*) |
---|
42 | IF(lwp) WRITE(numout,*) ' trc_rst_read_cfc : Read specific variables from CFC model ' |
---|
43 | IF(lwp) WRITE(numout,*) ' ~~~~~~~~~~~~~~' |
---|
44 | |
---|
45 | DO jn = jp_cfc0, jp_cfc1 |
---|
46 | CALL iom_get( knum, jpdom_autoglo, 'qint_'//ctrcnm(jn), qint_cfc(:,:,jn) ) |
---|
47 | END DO |
---|
48 | |
---|
49 | END SUBROUTINE trc_rst_read_cfc |
---|
50 | |
---|
51 | SUBROUTINE trc_rst_wri_cfc( kt, kitrst, knum ) |
---|
52 | !!---------------------------------------------------------------------- |
---|
53 | !! *** trc_rst_read_cfc *** |
---|
54 | !! |
---|
55 | !! ** Purpose : Read in restart file specific variables from CFC model |
---|
56 | !! |
---|
57 | !!---------------------------------------------------------------------- |
---|
58 | INTEGER, INTENT(in) :: kt ! time step |
---|
59 | INTEGER, INTENT(in) :: kitrst ! time step of restart write |
---|
60 | INTEGER, INTENT(in) :: knum ! unit of the restart file |
---|
61 | INTEGER :: jn ! dummy loop indices |
---|
62 | !!---------------------------------------------------------------------- |
---|
63 | |
---|
64 | IF(lwp) WRITE(numout,*) |
---|
65 | IF(lwp) WRITE(numout,*) ' trc_rst_wri_cfc : Write specific variables from CFC model ' |
---|
66 | IF(lwp) WRITE(numout,*) ' ~~~~~~~~~~~~~~' |
---|
67 | |
---|
68 | DO jn = jp_cfc0, jp_cfc1 |
---|
69 | CALL iom_rstput( kt, kitrst, knum, 'qint_'//ctrcnm(jn), qint_cfc(:,:,jn) ) |
---|
70 | END DO |
---|
71 | |
---|
72 | END SUBROUTINE trc_rst_wri_cfc |
---|
73 | |
---|
74 | #else |
---|
75 | !!---------------------------------------------------------------------- |
---|
76 | !! Dummy module : No passive tracer |
---|
77 | !!---------------------------------------------------------------------- |
---|
78 | CONTAINS |
---|
79 | SUBROUTINE trc_rst_read_cfc( knum ) |
---|
80 | INTEGER, INTENT(in) :: knum |
---|
81 | WRITE(*,*) 'trc_rst_wri_cfc: You should not have seen this print! error?', knum |
---|
82 | END SUBROUTINE trc_rst_read_cfc |
---|
83 | |
---|
84 | SUBROUTINE trc_rst_wri_cfc( kt, kitrst, knum ) |
---|
85 | INTEGER, INTENT(in) :: kt, kitrst, knum |
---|
86 | WRITE(*,*) 'trc_rst_wri_cfc: You should not have seen this print! error?', kt, kitrst, knum |
---|
87 | END SUBROUTINE trc_rst_wri_cfc |
---|
88 | #endif |
---|
89 | |
---|
90 | !!====================================================================== |
---|
91 | END MODULE trcrst_cfc |
---|