Difference between revisions of "Sediment Transport with Particle Tracking"

From TUFLOW FV Wiki
Jump to: navigation, search
(Particle Tracking)
(Particle Tracking)
Line 28: Line 28:
 
  <font color="green">!!TIME COMMANDS
 
  <font color="green">!!TIME COMMANDS
 
  !_________________________________________________________________</font>
 
  !_________________________________________________________________</font>
  <font color="blue"><tt>lagrangian timestep</tt></font><font color="red"><tt> ==</font> 120. <font color="green"! seconds</font>
+
  <font color="blue"><tt>lagrangian timestep</tt></font><font color="red"><tt> ==</tt></font> 120. <font color="green"! seconds</font>
  <font color="blue"><tt>eulerian timestep</tt></font><font color="red"><tt> ==</font> 120. <font color="green"! seconds</font>
+
  <font color="blue"><tt>eulerian timestep</tt></font><font color="red"><tt> ==</tt></font> 120. <font color="green"! seconds</font>
 
  <font color="green">! Sediment Transport COMMANDS (required if a particle group interacts with bed)</font>
 
  <font color="green">! Sediment Transport COMMANDS (required if a particle group interacts with bed)</font>
  <font color="blue"><tt>bed roughness model</tt></font><font color="red"><tt> ==</font> ks
+
  <font color="blue"><tt>bed roughness model</tt></font><font color="red"><tt> ==</tt></font> ks
  <font color="blue"><tt>bed roughness parameters</tt></font><font color="red"><tt> ==</font> 0.01,0.01 <font color="green"! ksc, ksw</font>
+
  <font color="blue"><tt>bed roughness parameters</tt></font><font color="red"><tt> ==</tt></font> 0.01,0.01 <font color="green"! ksc, ksw</font>
 
  <font color="green">!Global COMMANDS</font>
 
  <font color="green">!Global COMMANDS</font>
  <font color="blue"><tt>Nscalar</tt></font><font color="red"><tt> ==</font> 1
+
  <font color="blue"><tt>Nscalar</tt></font><font color="red"><tt> ==</tt></font> 1
 
  <font color="green">!PARTICLE GROUP COMMANDS </font>
 
  <font color="green">!PARTICLE GROUP COMMANDS </font>
 
  <font color="green">!_________________________________________________________________</font>
 
  <font color="green">!_________________________________________________________________</font>
  <font color="blue"><tt>Group</tt></font><font color="red"><tt> ==</font> fineSed
+
  <font color="blue"><tt>Group</tt></font><font color="red"><tt> ==</tt></font> fineSed
  <font color="blue"><tt>d50</tt></font><font color="red"><tt> ==</font> 0.000002
+
  <font color="blue"><tt>d50</tt></font><font color="red"><tt> ==</tt></font> 0.000002
       <font color="blue"><tt>particle density</tt></font><font color="red"><tt> ==</font> 2650
+
       <font color="blue"><tt>particle density</tt></font><font color="red"><tt> ==</tt></font> 2650
       <font color="blue"><tt>Settling model</tt></font><font color="red"><tt> ==</font> constant
+
       <font color="blue"><tt>Settling model</tt></font><font color="red"><tt> ==</tt></font> constant
       <font color="blue"><tt>settling parameters</tt></font><font color="red"><tt> ==</font> 0.0002 <font color="green"!(m/s)</font>
+
       <font color="blue"><tt>settling parameters</tt></font><font color="red"><tt> ==</tt></font> 0.0002 <font color="green"!(m/s)</font>
       <font color="blue"><tt>deposition model</tt></font><font color="red"><tt> ==</font> ws0
+
       <font color="blue"><tt>deposition model</tt></font><font color="red"><tt> ==</tt></font> ws0
       <font color="blue"><tt>Erosion Model</tt></font><font color="red"><tt> ==</font> Mehta
+
       <font color="blue"><tt>Erosion Model</tt></font><font color="red"><tt> ==</tt></font> Mehta
       <font color="blue"><tt>Erosion parameters</tt></font><font color="red"><tt> ==</font> 0.1, 0.5, 0.5 <font color="green"!Er, taucr, alpha</font>
+
       <font color="blue"><tt>Erosion parameters</tt></font><font color="red"><tt> ==</tt></font> 0.1, 0.5, 0.5 <font color="green"!Er, taucr, alpha</font>
 
  <font color="blue"><tt>End Group</font>
 
  <font color="blue"><tt>End Group</font>
  <font color="blue"><tt>Group</tt></font><font color="red"><tt> ==</font>  Gravel
+
  <font color="blue"><tt>Group</tt></font><font color="red"><tt> ==</tt></font>  Gravel
       <font color="blue"><tt>d50</tt></font><font color="red"><tt> ==</font> 0.032
+
       <font color="blue"><tt>d50</tt></font><font color="red"><tt> ==</tt></font> 0.032
       <font color="blue"><tt>particle density</tt></font><font color="red"><tt> ==</font> 2650
+
       <font color="blue"><tt>particle density</tt></font><font color="red"><tt> ==</tt></font> 2650
       <font color="blue"><tt>Settling model</tt></font><font color="red"><tt> ==</font> constant
+
       <font color="blue"><tt>Settling model</tt></font><font color="red"><tt> ==</tt></font> constant
       <font color="blue"><tt>settling parameters</tt></font><font color="red"><tt> ==</font> 0.6 <font color="green"!(m/s)</font>
+
       <font color="blue"><tt>settling parameters</tt></font><font color="red"><tt> ==</tt></font> 0.6 <font color="green"!(m/s)</font>
       <font color="blue"><tt>Critical stress model</tt></font><font color="red"><tt> ==</font> Soulsby
+
       <font color="blue"><tt>Critical stress model</tt></font><font color="red"><tt> ==</tt></font> Soulsby
       <font color="blue"><tt>Bed load model</tt></font><font color="red"><tt> ==</font> MPM_Shimizu
+
       <font color="blue"><tt>Bed load model</tt></font><font color="red"><tt> ==</tt></font> MPM_Shimizu
       <font color="blue"><tt>Bed load parameters</tt></font><font color="red"><tt> ==</font> 8.0, -1 ,1.5
+
       <font color="blue"><tt>Bed load parameters</tt></font><font color="red"><tt> ==</tt></font> 8.0, -1 ,1.5
 
  <font color="blue"><tt>End Group</font>
 
  <font color="blue"><tt>End Group</font>
 
  <font color="green"!_________________________________________________________________</font>
 
  <font color="green"!_________________________________________________________________</font>
 
  <font color="green"! This is required due to adding deposition and settling.</font>
 
  <font color="green"! This is required due to adding deposition and settling.</font>
  <font color="blue"><tt>Material</tt></font><font color="red"><tt> ==</font> 0
+
  <font color="blue"><tt>Material</tt></font><font color="red"><tt> ==</tt></font> 0
       <font color="blue"><tt>Layer</tt></font><font color="red"><tt> ==</font> 1
+
       <font color="blue"><tt>Layer</tt></font><font color="red"><tt> ==</tt></font> 1
             <font color="blue"><tt>dry density</tt></font><font color="red"><tt> == </font>1890.,1890
+
             <font color="blue"><tt>dry density</tt></font><font color="red"><tt> == </tt></font>1890.,1890
 
       <font color="blue"><tt>End layer</font>
 
       <font color="blue"><tt>End layer</font>
 
  <font color="blue"><tt>end material</font>
 
  <font color="blue"><tt>end material</font>
 
  <font color="green"!Upstream</font>
 
  <font color="green"!Upstream</font>
  <font color="blue"><tt>seed particles</tt></font><font color="red"><tt> ==</font> point,  10796.514,8285.014
+
  <font color="blue"><tt>seed particles</tt></font><font color="red"><tt> ==</tt></font> point,  10796.514,8285.014
       <font color="blue"><tt>particle groups</tt></font><font color="red"><tt> ==</font> fineSed, Gravel
+
       <font color="blue"><tt>particle groups</tt></font><font color="red"><tt> ==</tt></font> fineSed, Gravel
       <font color="blue"><tt>group mass</tt></font><font color="red"><tt> ==</font> 100,100
+
       <font color="blue"><tt>group mass</tt></font><font color="red"><tt> ==</tt></font> 100,100
 
  <font color="blue"><tt>end seed</font>
 
  <font color="blue"><tt>end seed</font>
 
  <font color="green"! OUTPUT SETTINGS</font>
 
  <font color="green"! OUTPUT SETTINGS</font>
 
  <font color="green"!_________________________________________________________________</font>
 
  <font color="green"!_________________________________________________________________</font>
  <font color="blue"><tt>output dir</tt></font><font color="red"><tt> ==</font> ..\results\
+
  <font color="blue"><tt>output dir</tt></font><font color="red"><tt> ==</tt></font> ..\results\
 
  <font color="blue"><tt>output</tt></font><font color="red"><tt> ==</font> ptm_netcdf
 
  <font color="blue"><tt>output</tt></font><font color="red"><tt> ==</font> ptm_netcdf
       <font color="blue"><tt>output groups</tt></font><font color="red"><tt> ==</font> all
+
       <font color="blue"><tt>output groups</tt></font><font color="red"><tt> ==</tt></font> all
       <font color="blue"><tt>output parameters</tt></font><font color="red"><tt> ==</font> age, state_age, mass, uvw, uvw_water, depth, water_depth
+
       <font color="blue"><tt>output parameters</tt></font><font color="red"><tt> ==</tt></font> age, state_age, mass, uvw, uvw_water, depth, water_depth
       <font color="blue"><tt>output interval</tt></font><font color="red"><tt> ==</font> 300.
+
       <font color="blue"><tt>output interval</tt></font><font color="red"><tt> ==</tt></font> 300.
 
  <font color="blue"><tt>end output</font>
 
  <font color="blue"><tt>end output</font>

Revision as of 02:42, 27 April 2021

Particle Tracking

The TUFLOW Particle Tracking Module (PTM) allows the 2D or 3D simulation of discrete Lagrangian particles as they are transported by the flow field (or other drivers such as wind or waves). Particle behavior such as settling, buoyancy, decay, sedimentation and re-suspension can all be simulated. It can be run in conjunction with the sediment transport module to simulated the fate and age of sediment particles within the hydraulic model.

In this optional exercise we will take the existing FMA2_SED_003 model and add some particle tracking to track the input of particles.

Copy and paste the existing FMA2_SED_003.fvsed file and rename as FMA2_SED_003a.fvsed.

Under the Boundary Conditions Block add the following particle tracking block to reference a particle tracking file that we will generate.

!PARTICLE TRACKING INPUT
Particle Tracking Control File == FMA2_SED_003a.fvptm	

In the output commands block, under the current specification for the XMDF file add the following block to output results to a netcdf file. This will output hydraulic parameters, sediment transport parameters as well as results from the particle tracking module.

output == netcdf
      output parameters == h,v,d, Rhow, Taub, TauC, PTM_1, PTM_2, PTM_BED_2
      output interval == 900.
end output

Save and close the file.

Generate a new file called FMA2_SED_003a.fvptm. This is where we will generate the characteristics of our particle tracking module. We will use the same sediment characteristics that we have already applied to the sediment transport model. Add the following commands

! PTM to assess fate of STP plume - TEST POLYGON SEEDING
! use nodestring definition from HD model to allow particles to leave model domain. 
Open boundary nodestring == 2  <font color="green"! downstream tidal boundary</font>
!!TIME COMMANDS
!_________________________________________________________________
lagrangian timestep == 120. <font color="green"! seconds</font>
eulerian timestep == 120. <font color="green"! seconds</font>
! Sediment Transport COMMANDS (required if a particle group interacts with bed)
bed roughness model == ks
bed roughness parameters == 0.01,0.01	<font color="green"! ksc, ksw</font>
!Global COMMANDS
Nscalar == 1
!PARTICLE GROUP COMMANDS 
!_________________________________________________________________
Group == fineSed
d50 == 0.000002
      particle density == 2650
      Settling model == constant
      settling parameters == 0.0002 <font color="green"!(m/s)</font>
      deposition model == ws0
      Erosion Model == Mehta	
      Erosion parameters == 0.1, 0.5, 0.5 <font color="green"!Er, taucr, alpha</font>
End Group</font>
<tt>Group</tt><tt> ==</tt>  Gravel
      <tt>d50</tt><tt> ==</tt> 0.032
      <tt>particle density</tt><tt> ==</tt> 2650
      <tt>Settling model</tt><tt> ==</tt> constant
      <tt>settling parameters</tt><tt> ==</tt> 0.6 <font color="green"!(m/s)</font>
      <tt>Critical stress model</tt><tt> ==</tt> Soulsby
      <tt>Bed load model</tt><tt> ==</tt> MPM_Shimizu
      <tt>Bed load parameters</tt><tt> ==</tt> 8.0, -1 ,1.5	
<tt>End Group
<font color="green"!_________________________________________________________________</font>
<font color="green"! This is required due to adding deposition and settling.</font>
<tt>Material</tt><tt> ==</tt> 0
      <tt>Layer</tt><tt> ==</tt> 1
            <tt>dry density</tt><tt> == </tt>1890.,1890	
      <tt>End layer
<tt>end material
<font color="green"!Upstream</font>
<tt>seed particles</tt><tt> ==</tt> point,  10796.514,8285.014
      <tt>particle groups</tt><tt> ==</tt> fineSed, Gravel
      <tt>group mass</tt><tt> ==</tt> 100,100
<tt>end seed
<font color="green"! OUTPUT SETTINGS</font>
<font color="green"!_________________________________________________________________</font>
<tt>output dir</tt><tt> ==</tt> ..\results\
<tt>output</tt><tt> == ptm_netcdf
      <tt>output groups</tt><tt> ==</tt> all
      <tt>output parameters</tt><tt> ==</tt> age, state_age, mass, uvw, uvw_water, depth, water_depth
      <tt>output interval</tt><tt> ==</tt> 300.
<tt>end output