Skip to content

Conversation

@douglatornell
Copy link
Member

douglatornell and others added 9 commits February 17, 2025 13:06
Created a new notebook for processing 202405 bathymetry based on the 202108
process in `tools/bathymetry/Process202108Bathymetry.ipynb`. Initial refactoring
covers loading the bathymetry dataset and first plots and depth checks.
Refactor the code that changes the shape of Johnstone Strait at the north
boundary of the grid to make it perpendicular to the grid edge. This is done to
avoid numerical instabilities.
Refactor the code that changes the shape of Juan de Fuca Strait at the west
boundary of the grid to make it perpendicular to the grid edge. This is done to
avoid numerical instabilities.

Unlike the North, the mouth profile is kind of jagged. To mitigate that:
* Take out the bank to the south by rearranging the profile
* Rearrange the depths in the centre, so that they are a simple up and
  down: i.e. make the two deep channels into one. At the same time, move the
  deepest point, one point to the south. This emphasizes the southern channel,
  which is the channel that continues into Juan de Fuca. We do this so there is
  no artificial sill in this channel which is not seen in the original bathymetry
* Smooth a bump near the north shore that is often the site of NaN values
Created a new notebook for processing the double resolution 202405 bathymetry
based on the 202108 processing in
`tools/bathymetry/Process202108Bathymetry.ipynb`
and the 202405 processing in
`tools/bathymetry/Process202405Bathymetry.ipynb`.
Initial refactoring covers loading the bathymetry dataset and first plots and
depth checks.
Following Susan's
  `tools/bathymetry/Process202108Bathymetry.ipynb` notebook:
* Apply continuity fixes
* Add missing islands
* Smooth the bathymetry
* Add the Steveston Jetty
* Adjust the depth of the dredged channel in the Fraser River
* Restore Canoe Pass
* Check the Fraser middle arm connection
* Check and adjust the depths of the Iona and Fraser north arm spits
* Check and adjust the depths of the Tsawwassen ferry terminal and Roberts Bank
  coal port spits
* Connect Roche Harbour
* Remove a non-existent island on the Lulu Island mud flats
* Open the channel at the north end of Read Island
* Open the channel between Stuart Island and Sonora Island
* Deepen Tacoma Narrows

Plot difference between 202405 bathymetry and previous bathymetries.

Store the bathymetry and the Steveston Jetty friction mask as netCDF4 files.
This commit introduces a YAML file defining a conda environment tailored for the
SalishSeaCast v202111 double resolution bathymetry development. It includes
Python 3.12 and libraries like xarray, matplotlib, and jupyterlab to support
dataset preparation and exploration tasks.
@douglatornell douglatornell added the enhancement New feature or request label Feb 18, 2025
@github-actions github-actions bot added this to the v25.1 milestone Feb 18, 2025
@codecov
Copy link

codecov bot commented Feb 18, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 53.69%. Comparing base (4d4c074) to head (1c09057).
⚠️ Report is 26 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #138   +/-   ##
=======================================
  Coverage   53.69%   53.69%           
=======================================
  Files          29       29           
  Lines        3531     3531           
=======================================
  Hits         1896     1896           
  Misses       1635     1635           
Flag Coverage Δ
unittests 53.69% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

douglatornell and others added 17 commits February 18, 2025 10:10
Set a maximum file size of 1024KB for the `check-added-large-files` hook in the
pre-commit configuration. This prevents overly large files from
being accidentally committed.
Detailed, tile by tile, comparison of 202405-2xrez and 202405 bathymetries
including preliminary river files.
This notebook is used iteratively with the `Process202405-2xrezBathymetry.ipynb`
notebook to identify features in the 2xrez bathymetry that need to be adjusted
in the latter notebook.
This simplifies the edits for most `plot_tile()` calls to changing a single
array index value.
Juan de Fuca, Jordan River, Saanich Inlet, boundary islands, Neptune Beach
Lon/lat coordinate plots help with orientation when comparing to Google Maps.
* connect island that is really end of William Head
* connect islands to make Esquimalt Point
* surface Chain Islands
* fix Discovery Island
* Make east Chatham Island T-shaped
* remove extraneous island off French Beach
* connect spit on north end of Sidney Island
* connect Gooch Island
* surface Forrest, Demville & Brethour Islands
* surface Skipjack Island
* surface Piers Island, Knapp Island & Pym Island
* surface Tumbo Island
* narrow Boat Passage
* open west entrance to Winter Cove
Carmanah Point to Fraser River
douglatornell and others added 30 commits March 25, 2025 14:09
* connect Bare Point opposite Chemainus
* assign average depths to 1 fake island and fake point on west shore of Thetis
  Island
* connect south point of Wallace Island
* surface Hall Island
* surface Norway Island
* fix Reid Island and remove north islet
* little pixel islands are okay, as long as water can go everywhere
* add a final point to Steveston Jetty (change to 4m deep)
* make southern channel of Fraser River contiguous (change 1 cell to to 4m deep)
* leave pixel islands on Lulu Island foreshore mud flats
* Canoe Pass is fine
* open Fraser River Middle Arm
* surface Mitchell Island: very weird, the current land point is the in middle
  of the deep channel (gray), Mitchell Island is north of the channel
* connect west tip of Annacis Island
* surface islands off Gabriola Island
* connect Fraser River North Arm spit
Klanawa River to Cypress Mountain
* Fixed Protection Island by extending it 1 pixel south and separating its north
  end from Saysutshun
* Improved Duke Point
* Changed land cell off Popham Island to water with average depth of surrounding
  cella
Moved the `plot_tile()` function to a separate module in preparation for having
to move to multiple comparison notebooks due to git complaining about the file
size having exceeded 10Mb.

Changed the `plot_tile()` function so that `vmax` is a parameter to enable
avoidance of normalization errors in tiles with no depths <15m (the default
value of `vmax` that was previously hard-coded).
* Surfaced islands off Nanoose Peninsula:
  * Southey Island
  * Ruth Island
  * Winchelsea Islands
  * Yeo Islands
* Removed fake islet off the end of the 3rd peninsula on the west side of
Gambier Island
Parksville to Squamish Estuary
* Tile 17, 7 - North & South Thormanby Islands
  * remove fake islets off South Thormanby Island
  * extend the north point of South Thormanby Island
  * Although the northwest point of South Thormanby Island looks very different
    to how it appears on Google Maps,
    charts show that it is surrounded by <2m deep water.
    So, this representation is correct, given our 4m wall at the 2m isobath
    shoreline.

* Tile 17, 8 - Sechelt to Secret Cove
  * flatten east side of Welcome Passage
  * surface Merry Island
  * surface Trail Islands
  * dig out Sargeant Bay to be 2x2

* Tile 17, 12 - Squamish Estuary
  * connect Squamish townsite point
Qualicum Beach to Pender Harbour
* Tile 18, 5 - NW Lasqueti Island
  * surface Sisters Islets
* Tile 18, 6 - Lasqueti, Jervis, Jedediah & Texada Islands
  * remove fake island in the mouth of False Bay
  * connect fake islands as points on Jedediah Island
* Tile 19, 7 - Hardy Island & Nelson Island
  * Remove fake islet off Hardy Island
* Tile 20, 4 - Morning Beach
  * connect islet off the west side of the Denman Island tip by making purple
    cell to the north-east land

* Tile 20, 7 - Lang Bay
  * Surface McRae Islet

* Tile 20, 8 - Jervis Inlet
  * Surface Skyes Island (2 green cells)

* Tile 20, 9 - Jervis Inlet
  * add land cell to make point in head of western inlet
* Tile 21, 4 - Cape Lazo
  * connect Goose Spit

* Tile 21, 5 - North Texada Island
  * surface Vivian Island
Saratoga Beach to Head of Jervis Inlet
* Tile 22, 5 - Savary Island
  * make 3 fake islets on north-east corner water
Stories Beach to Desolation Sound
* Tile 23, 4 - Cape Mudge
  * surface Mitlenatch Island
* Tile 23, 5 - Hernando Island
  * connect point on north-west corner of Hernando Island
* Tile 23, 6 - Desolation Sound Entrance
  * connect point on west side of Kinghorn Island
  * connect point on south side of Refuge Cove
  * make fake islet west of  Martin Islands water
* Tile 23, 7 - Homfray Channel
  * connect point south of Forbes Bay
Replaced the `nipy_spectral` colormap with a copied version allowing
modifications. Set invalid data to display as 'burlywood' for improved contrast
and visualization.
*  Tile 24, 4 - Quadra Island
  * Susan decided to not open north end of Gowlland Harbour
  * surface Dunster Island (dark green cell)
* Tile 24, 5 - Read & Cortes Islands
  * add northmost of Penn Islands by making shallowest cell off Read Island land
* Tile 24, 6 - Cortes & West Redondo Islands
  * connect point on south entrance of Teakerne Arm
  * remove fake islet on south side of Teakerne Arm
  * remove fake islet in Waddington Channel
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants