Ignore:
Timestamp:
Jul 23, 2024, 3:29:36 PM (3 months ago)
Author:
abarral
Message:

Handle CPP_INLANDSIS in lmdz_cppkeys_wrapper.F90
Remove obsolete key wrgrads_thermcell, _ADV_HALO, _ADV_HALLO, isminmax
Remove redundant uses of CPPKEY_INCA (thanks acozic)
Remove obsolete misc/write_field.F90
Remove unused ioipsl_* wrappers
Remove calls to WriteField_u with wrong signature
Convert .F -> .[fF]90
(lint) uppercase fortran operators
[note: 1d and iso still broken - working on it]

File:
1 copied

Legend:

Unmodified
Added
Removed
  • LMDZ6/branches/Amaury_dev/libf/misc/lmdz_inca_wrappers.F90

    r5101 r5103  
    1 ! mpi subroutine wrappers
    2 
    3 #ifndef CPP_MPI
    4 
    5 SUBROUTINE lmdz_mpi_wrapper_abort
    6   STOP 'CPP_MPI key undefined, must not enter in MPI wrappers ==> aborting'
    7 END SUBROUTINE lmdz_mpi_wrapper_abort
    8 
    9 SUBROUTINE MPI_ABORT(COMM, ERRORCODE, IERROR)
    10 IMPLICIT NONE
    11     INTEGER ::       COMM, ERRORCODE, IERROR
    12     CALL lmdz_mpi_wrapper_abort
    13 END SUBROUTINE MPI_ABORT
    14 
    15 SUBROUTINE MPI_ALLGATHER(SENDBUF, SENDCOUNT, SENDTYPE, RECVBUF, RECVCOUNT, RECVTYPE, COMM, IERROR)
    16 USE ISO_C_BINDING
    17 IMPLICIT NONE
    18     TYPE(C_PTR),VALUE  ::   SENDBUF , RECVBUF
    19     INTEGER    SENDCOUNT, SENDTYPE, RECVCOUNT, RECVTYPE, COMM
    20     INTEGER    IERROR
    21     CALL lmdz_mpi_wrapper_abort
    22 END SUBROUTINE   MPI_ALLGATHER
    23  
    24 SUBROUTINE MPI_COMM_SIZE(COMM, SIZE, IERROR)
    25 IMPLICIT NONE
    26     INTEGER    COMM, SIZE, IERROR
    27     CALL lmdz_mpi_wrapper_abort
    28 END SUBROUTINE MPI_COMM_SIZE
    29 
    30 SUBROUTINE MPI_COMM_RANK(COMM, RANK, IERROR)
    31 IMPLICIT NONE
    32     INTEGER    COMM, RANK, IERROR
    33     CALL lmdz_mpi_wrapper_abort
    34 END SUBROUTINE MPI_COMM_RANK
    35 
    36 SUBROUTINE MPI_BARRIER(COMM, IERROR)
    37 IMPLICIT NONE
    38     INTEGER    COMM, IERROR
    39     CALL lmdz_mpi_wrapper_abort
    40 END SUBROUTINE MPI_BARRIER   
    41 
    42 SUBROUTINE MPI_ISEND(BUF, COUNT, DATATYPE, DEST, TAG, COMM, REQUEST, IERROR)
    43 USE ISO_C_BINDING
    44 IMPLICIT NONE
    45     TYPE(C_PTR),VALUE  ::    BUF
    46     INTEGER    COUNT, DATATYPE, DEST, TAG, COMM, REQUEST, IERROR
    47    
    48     CALL lmdz_mpi_wrapper_abort
    49 END SUBROUTINE MPI_ISEND
    50 
    51 SUBROUTINE MPI_ISSEND(BUF, COUNT, DATATYPE, DEST, TAG, COMM, REQUEST, IERROR)
    52 USE ISO_C_BINDING
    53 IMPLICIT NONE
    54     TYPE(C_PTR),VALUE  ::    BUF
    55     INTEGER    COUNT, DATATYPE, DEST, TAG, COMM, REQUEST, IERROR
    56     CALL lmdz_mpi_wrapper_abort
    57 END SUBROUTINE MPI_ISSEND
    58 
    59 SUBROUTINE MPI_IRECV(BUF, COUNT, DATATYPE, SOURCE, TAG, COMM, REQUEST, IERROR)
    60 USE ISO_C_BINDING
    61 IMPLICIT NONE
    62     TYPE(C_PTR),VALUE  ::    BUF
    63     INTEGER    COUNT, DATATYPE, SOURCE, TAG, COMM, REQUEST, IERROR
    64     CALL lmdz_mpi_wrapper_abort
    65 END SUBROUTINE MPI_IRECV   
    66 
    67 SUBROUTINE MPI_WAITALL(COUNT, ARRAY_OF_REQUESTS, ARRAY_OF_STATUSES, IERROR)
    68 USE lmdz_mpi, ONLY: MPI_STATUS_SIZE
    69 IMPLICIT NONE
    70     INTEGER    COUNT, ARRAY_OF_REQUESTS(*)
    71     INTEGER    ARRAY_OF_STATUSES(MPI_STATUS_SIZE,*), IERROR
    72     CALL lmdz_mpi_wrapper_abort
    73 END SUBROUTINE  MPI_WAITALL 
    74 
    75 SUBROUTINE MPI_GATHERV(SENDBUF, SENDCOUNT, SENDTYPE, RECVBUF, RECVCOUNTS, DISPLS, RECVTYPE, ROOT, COMM, IERROR)
    76 USE ISO_C_BINDING
    77 IMPLICIT NONE
    78     TYPE(C_PTR),VALUE  ::    SENDBUF, RECVBUF
    79     INTEGER    SENDCOUNT, SENDTYPE, RECVCOUNTS(*), DISPLS(*)
    80     INTEGER    RECVTYPE, ROOT, COMM, IERROR
    81     CALL lmdz_mpi_wrapper_abort
    82 END SUBROUTINE MPI_GATHERV
    83    
    84 SUBROUTINE MPI_BCAST(BUFFER, COUNT, DATATYPE, ROOT, COMM, IERROR)
    85 USE ISO_C_BINDING
    86 IMPLICIT NONE
    87     TYPE(C_PTR),VALUE  ::    BUFFER
    88     INTEGER    COUNT, DATATYPE, ROOT, COMM, IERROR
    89     CALL lmdz_mpi_wrapper_abort
    90 END SUBROUTINE MPI_BCAST
    91 
    92 SUBROUTINE MPI_ALLREDUCE(SENDBUF, RECVBUF, COUNT, DATATYPE, OP, COMM, IERROR)
    93 USE ISO_C_BINDING
    94 IMPLICIT NONE
    95     TYPE(C_PTR),VALUE  ::    SENDBUF, RECVBUF
    96     INTEGER    COUNT, DATATYPE, OP, COMM, IERROR
    97     CALL lmdz_mpi_wrapper_abort
    98 END SUBROUTINE MPI_ALLREDUCE
    99 
    100 SUBROUTINE MPI_INIT_THREAD(REQUIRED, PROVIDED, IERROR)
    101 IMPLICIT NONE
    102     INTEGER    REQUIRED, PROVIDED, IERROR
    103     CALL lmdz_mpi_wrapper_abort
    104 END SUBROUTINE MPI_INIT_THREAD
    105 
    106 SUBROUTINE MPI_ALLOC_MEM(SIZE, INFO, BASEPTR, IERROR)
    107 USE lmdz_mpi, ONLY: MPI_ADDRESS_KIND
    108 IMPLICIT NONE
    109     INTEGER INFO, IERROR
    110     INTEGER(KIND=MPI_ADDRESS_KIND) SIZE, BASEPTR
    111     CALL lmdz_mpi_wrapper_abort
    112 END SUBROUTINE MPI_ALLOC_MEM
    113 
    114 SUBROUTINE MPI_SCATTERV(SENDBUF, SENDCOUNTS, DISPLS, SENDTYPE, RECVBUF, RECVCOUNT, RECVTYPE, ROOT, COMM, IERROR)
    115 USE ISO_C_BINDING
    116 IMPLICIT NONE
    117     TYPE(C_PTR),VALUE  ::    SENDBUF, RECVBUF
    118     INTEGER    SENDCOUNTS(*), DISPLS(*), SENDTYPE
    119     INTEGER    RECVCOUNT, RECVTYPE, ROOT, COMM, IERROR
    120     CALL lmdz_mpi_wrapper_abort
    121 END SUBROUTINE MPI_SCATTERV
    122 
    123 SUBROUTINE MPI_REDUCE(SENDBUF, RECVBUF, COUNT, DATATYPE, OP, ROOT, COMM, IERROR)
    124 USE ISO_C_BINDING
    125 IMPLICIT NONE
    126     TYPE(C_PTR),VALUE ::    SENDBUF, RECVBUF
    127     INTEGER    COUNT, DATATYPE, OP, ROOT, COMM, IERROR
    128     CALL lmdz_mpi_wrapper_abort
    129 END SUBROUTINE MPI_REDUCE
    130 
    131 SUBROUTINE MPI_RECV(BUF, COUNT, DATATYPE, SOURCE, TAG, COMM, STATUS, IERROR)
    132 USE ISO_C_BINDING
    133 USE lmdz_mpi, ONLY: MPI_STATUS_SIZE
    134 IMPLICIT NONE
    135     TYPE(C_PTR),VALUE ::    BUF
    136     INTEGER    COUNT, DATATYPE, SOURCE, TAG, COMM
    137     INTEGER    STATUS(MPI_STATUS_SIZE), IERROR
    138     CALL lmdz_mpi_wrapper_abort
    139 END SUBROUTINE MPI_RECV
    140 
    141 SUBROUTINE MPI_SEND(BUF, COUNT, DATATYPE, DEST, TAG, COMM, IERROR)
    142 USE ISO_C_BINDING
    143 IMPLICIT NONE
    144     TYPE(C_PTR),VALUE  ::  BUF
    145     INTEGER    COUNT, DATATYPE, DEST, TAG, COMM, IERROR
    146     CALL lmdz_mpi_wrapper_abort
    147 END SUBROUTINE MPI_SEND
    148 
    149 SUBROUTINE MPI_COMM_SPLIT(COMM, COLOR, KEY, NEWCOMM, IERROR)
    150 IMPLICIT NONE
    151     INTEGER    COMM, COLOR, KEY, NEWCOMM, IERROR
    152     CALL lmdz_mpi_wrapper_abort
    153 END SUBROUTINE MPI_COMM_SPLIT
    154 
    155 
    156 SUBROUTINE MPI_GATHER(SENDBUF, SENDCOUNT, SENDTYPE, RECVBUF, RECVCOUNT, RECVTYPE, ROOT, COMM, IERROR)
    157 USE ISO_C_BINDING
    158 IMPLICIT NONE
    159     TYPE(C_PTR),VALUE  ::  SENDBUF, RECVBUF
    160     INTEGER    SENDCOUNT, SENDTYPE, RECVCOUNT, RECVTYPE, ROOT
    161     INTEGER    COMM, IERROR
    162     CALL lmdz_mpi_wrapper_abort
    163 END SUBROUTINE MPI_GATHER
    164 
    165 
    166 SUBROUTINE MPI_FINALIZE(IERROR)
    167 IMPLICIT NONE
    168     INTEGER    IERROR
    169     CALL lmdz_mpi_wrapper_abort
    170 END SUBROUTINE MPI_Finalize
     1! inca SUBROUTINE wrappers
     2
     3#ifndef INCA
     4
     5SUBROUTINE lmdz_inca_wrapper_abort
     6  STOP 'INCA key undefined, must not enter in INCA wrappers ==> aborting'
     7END SUBROUTINE lmdz_inca_wrapper_abort
     8
     9SUBROUTINE Init_chem_inca_trac(NBTR)
     10  IMPLICIT NONE
     11  INTEGER, INTENT(out) :: nbtr
     12
     13  CALL lmdz_inca_wrapper_abort
     14END SUBROUTINE Init_chem_inca_trac
     15
     16SUBROUTINE init_transport(&
     17        tracnam_lmdz, &
     18        conv_flg_lmdz, &
     19        pbl_flg_lmdz, &
     20        hadv_flg_lmdz, &
     21        vadv_flg_lmdz)
     22  IMPLICIT NONE
     23  INTEGER, DIMENSION(:), INTENT(out) :: hadv_flg_lmdz
     24  INTEGER, DIMENSION(:), INTENT(out) :: vadv_flg_lmdz
     25
     26  INTEGER, DIMENSION(:), INTENT(out) :: conv_flg_lmdz
     27  INTEGER, DIMENSION(:), INTENT(out) :: pbl_flg_lmdz
     28  CHARACTER(len = 8), DIMENSION(:), INTENT(out) :: tracnam_lmdz
     29
     30  CALL lmdz_inca_wrapper_abort
     31END SUBROUTINE init_transport
     32
     33SUBROUTINE finalize_inca
     34  IMPLICIT NONE
     35  CALL lmdz_inca_wrapper_abort
     36END SUBROUTINE finalize_inca
     37
     38SUBROUTINE CHEMHOOK_BEGIN(&
     39        calday, &
     40        ijour, &
     41        gmtime, &
     42        oro, &
     43        lat, &
     44        lon, &
     45        area, &
     46        pfull, &
     47        pmid, &
     48        coefh, &
     49        zma, &
     50        temp, &
     51        u, &
     52        v, &
     53        rot, &
     54        ozrad, &
     55        sh, &
     56        ts, &
     57        t_air_2m, &
     58        dpth_snow, &
     59        sws, &
     60        albs, &
     61        rain_fall, &
     62        snow_fall, &
     63        ctop, &
     64        cbot, &
     65        cldfr, &
     66        nx, &
     67        ny, &
     68        mmr, &
     69        ftsol, &
     70        paprs, &
     71        cdragh, &
     72        cdragm, &
     73        pctsrf, &
     74        delt, &
     75        nstep)
     76  IMPLICIT NONE
     77  REAL, INTENT(IN) :: calday
     78  INTEGER, INTENT(in) :: ijour  ! jour julien
     79  REAL, INTENT(in) :: gmtime ! input-R-temps universel dans la journee (0 a 86400 s)
     80  INTEGER, INTENT(IN) :: ctop(:)
     81  INTEGER, INTENT(IN) :: cbot(:)
     82  INTEGER, INTENT(IN) :: nx, ny
     83  REAL, INTENT(IN) :: pmid(:, :)
     84  REAL, INTENT(IN) :: pfull(:, :)
     85  REAL, INTENT(IN) :: coefh(:, :)
     86  REAL, INTENT(IN) :: zma(:, :)
     87  REAL, INTENT(IN) :: temp(:, :)
     88  REAL, INTENT(IN) :: u(:, :)
     89  REAL, INTENT(IN) :: v(:, :)
     90  REAL, INTENT(IN) :: rot(:, :)
     91  REAL, INTENT(IN) :: ozrad(:, :)
     92  REAL, INTENT(IN) :: sh(:, :)
     93  REAL, INTENT(IN) :: lat(:)
     94  REAL, INTENT(IN) :: lon(:)
     95  REAL, INTENT(IN) :: oro(:)
     96  REAL, INTENT(IN) :: area(:)
     97  REAL, INTENT(IN) :: ts(:)
     98  REAL, INTENT(IN) :: t_air_2m(:) ! air temperature near surface
     99  REAL, INTENT(IN) :: dpth_snow(:)
     100  REAL, INTENT(IN) :: sws(:)
     101  REAL, INTENT(IN) :: albs(:)
     102  REAL, INTENT(IN) :: rain_fall(:)
     103  REAL, INTENT(IN) :: snow_fall(:)
     104  REAL, INTENT(IN) :: mmr(:, :, :)
     105  REAL, INTENT(IN) :: cldfr (:, :)
     106  ! variables used in nightingale
     107  REAL, INTENT(in) :: ftsol(:, :)
     108  REAL, INTENT(in) :: paprs(:, :)
     109  REAL, INTENT(in) :: cdragh(:), cdragm(:)
     110  REAL, INTENT(in) :: pctsrf(:, :)
     111  REAL, INTENT(in) :: delt               ! timestep in seconds of physics
     112  INTEGER, INTENT(IN) :: nstep              ! model time step
     113
     114  CALL lmdz_inca_wrapper_abort
     115END SUBROUTINE CHEMHOOK_BEGIN
     116
     117SUBROUTINE CHEMHOOK_END(&
     118        dt, &
     119        pmid, &
     120        temp, &
     121        mmr, &
     122        nbtr, &
     123        paprs, &
     124        sh, &
     125        area, &
     126        zma, &
     127        phis, &
     128        rh, aps, bps, ap, bp, lafin)
     129  IMPLICIT NONE
     130  INTEGER, INTENT(IN) :: nbtr
     131  REAL, INTENT(IN) :: dt
     132  REAL, INTENT(IN) :: pmid(:, :)
     133  REAL, INTENT(IN) :: area(:)
     134  REAL, INTENT(IN) :: temp(:, :)
     135  REAL, INTENT(IN) :: paprs(:, :)
     136  REAL, INTENT(IN) :: sh(:, :)
     137  REAL, INTENT(INOUT) :: mmr(:, :, :)
     138  REAL, INTENT(IN) :: zma(:, :)
     139  REAL, INTENT(IN) :: phis(:)
     140  REAL, INTENT(IN) :: rh(:, :)
     141  REAL, INTENT(IN), DIMENSION(:) :: aps, bps
     142  REAL, INTENT(IN), DIMENSION(:) :: ap, bp
     143  LOGICAL, INTENT(IN) :: lafin
     144
     145  CALL lmdz_inca_wrapper_abort
     146END SUBROUTINE chemhook_end
     147
     148SUBROUTINE chemtime(istp, date0, dt, itap)
     149  IMPLICIT NONE
     150  INTEGER, INTENT(in) :: istp   ! time step of the restart file
     151  REAL, INTENT(in) :: date0  ! the date at which itau = 0
     152  REAL, INTENT(in) :: dt     ! time step
     153  INTEGER, INTENT(in) :: itap
     154  CALL lmdz_inca_wrapper_abort
     155END SUBROUTINE chemtime
     156
     157SUBROUTINE INIT_CONST_LMDZ(&
     158        nday_l, &
     159        nbsrf_l, &
     160        is_oce_l, &
     161        is_sic_l, &
     162        is_ter_l, &
     163        is_lic_l, &
     164        calend_l, &
     165        config_inca_l)
     166  IMPLICIT NONE
     167  INTEGER, INTENT(in) :: nday_l
     168  INTEGER, INTENT(in) :: nbsrf_l
     169  INTEGER, INTENT(in) :: is_oce_l, is_sic_l, is_lic_l, is_ter_l
     170  CHARACTER (len = 10), INTENT(in) :: calend_l
     171  CHARACTER(len = 4), INTENT(in) :: config_inca_l
     172
     173  CALL lmdz_inca_wrapper_abort
     174END SUBROUTINE init_const_lmdz
     175
     176SUBROUTINE init_inca_geometry(&
     177        longitude_lmdz, latitude_lmdz, &
     178        boundslon_lmdz, boundslat_lmdz, &
     179        cell_area_lmdz, &
     180        ind_cell_glo_lmdz)
     181  IMPLICIT NONE
     182  REAL, INTENT(IN) :: longitude_lmdz(:)
     183  REAL, INTENT(IN) :: latitude_lmdz(:)
     184  REAL, INTENT(IN) :: boundslon_lmdz(:, :)
     185  REAL, INTENT(IN) :: boundslat_lmdz(:, :)
     186  REAL, INTENT(IN) :: cell_area_lmdz(:)
     187  INTEGER, OPTIONAL, INTENT(IN) :: ind_cell_glo_lmdz(:)
     188
     189  CALL lmdz_inca_wrapper_abort
     190END SUBROUTINE init_inca_geometry
     191
     192SUBROUTINE CHEMINI(pmid, &
     193        nbp_lon_lmdz, nbp_lat_lmdz, &
     194        latgcm, &
     195        longcm, &
     196        presnivs, &
     197        calday, &
     198        klon, &
     199        nqmax, &
     200        nqo, &
     201        pdtphys, &
     202        annee_ref, &
     203        year_cur, &
     204        day_ref, &
     205        day_ini, &
     206        start_time, &
     207        itau_phy, &
     208        date0, &
     209        chemistry_couple, &
     210        init_source, &
     211        init_tauinca, &
     212        init_pizinca, &
     213        init_cginca, &
     214        init_ccm, &
     215        io_lon, &
     216        io_lat)
     217  IMPLICIT NONE
     218  REAL, INTENT(IN) :: pmid(:, :)
     219  INTEGER, INTENT(in) :: nbp_lon_lmdz, nbp_lat_lmdz
     220  REAL, INTENT(in) :: calday
     221  REAL, INTENT(in) :: latgcm(:)
     222  REAL, INTENT(in) :: longcm(:)
     223  REAL, INTENT(in) :: presnivs(:)
     224  INTEGER, INTENT(in) :: klon
     225  INTEGER, INTENT(in) :: nqmax  ! nombre total de traceurs = inca + lmdz
     226  INTEGER, INTENT(in) :: nqo ! nombre de traceurs lus dans traceur.def
     227  REAL, INTENT(in) :: pdtphys
     228  INTEGER, INTENT(in) :: annee_ref, year_cur
     229  INTEGER, INTENT(in) :: day_ref, day_ini
     230  REAL, INTENT(in) :: start_time
     231  INTEGER, INTENT(in) :: itau_phy
     232  REAL, OPTIONAL, INTENT(IN) :: io_lat(nbp_lat_lmdz) ! latitudes (of global grid)
     233  REAL, OPTIONAL, INTENT(IN) :: io_lon(nbp_lon_lmdz) ! longitudes (of global grid)
     234  REAL, INTENT(IN) :: date0
     235  LOGICAL, INTENT(IN) :: chemistry_couple
     236  REAL, DIMENSION(:, :), INTENT(OUT) :: init_source
     237  REAL, DIMENSION(:, :, :, :), INTENT(OUT) :: init_tauinca
     238  REAL, DIMENSION(:, :, :, :), INTENT(OUT) :: init_pizinca
     239  REAL, DIMENSION(:, :, :, :), INTENT(OUT) :: init_cginca
     240  REAL, DIMENSION(:, :, :), INTENT(OUT) :: init_ccm
     241
     242  CALL lmdz_inca_wrapper_abort
     243END SUBROUTINE chemini
     244
     245SUBROUTINE radlwsw_inca(chemistry_couple, kdlon, kflev, dist, rmu0, fract, &
     246        solaire, paprs, pplay, tsol, albedo, alblw, t, q, size_wo, wo, &
     247        cldfra, cldemi, cldtaupd, &
     248        heat, heat0, cool, cool0, albpla, &
     249        topsw, toplw, solsw, sollw, &
     250        sollwdown, &
     251        topsw0, toplw0, solsw0, sollw0, &
     252        lwdn0, lwdn, lwup0, lwup, &
     253        swdn0, swdn, swup0, swup, &
     254        ok_ade, ok_aie, &
     255        tau_inca, piz_inca, cg_inca, &
     256        topswad_inca, solswad_inca, &
     257        topswad0_inca, solswad0_inca, &
     258        topsw_inca, topsw0_inca, &
     259        solsw_inca, solsw0_inca, &
     260        cldtaupi, topswai_inca, solswai_inca)
     261  IMPLICIT NONE
     262  LOGICAL, INTENT(in) :: chemistry_couple
     263  INTEGER, INTENT(in) :: kdlon, kflev
     264  REAL, INTENT(in) :: solaire
     265  REAL, INTENT(in) :: dist
     266  REAL, INTENT(in) :: rmu0(:), fract(:)
     267  REAL, INTENT(in) :: paprs(:, :), pplay(:, :)
     268  REAL, INTENT(in) :: albedo(:), alblw(:), tsol(:)
     269  REAL, INTENT(in) :: t(:, :), q(:, :)
     270  INTEGER, INTENT(in) :: size_wo
     271  REAL, INTENT(in) :: wo(:, :, :)  ! column-density of ozone in a layer, in kilo-Dobsons
     272  LOGICAL, INTENT(in) :: ok_ade, ok_aie     ! switches whether to use aerosol direct (indirect) effects or not
     273  REAL, INTENT(in) :: cldfra(:, :), cldemi(:, :), cldtaupd(:, :)
     274  REAL, INTENT(in) :: tau_inca(:, :, :, :) ! aerosol optical properties (see aeropt.F)
     275  REAL, INTENT(in) :: piz_inca(:, :, :, :) ! aerosol optical properties (see aeropt.F)
     276  REAL, INTENT(in) :: cg_inca(:, :, :, :)        ! aerosol optical properties (see aeropt.F)
     277  REAL, INTENT(in) :: cldtaupi(:, :)  ! cloud optical thickness for pre-industrial aerosol concentrations
     278  REAL, INTENT(out) :: heat(:, :), cool(:, :)
     279  REAL, INTENT(out) :: heat0(:, :), cool0(:, :)
     280  REAL, INTENT(out) :: topsw(:), toplw(:)
     281  REAL, INTENT(out) :: solsw(:), sollw(:), albpla(:)
     282  REAL, INTENT(out) :: topsw0(:), toplw0(:), solsw0(:), sollw0(:)
     283  REAL, INTENT(out) :: sollwdown(:)
     284  REAL, INTENT(out) :: swdn(:, :), swdn0(:, :)
     285  REAL, INTENT(out) :: swup(:, :), swup0(:, :)
     286  REAL, INTENT(out) :: lwdn(:, :), lwdn0(:, :)
     287  REAL, INTENT(out) :: lwup(:, :), lwup0(:, :)
     288  REAL, INTENT(out) :: topswad_inca(:), solswad_inca(:) ! output: aerosol direct forcing at TOA and surface
     289  REAL, INTENT(out) :: topswad0_inca(:), solswad0_inca(:) ! output: aerosol direct forcing at TOA and surface
     290  REAL, INTENT(out) :: topswai_inca(:), solswai_inca(:) ! output: aerosol indirect forcing atTOA and surface
     291  REAL(kind = 8), INTENT(out) :: topsw_inca(:, :), topsw0_inca(:, :)
     292  REAL(kind = 8), INTENT(out) :: solsw_inca(:, :), solsw0_inca(:, :)
     293
     294  CALL lmdz_inca_wrapper_abort
     295END SUBROUTINE radlwsw_inca
     296
     297SUBROUTINE INIT_INCA_DIM_REG(&
     298        iim, &
     299        jjm, &
     300        rlonu_l, &
     301        rlatu_l, &
     302        rlonv_l, &
     303        rlatv_l)
     304
     305  IMPLICIT NONE
     306  INTEGER, INTENT(in) :: iim
     307  INTEGER, INTENT(in) :: jjm
     308  REAL, INTENT(in) :: rlonu_l(:)
     309  REAL, INTENT(in) :: rlatu_l(:)
     310  REAL, INTENT(in) :: rlonv_l(:)
     311  REAL, INTENT(in) :: rlatv_l(:)
     312
     313  CALL lmdz_inca_wrapper_abort
     314END SUBROUTINE INIT_INCA_DIM_REG
     315
     316SUBROUTINE AEROSOL_METEO_CALC (&
     317        calday, delt, pmid, pfull, t_seri, &
     318        flxrcv, flxscv, flxrst, flxsst, pctsrf, &
     319        area, rlat, rlon, u10m, v10m)
     320  IMPLICIT NONE
     321  REAL, INTENT(in) :: calday
     322  REAL, INTENT(in) :: delt                ! [s]
     323  REAL, INTENT(in) :: pmid(:, :)     ! [Pa]
     324  REAL, INTENT(in) :: pfull(:, :)  ! [Pa]
     325  REAL, INTENT(in) :: t_seri(:, :)   ! [K]
     326  REAL, INTENT(in) :: flxrst(:, :) ! liquid water flux (stratiform) kgH2O/m2/s
     327  REAL, INTENT(in) :: flxrcv(:, :) ! liquid  water flux (convection ) kgH2O/m2/s
     328  REAL, INTENT(in) :: flxsst(:, :) ! solid  water flux (stratiform) kgH2O/m2/s
     329  REAL, INTENT(in) :: flxscv(:, :) ! solid  water flux (convection) kgH2O/m2/s
     330  REAL, INTENT(in) :: pctsrf(:, :)  ! subsurface fraction (0..1)
     331  REAL, INTENT(in) :: area(:)          ! surface area of grid box [m2]
     332  REAL, INTENT(in) :: rlon(:)          ! longitude
     333  REAL, INTENT(in) :: rlat(:)          ! latitude
     334  REAL, INTENT(in) :: u10m(:, :)    ! vents a 10m
     335  REAL, INTENT(in) :: v10m(:, :)    ! vents a 10m
     336
     337  CALL lmdz_inca_wrapper_abort
     338END SUBROUTINE AEROSOL_METEO_CALC
    171339
    172340#endif
Note: See TracChangeset for help on using the changeset viewer.