C ********************************************************************** C * * C * SOFTWARE LICENSING * C * * C * This program is free software; you can redistribute * C * it and/or modify it under the terms of the GNU * C * General Public License as published by the Free * C * Software Foundation, either Version 2 of the * C * license, or (at your option) any later version. * C * * C * This program is distributed in the hope that it * C * will be useful, but without any warranty; without * C * even the implied warranty of merchantability or * C * fitness for a particular purpose. See the GNU * C * General Public License for more details. * C * * C * A copy of the GNU General Public License is * C * available at http://www.gnu.org/copyleft/gpl.html * C * or by writing to the Free Software Foundation, Inc.,* C * 59 Temple Place - Suite 330, Boston, MA 02111, USA. * C * * C ********************************************************************** SUBROUTINE UPDATE_CBC CNG04272010 UPDATE CBC BASED ON INSTANTANEOUS DEPTH DT(I,J) INCLUDE 'comdeck' SAVE Do 6030 J = 1, JM Do 6020 I = 1, IM If (FSM(I,J).NE.0.0) Then C C VARIABLE BOTTOM FRICTION FOR SEDIMENT TRANSPORT C IF (SEDTRAN.EQ.'INCLUDE') THEN C C COHESIVE ELEMENTS C IF (IBMSK(I,J).EQ.0) THEN Z0 = Z0BCOH CBCMIN = BFCOH IF (TOR.EQ.'BAROTROPIC') THEN CBC(I,J)=BFCOH*FSM(I,J) ELSE CBC(I,J)=AMAX1(CBCMIN,.16/ALOG((DZ(KBM1)*0.5)* + AMAX1(DT(I,J),Z0+5.E-1,WETMIN)/Z0)**2)*FSM(I,J) ENDIF C C NON-COHESIVE ELEMENTS C ELSE CRM Z0 = Z0B Z0=Z0B(I,J) !RMarsooli_May2015, VARIABLE Z0B CBCMIN = BFRIC IF (TOR.EQ.'BAROTROPIC') THEN CBC(I,J)=BFRIC*FSM(I,J) ELSE CBC(I,J)=AMAX1(CBCMIN,.16/ALOG((DZ(KBM1)*0.5)* + AMAX1(DT(I,J),Z0+5.E-1,WETMIN)/Z0)**2)*FSM(I,J) ENDIF ENDIF ELSE CRM Z0 = Z0B Z0=Z0B(I,J) !RMarsooli_May2015, VARIABLE Z0B CBCMIN = BFRIC IF (TOR.EQ.'BAROTROPIC') THEN CBC(I,J)=BFRIC*FSM(I,J) ELSE CBC(I,J)=AMAX1(CBCMIN,.16/ALOG((DZ(KBM1)*0.5)* + AMAX1(DT(I,J),Z0+5.E-1,WETMIN)/Z0)**2)*FSM(I,J) ENDIF ENDIF Else CBC(I,J)=BFRIC !Initialize CBC even at FSM=0 cells 05302012 END IF CBC(I,J) = AMIN1(CBC(I,J)*VARBF(I,J),0.5) ! FACTOR IN 2D VARIABLE BFRIC, AND DO NOT ALLOW CBC TO EXCEED 0.5 !UNITY. 6020 CONTINUE 6030 CONTINUE RETURN END