Skip to content

Commit 4187da8

Browse files
mjrenomjreno
authored andcommitted
use typing Optional
1 parent 78f88b0 commit 4187da8

File tree

2 files changed

+19
-24
lines changed

2 files changed

+19
-24
lines changed

autotest/regression/test_model_netcdf.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1142,7 +1142,7 @@ def test_disv_transform(function_tmpdir, example_data_path):
11421142
vgrid,
11431143
)
11441144

1145-
ds.create_array("start_conditions", "head", strt, ["nlay", "ncpl"])
1145+
ds.create_array("start_conditions", "head", strt, ["nlay", "ncpl"], None)
11461146

11471147
# write to netcdf
11481148
ds.write(vertex_ws)

flopy/utils/model_netcdf.py

Lines changed: 18 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
import time
55
import warnings
66
from pathlib import Path
7+
from typing import Optional
78

89
import numpy as np
910
import xarray as xr
@@ -123,7 +124,7 @@ def create_array(
123124
param: str,
124125
data: np.typing.ArrayLike,
125126
shape: list,
126-
longname: str | None = None,
127+
longname: Optional[str],
127128
):
128129
"""
129130
Create a new array. Override this function in a derived class.
@@ -152,7 +153,7 @@ def set_array(
152153
package: str,
153154
param: str,
154155
data: np.typing.ArrayLike,
155-
layer: int | None = None,
156+
layer: Optional[int],
156157
):
157158
"""
158159
Set data in an existing array. Override this function in a derived class.
@@ -187,7 +188,7 @@ def write(self, path: str, **kwargs) -> None:
187188
188189
Args:
189190
path (str): A directory in which to write the file.
190-
kwargs (dict): A dictionay of supported encodings to
191+
kwargs (dict): A dictionary of supported encodings to
191192
apply to managed grid associated arrays.
192193
"""
193194
self._set_projection()
@@ -426,7 +427,7 @@ def _create_array(
426427
param: str,
427428
data: np.typing.ArrayLike,
428429
nc_shape: list,
429-
longname: str,
430+
longname: Optional[str],
430431
):
431432
layer = -1
432433
if data.dtype == np.float64:
@@ -443,7 +444,8 @@ def _create_array(
443444
self._dataset = self._dataset.assign(var_d)
444445
# self._dataset = self._dataset.fillna(fillna)
445446
self._dataset[varname].attrs["_FillValue"] = fillna
446-
self._dataset[varname].attrs["long_name"] = longname
447+
if longname:
448+
self._dataset[varname].attrs["long_name"] = longname
447449
if path not in self._tags:
448450
self._tags[path] = {}
449451
if layer in self._tags[path]:
@@ -456,7 +458,7 @@ def _create_layered_array(
456458
param: str,
457459
data: np.typing.ArrayLike,
458460
nc_shape: list,
459-
longname: str,
461+
longname: Optional[str],
460462
):
461463
if data.dtype == np.float64:
462464
fillna = FILLNA_DBL
@@ -475,11 +477,10 @@ def _create_layered_array(
475477
self._dataset = self._dataset.assign(var_d)
476478
# self._dataset = self._dataset.fillna(fillna)
477479
self._dataset[layer_vname].attrs["_FillValue"] = fillna
478-
if longname != "":
479-
ln = f"{longname} layer={mf6_layer}"
480-
else:
481-
ln = longname
482-
self._dataset[layer_vname].attrs["long_name"] = ln
480+
if longname:
481+
self._dataset[layer_vname].attrs["long_name"] = (
482+
f"{longname} layer={mf6_layer}"
483+
)
483484
if path not in self._tags:
484485
self._tags[path] = {}
485486
if layer in self._tags[path]:
@@ -499,11 +500,9 @@ def create_array(
499500
param: str,
500501
data: np.typing.ArrayLike,
501502
shape: list,
502-
longname: str | None = None,
503+
longname: Optional[str],
503504
):
504505
data = np.array(data)
505-
if not longname:
506-
longname = ""
507506
nc_shape = None
508507
if len(data.shape) == 3:
509508
nc_shape = ["z", "y", "x"]
@@ -522,7 +521,7 @@ def set_array(
522521
package: str,
523522
param: str,
524523
data: np.typing.ArrayLike,
525-
layer: int | None = None,
524+
layer: Optional[int],
526525
):
527526
data = np.array(data)
528527
path = self.path(package, param)
@@ -667,11 +666,9 @@ def create_array(
667666
param: str,
668667
data: np.typing.ArrayLike,
669668
shape: list,
670-
longname: str | None = None,
669+
longname: Optional[str],
671670
):
672671
data = np.array(data)
673-
if not longname:
674-
longname = ""
675672
nc_shape = None
676673
if len(data.shape) == 1:
677674
if shape[0].lower() == "nrow":
@@ -691,7 +688,7 @@ def set_array(
691688
package: str,
692689
param: str,
693690
data: np.typing.ArrayLike,
694-
layer: int | None = None,
691+
layer: Optional[int],
695692
):
696693
data = np.array(data)
697694
path = self.path(package, param)
@@ -822,11 +819,9 @@ def create_array(
822819
param: str,
823820
data: np.typing.ArrayLike,
824821
shape: list,
825-
longname: str | None = None,
822+
longname: Optional[str],
826823
):
827824
data = np.array(data)
828-
if not longname:
829-
longname = ""
830825
nc_shape = ["nmesh_face"]
831826

832827
if len(data.shape) == 2:
@@ -839,7 +834,7 @@ def set_array(
839834
package: str,
840835
param: str,
841836
data: np.typing.ArrayLike,
842-
layer: int | None = None,
837+
layer: Optional[int],
843838
):
844839
data = np.array(data)
845840
path = self.path(package, param)

0 commit comments

Comments
 (0)