diff --git a/hp4194/cv.py b/hp4194/cv.py
index 1cddbc2505e8539084a3c592acdfd8278db3df3c..7c77db85979e8020bc42eb2bb430a9b3005e808b 100644
--- a/hp4194/cv.py
+++ b/hp4194/cv.py
@@ -32,7 +32,7 @@ add_widgets_to_list(view,all_widgets)
 add_widgets_to_list(sweep_parameter_dict,all_widgets)
 add_widgets_to_list(messparameter_dict,all_widgets)
 
-
+fig, axs = 
 def on_measure_clicked(b):
     with out:
         clear_output()
@@ -65,6 +65,7 @@ def on_measure_clicked(b):
         device.set_parameter('set_delay_time',sweep_parameter_dict['d_time'].value)
         device.set_parameter('set_delay_apperture',sweep_parameter_dict['d_apperture'].value)
         device.set_parameter('aver_num',sweep_parameter_dict['averaging'].value)
+        device.write(sweep_parameter_dict["integration"].value) # Set integration number
     
         # Now that we have set the frequency values ask user for calibration
         answer = ask_for_calibration()
@@ -72,11 +73,8 @@ def on_measure_clicked(b):
             device.write('start_open_cal')
             device.wait()
             device.write('open_cal_on') #data saved in registers OG and OB
-            print(device.read_register('reg_open_offset_G'))
-            print(device.read_register('reg_open_offset_B'))
-            
-        print(device.read_register('reg_open_offset_G'))
-        print(device.read_register('reg_open_offset_B'))
+
+        
         # open the file dialog
         default_filename = f"{sample_dict['wafer'].value}_{sample_dict['sample'].value}_{sample_dict['field'].value}_CV.txt"
         file = save_file(default_filename)
@@ -86,13 +84,26 @@ def on_measure_clicked(b):
         device.write('autoscale_B') # Autoscale B
     
         # create the numpy list with the biases
-        # create the arrays with frequency, G and B 
-        frequency = []
-        G = []
-        B = []
+        # create the arrays with everything that needs to be saved into the array
+        f_values = []
+        G_values = []
+        B_values = []
+        log_f = []
+        omega = []
+        Z = []
+        phi = []
+        D = []
+        Cs =[]
+        Cp =[]
+        Cp_area =[]
+        Cs_area = []
+        ReZ = []
+        ImZ = []
+        G_f_omega = []
+        
     
         num_of_points =int(abs(messparameter_dict["stop"].value-messparameter_dict["start"].value)/abs(messparameter_dict["step"].value) + 1)
-    
+        area = np.pi * radius**2
         biases = np.linspace(messparameter_dict["start"].value,messparameter_dict["stop"].value,num_of_points,endpoint = True)
     
         for bias in biases:
@@ -102,11 +113,35 @@ def on_measure_clicked(b):
             
             # read the registers
             
-            current_freq = device.read_register('reg_sweep')
-            current_G = device.read_register('reg_A')
-            current_B = device.read_register('reg_B')
+            freq = device.read_register('reg_sweep')
+            G = device.read_register('reg_A')
+            B = device.read_register('reg_B')
+
     
             time.sleep(messparameter_dict["sleep"].value)
+
+            #do the calculations
+
+            f_values.extend(freq)
+            G_values.extend(G)
+            B_vlaues.extend(B)
+            
+            for i in range(len(freq)):
+                log_f.append(np.log10(freq[i]))
+                omega.append(2*np.pi*freq[i])
+                log_omega.append(np.log10(omega))
+                polar = cmath.polar(1/complex(G[i],B[i]))
+                Z .append(polar[0])
+                phi.append(180/np.pi * polar[1]) #in deg
+                D.append(G[i]/B[i])
+                Cp.append(B[i]/omega)
+                Cs.append(Cp*(1+D**(2)))
+                Cp_area.append(Cp/area)
+                Cs_area.append(Cs/area)
+                Z_complex = cmath.rect(polar[0],polar[1])
+                ReZ.append(Z_complex.real)
+                ImZ.append(Z_complex.imag)
+                G_f_omega.append(G_p/area/omega)
     
             # Do A test plot
             fig,ax1 = plt.subplots()
@@ -136,25 +171,47 @@ def on_measure_clicked(b):
                 
                 # read the registers
                 
-                current_freq = device.read_register('reg_sweep')
-                current_G = device.read_register('reg_A')
-                current_B = device.read_register('reg_B')
+                freq = device.read_register('reg_sweep')
+                G = device.read_register('reg_A')
+                B = device.read_register('reg_B')
         
                 time.sleep(messparameter_dict["sleep"].value)
-        
+
+                f_values.extend(freq)
+                G_values.extend(G)
+                B_vlaues.extend(B)
+
+                #do the calculations
+                for i in range(len(freq)):
+                    log_f.append(np.log10(freq[i]))
+                    omega.append(2*np.pi*freq[i])
+                    log_omega.append(np.log10(omega))
+                    polar = cmath.polar(1/complex(G[i],B[i]))
+                    Z.append(polar[0])
+                    phi.append(180/np.pi * polar[1]) #in deg
+                    D.append(G[i]/B[i])
+                    Cp.append(B[i]/omega)
+                    Cs.append(Cp*(1+D**(2)))
+                    Cp_area.append(Cp/area)
+                    Cs_area.append(Cs/area)
+                    Z_complex = cmath.rect(polar[0],polar[1])
+                    ReZ.append(Z_complex.real)
+                    ImZ.append(Z_complex.imag)
+                    G_f_omega.append(G_p/area/omega)
+            
                 # Do A test plot
                 fig,ax1 = plt.subplots()
                 
                 color = 'b'
                 ax1.set_xlabel('Frequency (Hz)')
                 ax1.set_ylabel('G (S)', color=color)
-                ax1.plot(current_freq,current_G , color=color)
+                ax1.plot(freq,G , color=color)
                 ax1.tick_params(axis='y', labelcolor=color)
         
                 ax2 = ax1.twinx()
                 color = 'y'
                 ax2.set_ylabel('B (S)', color=color)  # we already handled the x-label with ax1
-                ax2.plot(current_freq,current_B, color=color)
+                ax2.plot(freq,B, color=color)
                 ax2.tick_params(axis='y', labelcolor=color)
         
                 fig.suptitle(f"Results for Bias = {bias}V")
diff --git a/hp4194/values.ipynb b/hp4194/values.ipynb
new file mode 100644
index 0000000000000000000000000000000000000000..c5ee0b9b3c64b15baf6c7e4d89f223a57e48ee21
--- /dev/null
+++ b/hp4194/values.ipynb
@@ -0,0 +1,307 @@
+{
+ "cells": [
+  {
+   "cell_type": "code",
+   "execution_count": 1,
+   "id": "9d2dbd8f-ac4a-4923-a059-6e377324f4d0",
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "import cmath\n",
+    "import numpy as np"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 2,
+   "id": "6e2ff0c9-edda-4ea4-9776-857438f4243a",
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "# test values with the labview programm"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 3,
+   "id": "59c934ec-e8f1-4a8a-883e-c7401923fa7f",
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "# test inputs\n",
+    "G_p = 1.27e-5\n",
+    "B_p = 0.0001507\n",
+    "U = -1.65\n",
+    "f = 1e6\n",
+    "area = 7.854E-5"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 4,
+   "id": "39a3c711-b8c8-4b64-a3c5-2f2f7867eb48",
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "6.0\n"
+     ]
+    }
+   ],
+   "source": [
+    "log_f = np.log10(f)\n",
+    "print(log_f)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 5,
+   "id": "31bb2ff6-3844-4e93-8992-e71fe3b72b4f",
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "6283185.307179586\n"
+     ]
+    }
+   ],
+   "source": [
+    "omega = 2*np.pi*f\n",
+    "print(omega)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 6,
+   "id": "2a63cc3d-9eb8-4280-b0dc-3de3619b6139",
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "6.798179868358115\n"
+     ]
+    }
+   ],
+   "source": [
+    "log_omega = np.log10(omega)\n",
+    "print(log_omega)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 7,
+   "id": "3f1c119e-79ce-4a6c-9eae-7bded626e847",
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "(6612.26145303364, -1.4867215934478906)\n",
+      "<class 'tuple'>\n"
+     ]
+    }
+   ],
+   "source": [
+    "polar = cmath.polar(1/complex(G_p,B_p))\n",
+    "print(polar)\n",
+    "print(type(polar))"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 8,
+   "id": "a28da13f-41c5-49df-9edc-c390801b6b08",
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "6612.26145303364\n",
+      "-85.18287261552875\n"
+     ]
+    }
+   ],
+   "source": [
+    "Z = polar[0]\n",
+    "phi = 180/np.pi * polar[1] #in deg\n",
+    "\n",
+    "print(Z)\n",
+    "print(phi)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 9,
+   "id": "57eb43ca-de5a-49eb-b9fd-107c42f76dc9",
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "0.08427339084273391\n"
+     ]
+    }
+   ],
+   "source": [
+    "D = G_p/B_p\n",
+    "print(D)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 10,
+   "id": "61ab4235-1027-42d6-825c-226c7d0b441f",
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "2.398464992394863e-11\n"
+     ]
+    }
+   ],
+   "source": [
+    "C_p = B_p/omega\n",
+    "print(C_p)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 11,
+   "id": "79865b7e-23c7-4ec9-a0d3-c755a6ac39c7",
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "2.415498901334008e-11\n"
+     ]
+    }
+   ],
+   "source": [
+    "C_s = C_p*(1+D**(2))\n",
+    "print(C_s)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 12,
+   "id": "1ed7e1d7-2f95-463f-abed-d8add9939408",
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "3.0538133338360874e-07\n",
+      "3.0755015295823884e-07\n"
+     ]
+    }
+   ],
+   "source": [
+    "C_p_area = C_p/area\n",
+    "print(C_p_area)\n",
+    "\n",
+    "C_s_area = C_s/area\n",
+    "print(C_s_area)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 13,
+   "id": "b8bd3e45-b71c-4238-8703-6ae62d73d0b5",
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "(555.2694193455862-6588.905629557473j)\n",
+      "555.2694193455862\n",
+      "-6588.905629557473\n"
+     ]
+    }
+   ],
+   "source": [
+    "Z_complex = cmath.rect(polar[0],polar[1])\n",
+    "print(Z_complex)\n",
+    "\n",
+    "Rez = Z_complex.real\n",
+    "print(Rez)\n",
+    "\n",
+    "Imz = Z_complex.imag\n",
+    "print(Imz)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 14,
+   "id": "6d3b45a3-129b-4937-b516-bddc1a0de10e",
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "2.573552046431208e-08\n"
+     ]
+    }
+   ],
+   "source": [
+    "G_f_omega = G_p/area/omega\n",
+    "\n",
+    "print(G_f_omega)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 15,
+   "id": "bc553d3e-f346-4f86-9fb9-8467ccf814f1",
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "# values pass all the tests"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "id": "b449ceb5-5b6a-4904-8455-78f143abb050",
+   "metadata": {},
+   "outputs": [],
+   "source": []
+  }
+ ],
+ "metadata": {
+  "kernelspec": {
+   "display_name": "Python 3 (ipykernel)",
+   "language": "python",
+   "name": "python3"
+  },
+  "language_info": {
+   "codemirror_mode": {
+    "name": "ipython",
+    "version": 3
+   },
+   "file_extension": ".py",
+   "mimetype": "text/x-python",
+   "name": "python",
+   "nbconvert_exporter": "python",
+   "pygments_lexer": "ipython3",
+   "version": "3.12.0"
+  }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 5
+}