mudstress3d.f

Go to the documentation of this file.
00001 C:\opentelemac\v7p0\sources\telemac3d\mudstress3d.f
00002 !
00046                      SUBROUTINE MUDSTRESS3D
00047 !                    **********************
00048 !
00049      &(NGEO,FFORMAT,LAYTOCE,NCOUCH,MESH,LISTIN)
00050 !
00051 !***********************************************************************
00052 ! SISYPHE   V7P0                                   21/08/2010
00053 !***********************************************************************
00054 !
00055 !         FOR EACH BED LAYER AND READS THEM IF THEY ARE PRESENT.
00056 !         VALUES ARE READ IN AS STRESSES (N/M2) AND OUTPUTTED AS STRESSES
00057 !+
00058 !
00059 !
00060 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
00061 !
00062       USE BIEF
00063       IMPLICIT NONE
00064       INTEGER LNG,LU
00065       COMMON/INFO/LNG,LU
00066 !
00067 !+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
00068 !
00069       TYPE(BIEF_MESH), INTENT(IN)   :: MESH
00070       TYPE(BIEF_OBJ), INTENT(INOUT) :: LAYTOCE
00071       INTEGER, INTENT(IN)           :: NGEO
00072       INTEGER, INTENT(IN)           :: NCOUCH
00073       LOGICAL, INTENT(IN)           :: LISTIN
00074       CHARACTER(LEN=8), INTENT(IN)  :: FFORMAT
00075 !
00076 !+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
00077 !
00078       INTEGER :: ERR
00079       DOUBLE PRECISION :: BID
00080       REAL, ALLOCATABLE :: W(:)
00081       LOGICAL :: OK
00082       CHARACTER(LEN=16) :: VARNAME
00083       INTEGER :: I
00084 !
00085 !-----------------------------------------------------------------------
00086 !
00087       ALLOCATE(W(MESH%NPOIN),STAT=ERR)
00088       IF(ERR.NE.0) THEN
00089         IF(LNG.EQ.1) WRITE(LU,*) 'MUDSTRESS3D: MAUVAISE ALLOCATION DE W'
00090         IF(LNG.EQ.2) WRITE(LU,*) 'MUDSTRESS3D: WRONG ALLOCATION OF W'
00091         CALL PLANTE(1)
00092         STOP
00093       ENDIF
00094 !
00095 !-----------------------------------------------------------------------
00096 !
00097 !     ASSUMES THAT THE FILE HEADER LINES HAVE ALREADY BEEN READ
00098 !     WILL START READING THE RESULT RECORDS
00099 !
00100 !-----------------------------------------------------------------------
00101 !
00102 !     INITIALISE
00103       OK = .FALSE.
00104 !
00105 !-----------------------------------------------------------------------
00106 !
00107 !     LOOKS FOR 1. CRITICAL SHEAR STRESS FOR EROSION PER LAYER
00108 !     IN THE GEOMETRY FILE:
00109 !     VARIABLE NAMES ARE ERO SHEAR1, ERO SHEAR2, etc....FOR EACH LAYER
00110 !     UP TO NCOUCH
00111 !
00112       DO I=1,NCOUCH
00113 !
00114 !       MAKE THE NUMBERED NAME STRING
00115 !
00116         WRITE(VARNAME,'(A9,I0)')  'ERO SHEAR',I
00117 !
00118         CALL FIND_IN_SEL(LAYTOCE%ADR(I)%P,
00119      &                   VARNAME,NGEO,FFORMAT,W,OK,TIME=BID)
00120 !
00121         IF (OK) WRITE(LU,*)
00122      &    'EROSION SHEAR (LAYER', I, ') FOUND IN GEOMETRY FILE'
00123         IF (.NOT. OK) WRITE(LU,*)
00124      &    'EROSION SHEAR (LAYER', I, ') NOT FOUND IN GEOMETRY FILE'
00125 
00126 !       RESET FIND FLAG:
00127         OK = .FALSE.
00128 !
00129       ENDDO
00130 !
00131       DEALLOCATE(W)
00132 !
00133 !-----------------------------------------------------------------------
00134 !
00135       RETURN
00136       END

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