         theta-switch-constant (theta-switch individual)]
     (- attack-angle
        (* (/ 1 Math/PI)
-          (+ (integral-production individual gradient-forward-polar-function 0 theta-switch-constant (/ theta-switch-constant 90) 90)
-             (integral-production individual gradient-aft-polar-function theta-switch-constant Math/PI (/ (- Math/PI theta-switch-constant) 90) 90))))))
+          (+ (integral-abstracted individual gradient-forward-polar-function middle-rule 0 theta-switch-constant 600)
+             (integral-abstracted individual gradient-aft-polar-function left-rule theta-switch-constant Math/PI 600))))))
 
 (defn A-1
   [individual run-constants]
   (let [theta-switch-constant (theta-switch individual)]
     (* (/ 2 Math/PI)
-       (+ (integral-production individual gradient-forward-polar-function 0 theta-switch-constant (/ theta-switch-constant 90) 90)
-          (integral-production individual gradient-aft-polar-function theta-switch-constant Math/PI (/ (- Math/PI theta-switch-constant) 90) 90)))))
+       (+ (integral-abstracted individual GFPCos middle-rule 0 theta-switch-constant 850)
+          (integral-abstracted individual GAPCos left-rule theta-switch-constant Math/PI 850)))))
 
 
 (defn cambered-coefficient-of-lift

  The integral multiplies by the derivative of the x function because the functions are
  paremetric."
  [individual]
  (- (simpson-integral individual adjusted-upper-function 90)
     (simpson-integral individual adjusted-lower-function 90)))

;;;---------------- Coefficantof lift ----------------
(defn symetric-coefficient-of-lift

    (* (/ max-camber (Math/pow (- position-camber 1) 2))
       (+ (* -1 1) (* 2 position-camber) (* 1 (Math/cos theta-not))))))

(defn GFPCos
  [individual theta-not]
  (let [position-camber (individual :corrected-position-camber)
        max-camber (individual :corrected-max-camber)]
    (let [position-camber (individual :corrected-position-camber)
        max-camber (individual :corrected-max-camber)]
    (* (/ max-camber (Math/pow position-camber 2))
       (+ -1 (* 2 position-camber) (* 1 (Math/cos theta-not)))
       (Math/cos theta-not)))))

(defn GAPCos
  [individual theta-not]
  (let [position-camber (individual :corrected-position-camber)
        max-camber (individual :corrected-max-camber)]
    (* (/ max-camber (Math/pow (- position-camber 1) 2))
       (+ (* -1 1) (* 2 position-camber) (* 1 (Math/cos theta-not)))
       (Math/cos theta-not))))

(defn theta-switch
  "The angle at which the coefficient-of-lift calculation will switch from one integration to another
  arccos(1 - 2P)"
