The TELEMAC-MASCARET system  trunk
vc00cc.f
Go to the documentation of this file.
1 ! *****************
2  SUBROUTINE vc00cc
3 ! *****************
4 !
5  &(xmul,surfac,nelem,nelmax,w1,w2,w3,w4,w5,w6)
6 !
7 !***********************************************************************
8 ! BIEF V6P1 21/08/2010
9 !***********************************************************************
10 !
11 !brief COMPUTES THE FOLLOWING VECTOR IN FINITE ELEMENTS:
12 !code
13 !+ /
14 !+ VEC(I) = XMUL / PSI(I) D(OMEGA)
15 !+ /OMEGA
16 !+
17 !+ PSI(I) IS A BASE OF TYPE P2 TRIANGLE
18 !
19 !warning THE JACOBIAN MUST BE POSITIVE
20 !warning THE RESULT IS IN W IN NOT ASSEMBLED FORM
21 !
22 !history ALGIANE FROEHLY (STAGIAIRE MATMECA); J-M HERVOUET (LNH)
23 !+ 29/05/08
24 !+ V5P9
25 !+
26 !
27 !history N.DURAND (HRW), S.E.BOURBAN (HRW)
28 !+ 13/07/2010
29 !+ V6P0
30 !+ Translation of French comments within the FORTRAN sources into
31 !+ English comments
32 !
33 !history N.DURAND (HRW), S.E.BOURBAN (HRW)
34 !+ 21/08/2010
35 !+ V6P0
36 !+ Creation of DOXYGEN tags for automated documentation and
37 !+ cross-referencing of the FORTRAN sources
38 !
39 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
40 !| NELEM |-->| NUMBER OF ELEMENTS
41 !| NELMAX |-->| MAXIMUM NUMBER OF ELEMENTS
42 !| SURFAC |-->| AREA OF TRIANGLES
43 !| W1 |<--| RESULT IN NON ASSEMBLED FORM
44 !| W2 |<--| RESULT IN NON ASSEMBLED FORM
45 !| W3 |<--| RESULT IN NON ASSEMBLED FORM
46 !| W4 |<--| RESULT IN NON ASSEMBLED FORM
47 !| W5 |<--| RESULT IN NON ASSEMBLED FORM
48 !| W6 |<--| RESULT IN NON ASSEMBLED FORM
49 !| XMUL |-->| MULTIPLICATION COEFFICIENT
50 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
51 !
53  IMPLICIT NONE
54 !
55 !+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
56 !
57  INTEGER, INTENT(IN) :: NELEM,NELMAX
58 !
59  DOUBLE PRECISION, INTENT(INOUT):: W1(nelmax),W2(nelmax),W3(nelmax)
60  DOUBLE PRECISION, INTENT(INOUT):: W4(nelmax),W5(nelmax),W6(nelmax)
61  DOUBLE PRECISION, INTENT(IN) :: SURFAC(nelmax)
62  DOUBLE PRECISION, INTENT(IN) :: XMUL
63 !
64 !+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
65 !
66  INTEGER IELEM
67  DOUBLE PRECISION XSUR3,COEF
68 !
69 !-----------------------------------------------------------------------
70 !
71  xsur3=xmul/3.d0
72 !
73  DO ielem = 1 , nelem
74 !
75  coef = xsur3 * surfac(ielem)
76 !
77  w1(ielem) = 0.d0
78  w2(ielem) = 0.d0
79  w3(ielem) = 0.d0
80  w4(ielem) = coef
81  w5(ielem) = coef
82  w6(ielem) = coef
83 !
84  ENDDO ! IELEM
85 !
86 !-----------------------------------------------------------------------
87 !
88  RETURN
89  END
subroutine vc00cc(XMUL, SURFAC, NELEM, NELMAX, W1, W2, W3, W4, W5, W6)
Definition: vc00cc.f:7