artemis/utimp.f

Go to the documentation of this file.
00001 C:\opentelemac\v7p0\sources\artemis\utimp.f
00002 !
00085                      SUBROUTINE UTIMP
00086 !                    ****************
00087 !
00088      &(PHIR,PHII,C,CG,K,X,Y,ZF,H,
00089      & HHO,U0,V0,PHAS,S,TRA01,TRA02,TRA03,TRA04,INCI,
00090      & GRAV,PER,OMEGA,IKLE,NBOR,KP1BOR,
00091      & NELEM,NELMAX,IELM,IELMB,NPTFR,NPOIN,PRIVE)
00092 !
00093 !***********************************************************************
00094 ! ARTEMIS   V6P1                                   21/08/2010
00095 !***********************************************************************
00096 !
00097 !
00098 !
00099 !
00100 !
00101 !
00102 !
00103 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
00104 !| C,CG           |-->| PHASE AND GROUP VELOCITIES
00105 !| GRAV           |-->| GRAVITY
00106 !| H              |-->| WATER HEIGHT
00107 !| HHO            |-->| WAVE HEIGHT
00108 !| IELM           |-->| ELEMENT TYPE
00109 !| IELMB          |-->| BOUNDARY ELEMENT TYPE
00110 !| IKLE           |-->| CONNECTIVITY TABLE
00111 !| INCI           |-->| WAVE INCIDENCE
00112 !| K              |-->| WAVE NUMBER
00113 !| KP1BOR         |-->| BOUNDARY NUMBER OF THE NEXT POINT
00114 !| NBOR           |-->| GLOBAL NUMBER OF BOUNDARY POINTS
00115 !| NELEM          |-->| NUMBER OF ELEMENTS
00116 !| NELMAX         |-->| MAXIMUM NUMBER OF ELEMENTS
00117 !| NPOIN          |-->| NUMBER OF POINTS
00118 !| NPTFR          |-->| NUMBER OF BOUNDARY POINTS
00119 !| OMEGA          |-->| WAVE PULSATION
00120 !| PER            |-->| WAVE PERIOD
00121 !| PHAS           |-->| WAVE PHASE
00122 !| PHIR,PHII      |-->| POTENTIAL (REAL & IMAGINARY)
00123 !| PRIVE          |<->| USER PRIVATE TABLE
00124 !| S              |-->| FREE SURFACE ELEVATION
00125 !| TRA02          |<->| WORK ARRAY
00126 !| TRA03          |<->| WORK ARRAY
00127 !| TRA04          |<->| WORK ARRAY
00128 !| U0,V0          |-->| VELOCITIES AT FREE SURFACE (AT T=0)
00129 !| X,Y            |-->| MESH COORDINATES
00130 !| ZF             |-->| BOTTOM
00131 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
00132 !
00133       USE INTERFACE_ARTEMIS, EX_UTIMP=> UTIMP
00134       USE BIEF
00135 !
00136       IMPLICIT NONE
00137       INTEGER LNG,LU
00138       COMMON/INFO/LNG,LU
00139 !
00140       INTEGER NELEM,NELMAX,IELM,IELMB,NPTFR,NPOIN
00141       INTEGER IKLE(NELMAX,3),NBOR(NPTFR),KP1BOR(NPTFR)
00142 !
00143       DOUBLE PRECISION PHIR(NPOIN),PHII(NPOIN)
00144       DOUBLE PRECISION C(NPOIN),CG(NPOIN),K(NPOIN),X(NPOIN),Y(NPOIN)
00145       DOUBLE PRECISION ZF(NPOIN),H(NPOIN),HHO(NPOIN),U0(NPOIN),V0(NPOIN)
00146       DOUBLE PRECISION INCI(NPOIN)
00147       DOUBLE PRECISION PHAS(NPOIN),S(NPOIN)
00148       DOUBLE PRECISION TRA01(NPOIN),TRA02(NPOIN)
00149       DOUBLE PRECISION TRA03(NPOIN),TRA04(NPOIN)
00150 !
00151       TYPE(BIEF_OBJ) :: PRIVE
00152 !
00153       DOUBLE PRECISION GRAV,PER,OMEGA
00154 !
00155 !------------------------------------------------------------------
00156 !     EXAMPLE : U1 AND V1
00157 !              (HORIZONTAL VELOCITIES AT T/4)
00158 !               ARE TRANSFERRED TO PRIVE(I,1) AND PRIVE(I,2)
00159 !------------------------------------------------------------------
00160 !
00161 !      CALL VECTOR(TRA02, '=' , 'GRADF          X' , IELM ,
00162 !     *            1.D0 , PHII , BID , BID , BID , BID , BID ,
00163 !     *            MESH , MESH , MSK , MASKEL )
00164 !
00165 !      CALL VECTOR(TRA03 , '=' , 'GRADF          Y' , IELM ,
00166 !     *            1.D0 , PHII , BID , BID , BID , BID , BID ,
00167 !     *            MESH , MESH , MSK , MASKEL )
00168 !     *            MESH , XMESH ,
00169 !
00170 !      CALL VECTOR(TRA01 , '=' , 'MASBAS          ' , IELM ,
00171 !     *            1.D0 , BID , BID , BID , BID , BID , BID ,
00172 !     *            MESH , MESH , MSK , MASKEL )
00173 !     *            MESH , XMESH ,
00174 !
00175 !      CALL OS( 'X=Y/Z   ' , TRA02 , TRA02 , TRA01 , BID )
00176 !      CALL OS( 'X=Y/Z   ' , TRA03 , TRA03 , TRA01 , BID )
00177 !
00178 !      DO I = 1,NPOIN
00179 !        PRIVE%ADR(1)%P%R(1) = OMEGAM(I)
00180 !        PRIVE%ADR(1)%P%R(2) = 2D0*3.1415D0/PERPIC
00181 !      ENDDO
00182 !
00183       RETURN
00184       END

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