Changeset 3526 for trunk/LMDZ.COMMON/libf/evolution/NS_fast_modules.F90
- Timestamp:
- Nov 19, 2024, 5:54:18 PM (2 days ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LMDZ.COMMON/libf/evolution/NS_fast_modules.F90
r3493 r3526 1 2 1 module allinterfaces 3 2 ! interfaces from Fortran 90 subroutines and functions … … 86 85 real(8), intent(OUT) :: ypp(nz), zdepthG 87 86 integer, intent(INOUT) :: typeG 88 real(8), external :: zint , deriv1_onesided, colint87 real(8), external :: zint 89 88 end subroutine depths_avmeth 90 89 end interface … … 96 95 real(8) constriction 97 96 end function constriction 98 end interface99 100 interface101 subroutine assignthermalproperties(nz,thIn,rhoc,ti,rhocv, &102 & typeT,icefrac,porosity,porefill)103 implicit none104 integer, intent(IN) :: nz105 integer, intent(IN), optional :: typeT106 real(8), intent(IN), optional :: icefrac107 real(8), intent(IN) :: thIn, rhoc108 real(8), intent(IN), optional :: porosity, porefill(nz)109 real(8), intent(OUT) :: ti(nz), rhocv(nz)110 end subroutine assignthermalproperties111 end interface112 113 interface114 pure subroutine icechanges_poreonly(nz,z,typeF,typeG,avdrhoP,ypp,B,porefill)115 implicit none116 integer, intent(IN) :: nz, typeF, typeG117 real(8), intent(IN) :: z(nz), ypp(nz), avdrhoP, B118 real(8), intent(INOUT) :: porefill(nz)119 end subroutine icechanges_poreonly120 97 end interface 121 98 … … 131 108 end interface 132 109 133 interface134 subroutine compactoutput(unit,porefill,nz)135 implicit none136 integer, intent(IN) :: unit,nz137 real(8), intent(IN) :: porefill(nz)138 end subroutine compactoutput139 end interface140 141 110 !end of fast_subs_univ 142 !begin derivs.f90143 144 interface145 subroutine deriv1(z,nz,y,y0,yNp1,yp)146 implicit none147 integer, intent(IN) :: nz148 real(8), intent(IN) :: z(nz),y(nz),y0,yNp1149 real(8), intent(OUT) :: yp(nz)150 end subroutine deriv1151 end interface152 153 interface154 subroutine deriv2_full(z,nz,a,b,a0,b0,bNp1,yp2)155 implicit none156 integer, intent(IN) :: nz157 real(8), intent(IN) :: z(nz),a(nz),b(nz),a0,b0,bNp1158 real(8), intent(OUT) :: yp2(nz)159 end subroutine deriv2_full160 end interface161 162 interface163 subroutine deriv2_simple(z,nz,y,y0,yNp1,yp2)164 implicit none165 integer, intent(IN) :: nz166 real(8), intent(IN) :: z(nz),y(nz),y0,yNp1167 real(8), intent(OUT) :: yp2(nz)168 end subroutine deriv2_simple169 end interface170 interface171 real(8) pure function deriv1_onesided(j,z,nz,y)172 implicit none173 integer, intent(IN) :: nz,j174 real(8), intent(IN) :: z(nz),y(nz)175 end function deriv1_onesided176 end interface177 178 !end of derivs.f90179 !begin fast_subs_exper.f90180 181 interface182 subroutine icelayer_exper(bigstep, nz, thIn, rhoc, z, porosity, pfrost, &183 & zdepthT, icefrac, zdepthF, zdepthE, porefill, Tmean, Tampl, Diff, zdepthG)184 use miscparameters, only : d2r, NMAX, icedensity185 implicit none186 integer, intent(IN) :: nz187 real(8), intent(IN) :: bigstep188 real(8), intent(IN) :: thIn, rhoc, z(NMAX), porosity, pfrost189 real(8), intent(INOUT) :: zdepthT, zdepthF, porefill(nz)190 real(8), intent(OUT) :: zdepthE191 real(8), intent(IN) :: icefrac, Diff, Tmean, Tampl192 real(8), intent(OUT) :: zdepthG193 end subroutine icelayer_exper194 end interface195 196 interface197 subroutine ajsub_exper(typeT, nz, z, ti, rhocv, pfrost, Tmean, Tampl, &198 & avdrho, avdrhoP, zdepthE, typeF, zdepthF, ypp, porefill, &199 & B, typeG, zdepthG)200 use miscparameters, only : NMAX, solsperyear, marsDay201 implicit none202 integer, intent(IN) :: nz, typeT203 real(8), intent(IN) :: z(NMAX), ti(NMAX), rhocv(NMAX), pfrost204 real(8), intent(IN) :: Tmean, Tampl205 real(8), intent(OUT) :: avdrho, avdrhoP206 real(8), intent(OUT) :: zdepthE207 integer, intent(OUT) :: typeF208 real(8), intent(INOUT) :: zdepthF209 real(8), intent(OUT) :: ypp(nz)210 real(8), intent(IN) :: porefill(nz)211 real(8), intent(IN) :: B212 integer, intent(OUT) :: typeG213 real(8), intent(OUT) :: zdepthG214 real(8), external :: Tsurface, psv215 real(8), external :: equildepth216 end subroutine ajsub_exper217 end interface218 219 !end fast_subs_exper220 221 111 ! Other 222 interface223 pure function flux_mars77(R,decl,HA,albedo,fracir,fracscat)224 implicit none225 real*8 flux_mars77226 real*8, intent(IN) :: R,decl,HA,albedo,fracIR,fracScat227 end function flux_mars77228 end interface229 230 interface231 pure function colint(y,z,nz,i1,i2)232 implicit none233 integer, intent(IN) :: nz, i1, i2234 real(8), intent(IN) :: y(nz),z(nz)235 real(8) colint236 end function colint237 end interface238 239 112 interface 240 113 subroutine dyn_ss_ice_m(ssi_depth_in,T1,T_in,nsoil,thIn,p0,pfrost,porefill_in,porefill,ssi_depth) … … 250 123 end interface 251 124 252 interface253 subroutine dyn_ss_ice_m_wrapper(ngrid,nsoil,tHIn,p0,pfrost,T_in,ssi_depth_in,porefill_in,porefill,ssi_depth)254 implicit none255 integer, intent(IN) :: nsoil,ngrid256 real(8), intent(IN) :: thIn(ngrid),ssi_depth_in(ngrid)257 real(8), intent(IN) :: p0(ngrid), pfrost(ngrid)258 real(8), intent(IN) :: T_in(nsoil,ngrid)259 real(8), intent(OUT) :: porefill(nsoil,ngrid)260 real(8), intent(IN) :: porefill_in(nsoil,ngrid)261 real(8), intent(OUT) :: ssi_depth(ngrid)262 end subroutine dyn_ss_ice_m_wrapper263 end interface264 265 125 end module allinterfaces
Note: See TracChangeset
for help on using the changeset viewer.