Molla statica fatta benegit status

This commit is contained in:
2026-04-01 11:28:01 +02:00
parent 39acd5e4aa
commit 8c77baa938
7 changed files with 2691 additions and 13 deletions

View File

@@ -15,12 +15,12 @@
"metadata": {},
"outputs": [],
"source": [
"pip install matplotlib numpy pandas scipy"
"# pip install matplotlib numpy pandas scipy"
]
},
{
"cell_type": "code",
"execution_count": 1,
"execution_count": 2,
"id": "e31f5b72",
"metadata": {},
"outputs": [],
@@ -79,10 +79,21 @@
},
{
"cell_type": "code",
"execution_count": null,
"execution_count": 3,
"id": "3d561eb0",
"metadata": {},
"outputs": [],
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[1.5 3. ]\n",
"a 0.50000\n",
"b 0.57735\n",
"dtype: float64\n"
]
}
],
"source": [
"def media(x, dim = 0):\n",
" uA = np.nanstd(x, axis=dim, ddof=1)\n",
@@ -250,18 +261,19 @@
},
{
"cell_type": "code",
"execution_count": 2,
"execution_count": 1,
"id": "78c30380",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"A = 1.9900 +- 0.0892\n",
"B = 0.0500 +- 0.2959\n",
"cov_AB = -0.023880\n",
"p-value chi² = 0.7187\n"
"ename": "NameError",
"evalue": "name 'pd' is not defined",
"output_type": "error",
"traceback": [
"\u001b[31m---------------------------------------------------------------------------\u001b[39m",
"\u001b[31mNameError\u001b[39m Traceback (most recent call last)",
"\u001b[36mCell\u001b[39m\u001b[36m \u001b[39m\u001b[32mIn[1]\u001b[39m\u001b[32m, line 49\u001b[39m\n\u001b[32m 45\u001b[39m chi = sc.stats.chi2.cdf(x2, dof) \u001b[38;5;66;03m# P(X² > x2)\u001b[39;00m\n\u001b[32m 47\u001b[39m \u001b[38;5;28;01mreturn\u001b[39;00m A, B, sigma_A, sigma_B, cov_AB, chi\n\u001b[32m---> \u001b[39m\u001b[32m49\u001b[39m df = \u001b[43mpd\u001b[49m.DataFrame({\n\u001b[32m 50\u001b[39m \u001b[33m\"\u001b[39m\u001b[33mx\u001b[39m\u001b[33m\"\u001b[39m:[\u001b[32m1.0\u001b[39m, \u001b[32m2.0\u001b[39m, \u001b[32m3.0\u001b[39m, \u001b[32m4.0\u001b[39m, \u001b[32m5.0\u001b[39m],\n\u001b[32m 51\u001b[39m \u001b[33m\"\u001b[39m\u001b[33my\u001b[39m\u001b[33m\"\u001b[39m:[\u001b[32m2.1\u001b[39m, \u001b[32m3.9\u001b[39m, \u001b[32m6.2\u001b[39m, \u001b[32m7.8\u001b[39m, \u001b[32m10.1\u001b[39m],\n\u001b[32m 52\u001b[39m \u001b[33m\"\u001b[39m\u001b[33mux\u001b[39m\u001b[33m\"\u001b[39m:[\u001b[32m0.1\u001b[39m, \u001b[32m0.1\u001b[39m, \u001b[32m0.1\u001b[39m, \u001b[32m0.1\u001b[39m, \u001b[32m0.1\u001b[39m],\n\u001b[32m 53\u001b[39m \u001b[33m\"\u001b[39m\u001b[33muy\u001b[39m\u001b[33m\"\u001b[39m:[\u001b[32m0.2\u001b[39m, \u001b[32m0.2\u001b[39m, \u001b[32m0.2\u001b[39m, \u001b[32m0.2\u001b[39m, \u001b[32m0.2\u001b[39m]\n\u001b[32m 54\u001b[39m })\n\u001b[32m 56\u001b[39m A, B, sA, sB, covAB, chi = reg_lin(df[\u001b[33m\"\u001b[39m\u001b[33mx\u001b[39m\u001b[33m\"\u001b[39m], df[\u001b[33m\"\u001b[39m\u001b[33my\u001b[39m\u001b[33m\"\u001b[39m], df[\u001b[33m\"\u001b[39m\u001b[33mux\u001b[39m\u001b[33m\"\u001b[39m], df[\u001b[33m\"\u001b[39m\u001b[33muy\u001b[39m\u001b[33m\"\u001b[39m])\n\u001b[32m 57\u001b[39m \u001b[38;5;28mprint\u001b[39m(\u001b[33m\"\u001b[39m\u001b[33mAx + B : \u001b[39m\u001b[33m\"\u001b[39m)\n",
"\u001b[31mNameError\u001b[39m: name 'pd' is not defined"
]
}
],
@@ -310,7 +322,7 @@
" # Chi quadro\n",
" x2 = np.sum((y - A * x - B)**2 / sigma_y_eq**2)\n",
" dof = len(x) - 2\n",
" chi = sc.stats.chi2.sf(x2, dof) # P(X² > x2)\n",
" chi = sc.stats.chi2.cdf(x2, dof) # P(X² > x2)\n",
"\n",
" return A, B, sigma_A, sigma_B, cov_AB, chi\n",
"\n",
@@ -322,6 +334,7 @@
" })\n",
"\n",
"A, B, sA, sB, covAB, chi = reg_lin(df[\"x\"], df[\"y\"], df[\"ux\"], df[\"uy\"])\n",
"print(\"Ax + B : \")\n",
"print(f\"A = {A:.4f} +- {sA:.4f}\")\n",
"print(f\"B = {B:.4f} +- {sB:.4f}\")\n",
"print(f\"cov_AB = {covAB:.6f}\")\n",