source: LMDZ6/trunk/libf/phylmd/cosp2/cosp_isccp_interface.F90 @ 4744

Last change on this file since 4744 was 3358, checked in by idelkadi, 6 years ago

Implementation de la nouvelle version COSPv2 dans LMDZ.
Pour compiler avec makelmdz_fcma utiliser l'option "-cosp2 true"

File size: 4.1 KB
Line 
1! %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2! Copyright (c) 2015, Regents of the University of Colorado
3! All rights reserved.
4!
5! Redistribution and use in source and binary forms, with or without modification, are
6! permitted provided that the following conditions are met:
7!
8! 1. Redistributions of source code must retain the above copyright notice, this list of
9!    conditions and the following disclaimer.
10!
11! 2. Redistributions in binary form must reproduce the above copyright notice, this list
12!    of conditions and the following disclaimer in the documentation and/or other
13!    materials provided with the distribution.
14!
15! 3. Neither the name of the copyright holder nor the names of its contributors may be
16!    used to endorse or promote products derived from this software without specific prior
17!    written permission.
18!
19! THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
20! EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
21! MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
22! THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
23! SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
24! OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
25! INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
26! LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
27! OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28!
29! History
30! May 2015 - D. Swales - Original version
31! %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
32MODULE MOD_COSP_ISCCP_INTERFACE
33  USE COSP_KINDS,      ONLY: wp
34  USE mod_icarus,      ONLY: isccp_top_height,isccp_top_height_direction
35  IMPLICIT NONE
36 
37  !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
38  !                                  TYPE isccp_in
39  !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
40  ! Derived input type for ISCCP simulator
41  type isccp_IN
42     integer,pointer  ::       &
43          Npoints,             & ! Number of gridpoints.
44          Ncolumns,            & ! Number of columns.
45          Nlevels,             & ! Number of levels.
46          top_height,          & !
47          top_height_direction   !
48     integer,pointer ::        &
49          sunlit(:)              ! Sunlit points (npoints)
50     real(wp),pointer ::       &
51          emsfc_lw
52     real(wp),pointer ::       &
53          skt(:)                 ! Surface temperature (npoints)
54     real(wp),pointer ::       &
55          at(:,:),             & ! Temperature (npoint,nlev)
56          pfull(:,:),          & ! Pressure (npoints,nlev)
57          qv(:,:)                ! Specific humidity (npoints,nlev)
58     real(wp),pointer  ::       &         
59          phalf(:,:)             ! Pressure at half levels (npoints,nlev+1)
60     real(wp),pointer ::       &
61          frac_out(:,:,:),     & ! Cloud fraction (npoints,ncolumns,nlevels)
62          dtau(:,:,:),         & ! Optical depth (npoints,ncolumns,nlevels)
63          dem(:,:,:)             ! Emissivity (npoints,ncolumns,nlevels)
64  end type isccp_IN
65
66CONTAINS
67
68  !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
69  !                                                     SUBROUTINE cosp_isccp_init
70  !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
71  SUBROUTINE COSP_ISCCP_INIT(top_height,top_height_direction)
72     integer,intent(in) :: &
73         top_height, &
74         top_height_direction
75
76    ! Cloud-top height determination
77    isccp_top_height           = top_height
78    isccp_top_height_direction = top_height_direction
79
80  END SUBROUTINE COSP_ISCCP_INIT
81
82  !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
83  !                                    END MODULE
84  !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
85END MODULE MOD_COSP_ISCCP_INTERFACE
Note: See TracBrowser for help on using the repository browser.