Skip to content

Commit f433a10

Browse files
committed
fixup plot horiz field
1 parent 87442c0 commit f433a10

File tree

2 files changed

+51
-14
lines changed

2 files changed

+51
-14
lines changed

polaris/ocean/tasks/drying_slope/init.py

Lines changed: 23 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -215,10 +215,26 @@ def run(self):
215215
colorbar_label='PSU', cmap='cmo.haline')
216216

217217
cell_mask = ds.maxLevelCell >= 1
218-
plot_horiz_field(ds, ds_mesh, 'salinity',
219-
'initial_salinity.png', field_mask=cell_mask,
220-
show_patch_edges=True, transect_x=x, transect_y=y)
221-
edge_mask = ds.maxLevelEdgeBot >= 1
222-
plot_horiz_field(ds, ds_mesh, 'normalVelocity',
223-
'initial_velocity.png', field_mask=edge_mask,
224-
show_patch_edges=True, transect_x=x, transect_y=y)
218+
219+
cellsOnEdge1 = ds_mesh.cellsOnEdge.isel(TWO=0)
220+
cellsOnEdge2 = ds_mesh.cellsOnEdge.isel(TWO=1)
221+
cell1_is_valid = cell_mask[cellsOnEdge1 - 1].values == 1
222+
cell2_is_valid = cell_mask[cellsOnEdge2 - 1].values == 1
223+
edge_mask = xr.where(np.logical_and(cell1_is_valid,
224+
cell2_is_valid),
225+
1, 0)
226+
227+
plot_horiz_field(ds_mesh,
228+
ds.salinity,
229+
cmap_title='S',
230+
out_file_name='initial_salinity.png',
231+
field_mask=cell_mask,
232+
show_patch_edges=True,
233+
transect_x=x, transect_y=y)
234+
plot_horiz_field(ds_mesh,
235+
ds.normalVelocity,
236+
out_file_name='initial_velocity.png',
237+
field_mask=edge_mask,
238+
show_patch_edges=True,
239+
cmap_title='u_{normal}',
240+
transect_x=x, transect_y=y)

polaris/ocean/tasks/drying_slope/viz.py

Lines changed: 28 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,13 @@ def run(self):
117117

118118
ds_mesh = xr.load_dataset('init.nc')
119119
cell_mask = ds_mesh.maxLevelCell >= 1
120-
edge_mask = ds_mesh.maxLevelEdgeBot >= 1
120+
cellsOnEdge1 = ds_mesh.cellsOnEdge.isel(TWO=0)
121+
cellsOnEdge2 = ds_mesh.cellsOnEdge.isel(TWO=1)
122+
cell1_is_valid = cell_mask[cellsOnEdge1 - 1].values == 1
123+
cell2_is_valid = cell_mask[cellsOnEdge2 - 1].values == 1
124+
edge_mask = xr.where(np.logical_and(cell1_is_valid,
125+
cell2_is_valid),
126+
1, 0)
121127

122128
out_filenames = []
123129
if not self.damping_coeffs:
@@ -139,22 +145,37 @@ def run(self):
139145
time = simtime.total_seconds()
140146
tidx = np.argmin(np.abs(time / s_day - float(atime)))
141147
plot_horiz_field(
142-
ds, ds_mesh, 'wettingVelocityFactor',
143-
f'wetting_velocity_factor_horiz_t{tidx:03g}.png',
148+
ds_mesh,
149+
ds.wettingVelocityFactor,
150+
cmap_title=r'$\Phi$',
151+
out_file_name=f'wetting_factor_t{tidx:03g}.png',
144152
transect_x=x, transect_y=y,
145153
show_patch_edges=True, t_index=tidx,
146154
field_mask=edge_mask, vmin=0, vmax=1)
147155

156+
plot_horiz_field(
157+
ds_mesh,
158+
ds.upwindFactor,
159+
cmap_title=r'$\Psi$',
160+
out_file_name=f'upwind_factor_t{tidx:03g}.png',
161+
transect_x=x, transect_y=y,
162+
show_patch_edges=False, t_index=tidx,
163+
field_mask=edge_mask, vmin=0, vmax=1)
164+
148165
if self.baroclinic:
149166
plot_horiz_field(
150-
ds, ds_mesh, 'wettingVelocityBarotropicSubcycle',
151-
f'wettingVelocityBarotropic_horiz_t{tidx:03g}.png',
167+
ds_mesh,
168+
ds.wettingVelocityBarotropicSubcycle,
169+
cmap_title=r'$\Phi_{btr}$',
170+
out_file_name=f'wetting_barotropic_t{tidx:03g}.png',
152171
t_index=tidx, field_mask=edge_mask, vmin=0, vmax=1)
153172
self._plot_salinity(tidx=-1, y_distance=45.)
154173

155174
plot_horiz_field(
156-
ds, ds_mesh, 'ssh',
157-
f'ssh_horiz_t{tidx:03g}.png',
175+
ds_mesh,
176+
ds.ssh,
177+
cmap_title='SSH',
178+
out_file_name=f'ssh_horiz_t{tidx:03g}.png',
158179
t_index=tidx, field_mask=cell_mask)
159180

160181
def _plot_transects(self, ds_mesh, ds):

0 commit comments

Comments
 (0)