5 &(acladm,ksp,ksr, v2dpar,unsv2d,cf,ebor,fw,hn,liqbor,
6 & mask, maskel, maskpt, qbor, u2d,
7 & v2d, s,unladm,uw,thetaw,mu,tob,tobw,tw,zf,
8 & debug, hidfac, icf, ielmt, kddl, kdir,
9 & kent, klog, kneu, ksort,
10 & npoin, nptfr, nsicla, optban, beta, fd90, fdm,
11 & grav, hidi, hmin, vce, csf_sable, xmve, xmvs, xwc,
12 & pi, karman, zero, karim_holly_yang,msk, susp, vf,
14 & elay, liebor, limtec, masktr,
15 & it1, t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11,
16 & t12,t13,unorm,ac, dts,
17 & avail,
breach, calfa_cl, coefpn,
18 & hiding, qscl_c, qscl_s, qs_c,
19 & qsclxc, qsxc, qsclyc, qsyc, salfa_cl, zf_c, zfcl_c,
20 & entets, seccurrent, slopeff,
21 & phised, devia, beta2, bijk,sedco,houle,
22 & u3d,v3d,code,flbcla,maxadv)
198 TYPE(bief_obj),
INTENT(IN) :: ACLADM, KSR,V2DPAR,UNSV2D
199 TYPE(bief_obj),
INTENT(IN) :: CF,FW,KSP,HN,LIQBOR
200 TYPE(bief_obj),
INTENT(IN) :: MASK, MASKEL, MASKPT
201 TYPE(bief_obj),
INTENT(IN) :: QBOR
202 TYPE(bief_obj),
INTENT(INOUT) :: U2D,V2D,TOB,MU,UNORM,EBOR
203 TYPE(bief_obj),
INTENT(IN) :: S,UNLADM
204 TYPE(bief_obj),
INTENT(IN) :: UW, THETAW, TOBW, TW
205 TYPE(bief_obj),
INTENT(IN) :: ZF
206 INTEGER,
INTENT(IN) :: DEBUG, HIDFAC, ICF,MAXADV
207 INTEGER,
INTENT(IN) :: IELMT, KDDL, KDIR, KENT
208 INTEGER,
INTENT(IN) :: KLOG, KNEU, KSORT
209 INTEGER,
INTENT(IN) :: NPOIN, NPTFR
210 INTEGER,
INTENT(IN) :: NSICLA, OPTBAN
211 DOUBLE PRECISION,
INTENT(IN) :: BETA, FD90(nsicla)
212 DOUBLE PRECISION,
INTENT(IN) :: FDM(nsicla),GRAV
213 DOUBLE PRECISION,
INTENT(IN) :: HIDI(nsicla),HMIN,VCE
214 DOUBLE PRECISION,
INTENT(IN) :: CSF_SABLE,XMVE,XMVS,XWC(nsicla)
215 DOUBLE PRECISION,
INTENT(IN) :: PI,KARMAN,ZERO
216 DOUBLE PRECISION,
INTENT(IN) :: KARIM_HOLLY_YANG
217 LOGICAL,
INTENT(IN) :: MSK, SUSP, VF
218 LOGICAL,
INTENT(IN) :: SECCURRENT
219 LOGICAL,
INTENT(IN) :: SEDCO(nsicla),HOULE
220 TYPE(bief_mesh),
INTENT(INOUT) :: MESH
221 TYPE(bief_obj),
INTENT(INOUT) :: ELAY,FLBCLA
222 TYPE(bief_obj),
INTENT(INOUT) :: LIEBOR, LIMTEC, MASKTR
223 TYPE(bief_obj),
INTENT(INOUT) :: IT1,T1,T2,T3,T4,T5,T6,T7
224 TYPE(bief_obj),
INTENT(INOUT) :: T8,T9,T10,T11,T12,T13
225 DOUBLE PRECISION,
INTENT(INOUT) :: AC(nsicla), DTS
226 DOUBLE PRECISION,
INTENT(INOUT) :: AVAIL(npoin,nomblay,nsicla)
227 TYPE(bief_obj),
INTENT(INOUT) :: BREACH, CALFA_CL, COEFPN
228 TYPE(bief_obj),
INTENT(INOUT) :: HIDING
229 TYPE(bief_obj),
INTENT(INOUT) :: QSCL_C,QSCL_S
230 TYPE(bief_obj),
INTENT(INOUT) :: QS_C, QSCLXC, QSXC, QSCLYC
231 TYPE(bief_obj),
INTENT(INOUT) :: QSYC, SALFA_CL, ZF_C, ZFCL_C
232 LOGICAL,
INTENT(INOUT) :: ENTETS
233 DOUBLE PRECISION,
INTENT(IN) :: BETA2, PHISED
234 INTEGER,
INTENT (IN) :: SLOPEFF, DEVIA
235 DOUBLE PRECISION,
INTENT(IN) :: BIJK
236 TYPE(bief_obj),
INTENT(IN) :: U3D,V3D
237 CHARACTER(LEN=24),
INTENT(IN) :: CODE
256 IF (fdm(i).LT.2.d-3)
THEN 257 sanfra(k) = sanfra(k) + avail(k,1,i)
266 IF (debug > 0)
WRITE(
lu,*)
'BEDLOAD_DIFFIN' 268 & (u2d, v2d, mesh%NBOR, mesh%XNEBOR, mesh%YNEBOR,
269 & maskel, mesh%NELBOR, nptfr, kent, ksort, klog,
270 & kdir, kddl, kneu, msk, it1, liebor, masktr,limtec,
271 & mesh%IKLBOR%I,mesh%NELEB,mesh%NELEBX)
272 IF (debug > 0)
WRITE(
lu,*)
'END_BEDLOAD_DIFFIN' 277 IF(.NOT.sedco(i))
THEN 278 IF (debug > 0)
WRITE(
lu,*)
279 &
'BEDLOAD_SOLIDISCHARGE : ',i,
'/',nsicla
281 & (mesh, u2d, v2d, unorm,hn, tw, uw, mu,tob,cf,
282 & tobw,fw,thetaw,avail(1:npoin,1,i),
283 & maskpt, maskel, acladm,
284 & unladm,ksp,ksr, liqbor, debug, npoin,
285 & nptfr, ielmt, icf, kent, optban, hidfac, grav,
286 & fdm(i), fd90(i), xwc(i), xmve, xmvs, vce, hmin,
287 & hidi(i),karman,zero,pi,
288 & karim_holly_yang,susp,msk,t1,t2,
289 & t3, t4, t5, t6, t7, t8, t9, t10, t11,t12, ac(i),
290 & hiding,qscl_c%ADR(i)%P,qscl_s%ADR(i)%P,
291 & slopeff,coefpn,phised,
292 & calfa_cl%ADR(i)%P,salfa_cl%ADR(i)%P,
294 & devia, beta2 , seccurrent, bijk,houle,unsv2d,
295 & u3d,v3d,code,sanfra)
296 IF(debug > 0)
WRITE(
lu,*)
'END_BEDLOAD_SOLIDISCHARGE' 300 CALL os(
'X=0 ',x=qscl_c%ADR(i)%P)
301 CALL os(
'X=0 ',x=qsclxc%ADR(i)%P)
302 CALL os(
'X=0 ',x=qsclyc%ADR(i)%P)
311 IF(.NOT.sedco(i))
THEN 313 IF (debug > 0)
WRITE(
lu,*)
'BEDLOAD_EVOL : ',i,
'/',nsicla
315 & coefpn,calfa_cl%ADR(i)%P,salfa_cl%ADR(i)%P,
317 & ebor%ADR(i)%P,maskel,mask,
318 & v2dpar,unsv2d,debug,npoin,nptfr,ielmt,
322 & mesh,qscl_c%ADR(i)%P,
323 & t1,t2,t3,t4,t8,t11,t12,
324 & t13,csf_sable,breach,qsclxc%ADR(i)%P,
325 & qsclyc%ADR(i)%P,zfcl_c%ADR(i)%P,slopeff,
326 & i,flbcla,liqbor,qbor%ADR(i)%P,maxadv)
327 IF(debug.GT.0)
WRITE(
lu,*)
'END_BEDLOAD_EVOL' 336 CALL os(
'X=CX ',x= zfcl_c%ADR(i)%P,c=1.d0/csf_sable)
341 CALL os(
'X=0 ',x=zfcl_c%ADR(i)%P)
351 t8%R(i) = t8%R(i) + zfcl_c%ADR(i)%P%R(j)*
volu2d%R(j)
353 IF(ncsize>1) t8%R(i) =
p_dsum(t8%R(i))
360 t9%R(i) = t9%R(i) + zfcl_c%ADR(i)%P%R(j)*
volu2d%R(j)
362 IF(ncsize>1) t9%R(i) =
p_dsum(t9%R(i))
375 CALL os(
'X=0 ', x=qs_c)
376 CALL os(
'X=0 ', x=zf_c)
377 CALL os(
'X=0 ',x=qsxc)
378 CALL os(
'X=0 ',x=qsyc)
383 IF(.NOT.sedco(i))
THEN 384 CALL os(
'X=X+Y ', x=qs_c, y=qscl_c%ADR(i)%P)
385 CALL os(
'X=X+Y ', x=zf_c, y=zfcl_c%ADR(i)%P)
386 CALL os(
'X=X+YZ ', x=qsxc, y=qscl_c%ADR(i)%P,
387 & z=calfa_cl%ADR(i)%P)
388 CALL os(
'X=X+YZ ', x=qsyc, y=qscl_c%ADR(i)%P,
389 & z=salfa_cl%ADR(i)%P)
396 IF(optban.EQ.2)
CALL os(
'X=XY ',x=zf_c,y=maskpt)
double precision, dimension(:), allocatable sanfra
subroutine bedload_solidischarge(MESH, U2D, V2D, UNORM, HN, TW, UW, MU, TOB, CF, TOBW, FW, THETAW, AVA, MASKPT, MASKEL, ACLADM, UNLADM, KSP, KSR, LIQBOR, DEBUG, NPOIN, NPTFR, IELMT, ICF, KENT, OPTBAN, HIDFAC, GRAV, DM, D90, XWC, XMVE, XMVS, VCE, HMIN, HIDI, KARMAN, ZERO, PI, KARIM_HOLLY_YANG, SUSP, MSK, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, AC, HIDING, QSC, QSS, SLOPEFF, COEFPN, PHISED, CALFA, SALFA, BETA, ZF_C, S, DEVIA, BETA2, SECCURRENT, BIJK, HOULE, UNSV2D, U3D, V3D, CODE, SANFRA)
subroutine bedload_evol(S, ELAY, AVA, COEFPN, CALFA, SALFA, LIMTEC, EBOR, MASKEL, MASK, V2DPAR, UNSV2D, DEBUG, NPOIN, NPTFR, IELMT, KENT, KDIR, KDDL, DTS, VF, ENTET, MSK, MESH, QS, T1, T2, T3, T4, T8, T11, T12, T13, CSF_SABLE, BREACH, QSX, QSY, ZFCL, SLOPEFF, ICLA, FLBCLA, LIQBOR, QBOR, MAXADV)
subroutine bedload_main(ACLADM, KSP, KSR, V2DPAR, UNSV2D, CF, EBOR, FW, HN, LIQBOR, MASK, MASKEL, MASKPT, QBOR, U2D, V2D, S, UNLADM, UW, THETAW, MU, TOB, TOBW, TW, ZF, DEBUG, HIDFAC, ICF, IELMT, KDDL, KDIR, KENT, KLOG, KNEU, KSORT, NPOIN, NPTFR, NSICLA, OPTBAN, BETA, FD90, FDM, GRAV, HIDI, HMIN, VCE, CSF_SABLE, XMVE, XMVS, XWC, PI, KARMAN, ZERO, KARIM_HOLLY_YANG, MSK, SUSP, VF, MESH, ELAY, LIEBOR, LIMTEC, MASKTR, IT1, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, UNORM, AC, DTS, AVAIL, BREACH, CALFA_CL, COEFPN, HIDING, QSCL_C, QSCL_S, QS_C, QSCLXC, QSXC, QSCLYC, QSYC, SALFA_CL, ZF_C, ZFCL_C, ENTETS, SECCURRENT, SLOPEFF, PHISED, DEVIA, BETA2, BIJK, SEDCO, HOULE, U3D, V3D, CODE, FLBCLA, MAXADV)
double precision, dimension(nsiclm) volnestorcl
subroutine nestor_interface(OPTION)
double precision, dimension(nsiclm) volnestorcla
subroutine bedload_diffin(U, V, NBOR, XNEBOR, YNEBOR, MASKEL, NELBOR, NPTFR, KENT, KSORT, KLOG, KDIR, KDDL, KNEU, MSK, CLT, LITBOR, MASKTR, LIMTRA, IKLBOR, NELEB, NELEBX)
double precision function p_dsum(MYPART)
subroutine os(OP, X, Y, Z, C, IOPT, INFINI, ZERO)
type(bief_obj), target volu2d