Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
G
Gironde XL 3D
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package Registry
Container Registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
GPMB
Modeles Telemac
Gironde XL 3D
Commits
a7de1f77
Commit
a7de1f77
authored
1 year ago
by
Jean Felder
Browse files
Options
Downloads
Patches
Plain Diff
Delete ride_vr_gaia.f
parent
0ffb00b5
No related branches found
No related tags found
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
user_fortranR45/ride_vr_gaia.f
+0
-152
0 additions, 152 deletions
user_fortranR45/ride_vr_gaia.f
with
0 additions
and
152 deletions
user_fortranR45/ride_vr_gaia.f
deleted
100644 → 0
+
0
−
152
View file @
0ffb00b5
! ***********************
SUBROUTINE
RIDE_VR_GAIA
! ***********************
!
&
(
KSR
,
KS
,
UNORM
,
HN
,
GRAV
,
XMVE
,
XMVS
,
NPOIN
,
ACLADM
)
!
!***********************************************************************
! GAIA
!***********************************************************************
!
! Mégadunes (KSCD) exclues du KS global (T3D) si prédicteur activé.
!
!***********************************************************************
!
!>@brief Computes the dimensions of equilibrium ripples.
!! VAN RIJN (2007) (CURRENT ONLY).
!
!~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!>@param[in] ACLADM Mean diameter of active layer
!>@param[in] GRAV Acceleration of gravity
!>@param[in] HN Water depth
!>@param[in,out] KS Total roughness
!>@param[in,out] KSR Bed skin roughness
!>@param[in] NPOIN Number of points
!>@param[in] UNORM Norm of the mean flow velocity
!>@param[in] XMVE Fluid density
!>@param[in] XMVS Sediment density
!~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!
USE
DECLARATIONS_TELEMAC3D
,
ONLY
:
X
,
Y
,
ZF
USE
DECLARATIONS_GAIA
,
ONLY
:
ES
,
NOMBLAY
,
RATIO_MUD_SAND
IMPLICIT
NONE
!
INTEGER
I
,
NPOIN
,
ILAYER
!
DOUBLE PRECISION
,
INTENT
(
INOUT
)
::
KSR
(
NPOIN
),
KS
(
NPOIN
)
DOUBLE PRECISION
,
INTENT
(
IN
)
::
GRAV
,
XMVE
,
XMVS
DOUBLE PRECISION
,
INTENT
(
IN
)
::
HN
(
NPOIN
)
DOUBLE PRECISION
,
INTENT
(
IN
)
::
ACLADM
(
NPOIN
),
UNORM
(
NPOIN
)
!
! LOCAL VARIABLES
!
DOUBLE PRECISION
AI
,
ZERO
,
KSCR
,
KSCD
,
KSCMR
,
MOB
,
FES
,
FFS
,
kssand
DOUBLE PRECISION
DSAND
,
DGRAVEL
,
DSILT
,
OPTKS
,
OPTV
,
epaimud
DOUBLE PRECISION
epaimud2
,
epaimud1
!
!---------------------------------------------------------------------
!
ZERO
=
1.D-6
DSILT
=
0.000032D0
DGRAVEL
=
0.002D0
DSAND
=
0.000062D0
! OPTKS=1
! 1 predit par van rijn
! 2 abaque de frottement
! OPTV 1 corr de la vase fluide cf artelia
!
! COMPUTES CURRENT-DOMINATED ROUGHNESS USING VAN RIJN (2007)
!
DO
I
=
1
,
NPOIN
!
! MOBILITY NUMBER FOR CURRENT ONLY
!
! print *,'ks',I,ACLADM(I)
AI
=
ACLADM
(
I
)
*
GRAV
*
(
XMVS
-
XMVE
)/
XMVE
MOB
=
UNORM
(
I
)
**
2
/
AI
!
! RIPPLE ROUGHNESS
!
IF
(
ACLADM
(
I
)
.LE.
0.25D0
*
DGRAVEL
)
THEN
FES
=
1.D0
ELSE
FES
=
(
0.25D0
*
DGRAVEL
/
ACLADM
(
I
))
**
1.5D0
ENDIF
!
IF
(
ACLADM
(
I
)
.LT.
DSILT
)
THEN
KSCR
=
20.D0
*
DSILT
ELSE
AI
=
TANH
(
0.015D0
*
(
MOB
-150.D0
))
KSCR
=
FES
*
ACLADM
(
I
)
*
(
85.D0-65.D0
*
AI
)
ENDIF
!
! MEGARIPPLE ROUGHNESS
!
IF
(
ACLADM
(
I
)
.GE.
(
1.5D0
*
DSAND
))
THEN
FFS
=
1.D0
ELSE
FFS
=
ACLADM
(
I
)/
1.5D0
/
DSAND
ENDIF
IF
(
ACLADM
(
I
)
.LE.
DSILT
)
THEN
KSCMR
=
0.D0
ELSE
AI
=
(
1.D0
-
EXP
(
-0.05D0
*
MOB
))
*
(
550.D0
-
MOB
)
KSCMR
=
0.00002D0
*
FFS
*
HN
(
I
)
*
AI
! KSCMR=0.00002D0*FFS*HN(I)*(1.D0-EXP(-0.05D0*MOB))
IF
(
MOB
.GT.
550.D0
.AND.
ACLADM
(
I
)
.GE.
1.5D0
*
DSAND
)
THEN
KSCMR
=
0.02D0
ELSEIF
(
MOB
.GT.
550D0
.AND.
ACLADM
(
I
)
.LT.
1.5D0
*
DSAND
)
THEN
KSCMR
=
200.D0
*
ACLADM
(
I
)
ENDIF
ENDIF
!
! DUNE ROUGHNESS
!
IF
(
ACLADM
(
I
)
.LT.
DSILT
)
THEN
KSCD
=
0.D0
ELSE
AI
=
(
1.D0
-
EXP
(
-0.02D0
*
MOB
))
*
(
600.D0
-
MOB
)
KSCD
=
0.00008D0
*
FFS
*
HN
(
I
)
*
AI
ENDIF
IF
(
MOB
.GT.
600.D0
)
KSCD
=
0.D0
IF
(
KSCD
.GT.
1.D0
)
KSCD
=
1.D0
!
! ***RIPPLE BED ROUGHNESS FOR SEDIMENT COMPUTATIONS IN GAIA ***
!
KSR
(
I
)
=
KSCR
!
! *** TOTAL ROUGHNESS FOR COMPUTATIONS IN TELEMAC2D **
! print *, I,KSCR,KSCMR,KSCD,ACLADM(I)
!
! KS(I)=SQRT(KSCR**2+KSCMR**2+KSCD**2)+3.*ACLADM(I)
KS
(
I
)
=
SQRT
(
KSCR
**
2
+
KSCMR
**
2
)
+3.
*
ACLADM
(
I
)
! if (I.EQ.1336) then
! print *, I,KS(I)
! endif
! DO IPOIN = 1,NPOIN
! IF (LT.lt.32400) then
! IF (LT.lt.45640) then
! print *, ZF%R(IPOIN),ZR%R(IPOIN)
! endif
! ZR%R(IPOIN) = ZF%R(IPOIN)
! ZF%R(IPOIN) = ZF%R(IPOIN)
! if (epaimud.gt.epaimud2) then
! print *, 'aft', KS(I)
! endif
! print *, 'aft', KS(I)
! endif
! KS(I)=SQRT(KSCR**2+KSCMR**2+KSCD**2)
! KS(I)= ACLADM(I)
! print *, 'aft', KS(I),ACLADM(I)
ENDDO
!
!AGD****************************************************
!
!---------------------------------------------------------------------
!
RETURN
END
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment