Describe the bug
northness() at line 509 and eastness() at line 585 call np.cos()/np.sin() on asp_data which may be a dask array. NumPy implicitly calls .compute() on dask arrays, materializing the full result into RAM.
The core aspect() function correctly uses map_overlap for dask, but northness()/eastness() bypass that by operating on the result with numpy ops.
Expected behavior
Use da.cos/da.sin/da.deg2rad/da.where when the data is dask-backed, keeping the computation lazy.
Describe the bug
northness()at line 509 andeastness()at line 585 callnp.cos()/np.sin()onasp_datawhich may be a dask array. NumPy implicitly calls.compute()on dask arrays, materializing the full result into RAM.The core
aspect()function correctly usesmap_overlapfor dask, butnorthness()/eastness()bypass that by operating on the result with numpy ops.Expected behavior
Use
da.cos/da.sin/da.deg2rad/da.wherewhen the data is dask-backed, keeping the computation lazy.