Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Version 1.0: North Atlantic Update - Tides, Curved Boundaries, Config, and More!😀🤯🥳 #193

Draft
wants to merge 99 commits into
base: main
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from 92 commits
Commits
Show all changes
99 commits
Select commit Hold shift + click to select a range
f3a220d
included a min_depth parameter and overwite this in MOM_input
ashjbarnes Aug 28, 2024
0523f1d
black
ashjbarnes Aug 28, 2024
d86b147
Remove problematic comment at top of override file. Causes issus for …
ashjbarnes Aug 29, 2024
7870d81
Merge pull request #2 from COSIMA/override-min-depth
ashjbarnes Aug 29, 2024
595c4de
Merge pull request #3 from CROCODILE-CESM/tidy-override-file
ashjbarnes Aug 29, 2024
3270057
having mask table and layout no longer required
ashjbarnes Aug 29, 2024
a262e15
Merge pull request #4 from CROCODILE-CESM/remove-masktable-requirement
ashjbarnes Aug 29, 2024
42c2840
fix layout requirements
ashjbarnes Aug 29, 2024
005fb44
fixed and working
ashjbarnes Aug 29, 2024
9606458
Merge pull request #5 from CROCODILE-CESM/fix-layout-requirements
ashjbarnes Aug 29, 2024
2268c8f
fix typo in find replace
ashjbarnes Sep 4, 2024
875549e
Merge pull request #6 from CROCODILE-CESM/fix-layout-requirements
ashjbarnes Sep 4, 2024
b6fab83
Merge branch 'COSIMA:main' into main
ashjbarnes Sep 4, 2024
6147803
replace minimum layers with min depth
ashjbarnes Sep 4, 2024
7caae56
black
ashjbarnes Sep 4, 2024
718dc1c
fix tests
ashjbarnes Sep 4, 2024
88938a2
update notebook
ashjbarnes Sep 4, 2024
31a6139
Merge pull request #7 from CROCODILE-CESM/move-minimum-layers
ashjbarnes Sep 4, 2024
a21e564
bugfix setup rundir when overwriting
ashjbarnes Sep 4, 2024
2488100
fix issue where ocean mask would fail to remove values lower than oce…
ashjbarnes Sep 5, 2024
d28a5d3
Start Setup Tides
manishvenu Sep 17, 2024
09a1a2f
First Attempt: RM6 Tides
manishvenu Sep 17, 2024
d73e84a
Clean up setup_tides and adjust rect_boundaries with hard-coded segme…
manishvenu Sep 18, 2024
86a349a
SOFT BREAK: Change Function Names, Add Rough Horiz Subset (See Below)
manishvenu Sep 18, 2024
5a40076
Write MOM6 Vars
manishvenu Sep 19, 2024
8adb479
Add Docstring Cite and Merge Functions
manishvenu Sep 19, 2024
586832e
Minor Path Function Changes
manishvenu Sep 19, 2024
89f9d1f
Merge branch 'croc_with_req_changes' of github.com:manishvenu/regiona…
manishvenu Sep 19, 2024
c4ff6d3
First Implementation w/ Tides
manishvenu Sep 19, 2024
ff8dc2c
Minor Edit
manishvenu Sep 20, 2024
6a92604
Additional Formatting Changes
manishvenu Sep 20, 2024
1aed99f
Additional Debugging
manishvenu Sep 20, 2024
533e3ed
remove login step so that command can be run via subprocess
ashjbarnes Sep 23, 2024
b6aa46b
Update pyproject.toml
ashjbarnes Sep 25, 2024
7466ff8
Merge pull request #11 from manishvenu/croc_with_req_changes
ashjbarnes Sep 25, 2024
3d5c61c
black refomat
ashjbarnes Sep 25, 2024
eabbc8c
Officially change boundary function names to verb names
manishvenu Sep 25, 2024
5b78b7c
Minor debugging
manishvenu Sep 26, 2024
5e44fba
Black formatting
manishvenu Sep 26, 2024
f3cd80c
Change function name for rect orientation
manishvenu Sep 26, 2024
b38508d
Remove Greek letters
manishvenu Sep 26, 2024
3804531
Black Formatting
manishvenu Sep 26, 2024
66bb465
Replace rectangular brushcut coords with GFDL self.coords
manishvenu Sep 26, 2024
d16fc4c
Black formatting
manishvenu Sep 26, 2024
127c7ec
Fix F-strings
manishvenu Sep 26, 2024
34be7e2
Add angled_grids testing for debugging
manishvenu Sep 27, 2024
5efb3b0
black formatting
manishvenu Sep 27, 2024
52347df
Skip this test in git workflow for now
manishvenu Sep 27, 2024
c52b49b
Wrap up tides adjustments, includinincluding string to tpxo number co…
manishvenu Sep 27, 2024
6fb8c13
mend
manishvenu Sep 27, 2024
51bf014
Change functions to verb start
manishvenu Sep 27, 2024
08288ee
Remove test from github workflow
manishvenu Sep 27, 2024
bfefbe8
Formatting
manishvenu Sep 27, 2024
ea5a9c3
Add properties and change function names
manishvenu Sep 27, 2024
b42e44d
Shifting MOM_input to MOM_override Part 1
manishvenu Sep 27, 2024
2ba990b
Minor Changes
manishvenu Sep 27, 2024
fefcc41
Add flexible OBC to help fix Issue #8, Move OBC params to MOM Overrid…
manishvenu Sep 30, 2024
b6a96b2
Deleting MOM_input Indexed OBC Vars
manishvenu Sep 30, 2024
be8195a
Config File: First Attempt
manishvenu Sep 30, 2024
1dd7692
Black Formatting
manishvenu Sep 30, 2024
4bf2044
Start of Testing
manishvenu Oct 1, 2024
f0fcbe9
Add testing for pr 12
manishvenu Oct 1, 2024
34fd055
Minor bug in config read/write
manishvenu Oct 1, 2024
55d169a
Remove MOM_input OBC segment specific code
manishvenu Oct 1, 2024
2a882ae
Responding to @ajbarnes comments
manishvenu Oct 1, 2024
874e012
remove horizontal subsets from tides
ashjbarnes Oct 1, 2024
1237dcd
Merge remote-tracking branch 'upstream/manish' into start_angled_boun…
manishvenu Oct 1, 2024
1b1532d
Black formatting
manishvenu Oct 1, 2024
6d05448
Responding to @ajbarnes comments
manishvenu Oct 1, 2024
2675021
Change testing branch
manishvenu Oct 1, 2024
41aa82d
Merge branch 'manish' of github.com:CROCODILE-CESM/regional-mom6 into…
manishvenu Oct 1, 2024
70ef6eb
Additional comments
manishvenu Oct 1, 2024
35901a8
Black formatting
manishvenu Oct 1, 2024
245066e
Merge various quality-of-life changes & tides boundary functions (Fro…
manishvenu Oct 1, 2024
e250852
Merge branch 'croc_with_req_changes' into start_angled_boundaries
manishvenu Oct 1, 2024
867e90c
Fix tides test
manishvenu Oct 1, 2024
4171c35
bathymetry now uses original land mask. Regrid in serial. Improve pri…
ashjbarnes Oct 3, 2024
4d17aec
update test to match
ashjbarnes Oct 5, 2024
5060e8d
black
ashjbarnes Oct 5, 2024
399e16c
Merge pull request #17 from CROCODILE-CESM/bathymetry-efficiency
ashjbarnes Oct 5, 2024
903d329
allow reading of lon lat extents from pre existing hgrid
ashjbarnes Oct 5, 2024
69407fd
black
ashjbarnes Oct 5, 2024
bb8b9ec
bugfixing curved boundary regridding for tracer IC and bathymetry
ashjbarnes Oct 9, 2024
848a712
black
ashjbarnes Oct 9, 2024
60c59b7
update tests
ashjbarnes Oct 9, 2024
dee8457
typo
ashjbarnes Oct 9, 2024
3f86a14
Update regional_mom6/regional_mom6.py
manishvenu Oct 9, 2024
ae58573
Black Format
manishvenu Oct 9, 2024
fcca7cf
Merge branch 'main' into start_angled_boundaries
manishvenu Oct 9, 2024
292ebfa
Merge pull request #13 from CROCODILE-CESM/start_angled_boundaries
ashjbarnes Oct 9, 2024
f562b1f
Update regional_mom6.py
ashjbarnes Oct 9, 2024
19583c9
Merge remote-tracking branch 'upstream/main'
manishvenu Oct 11, 2024
cd987f5
Remove unused test
manishvenu Oct 11, 2024
5b1c816
Minor Bug Fixes/Improvements to create_empty, change_MOM_param, & set…
manishvenu Oct 14, 2024
2ee186d
allow __getattr__ to read in data arrays from disk (#23)
ashjbarnes Oct 14, 2024
61398c9
Remove the deletion of MOM_input params in change_MOM_param
manishvenu Oct 14, 2024
5ff128c
Merge branch 'main' of github.com:CROCODILE-CESM/regional-mom6
manishvenu Oct 14, 2024
7d7216e
Update Config for Computer Independence, fix change_MOM_param, and fi…
manishvenu Oct 17, 2024
90e90a6
Change Boundary Arguments to __init__ and adjust respective functions…
manishvenu Oct 24, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
39 changes: 3 additions & 36 deletions demos/premade_run_directories/common_files/MOM_input
Original file line number Diff line number Diff line change
Expand Up @@ -107,30 +107,6 @@ OBC_ZERO_BIHARMONIC = True ! [Boolean] default = False
! viscosity term.
OBC_TIDE_N_CONSTITUENTS = 0 ! default = 0
! Number of tidal constituents being added to the open boundary.
OBC_SEGMENT_001 = "J=0,I=0:N,FLATHER,ORLANSKI,NUDGED,ORLANSKI_TAN,NUDGED_TAN" !
! Documentation needs to be dynamic?????
OBC_SEGMENT_001_VELOCITY_NUDGING_TIMESCALES = 0.3, 360.0 ! [days] default = 0.0
! Timescales in days for nudging along a segment, for inflow, then outflow.
! Setting both to zero should behave like SIMPLE obcs for the baroclinic
! velocities.
OBC_SEGMENT_002 = "J=N,I=N:0,FLATHER,ORLANSKI,NUDGED,ORLANSKI_TAN,NUDGED_TAN" !
! Documentation needs to be dynamic?????
OBC_SEGMENT_002_VELOCITY_NUDGING_TIMESCALES = 0.3, 360.0 ! [days] default = 0.0
! Timescales in days for nudging along a segment, for inflow, then outflow.
! Setting both to zero should behave like SIMPLE obcs for the baroclinic
! velocities.
OBC_SEGMENT_003 = "I=0,J=N:0,FLATHER,ORLANSKI,NUDGED,ORLANSKI_TAN,NUDGED_TAN" !
! Documentation needs to be dynamic?????
OBC_SEGMENT_003_VELOCITY_NUDGING_TIMESCALES = 0.3, 360.0 ! [days] default = 0.0
! Timescales in days for nudging along a segment, for inflow, then outflow.
! Setting both to zero should behave like SIMPLE obcs for the baroclinic
! velocities.
OBC_SEGMENT_004 = "I=N,J=0:N,FLATHER,ORLANSKI,NUDGED,ORLANSKI_TAN,NUDGED_TAN" !
! Documentation needs to be dynamic?????
OBC_SEGMENT_004_VELOCITY_NUDGING_TIMESCALES = 0.3, 360.0 ! [days] default = 0.0
! Timescales in days for nudging along a segment, for inflow, then outflow.
! Setting both to zero should behave like SIMPLE obcs for the baroclinic
! velocities.
OBC_TRACER_RESERVOIR_LENGTH_SCALE_OUT = 3.0E+04 ! [m] default = 0.0
! An effective length scale for restoring the tracer concentration at the
! boundaries to externally imposed values when the flow is exiting the domain.
Expand Down Expand Up @@ -232,7 +208,7 @@ INIT_LAYERS_FROM_Z_FILE = True ! [Boolean] default = False
! Z-space file on a latitude-longitude grid.

! === module MOM_initialize_layers_from_Z ===
TEMP_SALT_Z_INIT_FILE = "forcing/init_tracers.nc" ! default = "temp_salt_z.nc"
TEMP_SALT_Z_INIT_FILE = "init_tracers.nc" ! default = "temp_salt_z.nc"
! The name of the z-space input file used to initialize temperatures (T) and
! salinities (S). If T and S are not in the same file, TEMP_Z_INIT_FILE and
! SALT_Z_INIT_FILE must be set.
Expand All @@ -247,7 +223,7 @@ TEMP_SALT_INIT_VERTICAL_REMAP_ONLY = True ! [Boolean] default = False
DEPRESS_INITIAL_SURFACE = True ! [Boolean] default = False
! If true, depress the initial surface to avoid huge tsunamis when a large
! surface pressure is applied.
SURFACE_HEIGHT_IC_FILE = "forcing/init_eta.nc" !
SURFACE_HEIGHT_IC_FILE = "init_eta.nc" !
! The initial condition file for the surface height.
SURFACE_HEIGHT_IC_VAR = "eta_t" ! default = "SSH"
! The initial condition variable for the surface height.
Expand All @@ -262,17 +238,8 @@ VELOCITY_CONFIG = "file" ! default = "zero"
! rossby_front - a mixed layer front in thermal wind balance.
! soliton - Equatorial Rossby soliton.
! USER - call a user modified routine.
VELOCITY_FILE = "forcing/init_vel.nc" !
VELOCITY_FILE = "init_vel.nc" !
! The name of the velocity initial condition file.
OBC_SEGMENT_001_DATA = "U=file:forcing/forcing_obc_segment_001.nc(u),V=file:forcing/forcing_obc_segment_001.nc(v),SSH=file:forcing/forcing_obc_segment_001.nc(eta),TEMP=file:forcing/forcing_obc_segment_001.nc(temp),SALT=file:forcing/forcing_obc_segment_001.nc(salt)" !
! OBC segment docs
OBC_SEGMENT_002_DATA = "U=file:forcing/forcing_obc_segment_002.nc(u),V=file:forcing/forcing_obc_segment_002.nc(v),SSH=file:forcing/forcing_obc_segment_002.nc(eta),TEMP=file:forcing/forcing_obc_segment_002.nc(temp),SALT=file:forcing/forcing_obc_segment_002.nc(salt)" !
! OBC segment docs
OBC_SEGMENT_003_DATA = "U=file:forcing/forcing_obc_segment_003.nc(u),V=file:forcing/forcing_obc_segment_003.nc(v),SSH=file:forcing/forcing_obc_segment_003.nc(eta),TEMP=file:forcing/forcing_obc_segment_003.nc(temp),SALT=file:forcing/forcing_obc_segment_003.nc(salt)" !
! OBC segment docs
OBC_SEGMENT_004_DATA = "U=file:forcing/forcing_obc_segment_004.nc(u),V=file:forcing/forcing_obc_segment_004.nc(v),SSH=file:forcing/forcing_obc_segment_004.nc(eta),TEMP=file:forcing/forcing_obc_segment_004.nc(temp),SALT=file:forcing/forcing_obc_segment_004.nc(salt)" !
! OBC segment docs

! === module MOM_diag_mediator ===
NUM_DIAG_COORDS = 1 ! default = 1
! The number of diagnostic vertical coordinates to use. For each coordinate, an
Expand Down
2 changes: 0 additions & 2 deletions demos/premade_run_directories/common_files/MOM_override
Original file line number Diff line number Diff line change
@@ -1,4 +1,2 @@
## Add override files here

#override DT=50
#override DT_THERM=300
8 changes: 4 additions & 4 deletions demos/reanalysis-forced.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -135,6 +135,7 @@
" number_vertical_layers = 75,\n",
" layer_thickness_ratio = 10,\n",
" depth = 4500,\n",
" minimum_depth = 5,\n",
" mom_run_dir = run_dir,\n",
" mom_input_dir = input_dir,\n",
" toolpath_dir = toolpath_dir\n",
Expand Down Expand Up @@ -217,7 +218,6 @@
" longitude_coordinate_name='lon',\n",
" latitude_coordinate_name='lat',\n",
" vertical_coordinate_name='elevation',\n",
" minimum_layers=1\n",
" )"
]
},
Expand Down Expand Up @@ -294,14 +294,14 @@
" }\n",
"\n",
"# Set up the initial condition\n",
"expt.initial_condition(\n",
"expt.setup_initial_condition(\n",
" glorys_path / \"ic_unprocessed.nc\", # directory where the unprocessed initial condition is stored, as defined earlier\n",
" ocean_varnames,\n",
" arakawa_grid=\"A\"\n",
" ) \n",
"\n",
"# Set up the four boundary conditions. Remember that in the glorys_path, we have four boundary files names north_unprocessed.nc etc. \n",
"expt.rectangular_boundaries(\n",
"expt.setup_ocean_state_boundaries(\n",
" glorys_path,\n",
" ocean_varnames,\n",
" boundaries = [\"south\", \"north\", \"west\", \"east\"],\n",
Expand All @@ -324,7 +324,7 @@
"metadata": {},
"outputs": [],
"source": [
"expt.FRE_tools(layout=(10, 10)) ## Here the tuple defines the processor layout"
"expt.run_FRE_tools(layout=(10, 10)) ## Here the tuple defines the processor layout"
]
},
{
Expand Down
Loading