flot.f

Go to the documentation of this file.
00001 C:\opentelemac\v7p0\sources\telemac2d\flot.f
00002 !
00060                      SUBROUTINE FLOT
00061 !                    ***************
00062 !
00063      &(XFLOT,YFLOT,NFLOT,NFLOT_MAX,X,Y,IKLE,NELEM,NELMAX,NPOIN,
00064      & TAGFLO,SHPFLO,ELTFLO,MESH,LT,NIT,AT)
00065 !
00066 !***********************************************************************
00067 ! TELEMAC2D   V6P3                                   21/08/2010
00068 !***********************************************************************
00069 !
00070 !
00071 !
00072 !
00073 !
00074 !
00075 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
00076 !| AT             |-->| TIME
00077 !| ELTFLO         |<->| NUMBERS OF ELEMENTS WHERE ARE THE FLOATS
00078 !| LT             |-->| CURRENT TIME STEP
00079 !| MESH           |<->| MESH STRUCTURE
00080 !| NFLOT          |-->| NUMBER OF FLOATS
00081 !| NFLOT_MAX      |-->| MAXIMUM NUMBER OF FLOATS
00082 !| NIT            |-->| NUMBER OF TIME STEPS
00083 !| NPOIN          |-->| NUMBER OF POINTS IN THE MESH
00084 !| SHPFLO         |<->| BARYCENTRIC COORDINATES OF FLOATS IN THEIR
00085 !|                |   | ELEMENTS.
00086 !| X,Y            |-->| COORDINATES OF POINTS IN THE MESH
00087 !| XFLOT,YFLOT    |<--| POSITIONS OF FLOATING BODIES
00088 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
00089 !
00090       USE BIEF
00091       USE STREAMLINE, ONLY : ADD_PARTICLE,DEL_PARTICLE
00092       USE ALGAE_TRANSP
00093 !
00094       IMPLICIT NONE
00095       INTEGER LNG,LU
00096       COMMON/INFO/LNG,LU
00097 !
00098 !+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
00099 !
00100       INTEGER, INTENT(IN)             :: NPOIN,NIT,NFLOT_MAX,LT
00101       INTEGER, INTENT(IN)             :: NELEM,NELMAX
00102       INTEGER, INTENT(IN)             :: IKLE(NELMAX,3)
00103       INTEGER, INTENT(INOUT)          :: NFLOT
00104       INTEGER, INTENT(INOUT)          :: TAGFLO(NFLOT_MAX)
00105       INTEGER, INTENT(INOUT)          :: ELTFLO(NFLOT_MAX)
00106       DOUBLE PRECISION, INTENT(IN)    :: X(NPOIN),Y(NPOIN),AT
00107       DOUBLE PRECISION, INTENT(INOUT) :: XFLOT(NFLOT_MAX)
00108       DOUBLE PRECISION, INTENT(INOUT) :: YFLOT(NFLOT_MAX)
00109       DOUBLE PRECISION, INTENT(INOUT) :: SHPFLO(3,NFLOT_MAX)
00110       TYPE(BIEF_MESH) , INTENT(INOUT) :: MESH
00111 !
00112 !+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
00113 !
00114 !     EXAMPLE : AT ITERATION 1 AND EVERY 10 ITERATIONS AFTER 600
00115 !               A PARTICLE IS RELEASED WITH COORDINATES
00116 !               X=-220.
00117 !               Y=400.D0+LT/3.D0
00118 !               AND TAG NUMBER LT
00119 !
00120 !     IF(LT.LE.600.AND.(10*(LT/10).EQ.LT.OR.LT.EQ.1)) THEN
00121 !       CALL ADD_PARTICLE(-220.D0,400.D0+LT/3.D0,0.D0,LT,NFLOT,
00122 !    &                    NFLOT_MAX,XFLOT,YFLOT,YFLOT,TAGFLO,
00123 !    &                    SHPFLO,SHPFLO,ELTFLO,ELTFLO,MESH,1,
00124 !    &                    0.D0,0.D0,0.D0,0.D0,0,0)
00125 !     ENDIF
00126 !
00127 !     EXAMPLE : PARTICLE WITH TAG 20 REMOVED AT ITERATION 600
00128 !
00129 !     IF(LT.EQ.600) THEN
00130 !        CALL DEL_PARTICLE(20,NFLOT,NFLOT_MAX,
00131 !    &                     XFLOT,YFLOT,YFLOT,TAGFLO,SHPFLO,SHPFLO,
00132 !    &                     ELTFLO,ELTFLO,MESH%TYPELM)
00133 !     ENDIF
00134 !
00135 !+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
00136 !
00137 !     EXAMPLE : FOR ALGAE PARTICLE TRANSPORT
00138 !               => ALGAE_START NEEDS TO BE DEFINED
00139 !
00140 !       ALGAE_START=2
00141 !
00142 !       IF(LT.EQ.MAX(1,ALGAE_START)) THEN
00143 !         DO I=1,NFLOT_MAX
00144 !           CALL ADD_PARTICLE(0.175D0,0.45D0,0.D0,I,NFLOT,
00145 !      &                    NFLOT_MAX,XFLOT,YFLOT,YFLOT,TAGFLO,
00146 !      &                    SHPFLO,SHPFLO,ELTFLO,ELTFLO,MESH,1,
00147 !      &                    0.D0,0.D0,0.D0,0.D0,0,0)
00148 !         END DO
00149 !       ENDIF
00150 !
00151 !-----------------------------------------------------------------------
00152 !
00153       RETURN
00154       END

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