diff --git a/maoppy/instrument.py b/maoppy/instrument.py
index 2d1dc5801407ce05547afb08057f761bb356173d..2f178ce5d65788026378fc78db97933d9edff549 100644
--- a/maoppy/instrument.py
+++ b/maoppy/instrument.py
@@ -174,32 +174,27 @@ def pupil_vlt(shape, angle=0, oversamp=1):
     ### CIRCULAR PUPIL (with central occultation)
     rr = np.sqrt(xx**2 + yy**2)
     pup = (rr < Rpix) * (rr >= (Rpix*occ))
-    ### SPIDERS 1 and 2
+    ### SPIDER 1
+    a = np.tan(5.5*np.pi/180)
     x0 = - Rpix
     y0 = 0
-    x1 = - Rpix*occ/np.sqrt(2)
-    y1 = Rpix*occ/np.sqrt(2)
-    a = (y1-y0)/(x1-x0)
-    spider1 = np.abs(yy-(a*(xx-x1)+y1)) <= (spider_width_pix/2)
-    spider1 *= (xx<=x1)
+    spider1 = np.abs(yy-(a*(xx-x0)+y0)) <= (spider_width_pix/2)
+    spider1 *= (xx<0)
+    ### SPIDER 2
     x0 = 0
-    y0 = - Rpix
-    a = -(x1-x0)/(y1-y0)
-    spider2 = np.abs(xx-(a*(yy-y1)+x1)) <= (spider_width_pix/2)
-    spider2 *= (yy>=y1)
-    ### SPIDERS 3 and 4
+    y0 = Rpix
+    spider2 = np.abs(xx-(a*(yy-y0)+x0)) <= (spider_width_pix/2)
+    spider2 *= (yy>0)
+    ### SPIDER 3
     x0 = Rpix
     y0 = 0
-    x1 = Rpix*occ/np.sqrt(2)
-    y1 = - Rpix*occ/np.sqrt(2)
-    a = (y1-y0)/(x1-x0)
-    spider3 = np.abs(yy-(a*(xx-x1)+y1)) <= (spider_width_pix/2)
-    spider3 *= (xx>=x1)
+    spider3 = np.abs(yy-(a*(xx-x0)+y0)) <= (spider_width_pix/2)
+    spider3 *= (xx>0)
+    ### SPIDER 4
     x0 = 0
-    y0 = Rpix
-    a = -(x1-x0)/(y1-y0)
-    spider4 = np.abs(xx-(a*(yy-y1)+x1)) <= (spider_width_pix/2)
-    spider4 *= (yy<=y1)
+    y0 = - Rpix
+    spider4 = np.abs(xx-(a*(yy-y0)+x0)) <= (spider_width_pix/2)
+    spider4 *= (yy<0)
     ### FINALIZE
     pup_total = pup*(1-spider1)*(1-spider2)*(1-spider3)*(1-spider4)
     if oversamp>1: