initstr.f

Go to the documentation of this file.
00001 C:\opentelemac\v7p0\sources\telemac2d\initstr.f
00002 !
00056                      SUBROUTINE INITSTR
00057 !                    ******************
00058 !
00059      &(CHESTR,SETSTR,PZONE,NZONE,NPOIN,T1)
00060 !
00061 !***********************************************************************
00062 ! TELEMAC2D   V6P1                                   21/08/2010
00063 !***********************************************************************
00064 !
00065 !
00066 !
00067 !
00068 !
00069 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
00070 !| CHESTR         |-->| FRICTION COEFFICIENTS
00071 !| NPOIN          |-->| NUMBER OF POINTS
00072 !| NZONE          |-->| NUMBER OF ZONES
00073 !| PZONE          |-->| TABLE OF ZONES
00074 !| SETSTR         |-->| SET OF STRICKLERS (ZONES)
00075 !| T1             |<->| WORK BIEF_OBJ STRUCTURE
00076 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
00077 !
00078       USE BIEF
00079 !
00080       IMPLICIT NONE
00081       INTEGER LNG,LU
00082       COMMON/INFO/LNG,LU
00083 !
00084 !+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
00085 !
00086       TYPE(BIEF_OBJ), INTENT(IN)      :: CHESTR
00087       TYPE(BIEF_OBJ), INTENT(INOUT)   :: SETSTR,T1
00088       INTEGER, INTENT(IN)             :: PZONE(*)
00089       INTEGER, INTENT(IN)             :: NZONE
00090       INTEGER, INTENT(IN)             :: NPOIN
00091 !
00092 !+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
00093 !
00094       INTEGER I,J
00095 !
00096 !----------------------------------------------------------------------
00097 !
00098       IF(NZONE.GT.0) THEN
00099 !
00100 !       ZONATION : SETSTR=AVERAGE PER ZONE OF CHESTR
00101 !
00102         CALL OS('X=0     ',X=SETSTR)
00103         CALL OS('X=Y     ',X=T1    ,Y=SETSTR)
00104         DO J=1,NZONE
00105           DO I=1,NPOIN
00106             IF(PZONE(I).EQ.J) THEN
00107               SETSTR%R(J)=SETSTR%R(J)+CHESTR%R(I)
00108               T1%R(J)=T1%R(J)+1.D0
00109             ENDIF
00110           ENDDO
00111           SETSTR%R(J)=SETSTR%R(J)/T1%R(J)
00112         ENDDO
00113 !
00114       ELSE
00115 !
00116 !       NO ZONATION : SETSTR=CHESTR
00117 !
00118         CALL OS('X=Y     ',X=SETSTR,Y=CHESTR)
00119 !
00120       ENDIF
00121 !
00122 !----------------------------------------------------------------------
00123 !
00124       RETURN
00125       END

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