The TELEMAC-MASCARET system  trunk
mt01oo.f
Go to the documentation of this file.
1 ! *****************
2  SUBROUTINE mt01oo
3 ! *****************
4 !
5  &(a11,a12,a22,xmul,lgseg,nelem,nelmax)
6 !
7 !***********************************************************************
8 ! BIEF V6P1 21/08/2010
9 !***********************************************************************
10 !
11 !brief BUILDS THE MASS MATRIX FOR P1 SEGMENTS.
12 !code
13 !+ COMPUTES THE COEFFICIENTS OF THE FOLLOWING MATRIX:
14 !+
15 !+ /
16 !+ A = / (P *P )*J(X,Y) DX
17 !+ I J /L I J
18 !+
19 !+ BY ELEMENTARY CELL
20 !+
21 !+ J(X,Y) : JACOBIAN OF THE ISOPARAMETRIC TRANSFORMATION
22 !
23 !warning THE JACOBIAN MUST BE POSITIVE
24 !
25 !history J-M HERVOUET (LNH)
26 !+ 06/12/94
27 !+ V5P1
28 !+
29 !
30 !history N.DURAND (HRW), S.E.BOURBAN (HRW)
31 !+ 13/07/2010
32 !+ V6P0
33 !+ Translation of French comments within the FORTRAN sources into
34 !+ English comments
35 !
36 !history N.DURAND (HRW), S.E.BOURBAN (HRW)
37 !+ 21/08/2010
38 !+ V6P0
39 !+ Creation of DOXYGEN tags for automated documentation and
40 !+ cross-referencing of the FORTRAN sources
41 !
42 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
43 !| A11 |<--| ELEMENTS OF MATRIX
44 !| A12 |<--| ELEMENTS OF MATRIX
45 !| A22 |<--| ELEMENTS OF MATRIX
46 !| LGSEG |-->| LENGTH OF SEGMENTS.
47 !| NELEM |-->| NUMBER OF ELEMENTS
48 !| NELMAX |-->| MAXIMUM NUMBER OF ELEMENTS
49 !| XMUL |-->| MULTIPLICATION FACTOR
50 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
51 !
52  USE bief, ex_mt01oo => mt01oo
53 !
55  IMPLICIT NONE
56 !
57 !+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
58 !
59  INTEGER, INTENT(IN) :: NELEM,NELMAX
60 !
61  DOUBLE PRECISION, INTENT(INOUT) :: A11(nelmax),A12(nelmax)
62  DOUBLE PRECISION, INTENT(INOUT) :: A22(nelmax)
63  DOUBLE PRECISION, INTENT(IN) :: LGSEG(nelmax)
64 !
65  DOUBLE PRECISION, INTENT(IN) :: XMUL
66 !
67 !+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
68 !
69  INTEGER IELEM
70  DOUBLE PRECISION XSUR6,DET1
71 !
72 !-----------------------------------------------------------------------
73 !
74  xsur6 = xmul/6.d0
75 !
76 !-----------------------------------------------------------------------
77 !
78  DO ielem = 1 , nelem
79 !
80  det1 = lgseg(ielem) * xsur6
81  a11(ielem) = det1 + det1
82  a12(ielem) = det1
83  a22(ielem) = det1 + det1
84 !
85  ENDDO ! IELEM
86 !
87 !-----------------------------------------------------------------------
88 !
89  RETURN
90  END
subroutine mt01oo(A11, A12, A22, XMUL, LGSEG, NELEM, NELMAX)
Definition: mt01oo.f:7
Definition: bief.f:3