{ "cells": [ { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[-1008.06451613 -4.03225806]\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "# load cell calibration\n", "\n", "import pandas as pd\n", "import matplotlib.pyplot as plt\n", "import numpy as np\n", "\n", "df = pd.DataFrame(\n", " {\n", " \"Load (g)\": [0,500,1000,1500],\n", " \"Value (mV)\": [-0.004,-0.500,-0.996,-1.492]\n", " }\n", ")\n", "\n", "d = np.polyfit(df['Value (mV)'],df['Load (g)'],1)\n", "f = np.poly1d(d)\n", "df.insert(2,'reg',f(df['Value (mV)']))\n", "ax = df.plot(x='Value (mV)',y='Load (g)',style='o',ms=5,figsize=(8,6))\n", "df.plot(x='Value (mV)',y='Load (g)',color='Red',ax=ax)\n", "print(d)\n", "plt.savefig('stiffness_cal.png', dpi=100)" ] }, { "cell_type": "code", "execution_count": 40, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[-142.50622898 1203.72741724]\n", " Displacement (mm) Load cell (mV) Force (N) reg\n", "0 8.446 0.009 -0.088973 0.119807\n", "1 8.438 -0.107 1.057786 1.259857\n", "2 8.433 -0.203 2.006827 1.972388\n", "3 8.427 -0.309 3.054727 2.827426\n", "4 8.420 -0.402 3.974111 3.824969\n", "5 8.412 -0.503 4.972582 4.965019\n", "6 8.407 -0.600 5.931509 5.677550\n", "7 8.397 -0.708 6.999181 7.102613\n", "8 8.392 -0.803 7.938337 7.815144\n", "9 8.383 -0.907 8.966465 9.097700\n", "10 8.376 -1.006 9.945164 10.095243\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAeAAAAFzCAYAAADmJtp4AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8QVMy6AAAACXBIWXMAAAsTAAALEwEAmpwYAAA3bElEQVR4nO3deXxU1fnH8c+TgUgAARfCDxQEWxsFgRACYVEMgrhUxY2qqLigaBXUKopL64ZVwR21VRSU4i5q3ddoFFGRAEEFRFxQECW4RECCgcn5/XEGGzBAkpnMncl8369XXs7cuTP3uSx+Ofc+c4455xAREZH4Sgu6ABERkVSkABYREQmAAlhERCQACmAREZEAKIBFREQCoAAWEREJQIN4HmznnXd27du3j+chRUREAjN79uzvnXMtq3otrgHcvn17ioqK4nlIERGRwJjZV1t6TZegRUREAqAAFhERCYACWEREJABxvQcsIiKJaf369Sxbtox169YFXUpSatSoEbvuuisNGzas9nsUwCIiwrJly9h+++1p3749ZhZ0OUnFOccPP/zAsmXL6NChQ7Xfp0vQIiLCunXr2GmnnRS+tWBm7LTTTjW+eqAAFhERAIVvFGrza6cAFhERCYACWEREaixc4ShYuIIJBYspWLiCcIWL+jNDoRDZ2dm//SxZsiT6QquhrKyM/fbbj3A4zJIlSzAz7rjjjt9eHzlyJA888AAAo0eP5o033ojJcdWEJSIiNRKucJw0aSbFS0spKw+TkR4iu20Lpg7PI5RW+8vYGRkZFBcX1/h9GzZsoEGD2sfZ5MmTOeqoowiFQgBkZmZy++23c+aZZ5Kenr7JvqNGjeKMM85g//33r/XxNtIIWEREaqRwUQnFS0tZWx7GAWvLwxQvLaVwUUnMj1VcXEyvXr3o0qULRx55JD/99BMA+fn5nH/++eTm5nL77bcza9Ys+vTpQ9euXenZsyerV68mHA5z0UUX0aNHD7p06cI999xT5TEeeughBg8e/Nvzli1bMmDAAKZMmfK7fXfbbTd++OEHvvvuu6jPLXkD+JNPYNasoKsQEUk585evoqw8vMm2svIwC5aviupzy8rKfrv8fOSRRwIwbNgwxo0bx4cffkjnzp25+uqrf9u/vLycoqIiRo0axbHHHsvtt9/OvHnzeP3118nIyGDSpEk0b96cWbNmMWvWLO69916+/PLLTY5ZXl7OF198weYLBY0ZM4abbrqJcHjT8wTIyclhxowZUZ0rVOMStJlNBg4FSpxze0e27Qg8BrQHlgB/cc79FHU1NXHxxfDSSzB2LFx0EUQuHYiISN3q1KYZGekh1lYK4Yz0EB3bNIvqcze/BP3zzz9TWlrKfvvtB8DJJ5/MkCFDfnv92GOPBWDRokW0bt2aHj16ANCsma/j1Vdf5cMPP2TatGm/fd7ixYs3+a7u999/T4sWLX5Xy+67705eXh4PP/zw717LzMxk+fLlUZ0rVG8E/ABw0GbbLgEKnHN7AAWR5/E1ZQoceSRceikMHAjLlsW9BBGRVJSflUl22xY0Tg9hQOPIPeD8rMy41tGkSZOtvu6c44477qC4uJji4mK+/PJLBg0atMk+GRkZW/z+7mWXXca4ceNwbtMGs3Xr1pGRkRFd8VQjgJ1zbwM/brZ5MLDx4vgU4IioK6mBcIWj4LtyJoy4lgXX3oqbNQu6dIEnn4xnGSIiKSmUZkwdnscdx3fjggP+xB3Hd4u6AasqzZs3Z4cddmD69OkATJ069bfRcGVZWVl8++23zIrclly9ejUbNmzgwAMP5N///jfr168H4NNPP+WXX37Z5L077LAD4XC4yhDec8896dixI88999wm2z/99FP23nvvqM+vtm1jrZxz30Yefwe02tKOZjYCGAHQrl27Wh7ufzbvvrs7fU8OuuR+bn5mPHbMMXD66XDbbbCNfxmJiEjthdKMAXu1YsBeW/zff0xMmTKFs846i7Vr17L77rtz//33/26f9PR0HnvsMUaNGkVZWRkZGRm8/vrrnH766SxZsoScnBycc7Rs2ZL//ve/v3v/oEGDeOeddxg4cODvXrv88svp1q3bb8/Xr1/PZ599Rm5ubtTnZpsPravcyaw98Hyle8ClzrkWlV7/yTm3w7Y+Jzc31xUVFdW+WqBg4QpGPTJ3k3sPjdND3Hl0J/Z/9F8wbhzssQc8/DB07x7VsUREUsXChQvZa6+9gi4jEHPmzOHWW29l6tSp29z36aefZs6cOYwdO/Z3r1X1a2hms51zVaZ1bbugV5hZ68iHtwZi33u+BVvqvpv//Tq4/nooKIBffoHevWH8eKioiFdpIiKShHJycujfv3+VHc+b27BhAxdeeGFMjlvbAH4WODny+GTgmZhUUw0bu+8q26T7rn9/+PBDOOwwGDMGBg2Cb76JV3kiIpKETjvttN8m4tiaIUOGVNk1XRvbDGAzewR4D8gys2VmNhy4ATjAzBYDAyPP46Ja3Xc77gjTpsG998J77/kGrSqu+4uIiARlm01Yzrnjt/DSgBjXUi0bu+8KF5WwYPkqOrZpRn5W5u+778x8Q9a++8LQof4rSyNGwC23qEFLREQCl5QzYW3svhs1YA8G7NVq663vWVl+FHzxxX5E3L07zJ0bv2JFRESqkJQBXGPp6b47+rXXYPVqyMuDm29Wg5aIiAQmNQJ4owEDfIPWn/8Mo0fDQQfBt99u+30iIhJXzjkq6vkgKbUCGGCnneCpp+Cee+Cdd6BzZ3j22aCrEhFJeUuWLCErK4thw4ax9957M3bs2N9WMrryyit/22/s2LFkZWWxzz77cPzxx3PTTTcFWHXtpeZ6wGa+IatfPzj+eBg8GP76V7jpJmjcOOjqRESCdf75UIt1ebcqO9vPUrgNixcvZsqUKaxatYpp06bxwQcf4Jzj8MMP5+233yYjI4Mnn3ySefPmsX79enJycuiepJMupWYAb7TnnvD++3D55f6ecGEhPPIIdO0adGUiIilpt912o1evXowePZpXX331t2kg16xZw+LFi1m9ejWDBw+mUaNGNGrUiMMOOyzgimsvtQMYYLvt/Mj3wAPh5JOhZ0+44QY47zxIS70r9CIi1Rmp1pWNKxw557j00ks588wzN3n9tgBrizUlzEYHHOAbtA46CC64AA45BL77LuiqRERS0oEHHsjkyZNZs2YNAN988w0lJSX07duX5557jnXr1rFmzRqef/75gCutPY2AK9t5Zz9j1j33wN/+5mfQmjwZDj006MpERFLKoEGDWLhwIb179wagadOmPPjgg/To0YPDDz+cLl260KpVKzp37kzz5s0DrrZ2qrUaUqzEYjWkuFmwwM+gNW8enHMO3HgjxGABZhGRRJRMqyGtWbOGpk2bsnbtWvr168fEiRPJyckJuqy4rYZU/3XsCDNn+pHwXXdBjx7+ErWIiARqxIgRZGdnk5OTw9FHH50Q4VsbugS9Ndtt5+eOrtygNX48jBrlv8okIiJx9/DDDwddQkxoBFwdBx7oR78DB/ru6D//GVasCLoqERFJYgrg6srMhOeegzvvhDff9A1aL74YdFUiIjETz56g+qY2v3YK4Jow8w1ZRUXQqpUfCZ93HqxbF3RlIiJRadSoET/88INCuBacc/zwww80atSoRu/TPeDa6NQJPvgAxoyBCRP8iPjhh2HvvYOuTESkVnbddVeWLVvGypUrgy4lKTVq1Ihdd921Ru9RANdWo0Zw++1+4o5TToHcXD+j1jnnqEFLRJJOw4YN6dChQ9BlpBRdgo7WwQf7Bq399/fd0YcdBiUlQVclIiIJTgEcC61awQsv+MvRr7/uG7ReeSXoqkREJIEpgGPFzI+AZ83yU1oedJCfxEMNWiIiUgUFcKx17uxDeORIv6JIXp6f1lJERKQSBXBdyMggfPsEiv89lbVfLyOc052Ku/4Fau8XEZEIBXAdCFc4Tpo0k6HLd2a/E27n3V07kTbyHNzgI0At/iIiggK4ThQuKqF4aSlry8OsbLoDw46+kusHjcC9/LJv0HrttaBLFBGRgCmA68D85asoKw//9txZGhO7Hc5jdz4BO+4IgwbBhRfCr78GWKWIiARJAVwHOrVpRkZ6aJNtGekhMvfN8w1aZ5/tV1nq1Qs++SSgKkVEJEgK4DqQn5VJdtsWNE4PYUDj9BDZbVuQn5UJjRv79YWfeQaWLoWcHLjnHjVoiYikGIvnxNu5ubmuqKgobscLUrjCUbiohAXLV9GxTTPyszIJpW02ReW33/p1hl97DQYPhvvu898hFhGResHMZjvncqt8TQEcsIoK/33hSy7x4Tt1KgwYEHRVIiISA1sLYF2CDlpaGlxwAcycCc2bwwEHwMUXQ3l50JWJiEgdUgAnim7dYPZsGDECbrwReveGRYuCrkpEROqIAjiRNG4Md98NTz8NS5b4Bq377lODlohIPaQATkRHHOGXOOzVC844A445Bn78MeiqREQkhhTAiWqXXXx39Pjx8NxzfgatN98MuioREYkRBXAiS0uDiy6C996DJk18d/Qll6hBS0SkHlAAJ4Pu3WHOHDj9dBg3Dvr0gU8/DboqERGJggI4WTRpAhMnwpNPwhdf+AatyZPVoCUikqQUwMnmqKN8g1bPnjB8OPzlL/DTT0FXJSIiNaQATka77uobtG64Af77X9+g9dZbQVclIiI1oABOVqEQjBkD774LjRpB//5w+eWwfn3QlYmISDUogJNdjx4wdy6ceipcdx3ssw989lnQVYmIyDYogOuDpk1h0iR4/HHfHd2tGzzwgBq0REQSmAK4PhkyxDdode/uR8THHQelpUFXJSIiVVAA1zdt20JBAfzzn/4rS127wvTpQVclIiKbUQDXR6EQXHaZb9Bq2BDy8+Ef/1CDlohIAlEA12c9e/oGrWHD4NprYd99/SQeIiISOAVwfbf99nD//fDoo/DJJ5CdDVOnqkFLRCRgCuBUceyxMG+evyc8bBiccAL8/HPQVYmIpCwFcCrZbTcoLISxY/1Xlrp2hRkzgq5KRCQlRRXAZvY3M5tvZh+b2SNm1ihWhUkdCYXg73+Hd97xyx326wdXXQUbNgRdmYhISql1AJvZLsC5QK5zbm8gBBwXq8KkjvXqBcXF/lL01VfDfvvBl18GXZWISMqI9hJ0AyDDzBoAjYHl0ZckcdOsGfznP/Dww/Dxx75B66GHqtw1XOEoWLiCCQWLKVi4gnCFmrhERKLRoLZvdM59Y2Y3AV8DZcCrzrlXN9/PzEYAIwDatWtX28NJXTr+eOjdG0480f+8/DLcdZcPaHz4njRpJsVLSykrD5ORHiK7bQumDs8jlGYBFy8ikpyiuQS9AzAY6AC0AZqY2Ymb7+ecm+icy3XO5bZs2bL2lUrdat/eN2hddZUfEWdnw3vvAVC4qITipaWsLQ/jgLXlYYqXllK4qCS4ekVEklw0l6AHAl8651Y659YDTwF9YlOWBKJBA7jySj91pXN+4o5rrmHB0h8pKw9vsmtZeZgFy1cFVKiISPKLJoC/BnqZWWMzM2AAsDA2ZUmg+vTxDVrHHQdXXslJl57CH9Z+v8kuGekhOrZpFkx9IiL1QK0D2Dk3E5gGzAE+inzWxBjVJUFr3hwefBCmTqX54oU8e+85HP3pdAxoHLkHnJ+VGXSVIiJJy1wcpyTMzc11RUVFcTuexMgXX+BOOAF7/30WHnAEK667iX1zdlcDlojINpjZbOdcblWvaSYs2bbdd8emT4crrmCvgmfJP3YQoVkfBF2ViEhSUwBL9TRo4CfseOstP2tW375+zeFweNvvFRGR31EAS83ss49f1GHIED+l5f77w9dfB12ViEjSUQBLzbVo4b8rPGUKzJnjF3V4/PGgqxIRSSoKYKkdM7+sYXExZGX55Q5POw3WrAm6MhGRpKAAluj84Q9+4o7LL4cHHoBu3WDWrKCrEhFJeApgiV7DhnDttX4qy19/9RN5XH+9GrRERLZCASyx06+fb9A66ii47DIYMACWLg26KhGRhKQAltjaYQd49FGYPBmKinyD1pNPBl2ViEjCUQBL7JnBqafC3Ln+HvExx8Dpp6tBS0SkEgWw1J099oB334VLL/Uj4pwcmD076KpERBKCAljqVsOGcN118MYbsHYt9O4N48dDRUXQlYmIBEoBLPGRnw8ffgiHHw5jxsABB8A33wRdlYhIYBTAEj877ghPPAH33Qfvvw9dusDTTwddlYhIIBTAEl9mMHy4b9Dq0MF/ZenMM+GXX4KuTEQkrhTAEow//ck3aF18Mdx7L3Tv7kNZRCRFKIAlOOnpMG4cvP46rF4NeXlw881q0BKRlKAAluDtv79v0Dr0UBg9Gg46CJYvD7oqEZE6pQCWxLDTTn7GrHvugXfe8Q1azz4bdFUiInVGASyJwwxGjPBrDLdrB4MHw1//6r8/LCJSzyiAJfHsuSe8956/HH333ZCb69cdFhGpRxTAkpi2247wuPHMue9x1pT8QEXPPCpuuUUNWiJSbyiAJSGFKxwnTZrJiV9tT7+ht1LYIYe0Cy/EHXQwfPtt0OWJiERNASwJqXBRCcVLS1lbHubHxs057YjLufqQkVRMn+4btJ5/PugSRUSiogCWhDR/+SrKysP/22DGA50P4pG7noRddoHDDoORI6GsLLgiRUSioACWhNSpTTMy0kObbMtID9G6dw7MnAl/+xvcdRf06OG/QywikmQUwJKQ8rMyyW7bgsbpIQxonB4iu20L8rMyYbvt4JZb4JVX4IcfoGdPmDABnAu6bBGRajMXx/9p5ebmuqKiorgdT5JbuMJRuKiEBctX0bFNM/KzMgml2aY7rVwJp53m7wkffDDcfz+0ahVMwSIimzGz2c653CpfUwBL0nMO/vUv/73hZs18CB9ySNBViYhsNYB1CVqSnxmccw4UFfnR75//DOeeC+vWBV2ZiMgWKYCl/ujUCT74AM47D+64w98b/vjjoKsSEamSAljql0aN4Lbb4MUXYcUKP43lnXeqQUtEEo4CWOqngw/2X08aMABGjfLfGy4pCboqEZHfKICl/mrVyndHT5gAr7/uZ9B65ZWgqxIRARTAUt+Z+RHwrFnQsiUcdJCfxEMNWiISMAWwpIbOnX2D1siR/h5xXh4sWBB0VSKSwhTAkjoyMnx39PPP+xWVuneHf/9bDVoiEggFsKSeP//ZN2jl58PZZ8MRR/gZtURE4kgBLKnp//4PXngBbr0VXn7ZN2i99lrQVYlIClEAS+pKS4Pzz/f3hnfcEQYNggsvhF9/DboyEUkBCmCRrl39NJZnn+1XWerVCz75JOiqRKSeUwCLgG/QuusueOYZWLYMcnLgnnvUoCUidUYBLFLZ4Yf7Bq199oGzzoIjj4Tvvw+6KhGphxTAIptr3do3Zt18M7z0kr9EXVAQdFUiUs8ogEWqkpYGF1wAM2f6NYYPOAAuvhjKy4OuTETqCQWwyNZkZ8Ps2TBiBNx4I/TuDYsWBV2ViNQDCmCRbWncGO6+G55+Gr76yjdo3XefGrREJCoKYJHqOuII36DVuzeccQYccwz8+GPQVYlIklIAi9REmzbw6qswfjw895yfQevNN4OuSkSSUFQBbGYtzGyamX1iZgvNrHesChNJWGlpcNFF8P770KQJDBgAl16qBi0RqZFoR8C3Ay875/YEugILoy9JJEnk5MCcOXD66XDDDdC3LyxeHHRVIpIkah3AZtYc6AdMAnDOlTvnSmNUl0hyaNIEJk6EJ5+Ezz+Hbt1g8mQ1aInINkUzAu4ArATuN7O5ZnafmTWJUV0iyeWoo3yDVs+eMHw4/OUv8NNP1XpruMJRsHAFEwoWU7BwBeEKhbdIKjBXy3+pm1ku8D7Q1zk308xuB1Y55/6x2X4jgBEA7dq16/7VV19FWbJIAguH4aab4O9/9zNqTZ0K++235d0rHCdNmknx0lLKysNkpIfIbtuCqcPzCKVZHAsXkbpgZrOdc7lVvRbNCHgZsMw5NzPyfBqQs/lOzrmJzrlc51xuy5YtozicSBIIhWDMGHjvPWjUCPr3h8svh/Xrq9y9cFEJxUtLWVsexgFry8MULy2lcFFJfOsWkbirdQA7574DlppZVmTTAGBBTKoSSXa5ub5B69RT4brr/OIOn332u93mL19FWXl4k21l5WEWLF8Vr0pFJCDRdkGPAh4ysw+BbOC6qCsSqS+aNoVJk+CJJ+DTT32D1pQpmzRodWrTjIz00CZvy0gP0bFNs3hXKyJxFlUAO+eKI5eXuzjnjnDOVa/rRCSVHHOMb9Dq3h1OOQWOPx5KSwHIz8oku20LGqeHMKBx5B5wflZmkBWLSBzUugmrNnJzc11RUVHcjieSUMJhGDcOrrzSz6j14IOw776EKxyFi0pYsHwVHds0Iz8rUw1YIvVEXTVhiUhNhEJw2WUwYwY0bAj5+XDFFYQqwgzYqxWjBuzBgL1aKXxFUoQCWCTeevaEuXNh2DAYOxb23Re++CLoqkQkzhTAIkHYfnu4/3549FFYuNCvOzx1atBViUgcKYBFgnTssb5BKzvbj4hPOAF+/jnoqkQkDhTAIkFr184vaTh2LDz2mA/jGTOCrkpE6pgCWCQRhEJ++sp33vHLHfbrB1ddBRs2BF2ZiNQRBbBIIunVyzdonXACXH21n0f6yy+DrkpE6oACWCTRNGsG//kPPPwwfPyxvyT98MNBVyUiMaYAFklUxx8P8+ZB585+RHzSSbBKc0SL1BcKYJFE1r49FBb6y9GPPOJHw++9F3BRIhILCmCRRNegAVxxBbz9tl/IYd994Zpr1KAlkuQUwCLJok8fKC6G447z80nn58NXXwVdlYjUkgJYJJk0b+4XcXjwQT+BR9eufjYtEUk6CmCRZHTCCb5Bq2NH36x18smwenXQVYlIDSiARZJVhw7+vvAVV/gRcXY2zJwZdFUiUk0KYJFk1qCB75B+6y2/3nDfvnDttf6xiCQ0BbBIfbDPPr5B6y9/gX/8A/r3h6+/DroqEdkKBbBIfdGiBTz0kJ9Fa+5c36D1+ONBVyUiW6AAFqlPzPyMWcXFkJXllzs89VQ1aIkkIAWwSH30hz/A9Ol+haX//Ae6dYMPPgi6KhGpRAEsUl81bOjXGC4shPXrfYPW9derQUskQSiAReq7fff13xk+6ii47DIYMIDwV19TsHAFEwoWU7BwBeEKF3SVIimnQdAFiEgctGjhZ8w6+GDcyJGUddyb5w4exTN/7ENGeojsti2YOjyPUJoFXalIytAIWCRVmMEpp/DetNf5okVrbnvyOm548XZYs4bipaUULioJukKRlKIAFkkxRQ134uih47mz918Y8tHrPP/Aefzxq09YsFxrDYvEkwJYJMV0atOMhhnbcVO/YRx//HU02lDOkw+O5uAXp0BFRdDliaQMBbBIisnPyiS7bQsap4f4oF1njj7zX8zJ7scfb/knDBwIy5YFXaJISjDn4tf9mJub64qKiuJ2PBGpWrjCUbiohAXLV9GxTTPy/9SS0JQH4NxzIT0d7rvPd02LSFTMbLZzLrfK1xTAIvKbxYth6FAoKoIzzoBbb4UmTYKuSiRpbS2AdQlaRP5njz1gxgwYM8aPgrt3hzlzgq5KpF5SAIvIptLT4YYboKAA1qyBXr3gxhvVoCUSYwpgEala//5+Bq3DDoOLL4ZBg2D58qCrEqk3FMAismU77QTTpsHEifDee9ClCzzzTNBVidQLCmAR2Toz35A1Zw7sthsccQScdRasXRt0ZSJJTQEsItWTleVHwRddBPfc4xu0iouDrkokaSmARaT60tNh/Hh47TX4+WfIy4NbblGDlkgtKIBFpOYGDoQPP4SDD4YLL/T//fbboKsSSSoKYBGpnZ13hqefhrvvhunTfYPWc88FXZVI0lAAi0jtmcGZZ8Ls2bDLLnD44XDOOVBWFnRlIglPASwi0dtrL5g5Ey64AP71L8jN9ZeoRWSLFMAiEhvbbQc33wyvvAI//gg9esDtt0Mc55sXSSYKYBGJrUGD/Oh30CA4/3w45BBYsSLoqkQSjgJYRGKvZUt49lm46y4oLITOneGFF4KuSiShKIBFpG6Ywdln+6UNW7eGQw+FUaPUoCUSoQAWkbrVqZNv0DrvPLjzTujZEz7+OOiqRAKnABaRuteoEdx2G7z0Eqxc6buk77hDDVqS0hTAIhI/Bx3kG7QGDIBzz/WXpUtKgq5KJBAKYBGJr8xMeP55mDABCgp8g9bLLwddlUjcRR3AZhYys7lm9nwsChKRFGDmG7JmzfKBfPDB/itL69YFXZlI3MRiBHwesDAGnyMiqaZzZ/jgAx/Gt9/uV1eaPz/oqkTiIqoANrNdgT8D98WmHBFJORkZ/nL0Cy/4FZVyc/10llU0aIUrHAULVzChYDEFC1cQrlATlySvBlG+/zbgYmD76EsRkZR2yCG+QevUU/2CDi+/DJMm+Uk98OF70qSZFC8tpaw8TEZ6iOy2LZg6PI9QmgVcvEjN1XoEbGaHAiXOudnb2G+EmRWZWdHKlStrezgRSQX/939+JHzbbX5O6S5d4NVXAShcVELx0lLWlodxwNryMMVLSylcpC5qSU7RXILuCxxuZkuAR4H9zezBzXdyzk10zuU653JbRv4lKyKyRWlpftKOWbNgxx3hwAPhwgv5ZMn3lJWHN9m1rDzMguWrAipUJDq1DmDn3KXOuV2dc+2B44A3nHMnxqwyEUltXbr4aSzPPhtuuYVhFxxHp5+/2WSXjPQQHds0C6hAkejoe8AikrgyMvyCDs8+S9Pvv+PJSedy6kcvY87ROHIPOD8rM+gqRWrFXByngsvNzXVFRUVxO56I1CPffos7+RTstVf5os8Alt04gb699lIDliQ0M5vtnMut6jWNgEUkObRujb38Etx8M7sXTaffMQMJvVEQdFUitaYAFpHkkZYGF1zgV1dq3hwOOAAuugjKy4OuTKTGFMAiknyys2H2bDjrLLjpJujVCz75JOiqRGpEASwiyalxY/j3v+Hpp+HrryEnB+69V0scStJQAItIcjviCD+DVp8+MGIEHH00/PBD0FWJbJMCWESSX5s2fsasG2/0Sx127QpvvBF0VSJbpQAWkfohLQ1Gj4b334cmTWDgQLjkEjVoScJSAItI/ZKTA3PmwOmnw7hx/tL0p58GXZXI7yiARaT+adIEJk6Ep56CL7+Ebt38ykpq0JIEogAWkfrryCNh3jzIy/Mj4iFD4Mcfg65KBFAAi0h9t+uu8NprcMMN8MwzvkGrsDDoqkQUwCKSAkIhGDMG3nvPL/Cw//5w2WWwfn3QlUkKUwCLSOrIzfUNWqeeCtdfD337wmefBV2VpCgFsIiklqZNfUPWE0/A4sV+WssHHlCDlsSdAlhEUtMxx/gZtHJz/Yj4uOPgp5+CrkpSiAJYRFJX27ZQUAD//Kf/ylLXrvD220FXJSlCASwiqS0U8g1ZM2ZAejr07w//+IcatKTOKYBFRAB69oS5c2HYMLj2Wth3X/j886CrknpMASwistH228P998Njj/n1hbOz4T//UYOW1AkFsIjI5v7yFz+DVrducPLJMHQolJZW663hCkfBwhVMKFhMwcIVhCsU3lK1BkEXICKSkHbbDd58039f+Kqr/CQeDz4I++yzxbeEKxwnTZpJ8dJSysrDZKSHyG7bgqnD8wilWfxql6SgEbCIyJaEQvD3v8M77/jH++0HV14JGzZUuXvhohKKl5aytjyMA9aWhyleWkrhopL41i1JQQEsIrItvXr5Bq0TToBrroF+/fwqS5uZv3wVZeXhTbaVlYdZsHxVvCqVJKIAFhGpjmbNfEPWww/D/Pn+O8MPPbTJLp3aNCMjPbTJtoz0EB3bNItnpZIkFMAiIjVx/PG+QatLFzjxRP/z888A5Gdlkt22BY3TQxjQOHIPOD8rM9iaJSGZi2N7fW5urisqKorb8URE6syGDX4GrWuugXbt/Gi4Tx/CFY7CRSUsWL6Kjm2akZ+VqQasFGZms51zuVW9phGwiEhtNGjgG7KmT/fP+/WDq68mVBFmwF6tGDVgDwbs1UrhK1ukABYRiUafPlBc7BdzuOoqyM+HJUuCrUmSggJYRCRazZv77whPnepXWOraFR55JOiqJMEpgEVEYuXEE/1ouFMnP3vWsGGwSl9BkqopgEVEYmn33f2Shldc4RuzunWDmTODrkoSkAJYRCTWGjSAq6+Gt97y3dJ9+/oVlsLhbb9XUoYCWESkruyzj//O8JAhfo3h/v3h66+DrkoShAJYRKQutWjhZ8+aMsVPZ9mli1/uUFKeAlhEpK6Z+Yas4mLYc0//laVTT4XVq4OuTAKkABYRiZc//MFP3HH55X5E3K0bfPBB0FVJQBTAIiLx1LChb8gqLITyct+gdd11atBKQQpgEZEg9OvnG7SOOsqPiAcMgKVLg65K4kgBLCISlB12gEcfhfvvh6IiP4PWtGlBVyVxogAWEQmSGZxyiu+Q/uMf/VeWhg+HNWuCrkzqmAJYRCQR7LEHzJgBl17qR8Q5OX5ULPWWAlhEJFE0bOgbst54A8rKoHdvGDcOKiqCrkzqgAJYRCTR5Of7Bq0jjoBLLoGBA2HZsqCrkhhTAIuIJKIdd4THH4f77vOLOXTpAk89FXRVEkMKYBGRRGXmG7LmzvWrLB19NIwYAb/8EnRlEgMKYBGRRPenP8G778KYMX5E3L07zJkTdFUSJQWwiEgySE+HG26AggL/FaVeveDGG9WglcQUwCIiyaR/f9+gdeihcPHFMGgQfPNN0FVJLSiARUSSzU47wZNPwsSJ8N57fgatZ54JuiqpIQWwiEgyMoMzzvD3gnfbzX9l6ayzYO3aoCuTaqp1AJtZWzN708wWmNl8MzsvloWJiEg1ZGX5UfBFF8E99/gGrblzAQhXOAoWrmBCwWIKFq4gXOECLlYqaxDFezcAFzrn5pjZ9sBsM3vNObcgRrWJiEh1pKfD+PH+fvCwYZCXR8X11zOsaW/mfrOKsvIwGekhstu2YOrwPEJpFnTFQhQjYOfct865OZHHq4GFwC6xKkxERGpo4ED48EM45BDSRo/mr+NH0eTHlThgbXmY4qWlFC4qCbpKiYjJPWAzaw90A2ZW8doIMysys6KVK1fG4nAiIrIlO+8MTz/NG+dfQ/ev5/Py5JEM+Mz/r7msPMyC5asCLlA2ijqAzawp8CRwvnPud7+zzrmJzrlc51xuy5Ytoz2ciIhsixluxAiGnD6B77bfmUlPjmXsq/9iB1tPxzbNgq5OIqIKYDNriA/fh5xzmqRURCRB5Gdl0iynC0OH38p9PY7gpLkv8uyUC8j/9bugS5OIaLqgDZgELHTO3RK7kkREJFqhNGPq8DxuOSmPsuvHM/feR9nFlRHK6wm33aYZtBKAOVe7tnQz2weYDnwEbPydvMw59+KW3pObm+uKtMC0iEgwVq70izs89xwceCA88AD83/8FXVW9ZmaznXO5Vb0WTRf0O845c851cc5lR362GL4iIhKwli39jFl33QVvveWXOHzhhaCrSlmaCUtEJJWYwdlnQ1ERtG7t55QeNQrKyoKuLOUogEVEUlGnTjBzJpx/Ptx5J/TsCR99FHRVKUUBLCKSqho1gltvhZde8veHe/SAO+6AWvYGSc0ogEVEUt1BB/kZtAYMgHPP9ZelSzRjVl1TAIuICGRmwvPP+xFwQQF07uxHxlJnFMAiIuKZwciRMGuWD+RDDoHzzoN164KurF5SAIuIyKY6d4YPPvDd0RMm+Aat+fODrqreUQCLiMjvZWT48H3hBVixAnJz/feH1aAVMwpgERHZskMO8Q1a+fn+8vThh/uOaYmaAlhERLauVSs/Er7tNnj1VT+D1quvBl1V0lMAi4jItqWl+YasWbNgxx39XNIXXAC//hp0ZUlLASwiItXXpYufxvKcc/wkHnl5sGBB0FUlJQWwiIjUTEaGn77y2Wfhm2+ge3e4+241aNWQAlhERGrnsMN8g1a/fvDXv8KRR8L33wddVdJQAIuISO21bu1nzLrlFv/fLl3g9deDriopKIBFRCQ6aWnwt7/51ZWaN4cDDoDRo9WgtQ0KYBERiY3sbJg9G846C26+GXr3hk8+CbqqhKUAFhGR2GncGP79b/jvf+HrryEnByZOVINWFRTAIiISe4MH+watvn3hzDPh6KPhhx+CriqhKIBFRCRmwhWOgoUrmFCwmIKfQ4RfehluvNEvddilC7zxRtAlJowGQRcgIiL1Q7jCcdKkmRQvLaWsPExGeojsti2YesGFhPbfH4YOhYED4aKLYOxYSE8PuuRAaQQsIiIxUbiohOKlpawtD+OAteVhipeWUrioxN8Lnj0bzjgDxo+HPn3g00+DLjlQCmAREYmJ+ctXUVYe3mRbWXmYBctX+SdNmsA998BTT8GXX0K3bjBpUso2aCmARUQkJjq1aUZGemiTbRnpITq2abbpjkce6Ru0evWC00+HIUPgxx/jWGliUACLiEhM5Gdlkt22BY3TQxjQOHIPOD8r8/c777ILvPYajBsHzzwDXbtCYWG8Sw6UuTgO/XNzc11RUVHcjiciIvEVrnAULiphwfJVdGzTjPysTEJptvU3zZ7tG7QWL4YxY+Caa6Bhw/gUXMfMbLZzLrfK1xTAIiISuF9+gfPPh/vugx494OGH4Y9/DLqqqG0tgHUJWkREgtekCdx7L0ybBp995qe1vP/+et2gpQAWEZHEcfTRMG+eHwWfdhoceyz89FPQVdUJBbCIiCSWtm39kobXXw9PP+0btN5+O+iqYk4BLCIiiScUgksugXffhe22g/794e9/h/Xrg64sZhTAIiKSuHr0gLlz4eST4Z//hH33hc8/D7qqmFAAi4hIYmvaFCZPhscfh0WLfIPWf/6T9A1aCmAREUkOQ4b4Bq2cHD8iHjoUSkuDrqrWFMAiIpI82rXzSxr+85/wxBN+NPzOO0FXVSsKYBERSS6hEFx2GcyY4R/vtx9ccQVs2BB0ZTWiABYRkeSUlwfFxXDSSX594X79/CpLSUIBLCIiyWv77eGBB+DRR2HBAv+d4QcfDLqqalEAi4hI8jv2WN+g1bWrHxGfcAL8/HPQVW2VAlhEROqH3XaDN9/0qyk99phv0Hr33aCr2iIFsIiI1B8NGsA//gHTp4OZvy989dUJ2aClABYRkfqnd2/foDV0KFx1FeTnw5Ilwda0GQWwiIjUT82a+RmzHnoIPvrI3x9+5JGgq/qNAlhEROq3oUP9aHjvvf3jYcNg1aqgq1IAi4hICujQAd56y1+Ofugh6NYN3n8/0JIUwCIikhoaNIArr/RrC4fDsM8+fgKPcDiQchTAIiKSWvr29d8ZPvZYP4Vl//7w9ddxL0MBLCIiqad5c38peupUf3+4Sxf/3eE4UgCLiEjqOvFEH8B77QXHHQd//WvcDh1VAJvZQWa2yMw+M7NLYlWUiIhI3Oy+u5+444orfKd0nDSo7RvNLATcBRwALANmmdmzzrkFsSpOREQkLho08DNmxVE0I+CewGfOuS+cc+XAo8Dg2JQlIiJSv9V6BAzsAiyt9HwZkLf5TmY2AhgB0K5duygOJyIiUjfCFY7CRSXMX76KTm2akZ+VSSjN6vSY0QRwtTjnJgITAXJzc11dH09ERKQmwhWOkybNpHhpKWXlYTLSQ2S3bcHU4Xl1GsLRXIL+Bmhb6fmukW0iIiJJo3BRCcVLS1lbHsYBa8vDFC8tpXBRSZ0eN5oAngXsYWYdzCwdOA54NjZliYiIxMf85asoK990Nqyy8jALltftfNG1vgTtnNtgZiOBV4AQMNk5Nz9mlYmIiMRBpzbNyEgPsbZSCGekh+jYplmdHjeqe8DOuReBF2NUi4iISNzlZ2WS3bbF7+4B52dl1ulx67wJS0REJJGF0oypw/MoXFTCguWr6FhfuqBFREQSXSjNGLBXKwbs1Spux9Rc0CIiIgFQAIuIiARAASwiIhIABbCIiEgAFMAiIiIBUACLiIgEQAEsIiISAAWwiIhIABTAIiIiAVAAi4iIBMCcc/E7mNlK4Ku4HTA6OwPfB11EHOg86xedZ/2i80x+uznnWlb1QlwDOJmYWZFzLjfoOuqazrN+0XnWLzrP+k2XoEVERAKgABYREQmAAnjLJgZdQJzoPOsXnWf9ovOsx3QPWEREJAAaAYuIiAQgJQPYzP5mZvPN7GMze8TMGm32+llm9pGZFZvZO2bWMbK9oZlNiby20MwuDeYMqieK80w3s/sjr80zs/wg6q+ubZ1npf2ONjNnZrmVtl1qZp+Z2SIzOzB+Vddcbc/TzHYyszfNbI2Z3RnfqmsuivM8wMxmR/7czjaz/eNbec1EcZ49I39niyN/P4+Mb+U1E83fz8j2dpE/u6PjU3EcOedS6gfYBfgSyIg8fxw4ZbN9mlV6fDjwcuTxUODRyOPGwBKgfdDnVAfneQ5wf+RxJjAbSAv6nGp7npHt2wNvA+8DuZFtHYF5wHZAB+BzIBT0OdXBeTYB9gHOAu4M+lzq8Dy7AW0ij/cGvgn6fOroPBsDDSKPWwMlG58n2k8051nptWnAE8DooM8n1j8pOQIGGgAZZtYA/4d5eeUXnXOrKj1tAmy8Ue6AJpH3ZQDlQOV9E01tz7Mj8EZknxKgFEjk7+ht9TwjxgLjgHWVtg3G/4PqV+fcl8BnQM+6LjYKtTpP59wvzrl32PTcE1ltz3Ouc27jvvMjn7FdXRcbhdqe51rn3IbI00b87+9toqrt30/M7Ah8gM+v4xoDkXIB7Jz7BrgJ+Br4FvjZOffq5vuZ2Tlm9jkwHjg3snka8EvkfV8DNznnfoxL4TUU5XnOAw43swZm1gHoDrSNT+U1U53zNLMcoK1z7oXN3r4LsLTS82WRbQknyvNMGjE8z6OBOc65X+us2ChEe55mlmdm84GPgLMqBXJCieY8zawpMAa4Ok7lxl3KBbCZ7YAf+XQA2uBHtCduvp9z7i7n3B/wfwD+HtncEwhH3tcBuNDMdo9L4TUU5XlOxodREXAb8C7+vBPOts7TzNKAW4ALg6kwNnSev72+zfM0s0740dSZdVtt7UV7ns65mc65TkAP4NIt3VcNWpTneRVwq3NuTRxKDUTKBTAwEPjSObfSObceeAros5X9HwWOiDweir9Puj5yaXYGiXtpttbn6Zzb4Jz7m3Mu2zk3GGgBfFrH9dbWts5ze/z9wEIzWwL0Ap6NNHp8w6Yj+10j2xJRNOeZTKI6TzPbFXgaGOac+zyulddMTH4/nXMLgTWRfRNRNOeZB4yPbD8fuMzMRsax9jqXigH8NdDLzBqbmQEDgIWVdzCzPSo9/TOwuNJ794/s0wT/h+WTOq+4dmp9npH3NIk8PgDY4JxbEJ+ya2yr5+mc+9k5t7Nzrr1zrj2+yeNw51wR8CxwnJltF7nUvgfwQfxPoVqiOc9kUuvzNLMWwAvAJc65GQHUXhPRnGeHyP1UzGw3YE98Q2giqvV5Ouf2rbT9NuA651zCd/HXRMoFsHNuJv5e7hz8/ZM0YKKZXWNmh0d2Gxlpmy8GLgBOjmy/C2gaufcyC98p/GFcT6CaojzPTGCOmS3EX5o+Ka7F10A1z3NL752P78pcALwMnOOcS8hL7dGcJ0BkFHELcIqZLbPIV84STZTnORL4I3CF/e9rOpl1W3HtRHme+wDzIn9vnwbOds4l5EpC0f65re80E5aIiEgAUm4ELCIikggUwCIiIgFQAIuIiARAASwiIhIABbCIiEgAFMAi1WBm4cjXWuabX4HmwsgsPphZrplNqOXnLjGznWNbbeyZWXszG7qV11ub2fN1cNx0M3t74/deReoTBbBI9ZRFZgbrBBwAHAxcCRCZNODcrb47+bXHzwS3JRcA98b6oM65cqAAODbWny0SNAWwSA1FpiEdgZ/IxMwsf+Poz8z2qzQJxFwz2z7y+ttm9oL5dYfv3jh6rszM/mt+Hdv5Zjai0vaDzGxOZORdENnWxMwmm9kHkeMMjmw/JfI5r0VG1yPN7ILIPu+b2Y6R/f5gZi9HjjfdzPaMbH/AzCaY2btm9oWZHRMp4wZg38h5/a2KX5aj8ZOZ1KSGQjO71cyKzK+v3cPMnjKzxWZ2baXP/i9wQhS/ZSKJaWtrFepHP/rxP8CaKraVAq2AfOD5yLbngL6Rx03xS7Hl45dZ2x0IAa8Bx0T2WQLsHHm8Y+S/GcDHwE5AS/yKTR022+c64MTI4xb4ubqbAKfgl1XcPvLen/Gr5QDcCpwfeVwA7BF5nAe8EXn8AH7t1TT8spSfRbb/do5V/Dp0AGZXel7dGgqBcZHH5+GXqWuNX595GbBT5LUQsDLoPwP60U+sf3RfRSS2ZgC3mNlDwFPOuWV+Clw+cM59AWBmj+CnE5y22XvPNbMjI4/b4uembgm87fx6xbj/LX85CL9k5OjI80ZAu8jjN51zq4HVZvYz/h8F4KcC7GJ+mbc+wBOR2sCH3kb/dc5VAAvMrFU1zrk1sHKzbVutodJ+z1baPt859y2AmX0R+TX4wTkXNrNyM9s+8pki9YICWKQWzC9DGQZKgL02bnfO3WBmLwCHADPM7MCNL232EZs8N7N8/MoxvZ1za82sEB+qWywBONo5t2izz8kDKq+BW1HpeQX+73waUOqcy97CZ1d+v21hn8rKqqh1WzVsvl9FFe+pvN92bLZYu0iy0z1gkRoys5bA3cCdzrnNg/QPzrmPnHPj8At27Bl5qaf5VWzS8A1F72z2sc2BnyLhuyd+pS3wq8P0M79aExvvnwKvAKMsMoQ1s27Vrd85twr40syGRN5rZtZ1G29bjb+kXJVP8U1adcLMdgK+d345O5F6QwEsUj0ZG7+GBLwOvApcXcV+55vZx2b2IbAeeCmyfRZwJ34pti/xq9hU9jLQwPwKVDfggxfn3Ep8w9dTZjYPeCyy/1igIfBhpKaxNTyfE4Dhkc+cj180fWs+BMKRRrBNmrCcc78An5vZH2tYQ3X1xy8zKFKvaDUkkToWubw82jl3aMCl1JnIvevuzrm/18FnP4Vf4/fTWH+2SJB0D1hEouacezpyqTimzCwd3xSm8JV6RyNgERGRAOgesIiISAAUwCIiIgFQAIuIiARAASwiIhIABbCIiEgAFMAiIiIB+H9LLTOQcpLmawAAAABJRU5ErkJggg==\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "# planar load 1\n", "\n", "import pandas as pd\n", "import matplotlib.pyplot as plt\n", "import numpy as np\n", "\n", "df = pd.DataFrame(\n", " {\n", " \"Displacement (mm)\": [8.446,8.438,8.433,8.427,8.420,8.412,8.407,8.397,8.392,8.383,8.376],\n", " \"Load cell (mV)\": [0.009,-0.107,-0.203,-0.309,-0.402,-0.503,-0.600,-0.708,-0.803,-0.907,-1.006]\n", " }\n", ")\n", "\n", "cal = -1008.06 / 101.97 # N/mm\n", "g = df['Load cell (mV)'] * cal\n", "df.insert(2,'Force (N)',g)\n", "\n", "d = np.polyfit(df['Displacement (mm)'],df['Force (N)'],1)\n", "f = np.poly1d(d)\n", "df.insert(3,'reg',f(df['Displacement (mm)']))\n", "ax = df.plot(x='Displacement (mm)',y='Force (N)',style='o',ms=5,figsize=(8,6))\n", "df.plot(x='Displacement (mm)',y='reg',color='Red',ax=ax)\n", "print(d)\n", "print(df)\n", "plt.savefig('stiffness_planar_1.png', dpi=100)" ] }, { "cell_type": "code", "execution_count": 39, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[-237.34165208 911.16098387]\n", " Displacement (mm) Load cell (mV) Force (N) reg\n", "0 3.840 0.009 -0.088973 -0.230960\n", "1 3.834 -0.111 1.097329 1.193090\n", "2 3.831 -0.201 1.987056 1.905115\n", "3 3.826 -0.309 3.054727 3.091823\n", "4 3.822 -0.396 3.914796 4.041190\n", "5 3.818 -0.505 4.992354 4.990556\n", "6 3.814 -0.601 5.941395 5.939923\n", "7 3.808 -0.723 7.147469 7.363973\n", "8 3.806 -0.797 7.879021 7.838656\n", "9 3.802 -0.906 8.956579 8.788023\n", "10 3.797 -1.013 10.014365 9.974731\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "# planar load 2\n", "\n", "import pandas as pd\n", "import matplotlib.pyplot as plt\n", "import numpy as np\n", "\n", "df = pd.DataFrame(\n", " {\n", " \"Displacement (mm)\": [3.840,3.834,3.831,3.826,3.822,3.818,3.814,3.808,3.806,3.802,3.797],\n", " \"Load cell (mV)\": [0.009,-0.111,-0.201,-0.309,-0.396,-0.505,-0.601,-0.723,-0.797,-0.906,-1.013]\n", " }\n", ")\n", "\n", "cal = -1008.06 / 101.97 # N/mm\n", "g = df['Load cell (mV)'] * cal\n", "df.insert(2,'Force (N)',g)\n", "\n", "d = np.polyfit(df['Displacement (mm)'],df['Force (N)'],1)\n", "f = np.poly1d(d)\n", "df.insert(3,'reg',f(df['Displacement (mm)']))\n", "ax = df.plot(x='Displacement (mm)',y='Force (N)',style='o',ms=5,figsize=(8,6))\n", "df.plot(x='Displacement (mm)',y='reg',color='Red',ax=ax)\n", "print(d)\n", "print(df)\n", "plt.savefig('stiffness_planar_2.png', dpi=100)" ] }, { "cell_type": "code", "execution_count": 42, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[ 109.64862172 -815.42074078]\n", " Displacement (mm) Mass (g) Force (N) reg\n", "0 7.436 0 0.000000 -0.073590\n", "1 7.483 500 4.903403 5.079896\n", "2 7.525 1000 9.806806 9.685138\n", "3 7.571 1500 14.710209 14.728974\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAeAAAAFzCAYAAADmJtp4AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8QVMy6AAAACXBIWXMAAAsTAAALEwEAmpwYAAA0AElEQVR4nO3deZzO5f7H8dfHoBmVpSxl16mUFkuD0kIUnTZ1JEsoJakQqtN6cjo6rSralKK0aJMKlTVCIoOh5CedckoUiZBhxsz1++O6c5BlZu7ley/v5+MxD/d87+/c9+cyw3uu6/u9rsucc4iIiEhslQi6ABERkVSkABYREQmAAlhERCQACmAREZEAKIBFREQCoAAWEREJQMlYvlnFihVd7dq1Y/mWIiIigVmwYMEvzrlKe3supgFcu3ZtsrKyYvmWIiIigTGz/+7rOQ1Bi4iIBEABLCIiEgAFsIiISABieg14b/Ly8li1ahXbtm0LupSElJ6eTvXq1SlVqlTQpYiISBEEHsCrVq3i0EMPpXbt2phZ0OUkFOcc69evZ9WqVdSpUyfockREpAgCH4Letm0bhx9+uMK3GMyMww8/XKMHIiIJKPAABhS+YdDfnYhIYoqLABYREUk1CRfA+QWOact+5olpK5i27GfyC1zYr5mWlkaDBg12fqxcuTL8QgshJyeH5s2bk5+fz8qVKzEznnzyyZ3P9+7dm5deegmAW265hY8//jgmdYmISPQFfhNWUeQXOLqOmEf2DxvJyc0no3QaDWqU55VrmpJWovhDsRkZGWRnZxf563bs2EHJksX/Kxw5ciR/+9vfSEtLA6By5coMHTqU6667jtKlS+92bp8+fbj22mtp2bJlsd9PRETiR0L1gGcsX0v2DxvZmpuPA7bm5pP9w0ZmLF8b8ffKzs7m1FNP5eSTT+bSSy9lw4YNALRo0YJ+/fqRmZnJ0KFDmT9/Ps2aNaN+/fo0adKEzZs3k5+fz6233krjxo05+eSTee655/b6Hq+99hpt27bd+XmlSpVo1aoVo0aN+tO5tWrVYv369fz0008Rb6uISKqLxujqgSRUAC9dvYmc3PzdjuXk5vPV6k1hvW5OTs7O4edLL70UgG7duvHQQw+xZMkSTjrpJO69996d5+fm5pKVlUWfPn3o0KEDQ4cOZfHixUydOpWMjAxGjBhBuXLlmD9/PvPnz+f555/nu+++2+09c3Nz+fbbb9lzc4rbbruNwYMHk5+/ezsBGjVqxKeffhpWW0VEZHd/jK4+MGwis0eOpc/ri+g6Yl7UQzihhqBPqFqWjNJpbN0lhDNKp1GvatmwXnfPIejffvuNjRs30rx5cwCuvPJK2rdvv/P5Dh06ALB8+XKOPPJIGjduDEDZsr6OyZMns2TJEsaMGbPz9VasWLHbXN1ffvmF8uXL/6mWo446iqZNmzJ69Og/PVe5cmVWr14dVltFRGR3M5avpfKk8Tw7YSjry5SlVY9nd46utjq+StTeN6ECuEXdyjSoUf5P14Bb1K0c0zoOPvjg/T7vnOPJJ5+kTZs2+zwnIyNjn/N377zzTi677LKdvwD8Ydu2bWRkZBS9YBER2butW6l8600M+eBNFh1Zlz4X30pBibSdo6vRDOCEGoJOK2G8ck1TnuzUkAHnHsuTnRqGfQPW3pQrV44KFSowa9YsAF555ZU/hSFA3bp1WbNmDfPnzwdg8+bN7NixgzZt2jBs2DDy8vIA+Prrr/n99993+9oKFSqQn5+/1xA+7rjjqFevHuPHj9/t+Ndff82JJ54YkTaKiKS8L7+EJk046YM3eb5Ze9pf8RCryh8BRGZ09UASqgcMPoRbHV8lqr+VAIwaNYpevXqxdetWjjrqKF588cU/nVO6dGnefPNN+vTpQ05ODhkZGUydOpUePXqwcuVKGjVqhHOOSpUq8d577/3p61u3bs3s2bM555xz/vTcXXfdRcOGDXd+npeXxzfffENmZmZE2ykiknKcg+eeg/79oVw58idOYvr3ZSn9w0byYzi6as5F/06vP2RmZrqsrKzdji1btozjjz8+ZjXEk4ULF/L444/zyiuvHPDcd999l4ULFzJo0KA/PZfKf4ciIkWyYQNcey288w60aQOjRkGVKuQXOGYsX8tXqzdRr2pZWtStHJHRVTNb4Jzba88p4XrAyaRRo0acffbZ5Ofn75wLvC87duzg5ptvjlFlIiJJ6NNPoXNnWL0aHnkEBgyAEv5KbKxGV3elAA7Y1VdfXajzdr0LW0REiiA/Hx54AP75T6hVC+bMgdDslSApgEVEJHmtXg1dusD06b73O2wYlI3uzVWFpQAWEZHkNGECXHUV5OTAiy/ClVdCHO0gl1DTkERERA5o+3bo1w8uugiqV4cFC3wQx1H4ggJYRESSyddfw2mnwdCh0LcvzJ0Lxx0XdFV7pSHoPTjncM5RooR+NxERSSgvvww33ADp6TBunO8Bx7EDpoyZjTSztWb25V6eu9nMnJlVjE55sbFy5Urq1q1Lt27dOPHEExk0aNDOnYwGDhy487xBgwZRt25dzjjjDDp16sTgwYMDrFpERADYvBm6dvXXeDMzYfHiuA9fKFwP+CXgKeDlXQ+aWQ2gNfB9xKrp1w+KsS/vfjVoAEOGHPC0FStWMGrUKDZt2sSYMWP4/PPPcc5x8cUXM3PmTDIyMnjnnXdYvHgxeXl5NGrUiFNOOSWytYqISNEsWAAdO8K338K998Jdd8EB1lWIFwcMYOfcTDOrvZenHgf+Drwf6aKCUKtWLU499VRuueUWJk+evHMZyC1btrBixQo2b95M27ZtSU9PJz09nYsS4LcrEZGkVVDgO1e33w5HHAEzZsCZZwZdVZEU6xqwmbUFfnTOLbYD3FVmZj2BngA1a9bc/wsXoqcaLX/scOSc44477uC6667b7fkhAdYmIiK7WLvW39X80UdwySUwYgQcdljQVRVZke80MrMywJ3APYU53zk33DmX6ZzLrFSpUlHfLubatGnDyJEj2bJlCwA//vgja9eu5fTTT2f8+PFs27aNLVu2MGHChIArFRFJQdOmQf368PHH8PTTMHZsQoYvFK8H/BegDvBH77c6sNDMmjjnfopkcUFo3bo1y5Yt47TTTgPgkEMO4dVXX6Vx48ZcfPHFnHzyyVSpUoWTTjqJcuXKBVytiEiKyMuDgQPhwQf9tKJJk+Dkk4OuKiyF2g0pdA14gnPuT5vRmtlKINM598uBXifRd0PasmULhxxyCFu3buWss85i+PDhNGrUKOiyEurvUESkyFauhE6d/JzeHj385crQZcN4F9ZuSGb2OtACqGhmq4CBzrkRkS0xMfTs2ZOvvvqKbdu2ceWVV8ZF+IqIJLW33/bbBzoHb7wBHToEXVHEFOYu6E4HeL52xKqJc6NHjw66BBGR1LB1q5+a+vzz0LQpvP461KkTdFURpeWeREQkvnzxhd8u8IUX/DSjWbOSLnwhTgK4MNehZe/0dyciScM5v11gkybw66/+RqsHHoBSpYKuLCoCD+D09HTWr1+vICkG5xzr168nPT096FJERMKzYQNcdplfy7lFC7+c5LnnBl1VVAW+GUP16tVZtWoV69atC7qUhJSenk716tWDLkNEpPhmz4bOnWHNGhg8GPr3hxTYECfwAC5VqhR1knBsX0REDiA/3w8xDxzor/HOmeOv/aaIwANYRERS0I8/Qpcufg3nzp39td+yZYOuKqYUwCIiElsTJvi1nHNy4MUX/TaCB9hXIBkl/yC7iIjEh+3b/dzeiy6CGjVg4UIfxCkYvqAesIiIxMLXX/t9exctgr594eGH4aCDgq4qUApgERGJHufg5ZfhxhshPR3GjfM9YNEQtIiIRMnmzdC1qx9mzsz0c3sVvjspgEVEJPKysqBhQ7+G87/+5ffxrVYt6KriigJYREQip6AAHn0UmjWD3Fz45BP4xz8gLS3oyuKOrgGLiEhkrF3rpxRNnAiXXuo3UzjssKCrilvqAYuISPimToX69WH6dHjmGXjnHYXvASiARUSk+PLy4I47oHVrqFAB5s+H669P2bm9RaEhaBERKZ7vvvPLSM6dC9deC0OGQJkyQVeVMBTAIiJSdG+95UMX4M034fLLg60nAWkIWkRECm/rVujZEzp0gHr1IDtb4VtMCmARESmcL77wC2q88IK/7jtzpt9GUIpFASwiIvvnnN8usHFj2LABJk+G+++HUqWCriyhKYBFRGTffv0V2rWDG26Ali39cpLnnBN0VUlBASwiIns3ezY0aOD37x082P9ZuXLQVSUNBbCIiOwuPx8GDYLmzaF0aZgzB26+GUooMiJJ05BEROR/fvwRunSBGTPgiiv8qlZlywZdVVJSAIuIiDd+PHTvDtu2wUsvQbduWtEqijSeICKS6rZtg5tugosvhpo1YcECv6mCwjeq1AMWEUlly5dDx45+QY2bboKHHoKDDgq6qpSgABYRSUXOwahR0Ls3pKf74ecLLwy6qpSiIWgRkVSzaZO/0ap7d7+4xuLFCt8AKIBFRFLJ/PnQqBG88YafajR1KlSrFnRVKemAAWxmI81srZl9ucuxR8zs/8xsiZm9a2blo1qliIiEp6DAL6bRrJnfw3fmTLj7bkhLC7qylFWYHvBLwHl7HJsCnOicOxn4GrgjwnWJiEik/PwzXHAB3Hqrv9M5OxtOPz3oqlLeAQPYOTcT+HWPY5OdcztCn84FqkehNhERCdeUKVC/Pkyf7jdUGDMGKlQIuiohMteArwY+2teTZtbTzLLMLGvdunUReDsRETmgvDy4/XZo0wYOP9xf++3VS3N740hYAWxmdwE7gNf2dY5zbrhzLtM5l1mpUqVw3k5ERArju+/gzDP9nN5rr/Xhe9JJQVcleyj2PGAzuwq4EGjlnHMRq0hERIrvzTehZ0/f033rLWjfPuiKZB+K1QM2s/OAvwMXO+e2RrYkEREpst9/973djh2hXj1/o5XCN64VZhrS68BnQF0zW2Vm1wBPAYcCU8ws28yejXKdIiKyL0uWQGYmjBgBd9zhpxjVrh10VXIABxyCds512svhEVGoRUREisI5f2fzgAH+zuYpU6BVq6CrkkLSSlgiIono11+hXTu48UZo2dIvJ6nwTSgKYBGRRDNrFjRoABMmwKOP+j8rVw66KikiBbCISKLIz4d//QtatPBbBs6Z44efS+i/8kSk7QhFRBLBqlV+B6NPPvF/PvMMHHpo0FVJGBTAIiLxbtw4v3Xg9u1+D99u3YKuSCJA4xYiIvFq2zbo2xfatoVatWDhQoVvElEAi4jEo+XL4dRT4cknoV8/+OwzOPbYoKuSCNIQtIhIPHEOXnoJeveGjAwYPx4uvDDoqiQK1AMWEYkXmzbBFVfA1VdDkyZ+bq/CN2kpgEVE4sH8+dCwod9A4b77YOpUqFYt6KokihTAIiJBKiiARx6BZs1gxw4/zeiuuyAtLejKJMp0DVhEJCg//wxXXgmTJvllJZ9/3q/pLClBPWARkSBMmQL16/se77Bh8PbbCt8UowAWEYmlvDy47TZo3RoOP9xf++3VC8yCrkxiTEPQIiKx8u230KkTfP459OwJjz8OZcoEXZUERAEsIhILb77pQ9fM3+ncvn3QFUnANAQtIhJNv/8OPXpAx45wwgmQna3wFUABLCISPUuWQGYmjBwJd97pb7iqXTvoqiROKIBFRCLNOXj6ab+a1caN/o7nf/8bSpUKujKJI7oGLCISSb/+6peSfP99OP98v65zpUpBVyVxSD1gEZFImTXLz+398EN47DG/kYLCV/ZBASwiEq78fLj3XmjRAtLT/daB/ftDCf0XK/umIWgRkXCsWuV3MJo5E7p29dd+Dz006KokASiARUSKa9w46N4dtm+HUaOgW7egK5IEovEREZGi2rYN+vSBtm2hVi1YuFDhK0WmABYRKYr/+z849VR46ino189f7z322KCrkgSkIWgRkcJwDl580fd8y5SBCRPggguCrkoSmHrAIiIH8ttv0LkzXHMNNG0KixcrfCVsCmARkf35/HNo2NDv13vffX5Vq6pVg65KkoACWERkbwoK4OGH4fTT/TzfmTPhrrsgLS3oyiRJ6BqwiMiefv7Z39U8eTK0awfPPw8VKgRdlSSZA/aAzWykma01sy93OXaYmU0xsxWhP/WTKSLJYfJkv5zkzJnw7LN+6FnhK1FQmCHol4Dz9jh2OzDNOXcMMC30uYhI4srNhdtugzZtoGJFmD8frrsOzIKuTJLUAQPYOTcT+HWPw22BUaHHo4BLIluWiEgMffstnHmmv+Z73XX+xqsTTwy6Kklyxb0GXMU5tyb0+Cegyr5ONLOeQE+AmjVrFvPtRESi5I03/tfTffttuOyyoCuSFBH2XdDOOQe4/Tw/3DmX6ZzLrKRtuUQkxvILHNOW/cwT01YwbdnP5BeE/rv6/Xc/r7dTJ9/bXbxY4SsxVdwe8M9mdqRzbo2ZHQmsjWRRIiKRkF/g6DpiHtk/bCQnN5+M0mk0qFGeVzLTSevcCZYv91OL/vlPKKlJIRJbxe0BjwOuDD2+Eng/MuWIiETOjOVryf5hI1tz83HA1u07qDf2Zb+W82+/wdSpfnENha8E4IA/dWb2OtACqGhmq4CBwIPAW2Z2DfBf4PJoFikiUhxLV28iJzcfgPI5m3j4oydovWIuK5s0p/aEt0GXxSRABwxg51ynfTzVKsK1iIhE1AlVy5JROo0T/7OYIeMHU/H3jTx4bk8aD7mX2gpfCZjGXUQkabX4y2EMWjSGSz54ke/LV6Hz1Y9Rukljbj1unxM3RGJGASwiyemHH0i74grazZrFmosvY1KPO7n+6Kq0qFuZtBJaXEOCpwAWkeTz/vtw9dWwfTu8/DJHdu1Kr6BrEtmDdkMSkeSxbRv07g2XXAK1a8OiRdC1a9BVieyVAlhEksOyZdC0KTz9NPTvD3PmwDHHBF2VyD5pCFpEEptzMHIk9O0LZcrABx/A+ecHXZXIAakHLCKJ67ff/FKSPXr4xTUWL1b4SsJQAItIYvr8c2jYEMaMgX//2+/jW7Vq0FWJFJoCWEQSS0GB3zbw9NP945kz4c47IS0t6MpEikTXgEUkcfz0E3TrBlOm+J2Lnn8eypcPuiqRYlEPWEQSw6RJUL8+zJoFzz0Hb72l8JWEpgAWkfiWmwt//zucd57fPCErC3r2BNNqVpLYNAQtIvHr22+hY0eYPx969YLHHoOMjKCrEokIBbCIxKfXX4frrvM3V40ZA+3aBV2RSERpCFpE4svvv/t1nDt3hpNOguxsha8kJQWwiMSP7Gw45RR46SW46y745BOoVSvoqkSiQgEsIsFzDp580q/lvGkTTJ0K990HJXWVTJKXfrpFJFjr1/sh53Hj4IIL4MUX/d3OIklOPWARCc4nn/i5vR99BI8/DuPHK3wlZSiARST2duyAgQOhZUu/g9HcudCvn+b2SkrRELSIxNYPP8AVV/gVrbp1g6eegkMPDboqkZhTAItI7Lz3nr/em5cHr7wCXboEXZFIYDQELSLRt20b3HgjXHopHHUULFyo8JWUpwAWkehatgyaNIFnnoEBA2DOHDjmmKCrEgmchqBFJDqcgxEjoG9fOOQQ+OADOP/8oKsSiRvqAYtI5P32G3TqBNdeC82aweLFCl+RPSiARSSy5s2Dhg39Bgr33+/38T3yyKCrEok7CmARiYyCAnjoITjjDP941iy44w6/m5GI/ImuAYtI+H76yc/pnTIF2reH4cOhfPmgqxKJawpgEQnPpEk+fDdv9sHbo4dWtBIpBA1Bi0jx5ObCrbfCeedB5cqQleVvulL4ihRKWAFsZv3NbKmZfWlmr5tZeqQKE5E49p//+Gu9gwdDr17w+edQr17QVYkklGIHsJlVA/oCmc65E4E0oGOkChORODV6tL/LecUKf6fzsGGQkRF0VSIJJ9wh6JJAhpmVBMoAq8MvSUTi0pYt0L2730jh5JMhOxvatQu6KpGEVewAds79CAwGvgfWAL855ybveZ6Z9TSzLDPLWrduXfErFZHgZGdDZiaMGgV33w0zZkCtWkFXJZLQwhmCrgC0BeoAVYGDzexPq6s754Y75zKdc5mVtNG2SGJxDp54Apo29Xc5T5sGgwZBSU2gEAlXOEPQ5wDfOefWOefygLFAs8iUJSKB++UXaNsWbroJWrf2y0mefXbQVYkkjXAC+HvgVDMrY2YGtAKWRaYsEQnUjBnQoIGf4ztkCIwbBxUrBlyUSHIJ5xrwPGAMsBD4IvRawyNUl4gEYccOuOceaNkSypSBuXN9D1hze0UiLqwLOc65gcDACNUiIkH6/nt/h/Ps2XDllfDUU34bQRGJCt1JISLw7rtwzTWQlwevvuqDWESiSktRiqSynBy48Ub429/gqKNg0SKFr0iMKIBFUtVXX/npRc88AzffDHPmwNFHB12VSMrQELRIqnEORoyAvn39Nd4PP4S//jXoqkRSjnrAIqnkt9+gY0e/a1GzZn5ur8JXJBAKYJFUMXeun9v7zjvwwAMweTIceWTQVYmkLAWwSLIrKIAHH/TbB4KfZnT77VBC//xFgqRrwCLJbM0a6NYNpk6F9u1h+HAoXz7oqkQEBbBI8po40Yfvli0+eHv00IpWInFEY1AiySY3F265xd9cVaUKZGX5m64UviJxRT1gkWTyzTfQqZMP3euvh0cfhYyMoKsSkb1QAIski9deg169/F6977zjV7cSkbilIWiRRLdlC1x1FXTpAvXr+7m9Cl+RuKcAFklkixbBKafAyy/DP/7h9/GtWTPoqkSkEBTAIonIORg6FE491feAP/4Y/vUvP/wsIglB/1pFEs0vv0D37jBhAlx4Ibz4IlSsGHRVIlJE6gGLJJIZM/x13smTfQ943DiFr0iCUgCLJIIdO+Cee6BlS7+D0dy5fjcjze0VSVgaghaJd99/D507w6ef+rudn3zSh7CIJDQFsEg8GzsWrrkG8vPh1VfhiiuCrkhEIkRD0CLxKCcHbrgB2rWDo4/2040UviJJRQEsEm+WLoUmTWDYML+m86efwl/+EnRVIhJhGoIWiRfOwQsvwE03+Wu8H30E550XdFUiEiXqAYvEg40boUMH6NkTTj/dLyep8BVJagpgkaB99hk0aADvvgsPPgiTJsGRRwZdlYhEmQJYJCgFBfDAA3DmmX4+76xZcNttUEL/LEVSga4BiwRhzRro2hWmTYPLL4fnnoPy5YOuSkRiSAEsEmsffQRXXuk3UXj+eT/PVytaiaQcjXWJxEpuLtx8M5x/PhxxBGRlQY8eCl+RFKUesEgsfPMNdOwICxb4BTYGD4aMjKCrEpEAKYBFou3VV+H666FUKb+05KWXBl2RiMSBsIagzay8mY0xs/8zs2VmdlqkChNJeFu2+Gu9Xbv6aUbZ2QpfEdkp3GvAQ4GJzrnjgPrAsvBLEkkCCxdCo0a+93vPPTB9OtSsGXRVIhJHij0EbWblgLOAqwCcc7lAbmTKEklQzsETT8Df/w6VKsHHH0Pz5kFXJSJxKJwecB1gHfCimS0ysxfM7OA9TzKznmaWZWZZ69atC+PtROLcunVw0UXQrx+0aeOHnBW+IrIP4QRwSaARMMw51xD4Hbh9z5Occ8Odc5nOucxKlSqF8XYicWz6dKhfH6ZM8T3g99+HihWDrkpE4lg4AbwKWOWcmxf6fAw+kEVSx44d8I9/QKtWULYszJsHffpobq+IHFCxA9g59xPwg5nVDR1qBXwVkapEEsF//+uHmO+7D666yi+s0aBB0FWJSIIIdx5wH+A1MysNfAt0D78kkQQwdqxfQjI/H0aPhk6dgq5IRBJMWAHsnMsGMiNTikgCyMmBAQPg2WchMxPeeAP+8pegqxKRBKS1oEUKa+lSaNLEh++tt8Knnyp8RaTYtBSlyIE453ct6tcPDj0UJk7004xERMKgHrDI/mzcCB06wHXXwRlnwOLFCl8RiQgFsMi+fPaZv6v53XfhoYd8z/eII4KuSkSShAJYZE/5+XD//XDmmX4+7+zZfmnJEvrnIiKRo2vAIrtavdrvXvTxx37o+bnnoFy5oKsSkSSkABb5w4cf+u0Df/8dXngBrr5aK1qJSNRoTE1k+3Y/t/eCC6BqVViwwC+yofAVkShSD1hS24oV0LGj37/3xhth8GBITw+6KhFJAQpgSV2vvgrXXw+lSvk7nS+5JOiKRCSFaAhaUs/mzf5ab9eu0LChn9ur8BWRGFMAS2pZuBBOOcX3fgcO9Hc716gRdFUikoIUwJIanIMhQ+C002DrVh+8//wnlNRVGBEJhgJYkt+6dXDhhdC/P+tOP5vhT4xlWuXjyC9wQVcmIilMv/5Lcps+Ha64Ard+PaM6DuDho88h5/N1ZGT/SoMa5XnlmqakldB0IxGJPfWAJTnt2AF33w2tWkHZsnz++oc8fMy5bM0rwAFbc/PJ/mEjM5avDbpSEUlRCmBJPv/9LzRvDv/+N3TvDgsWMK9cTXJy83c7LSc3n69WbwqoSBFJdRqCluTyzjvQo4ffUGH0aOjUCYATqpYlo3QaW3cJ4YzSadSrWjaoSkUkxakHLMkhJwd69YLLLoNjjoFFi3aGL0CLupVpUKM8ZUqnYUCZ0mk0qFGeFnUrB1eziKQ09YAl8S1d6ncuWrrUbxs4aBCULr3bKWkljFeuacqM5Wv5avUm6lUtS4u6lXUDlogERgEsics5GD4c+vWDsmVh4kRo02afp6eVMFodX4VWx1eJXY0iIvugIWhJTBs2QPv2ftj5zDP9cpL7CV8RkXijAJbEM2cONGgA778PDz3ke75HHBF0VSIiRaIAlsSRn++nFp11FqSlwezZ/ppvCf0Yi0ji0TVgSQyrV0OXLn5lq44d4dlnoVy5oKsSESk2BbDEvw8+gKuu8psojBjhF9cw3b0sIolNY3cSv7ZvhwED/EYKVatCVhZcfbXCV0SSgnrAEp9WrPBDzQsXQu/e8MgjkJ4edFUiIhGjAJb488orcMMNfjGN996Dtm2DrkhEJOI0BC3xY/Nm6NoVunWDRo0gO1vhKyJJSwEs8WHBAh+6o0fDP/8JH38MNWoEXZWISNSEHcBmlmZmi8xsQiQKkhTjHDz+OJx2mt9QYfp0GDjQz/MVEUlikegB3wQsi8DrSKpZt87f4TxgAJx/vl9O8qyzgq5KRCQmwgpgM6sOXAC8EJlyJGV8/DHUrw/TpsFTT8G778LhhwddlYhIzITbAx4C/B0o2NcJZtbTzLLMLGvdunVhvp0kvLw8uOsuOOccv5LVvHlw442a2ysiKafYAWxmFwJrnXML9neec264cy7TOZdZqVKl4r6dJIOVK6F5c7j/fr+gRlaW7wWLiKSgcOYBnw5cbGbnA+lAWTN71TnXJTKlSVIZMwZ69ICCAnj9db/IhohICit2D9g5d4dzrrpzrjbQEfhY4St/snUrXHed37u3bl0/t1fhKyKiecASRV9+CU2awPDhftvA2bPhqKOCrkpEJC5EZClK59wMYEYkXkuSgHPw3HPQvz+ULQuTJkHr1kFXJSISV9QDlsjasMEPN19/vZ/Tu2SJwldEZC8UwBI5n34KDRrA++/Dww/DRx9BlSpBVyUiEpcUwBK+/Hz497/9FKOSJX0Q33orlNCPl4jIvmg7QgnP6tXQpYtfw7lTJ3j2WX/dV0RE9ksBLMU3YQJcdZXfRGHkSP9YK1qJiBSKxgil6LZvh3794KKLoHp1v5Vg9+4KXxGRIlAPWIrm66/9QhqLFkGfPv5mq/T0oKsSEUk4CmApvJdfhhtugIMOgvfeg7Ztg65IRCRhaQhaDmzzZujaFa68Ek45xe/bq/AVEQmLAlj2b8ECaNQIRo+Ge+/1+/hWrx50VSIiCU8BLHtXUACPPQannQbbtsGMGXDPPZCWFnRlIiJJQdeA5c/WrvVTij76CC65BEaMgMMOC7oqEZGkoh6w7G7aNKhf3w81P/UUjB2r8BURiQIFsHh5eXDnnXDuuVC+PMybBzfeqLm9IiJRoiFogZUr/TKSc+fCNdfA0KFw8MFBVyUiktQUwKnu7bfh2mv9Hr5vvAEdOgRdkYhIStAQdKrauhV69oTLL4fjjvMrWyl8RURiRgGcir78Eho3huefh9tug1mz4Kijgq5KRCSlaAg6lTgHzz0H/ftDuXIwebK/6UpERGJOPeBUsWEDXHYZXH89NG/ul5NU+IqIBEYBnApmz/Zze8eNg0cegQ8/hCpVgq5KRCSlKYCTWX4+3Hef7/GWKgVz5sAtt0AJfdtFRIKma8DJ6scfoUsXv4Zz584wbBiULRt0VSIiEqIATkYTJvi1nHNy4MUX/TaCWtFKRCSuaCwymWzfDv36wUUX+S0DFyzwQazwFRGJOwrgZPH1137rwKFDoW9fv6zkcccFXZWIiOyDhqATnXPw8st+44T0dH+n80UXBV2ViIgcgHrAiWzzZuja1Q8zZ2b6ub0KXxGRhKAATlRZWdCwIbz+Otx7r9/Ht1q1oKsSEZFCUgAnmoICePRRaNYMcnP9NKN77oG0tKArExGRItA14ESydq2fUjRxIlxyCYwYAYcdFnRVIiJSDMXuAZtZDTObbmZfmdlSM7spkoXJHqZO9ctJTp8OTz8NY8cqfEVEElg4Q9A7gJudc/WAU4EbzaxeZMqSnfLy4I47oHVrqFABPv8cbrhBc3tFRBJcsYegnXNrgDWhx5vNbBlQDfgqQrXJypXQqZOf09ujBwwZAgcfHHRVIiISARG5BmxmtYGGwLy9PNcT6AlQs2bNSLxdanj7bbj2Wj/P9403oEOHoCsSEZEICvsuaDM7BHgH6Oec27Tn88654c65TOdcZqVKlcJ9u+S3dSv07AmXX+5XssrOVviKiCShsALYzErhw/c159zYyJSUwr74wi+o8cILcPvtMGsW1KkTdFUiIhIF4dwFbcAIYJlz7rHIlZSCnPPbBTZuDBs2wKRJ8MADfg9fERFJSuH0gE8HugItzSw79HF+hOpKHb/+Cu3a+Tubzz7bLyd57rlBVyUiIlEWzl3QswHNhQnH7NnQuTOsWQODB0P//lBCi5OJiKQC/W8fhPx8GDQImjeH0qVhzhy4+WaFr4hICtFSlLH244/QpYtfw7lzZ3/tt2zZoKsSEZEYUwDH0vjx0L07bNsGL70E3bppRSsRkRSlMc9Y2L4dbroJLr4YatSABQv8pgoKXxGRlKUAjrbly+HUU+GJJ6BvX7+sZN26QVclIiIB0xB0tDgHo0ZB796Qng7jxsFFFwVdlYiIxAn1gKNh0yZ/o1X37n5lq8WLFb4iIrIbBXCkzZ8PjRr5DRT+9S+YNg2qVQu6KhERiTMK4EgpKPCLaTRrBrm58Mkn8I9/QFpa0JWJiEgc0jXgSFi71t/VPHEiXHqp30zhsMOCrkpEROKYesDhmjoV6teH6dPhmWfgnXcUviIickAK4OLKy4M77oDWraFCBX/t9/rrNbdXREQKRUPQxfHdd9CpE8ybB9deC0OGQJkyQVclIiIJRAFcVG++CT17+p7um2/C5ZcHXZGIiCQgDUEX1tatvrfbsSPUqwfZ2QpfEREpNgVwYSxZ4hfUGDHCX/edORNq1w66KhERSWAK4P1xzt/Z3KQJbNgAkyfD/fdDqVJBVyYiIglOAbwvv/4K7drBjTdCy5Z+Oclzzgm6KhERSRIK4L2ZNQsaNIAJE+DRR/2flSsHXZWIiCQRBfCu8vP9+s0tWkDp0jBnDgwYACX01yQiIpGlaUh/WLXK72D0ySdwxRX+2m/ZskFXJSIiSUoBDH6v3u7dYft2eOkl6NZNK1qJiEhUpfbY6rZt0LcvtG0LtWrBwoV+UwWFr4iIRFnqBvDy5XDaafDkk3DTTfDZZ3DssUFXJSIiKSL1hqCd88PMvXtDRgaMHw8XXhh0VSIikmJSqwe8aZO/0erqq/3iGosXK3xFRCQQqRPA8+dDw4Z+A4VBg/w+vtWqBV2ViIikqOQP4IICGDwYmjWDHTv8NKO774a0tKArExGRFJbc14B//tnf1TxpEvztb/DCC1ChQtBViYiIJHEPeMoUqF/f93iHDYMxYxS+IiISN5IvgPPy4PbboXVrOPxwf+23Vy/N7RURkbgSVgCb2XlmttzMvjGz2yNVVLF99x2ceSY89BD07OnD98QTg65KRETkT4p9DdjM0oCngXOBVcB8MxvnnPsqUsXtS36BY8bytSxdvYkTqpalRd3KpL39lg9dM3jrLWjfPtpliIiIFFs4N2E1Ab5xzn0LYGZvAG2BqAZwfoGj64h5ZP+wkZzcfA4jj8GfjuTs2eP9ylajR0Pt2tEsQUREJGzhBHA14IddPl8FNA2vnAObsXwt2T9sZGtuPset/Y6n3n+Io379ke963kSdpx6BUqWiXYKIiEjYon4Tlpn1NLMsM8tat25d2K+3dPUmcnLzab9kCu+/PICy23+na4dBTLj8RoWviIgkjHAC+Eegxi6fVw8d241zbrhzLtM5l1mpUqUw3s47oWpZMkqnsTHjUObUOpm/dn+SRceeQr2q2rtXREQSRzhD0POBY8ysDj54OwKdI1LVfrSoW5kGNcrzKacz9eimZBxUkgY1ytOibuVov7WIiEjEFDuAnXM7zKw3MAlIA0Y655ZGrLJ9SCthvHJNU2YsX8tXqzdR74+7oEtonq+IiCSOsJaidM59CHwYoVoKLa2E0er4KrQ6vkqs31pERCQikm8lLBERkQSgABYREQmAAlhERCQACmAREZEAKIBFREQCoAAWEREJgAJYREQkAApgERGRACiARUREAqAAFhERCYACWEREJADmnIvdm5mtA/4bszf8s4rALwG+f6ylWnsh9dqs9iY3tTfx1XLO7XUv3pgGcNDMLMs5lxl0HbGSau2F1Guz2pvc1N7kpiFoERGRACiARUREApBqATw86AJiLNXaC6nXZrU3uam9SSylrgGLiIjEi1TrAYuIiMSFpAhgM6trZtm7fGwys377OLexme0ws8v2OF7WzFaZ2VMxKToM4bbXzGqa2WQzW2ZmX5lZ7VjVXhwRaO/DZrY01N4nzMxiVnwxFKa9ZtbCzH7b5Zx7dnnuPDNbbmbfmNntMW9AEYXTXjOrYWbTQz/HS83spkAaUUThfo9Dz6eZ2SIzmxDT4oshAj/T5c1sjJn9X+jf8Wkxb0Q0OOeS6gNIA37Cz73a23MfAx8Cl+3x3FBgNPBU0G2IdnuBGcC5oceHAGWCbke02gs0Az4NPZcGfAa0CLod4bYXaAFM2Mf5/wGOAkoDi4F6Qbcjiu09EmgUenwo8HUitbc4bd7l+QGh/7P2eU48fhSnvcAooEfocWmgfNDtiMRHUvSA99AK+I9zbm8LfvQB3gHW7nrQzE4BqgCTo19exBWpvWZWDyjpnJsC4Jzb4pzbGpNKI6Oo318HpOP/0R4ElAJ+jnaREbS/9u5NE+Ab59y3zrlc4A2gbdSqi7witdc5t8Y5tzD0eDOwDKgWxfqioajfY8ysOnAB8ELUqoqeIrXXzMoBZwEjAJxzuc65jdErL3aSMYA7Aq/vedDMqgGXAsP2OF4CeBS4JSbVRV6R2gscC2w0s7Gh4atHzCwtBnVGSpHa65z7DJgOrAl9THLOLYtBnZGy1/aGnGZmi83sIzM7IXSsGvDDLuesIrECqajt3Sl0KaUhMC+K9UVDcdo8BPg7UBDt4qKgqO2tA6wDXgz9n/WCmR0ck0qjLKkC2MxKAxcDb+/l6SHAbc65PX9gbwA+dM6tinJ5EVfM9pYEzsT/wtEYP1R5VfSqjJzitNfMjgaOB6rjg6ilmZ0Z5VIj4gDtXYgfwqsPPAm8F8PSoiKc9prZIfjRj37OuU1RLjViitNmM7sQWOucWxCrOiOlmN/jkkAjYJhzriHwOxD39zYURsmgC4iwvwILnXN7G2LMBN4I3X9TETjfzHYApwFnmtkN+Ouhpc1si3MuEb7BxWnvKiDbOfctgJm9B5xKaHgnzhWnvccAc51zWwDM7CP893xWbEoOyz7bu2vIOOc+NLNnzKwi8CNQY5dTq4eOJYIit9c594uZlcKH72vOubExrDcSivM9Ph242MzOx19eKWtmrzrnusSs6uIrTntXAaucc3+MbIwhSQI4qXrAQCf2MbThnKvjnKvtnKuN/wbe4Jx7zzl3hXOuZuj4LcDLCRK+UIz2AvOB8mb2x+LgLYGvYlBrJBSnvd8Dzc2sZOg/6ub464SJYJ/tNbMjLPTbhpk1wf9bXo///h5jZnVCvY2OwLgY1RuuIrc3dGwEsMw591jMKo2cIrfZOXeHc6566Ge9I/BxgoQvFK+9PwE/mFnd0KmtSJz/s/YraXrAoWsC5wLX7XKsF4Bz7tmg6oqW4rbXOZdvZrcA00I/7AuA56NcbtjC+P6Owf+S8QX+hqyJzrnxUSw1IgrR3suA60O9/Bygo3POATvMrDcwCX+36Ujn3NJY119UxW2vmZ0BdAW+MLPs0Jfe6Zz7MJb1F0cY3+OEFGZ7+wCvhX6p/BboHsvao0UrYYmIiAQg2YagRUREEoICWEREJAAKYBERkQAogEVERAKgABYREQmAAlikEMwsP7RDy9LQUnk3h5YxxcwyzeyJYr7uytBiA3HNzGqbWef9PH+kRWFXHjMrbWYzzSxppkyK/EEBLFI4Oc65Bs65E/BzGf8KDARwzmU55/oGWl301Qb2GcD4nXkiPp88tKHENKBDpF9bJGgKYJEics6tBXoCvc1r8Ufvz8ya2//2M11kZoeGnp9pZh+Y36f32T96z7sys/fMbEGol91zl+PnmdnCUM97WujYwWY20sw+D71P29Dxq0KvMyXUu+5tZgNC58w1s8NC5/3FzCaG3m+WmR0XOv6S+T2T55jZt/a/fZUfxC/Zmm1m/ffy19IOmFjEGmaY2eNmlmV+j9fG5jcJWWFm9+3y2u8BV4TxLROJT9He71Af+kiGD2DLXo5txG9j2YLQPqbAeOD00OND8KvNtQC24Te+SAOm8L/9ilcCFUOPDwv9mQF8CRwOVMLvblRnj3PuB7qEHpfH74N7MH5jjW/we+NWAn4DeoXOexy/WQH4XuUxocdN8csZAryEXyi/BFAPv7Uh7H+v1jrAgl0+L2wNM4CHQo9vAlbj9/c9CL/+7+Gh59KAdUH/DOhDH5H+0HUVkcj6FHjMzF4DxjrnVoWWt/3c/W8DjNeBM/DLZO6qr5ldGnpcA7+RRCVgpnPuOwDn3K+h51vjF+T/YxvNdKBm6PF05/fG3Wxmv+F/KQC/HOfJ5ncOaga8HaoNfOj94T3nd5X6ysyqFKLNR+K3i9vVfmvY5bxxuxxf6pxbA2Bm34b+DtY7v3xqrpkdGnpNkaSgABYpBjM7CsgH1uK3OwTAOfegmX0AnA98amZt/nhqj5fY7XMzawGcA5zmnNtqZjPwobrPEoB2zrnle7xOU2D7LocKdvm8AP9vvgSw0TnXYB+vvevX2z7O2VXOXmo9UA17nlewl6/Z9byD8KMIIklD14BFisj8TlLPAk855/YM0r84575wzj2E35nouNBTTczvUFQCf0PR7D1ethywIRS+x+G3iASYC5xlZnVCr39Y6PgkoI/Zzt1jGha2fue3ffvOzNqHvtbMrP4Bvmwzfkh5b77G36QVFWZ2OPCLcy4vWu8hEgQFsEjhZPwxDQmYCkwG7t3Lef3M7EszWwLkAR+Fjs8HnsJvhfgd8O4eXzcRKGlmy/A3PM0FcM6tw9/wNdbMFgNvhs4fBJQCloRqGlTE9lwBXBN6zaVA2wOcvwTID90ItttNWM6534H/mNnRRayhsM4GPojSa4sERrshiURZaHj5FufchQGXEjWha9enOOfujsJrjwVud859HenXFgmSrgGLSNicc++Ghoojyvz+r+8pfCUZqQcsIiISAF0DFhERCYACWEREJAAKYBERkQAogEVERAKgABYREQmAAlhERCQA/w9yfjTeLsb1wgAAAABJRU5ErkJggg==\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "# vertical load\n", "\n", "import pandas as pd\n", "import matplotlib.pyplot as plt\n", "import numpy as np\n", "\n", "df = pd.DataFrame(\n", " {\n", " \"Displacement (mm)\": [7.436,7.483,7.525,7.571],\n", " \"Mass (g)\": [0,500,1000,1500]\n", " }\n", ")\n", "\n", "cal = 1/101.97 # N/mm\n", "g = df['Mass (g)'] * cal\n", "df.insert(2,'Force (N)',g)\n", "\n", "d = np.polyfit(df['Displacement (mm)'],df['Force (N)'],1)\n", "f = np.poly1d(d)\n", "df.insert(3,'reg',f(df['Displacement (mm)']))\n", "ax = df.plot(x='Displacement (mm)',y='Force (N)',style='o',ms=5,figsize=(8,6))\n", "df.plot(x='Displacement (mm)',y='reg',color='Red',ax=ax)\n", "print(d)\n", "print(df)\n", "plt.savefig('stiffness_vertical.png', dpi=100)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "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.8.5" } }, "nbformat": 4, "nbformat_minor": 4 }