Skip to content

Commit

Permalink
fix(prt): remove track_all option in oc, fix typo in supptechinfo (#1826
Browse files Browse the repository at this point in the history
)

* track_all isn't necessary as all events are enabled by default
* "need" -> "needed` in supplemental technical info document
  • Loading branch information
wpbonelli authored May 18, 2024
1 parent 3160dc7 commit d4c9fec
Show file tree
Hide file tree
Showing 9 changed files with 1 addition and 19 deletions.
1 change: 0 additions & 1 deletion autotest/test_prt_disv1.py
Original file line number Diff line number Diff line change
Expand Up @@ -264,7 +264,6 @@ def build_prt_sim(idx, gwf_ws, prt_ws, mf6):
pname="oc",
track_filerecord=[prt_track_file],
trackcsv_filerecord=[prt_track_csv_file],
track_all=True,
)

# create the flow model interface
Expand Down
1 change: 0 additions & 1 deletion autotest/test_prt_track_events.py
Original file line number Diff line number Diff line change
Expand Up @@ -156,7 +156,6 @@ def get_oc() -> List[str]:
pname="oc",
track_filerecord=[prt_track_file],
trackcsv_filerecord=[prt_track_csv_file],
track_all=True,
)
elif "rel" in name:
return flopy.mf6.ModflowPrtoc(
Expand Down
1 change: 0 additions & 1 deletion autotest/test_prt_voronoi1.py
Original file line number Diff line number Diff line change
Expand Up @@ -563,7 +563,6 @@ def build_prt_sim(idx, name, gwf_ws, prt_ws, targets, cell_ids):
pname="oc",
track_filerecord=[prt_track_file],
trackcsv_filerecord=[prt_track_csv_file],
track_all=not times[idx],
track_exit=True,
track_release=True,
track_terminate=True,
Expand Down
2 changes: 1 addition & 1 deletion doc/SuppTechInfo/particle-tracking-model.tex
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ \subsection{Generalized Pollock's Method For Non-Rectangular Cells} \label{sec:g

\subsubsection{Calculation of vertex velocities}

A single velocity vector ($x$ and $y$ velocity components) could be calculated at each cell vertex such that each vertex velocity respects the uniform normal velocity along each cell faces. A centroid velocity could then be calculated by averaging the vertex velocities. However, this approach would not be locally conservative. The additional degrees of freedom (velocity components to be calculated) that are need to allow local conservation can be introduced by using higher-order basis functions, but that approach typically requires expensive numerical integration of the particle trajectory \citep{zhang2012}. An alternative is to introduce the requisite additional degrees of freedom by allowing each subcell to have its own distinct velocity vector at the cell centroid, but that has the obvious disadvantage that the velocity is discontinuous at the cell centroid. The method used in the PRT Model is novel in that it uses relatively low-order basis functions that allow for semi-analytical solution of the particle trajectory, together with two velocities at each cell vertex (one for each of the two subcells that share the vertex) and a single cell-centroid velocity to provide sufficient degrees of freedom for local conservation. This approach can also accommodate the discontinuity in cell-face normal velocity that occurs when two cell faces meet at a $180^\circ$ angle, as occurs in quad-refined grids.
A single velocity vector ($x$ and $y$ velocity components) could be calculated at each cell vertex such that each vertex velocity respects the uniform normal velocity along each cell faces. A centroid velocity could then be calculated by averaging the vertex velocities. However, this approach would not be locally conservative. The additional degrees of freedom (velocity components to be calculated) that are needed to allow local conservation can be introduced by using higher-order basis functions, but that approach typically requires expensive numerical integration of the particle trajectory \citep{zhang2012}. An alternative is to introduce the requisite additional degrees of freedom by allowing each subcell to have its own distinct velocity vector at the cell centroid, but that has the obvious disadvantage that the velocity is discontinuous at the cell centroid. The method used in the PRT Model is novel in that it uses relatively low-order basis functions that allow for semi-analytical solution of the particle trajectory, together with two velocities at each cell vertex (one for each of the two subcells that share the vertex) and a single cell-centroid velocity to provide sufficient degrees of freedom for local conservation. This approach can also accommodate the discontinuity in cell-face normal velocity that occurs when two cell faces meet at a $180^\circ$ angle, as occurs in quad-refined grids.

For a cell with $N$ polygon faces, the degrees of freedom are $4N$ cell-vertex velocity components and $2$ cell-centroid velocity components, for a total of $4N + 2$ degrees of freedom. The constraints are $2N$ known cell-face normal velocities, $N$ continuity conditions (equality of normal components) along boundaries between subcells, $N - 1$ independent local conservation conditions (equality of divergences), $2$ constraints from setting the cell-centroid velocity to a weighted average of the cell-vertex velocities, and $1$ ``closure constraint," for a total of $4N + 2$ constraints, which matches the number of degrees of freedom.

Expand Down
8 changes: 0 additions & 8 deletions doc/mf6io/mf6ivar/dfn/prt-oc.dfn
Original file line number Diff line number Diff line change
Expand Up @@ -143,14 +143,6 @@ optional false
longname file keyword
description name of the comma-separated value (CSV) file to write tracking information.

block options
name track_all
type keyword
reader urword
optional true
longname track all events
description keyword to indicate that ...

block options
name track_release
type keyword
Expand Down
1 change: 0 additions & 1 deletion doc/mf6io/mf6ivar/md/mf6ivar.md
Original file line number Diff line number Diff line change
Expand Up @@ -1591,7 +1591,6 @@
| PRT | OC | OPTIONS | TRACKFILE | STRING | name of the output file to write tracking information. |
| PRT | OC | OPTIONS | TRACKCSV | KEYWORD | keyword to specify that record corresponds to a CSV track file. |
| PRT | OC | OPTIONS | TRACKCSVFILE | STRING | name of the comma-separated value (CSV) file to write tracking information. |
| PRT | OC | OPTIONS | TRACK_ALL | KEYWORD | keyword to indicate that ... |
| PRT | OC | OPTIONS | TRACK_RELEASE | KEYWORD | keyword to indicate that particle tracking output is to be written when a particle is released |
| PRT | OC | OPTIONS | TRACK_EXIT | KEYWORD | keyword to indicate that particle tracking output is to be written when a particle exits a cell |
| PRT | OC | OPTIONS | TRACK_TIMESTEP | KEYWORD | keyword to indicate that particle tracking output is to be written at the end of each time step |
Expand Down
2 changes: 0 additions & 2 deletions doc/mf6io/mf6ivar/tex/prt-oc-desc.tex
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,6 @@

\item \texttt{trackcsvfile}---name of the comma-separated value (CSV) file to write tracking information.

\item \texttt{TRACK\_ALL}---keyword to indicate that ...

\item \texttt{TRACK\_RELEASE}---keyword to indicate that particle tracking output is to be written when a particle is released

\item \texttt{TRACK\_EXIT}---keyword to indicate that particle tracking output is to be written when a particle exits a cell
Expand Down
1 change: 0 additions & 1 deletion doc/mf6io/mf6ivar/tex/prt-oc-options.dat
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@ BEGIN OPTIONS
[BUDGETCSV FILEOUT <budgetcsvfile>]
[TRACK FILEOUT <trackfile>]
[TRACKCSV FILEOUT <trackcsvfile>]
[TRACK_ALL]
[TRACK_RELEASE]
[TRACK_EXIT]
[TRACK_TIMESTEP]
Expand Down
3 changes: 0 additions & 3 deletions src/Model/ParticleTracking/prt-oc.f90
Original file line number Diff line number Diff line change
Expand Up @@ -263,9 +263,6 @@ subroutine prt_oc_read_options(this)
&FOLLOWED BY FILEOUT')
end if
found = .true.
case ('TRACK_ALL')
event_found = .false. ! defaults set below
found = .true.
case ('TRACK_RELEASE')
this%trackrelease = .true.
event_found = .true.
Expand Down

0 comments on commit d4c9fec

Please sign in to comment.