The TELEMAC-MASCARET system  trunk
slopes.f
Go to the documentation of this file.
1 ! *****************
2  SUBROUTINE slopes
3 ! *****************
4 !
5  &(coef,z,mesh)
6 !
7 !***********************************************************************
8 ! BIEF V6P1 21/08/2010
9 !***********************************************************************
10 !
11 !brief COMPUTES THE COEFFICIENT 1 / COS(ALFA)
12 !+ WHERE ALFA IS THE SLOPE OF A TRIANGULAR ELEMENT.
13 !+
14 !+ THIS COEFFICIENT IS USED IN THE BOTTOM FRICTION
15 !+ TERM.
16 !
17 !warning THE JACOBIAN MUST BE POSITIVE
18 !
19 !history J-M HERVOUET (LNH)
20 !+ 17/08/94
21 !+ V5P5
22 !+
23 !
24 !history N.DURAND (HRW), S.E.BOURBAN (HRW)
25 !+ 13/07/2010
26 !+ V6P0
27 !+ Translation of French comments within the FORTRAN sources into
28 !+ English comments
29 !
30 !history N.DURAND (HRW), S.E.BOURBAN (HRW)
31 !+ 21/08/2010
32 !+ V6P0
33 !+ Creation of DOXYGEN tags for automated documentation and
34 !+ cross-referencing of the FORTRAN sources
35 !
36 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
37 !| COEF |<--| RESULT
38 !| MESH |-->| MESH STRUCTURE
39 !| Z |-->| BOTTOM ELEVATIONS
40 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
41 !
42  USE bief, ex_slopes => slopes
43 !
45  IMPLICIT NONE
46 !
47 !+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
48 !
49 ! STRUCTURES OF VECTOR
50 !
51  TYPE(bief_obj), INTENT(INOUT) :: COEF
52  TYPE(bief_obj), INTENT(IN) :: Z
53 !
54 !-----------------------------------------------------------------------
55 !
56 ! MESH STRUCTURE
57 !
58  TYPE(bief_mesh), INTENT(IN) :: MESH
59 !
60 !+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
61 !
62  INTEGER NELEM,NELMAX,IELM
63 !
64 !-----------------------------------------------------------------------
65 !
66  ielm = mesh%TYPELM
67  nelem = mesh%NELEM
68  nelmax = mesh%NELMAX
69 !
70 !-----------------------------------------------------------------------
71 !
72  coef%ELM = ielm
73  coef%DIM1= bief_nbpts(ielm,mesh)
74 !
75 !-----------------------------------------------------------------------
76 !
77  IF(ielm.EQ.10) THEN
78  CALL slop10(coef%R,mesh%XEL%R,mesh%YEL%R,
79  & z%R,mesh%IKLE%I,nelem,nelmax)
80  ELSE
81  WRITE(lu,301) mesh%TYPELM
82 301 FORMAT(1x,'SLOPES (BIEF) : UNKNOWN ELEMENT:',1i6)
83  CALL plante(0)
84  stop
85  ENDIF
86 !
87 !-----------------------------------------------------------------------
88 !
89  RETURN
90  END
integer function bief_nbpts(IELM, MESH)
Definition: bief_nbpts.f:7
subroutine slopes(COEF, Z, MESH)
Definition: slopes.f:7
subroutine slop10(COEF, XEL, YEL, Z, IKLE, NELEM, NELMAX)
Definition: slop10.f:7
subroutine coef(S3D_IVIDE, S3D_EPAI, TRA01, S3D_NPFMAX, IMAX, NDEB, S3D_RHOS, GRAV, S3D_DTC, DSIG1)
Definition: coef.f:9
Definition: bief.f:3