as3_1111_s.f

Go to the documentation of this file.
00001 C:\opentelemac\v7p0\sources\utils\bief\as3_1111_s.f
00002 !
00050                      SUBROUTINE AS3_1111_S
00051 !                    *********************
00052 !
00053      &(XM,NSEG1,XMT,NELMAX,NELEM,ELTSEG1,ELTSEG2,ELTSEG3)
00054 !
00055 !***********************************************************************
00056 ! BIEF   V6P1                                   21/08/2010
00057 !***********************************************************************
00058 !
00059 !
00060 !
00061 !
00062 !
00063 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
00064 !| ELTSEG1        |-->| FIRST SEGMENT OF A TRIANGLE
00065 !| ELTSEG2        |-->| SECOND SEGMENT OF A TRIANGLE
00066 !| ELTSEG3        |-->| THIRD SEGMENT OF A TRIANGLE
00067 !| NELEM          |-->| NUMBER OF ELEMENTS IN THE MESH
00068 !| NELMAX         |-->| FIRST DIMENSION OF IKLE AND W.
00069 !| NSEG1          |-->| NUMBER OF SEGMENTS (HERE JOINING LINEAR POINTS)
00070 !| XM             |<--| ASSEMBLED OFF-DIAGONAL TERMS XA12,23,31
00071 !| XMT            |-->| ELEMENT BY ELEMENT STORAGE OF MATRIX
00072 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
00073 !
00074       IMPLICIT NONE
00075       INTEGER LNG,LU
00076       COMMON/INFO/LNG,LU
00077 !
00078 !+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
00079 !
00080       INTEGER         , INTENT(IN)    :: NELMAX,NELEM,NSEG1
00081       INTEGER         , INTENT(IN)    :: ELTSEG1(NELMAX)
00082       INTEGER         , INTENT(IN)    :: ELTSEG2(NELMAX)
00083       INTEGER         , INTENT(IN)    :: ELTSEG3(NELMAX)
00084       DOUBLE PRECISION, INTENT(INOUT) :: XMT(NELMAX,*)
00085       DOUBLE PRECISION, INTENT(INOUT) :: XM(NSEG1)
00086 !
00087 !+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
00088 !
00089       INTEGER ISEG,IELEM
00090 !
00091 !-----------------------------------------------------------------------
00092 !
00093 !  INITIALISES
00094 !
00095       DO ISEG = 1 , NSEG1
00096         XM(ISEG) = 0.D0
00097       ENDDO
00098 !
00099 !  ASSEMBLES
00100 !
00101       DO IELEM = 1,NELEM
00102         XM(ELTSEG1(IELEM)) = XM(ELTSEG1(IELEM)) + XMT(IELEM,1)
00103         XM(ELTSEG2(IELEM)) = XM(ELTSEG2(IELEM)) + XMT(IELEM,3)
00104         XM(ELTSEG3(IELEM)) = XM(ELTSEG3(IELEM)) + XMT(IELEM,2)
00105       ENDDO
00106 !
00107 !-----------------------------------------------------------------------
00108 !
00109       RETURN
00110       END

Generated on Fri Aug 31 2013 18:12:58 by S.E.Bourban (HRW) using doxygen 1.7.0