diff --git a/satpy/readers/eps_l1b.py b/satpy/readers/eps_l1b.py
index <HASH>..<HASH> 100644
--- a/satpy/readers/eps_l1b.py
+++ b/satpy/readers/eps_l1b.py
@@ -225,13 +225,12 @@ class EPSAVHRRFile(BaseFileHandler):
             from geotiepoints import metop20kmto1km
             # Note: interpolation asumes lat values values between -90 and 90
             # Solar and satellite zenith is between 0 and 180.
-            solar_zenith -= 90
+            # Note: delayed will cast input dask-arrays to numpy arrays (needed by metop20kmto1km).
             sun_azi, sun_zen = metop20kmto1km(
-                solar_azimuth, solar_zenith)
+                solar_azimuth, solar_zenith - 90)
             sun_zen += 90
-            sat_zenith -= 90
             sat_azi, sat_zen = metop20kmto1km(
-                sat_azimuth, sat_zenith)
+                sat_azimuth, sat_zenith - 90)
             sat_zen += 90
             return sun_azi, sun_zen, sat_azi, sat_zen
         else:
Bugfix: don't change values of solar/sat zenith angles

For numpy <I> input to _get_full angles are numpy arrays.
If updated; wrong vales will be used the second time values are requested.

For numpy <I> input are casted/and copied from numpy arrays to dask arrays by delayed.
As np.hstack() returns dask arrays for dask arrays input for numpy <I>.