{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "import matplotlib.pyplot as plt\n", "import math" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "def calc_u(arr: list[float]):\n", " sum_ = sum(arr)\n", " average = round(sum_/len(arr), 2)\n", " sum_ = 0\n", " for i in range(0, len(arr)):\n", " sum_ += pow(arr[i]-average, 2)\n", "\n", " res = math.sqrt(sum_/(len(arr)*(len(arr)-1)))\n", "\n", " return round(res, 2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 表 2-1" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "x_p = [1120.0, 1000.2, 956.1, 900.0, 800.0] # mm\n", "x_l2r = [975.2, 852.9, 802.8, 741.2, 651.8] # mm\n", "x_r2l = [974.6, 861.5, 805.2, 750.0, 655.2] # mm\n", "x_average = [] # mm\n", "f = [] # mm" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\\overline X_L = [974.9, 857.2, 804.0, 745.6, 653.5]\n", "f = [145.1, 143.0, 152.1, 154.4, 146.5]\n", "\\overline f = 148.22 mm\n", "U_zl = 2.16 mm\n", "u = 0.22 cm\n", "E = 0.0014842801241397921\n" ] } ], "source": [ "for i in range(0, len(x_p)):\n", " x_average.append(round((x_l2r[i]+x_r2l[i])/2, 2))\n", " f.append(round(abs(x_average[i]-x_p[i]), 2))\n", "\n", "print(f\"\\overline X_L = {x_average}\")\n", "print(f\"f = {f}\")\n", "\n", "f_sum = sum(f)\n", "f_ba = f_sum/5\n", "\n", "tmp = 0\n", "for i in range(0, len(f)):\n", " tmp += pow(f[i]-f_ba, 2)\n", "\n", "U_zl = round(math.sqrt(tmp/20), 2)\n", "tmp = 0\n", "\n", "print(f\"\\overline f = {round(f_ba, 2)} mm\")\n", "print(f\"U_zl = {U_zl} mm\")\n", "\n", "tmp = pow(U_zl/10, 2)+pow(0.03, 2)\n", "u = round(math.sqrt(tmp), 2)\n", "print(f\"u = {u} cm\")\n", "print(f\"E = {u/f_ba}\")\n", "x_average.clear()\n", "f.clear()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 表 2-2" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "A_1 = [500, 300, 300, 300, 300] # mm\n", "A_2 = [1100, 1050, 1000, 950, 1100] # mm\n", "I_1 = [838.0, 855.0, 784.5, 734.5, 920.5] # mm\n", "I_2 = [776.2, 510.2, 530.4, 535.8, 505.2] # mm\n", "L = [] # mm\n", "C = [] # mm\n", "f = [] # mm" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "L = [600, 750, 700, 650, 800] mm\n", "U_L = 35.36 mm\n", "C = [61.8, 344.8, 254.1, 198.7, 415.3] mm\n", "U_C = 60.93 mm\n", "f = [148.41, 147.87, 151.94, 147.31, 146.1] mm\n", "\\overline f = 148.33 mm\n", "U_f = 0.98 mm\n" ] } ], "source": [ "for i in range(0, len(A_1)):\n", " L.append(round(abs(A_1[i]-A_2[i]), 2))\n", " C.append(round(abs(I_1[i]-I_2[i]), 2))\n", " f_val = round((pow(L[i], 2)-pow(C[i], 2))/(4*L[i]), 2)\n", " f.append(f_val)\n", "\n", "print(f\"L = {L} mm\")\n", "print(f\"U_L = {calc_u(L)} mm\")\n", "print(f\"C = {C} mm\")\n", "print(f\"U_C = {calc_u(C)} mm\")\n", "print(f\"f = {f} mm\")\n", "print(f\"\\overline f = {round(sum(f)/len(f), 2)} mm\")\n", "print(f\"U_f = {calc_u(f)} mm\")\n", "\n", "\n", "\n", "L.clear()\n", "C.clear()\n", "f.clear()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 表 2-3" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "x_p2 = [148.0, 317.2, 215.7, 150.0, 228.3] # mm\n", "x_L2 = [90.0, 240.0, 135.0, 85.0, 145.0] # mm\n", "X_p2 = [228.8, 557.3, 600.2, 503.7, 483.4] # mm\n", "u = [] # mm\n", "v = [] # mm\n", "f = [] # mm" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "u = [-58.0, -77.2, -80.7, -65.0, -83.3]\n", "U_u = 4.86 mm\n", "v = [138.8, 317.3, 465.2, 418.7, 338.4]\n", "U_v = 56.02 mm\n", "f = [-99.63, -102.02, -97.64, -76.95, -110.5]\n", "\\overline f = -97.35 mm\n", "U_f = 5.55 mm\n" ] } ], "source": [ "for i in range(0, len(x_p2)):\n", " u.append(round(-abs(x_p2[i]-x_L2[i]), 2))\n", " v.append(round(abs(X_p2[i]-x_L2[i]), 2))\n", " f.append(round((u[i]*v[i])/(u[i]+v[i]), 2))\n", "\n", "print(f\"u = {u}\")\n", "print(f\"U_u = {calc_u(u)} mm\")\n", "print(f\"v = {v}\")\n", "print(f\"U_v = {calc_u(v)} mm\")\n", "print(f\"f = {f}\")\n", "print(f\"\\overline f = {round(sum(f)/len(f), 2)} mm\")\n", "print(f\"U_f = {calc_u(f)} mm\")\n", "u.clear()\n", "v.clear()\n", "f.clear()" ] } ], "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.11.4" } }, "nbformat": 4, "nbformat_minor": 2 }