TLUSTY/hotsd/synspec_test/hhe.ipynb
2026-07-21 22:25:14 +08:00

700 lines
143 KiB
Plaintext
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>wave</th>\n",
" <th>flux</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>1400.00005</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>1400.00972</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>1400.01938</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>1400.02905</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>1400.03841</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>...</th>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1195</th>\n",
" <td>1409.96605</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1196</th>\n",
" <td>1409.97505</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1197</th>\n",
" <td>1409.98405</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1198</th>\n",
" <td>1409.99305</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1199</th>\n",
" <td>1410.00005</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>1200 rows × 2 columns</p>\n",
"</div>"
],
"text/plain": [
" wave flux\n",
"0 1400.00005 NaN\n",
"1 1400.00972 NaN\n",
"2 1400.01938 NaN\n",
"3 1400.02905 NaN\n",
"4 1400.03841 NaN\n",
"... ... ...\n",
"1195 1409.96605 NaN\n",
"1196 1409.97505 NaN\n",
"1197 1409.98405 NaN\n",
"1198 1409.99305 NaN\n",
"1199 1410.00005 NaN\n",
"\n",
"[1200 rows x 2 columns]"
]
},
"execution_count": 1,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"import pandas as pd\n",
"data = pd.read_csv('./results/hhe35nl.spec',comment='#',names=['wave','flux'],sep='\\s+')\n",
"cont = pd.read_csv('./results/hhe35nl.cont',comment='#',names=['wave','flux'],sep='\\s+')\n",
"data"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>wave</th>\n",
" <th>flux</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>2999.89195</td>\n",
" <td>339322000.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>2999.89853</td>\n",
" <td>339318000.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>2999.90511</td>\n",
" <td>339314000.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>2999.91169</td>\n",
" <td>339310000.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>2999.91827</td>\n",
" <td>339305000.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>...</th>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>403271</th>\n",
" <td>7409.94150</td>\n",
" <td>14113600.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>403272</th>\n",
" <td>7409.95803</td>\n",
" <td>14113300.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>403273</th>\n",
" <td>7409.97456</td>\n",
" <td>14112900.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>403274</th>\n",
" <td>7409.99108</td>\n",
" <td>14112600.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>403275</th>\n",
" <td>7410.00026</td>\n",
" <td>14112400.0</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>403276 rows × 2 columns</p>\n",
"</div>"
],
"text/plain": [
" wave flux\n",
"0 2999.89195 339322000.0\n",
"1 2999.89853 339318000.0\n",
"2 2999.90511 339314000.0\n",
"3 2999.91169 339310000.0\n",
"4 2999.91827 339305000.0\n",
"... ... ...\n",
"403271 7409.94150 14113600.0\n",
"403272 7409.95803 14113300.0\n",
"403273 7409.97456 14112900.0\n",
"403274 7409.99108 14112600.0\n",
"403275 7410.00026 14112400.0\n",
"\n",
"[403276 rows x 2 columns]"
]
},
"execution_count": 14,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"import pandas as pd\n",
"data = pd.read_csv('fort.7',comment='#',names=['wave','flux'],sep='\\s+')\n",
"cont = pd.read_csv('fort.17',comment='#',names=['wave','flux'],sep='\\s+')\n",
"data"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[<matplotlib.lines.Line2D at 0x70ddb009b310>]"
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAiMAAAGsCAYAAAAPJKchAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAALmJJREFUeJzt3Xt8FeW97/Hvgty4JAuI5GYCBMEICTcTt0QFwWg0KJUjddtuCmjr3k0PgpqytcG2Wq0GPe6+kKOGUhWkWLG7AcUDArGbBJWLBpKKiEglkBATEZQsLpqQZM4fllWXua5kJc+6fN6v17xerJnneea3GGO+zDwzY7MsyxIAAIAhvUwXAAAAAhthBAAAGEUYAQAARhFGAACAUYQRAABgFGEEAAAYRRgBAABGEUYAAIBRhBEAAGAUYQQAABjlU2Fk27Ztmj59uuLi4mSz2fTqq6+6PcbmzZs1ceJEhYeHa/DgwZo5c6bKy8s9XywAAOgQnwojZ86c0bhx4/T00093qv+hQ4d0880365prrlFZWZk2b96s48eP65ZbbvFwpQAAoKNsvvqiPJvNpnXr1mnGjBnOdfX19frlL3+pl156SSdPnlRKSooef/xxTZkyRZL0l7/8RT/84Q9VV1enXr2+yWGvv/66br75ZtXV1Sk4ONjANwEAILD51JmR9txxxx165513tGbNGr3//vu69dZbdcMNN+jgwYOSpLS0NPXu3VsrVqxQY2Ojamtr9cc//lGZmZkEEQAADPGbMyOffPKJRo4cqaNHjyouLs7Z7tprr9W//Mu/6LHHHpP0zbyTW2+9VSdOnFBjY6PS09O1ceNGDRgwwMC3AAAAfnNmZM+ePbIsSxdffLH69+/vXIqLi/XJJ59IkmpqanTnnXdq7ty5eu+991RcXKyQkBB9//vfl49mMgAAfF6Q6QI8pampSb1799bu3bvVu3dvl239+/eXJD3zzDOKiIjQE0884dy2evVqJSQkaNeuXZo4cWKP1gwAAPwojEyYMEGNjY06duyYJk2a1GKbs2fPNgsq5z83NTV1e40AAKA5n7pMc/r0aZWVlamsrEySVF5errKyMlVUVOjiiy/WrFmzNGfOHK1du1bl5eV677339Pjjj2vjxo2SpBtvvFHvvfeeHn74YR08eFB79uzRHXfcoaFDh2rChAkGvxkAAIHLpyawFhUVaerUqc3Wz507VytXrtS5c+f029/+VqtWrVJVVZUiIyOVnp6u3/zmNxozZowkac2aNXriiSf08ccfq2/fvkpPT9fjjz+uSy65pKe/DgAAkI+FEQAA4H986jINAADwP4QRAABglE/cTdPU1KRPP/1U4eHhstlspssBAAAdYFmWTp06pbi4OOdrWFriE2Hk008/VUJCgukyAABAJ1RWVio+Pr7V7T4RRsLDwyV982UiIiIMVwMAADrC4XAoISHB+Xu8NW6Fkfz8fOXn5+vw4cOSpOTkZP36179WVlZWi+1buxV3//79bt1Ke/7STEREBGEEAAAf094UC7fCSHx8vBYvXqwRI0ZIkl588UXdfPPNKi0tVXJycqv9Dhw44BIiBg8e7M5uAQCAH3MrjEyfPt3l86OPPqr8/Hzt3LmzzTASFRXFW3EBAECLOn1rb2Njo9asWaMzZ84oPT29zbYTJkxQbGysMjIytHXr1nbHrqurk8PhcFkAAIB/cjuM7N27V/3791doaKiys7O1bt06jR49usW2sbGxWr58uQoKCrR27VolJSUpIyND27Zta3MfeXl5stvtzoU7aQAA8F9uPw6+vr5eFRUVOnnypAoKCvTcc8+puLi41UDyXdOnT5fNZtP69etbbVNXV6e6ujrn5/OzcWtra5nACgCAj3A4HLLb7e3+/nb71t6QkBDnBNa0tDS99957euqpp/T73/++Q/0nTpyo1atXt9kmNDRUoaGh7pYGAAB8UJcfB29ZlstZjPaUlpYqNja2q7sFAAB+wq0zI4sWLVJWVpYSEhJ06tQprVmzRkVFRdq0aZMkKTc3V1VVVVq1apUkacmSJRo2bJiSk5NVX1+v1atXq6CgQAUFBZ7/JgAAwCe5FUY+++wzzZ49W9XV1bLb7Ro7dqw2bdqk6667TpJUXV2tiooKZ/v6+notXLhQVVVV6tOnj5KTk7VhwwZNmzbNs98CAAD4LLcnsJrQ0QkwAADAe3T093eX54wAAAB0BWEEAAAYFdBh5MXthzXxsb9q28efmy4FAICAFdBh5MH1+1Tj+FpzXnjXdCkAAASsgA4jAADAPMLIPzQ2ef1NRQAA+CXCyD/8/M9lpksAACAgEUb+4dWyT02XAABAQCKMAAAAowgj33K2vsF0CQAABBzCyLfMzN9hugQAAAIOYeRb9lc7TJcAAEDAIYwAAACjCCPfcejz06ZLAAAgoBBGvuOa/yo2XQIAAAGFMAIAAIwijAAAAKMIIy346/7PTJcAAEDAIIy04CcvlpguAQCAgEEYAQAARhFGWtHQ2GS6BAAAAgJhpBUvv1dpugQAAAICYaQVv3r1A9MlAAAQEAgjAADAKMJIG06erTddAgAAfo8w0obxDxeaLgEAAL9HGAEAAEYRRgAAgFGEkXZs3ldjugQAAPwaYaQdP/3jbtMlAADg1wgjAADAKMJIB/BoeAAAug9hpAMmcIsvAADdhjDSAafqGkyXAACA3yKMAAAAowgjHbTv01rTJQAA4JcIIx1049K3TZcAAIBfIowAAACjAjqM3DV1hFvt6xoau6kSAAACV0CHkfiBfdxqf+8rZd1TCAAAAcytMJKfn6+xY8cqIiJCERERSk9P1xtvvNFmn+LiYqWmpiosLEzDhw/XsmXLulSwSRv38p4aAAA8za0wEh8fr8WLF6ukpEQlJSW65pprdPPNN2vfvn0tti8vL9e0adM0adIklZaWatGiRVqwYIEKCgo8UjwAAPB9Qe40nj59usvnRx99VPn5+dq5c6eSk5ObtV+2bJmGDBmiJUuWSJJGjRqlkpISPfnkk5o5c2bnqzZo64FjmpoUZboMAAD8RqfnjDQ2NmrNmjU6c+aM0tPTW2yzY8cOZWZmuqy7/vrrVVJSonPnzrU6dl1dnRwOh8viLe5Y8Z7pEgAA8Ctuh5G9e/eqf//+Cg0NVXZ2ttatW6fRo0e32LampkbR0dEu66Kjo9XQ0KDjx4+3uo+8vDzZ7XbnkpCQ4G6ZAADAR7gdRpKSklRWVqadO3fqZz/7mebOnasPP/yw1fY2m83ls2VZLa7/ttzcXNXW1jqXyspKd8vsVp+fqjNdAgAAfsPtMBISEqIRI0YoLS1NeXl5GjdunJ566qkW28bExKimxvUOlGPHjikoKEiRkZGt7iM0NNR5x875xZtc9uibpksAAMBvdPk5I5Zlqa6u5TMF6enpKiwsdFm3ZcsWpaWlKTg4uKu7BgAAfsCtMLJo0SK99dZbOnz4sPbu3asHHnhARUVFmjVrlqRvLq/MmTPH2T47O1tHjhxRTk6O9u/frxdeeEHPP/+8Fi5c6Nlv0UmZyTGd7nv+chMAAOgat8LIZ599ptmzZyspKUkZGRnatWuXNm3apOuuu06SVF1drYqKCmf7xMREbdy4UUVFRRo/frweeeQRLV261Gtu6x3UL0QfPXJDp/pm/K7Yw9UAABCYbJYP/BPf4XDIbrertra2W+aPDPvFhk71O7z4Rg9XAgCA/+jo7++AfjdNV/lAjgMAwOsRRrrgvr+8b7oEAAB8HmGkC/5791HTJQAA4PMIIwAAwCjCSBf9+T3vejosAAC+hjDSRfcVMG8EAICuIIwAAACjCCMecPTLs6ZLAADAZxFGPOCqx7eaLgEAAJ9FGAEAAEYRRjzk+OmW31wMAADaRhiRdHnioC6PkfbbNz1QCQAAgYcwIikkiL8GAABM4bewB52uazBdAgAAPocwIslTL99NeXCzZwYCACCAEEYkWfJQGgEAAG4jjHjYV/WNpksAAMCnEEbkucs0kvToxg89NxgAAAGAMCLPhpHVOys8NxgAAAGAMCLPzxnhUg0AAB1HGOkGd6x813QJAAD4DMKIpEtiIjw63s5DX3h0PAAA/BlhRNKgfiGmSwAAIGARRrqJ5clZsQAA+DHCiKQfXJagXjbPjpmYu9GzAwIA4KcII5KiIsL00SNZuj452qPjNjZxdgQAgPYQRv4hJKiXoiPCPDrmRYs4OwIAQHsII9/y8+uSTJcAAEDAIYx8i71vsMfHPHm23uNjAgDgTwgj3Wz+y6WmSwAAwKsRRrrZWwePmy4BAACvRhjpAR/VOEyXAACA1yKM9IAblrxlugQAALwWYQQAABhFGGlDyoWee4HeWwc/99hYAAD4E8JIG5bPTvPYWLOff9djYwEA4E8II9/xvXFxkqR3fnGN4gb0MVwNAAD+jzDyHU/9YLwO/PYGXdgNQeSBdXs9PiYAAL6OMPIdNptNoUG9u2Xsl3ZVdMu4AAD4MsJID2viTb4AALhwK4zk5eXpsssuU3h4uKKiojRjxgwdOHCgzT5FRUWy2WzNlo8++qhLhfuq7z3ztukSAADwKm6FkeLiYs2bN087d+5UYWGhGhoalJmZqTNnzrTb98CBA6qurnYuI0eO7HTRvuyDKp7GCgDAtwW503jTpk0un1esWKGoqCjt3r1bkydPbrNvVFSUBgwY4HaB/ujk2XoN6BtiugwAALxCl+aM1NbWSpIGDRrUbtsJEyYoNjZWGRkZ2rp1a5tt6+rq5HA4XBZ/Mv7hQtMlAADgNTodRizLUk5Ojq666iqlpKS02i42NlbLly9XQUGB1q5dq6SkJGVkZGjbtm2t9snLy5PdbncuCQkJnS0TAAB4OZtlWZ26vWPevHnasGGD3n77bcXHx7vVd/r06bLZbFq/fn2L2+vq6lRXV+f87HA4lJCQoNraWkVEeO4R7R3x5oef6c5VJR4f979uHaeZqe79vQEA4EscDofsdnu7v787dWZk/vz5Wr9+vbZu3ep2EJGkiRMn6uDBg61uDw0NVUREhMtiyrWjo7tl3J//99+6ZVwAAHyNWxNYLcvS/PnztW7dOhUVFSkxMbFTOy0tLVVsbGyn+voTy7Jks9lMlwEAgFFuhZF58+bpT3/6k1577TWFh4erpqZGkmS329WnzzePT8/NzVVVVZVWrVolSVqyZImGDRum5ORk1dfXa/Xq1SooKFBBQYGHv4rvmfHMO3rtrqtMlwEAgFFuhZH8/HxJ0pQpU1zWr1ixQrfffrskqbq6WhUV/3zseX19vRYuXKiqqir16dNHycnJ2rBhg6ZNm9a1yg0aFtlXcQP6aPsnJ7o0zt+O1nqoIgAAfFenJ7D2pI5OgOkuw36xweXzhCEDFBMRpjc+qOny2LsWZSg6IqzL4wAA4G26dQJroLNJ8lSEu/yxv3pmIAAAfBRhBAAAGEUY8QL5RZ+YLgEAAGMII17g8U2B+QZjAAAkwkiHZF99kfqF9HZ+7o5ng9R+dc7jYwIA4AsIIx3wi6xL9P5D17uss+TZm5DG/WaLR8cDAMBXEEY6qHcvnpQKAEB3IIx4kcVvMHcEABB4CCOdEB4WJJs6dqZkxvi4Do+7rJi7agAAgYcw4oan/22CxicM0G9npHR4zsiSH0zQ4cU3dngfp75mIisAILAQRtxw09g4vTrvSsUP7Ntt+xjzEBNZAQCBhTACAACMIox4oSd4CBoAIIAQRrzQszweHgAQQAgjneSpt/a2prr2q+7dAQAAXoIw4qXS8/7HdAkAAPQIwogXs7r79AsAAF6AMNJNRsdGaNt/Tu3SGIm5Gz1UDQAA3osw0knBQW3/1d1y6YUaEtl9zyMBAMBfEEY6KTfrEg3tgbCxrvRot+8DAACTCCOdFD+wr4rbuAxjs3nmLb/3vvI3j4wDAIC3IowYMC7e7lb7L87Ud1MlAACYRxjpogv6h7jdZ+Ud/+JW+0sfKXR7HwAA+ArCSBe9cfdk5c+6VDERYR3u07u3+5dwuM0XAOCvCCNdNDg8VFljYtW7V8cDRpAbbc9bV1rldh8AAHwBYcSAviFBemDaKLf65PyZiawAAP9EGOkm7Z37+PfJw90ec8U75Z0rBgAAL0YY8SG/ef1D7T1aa7oMAAA8ijDiY6Y//bbpEgAA8CjCSDfpzntfKk6c7cbRAQDoWYQRHzT5/2w1XQIAAB5DGPFRf9pVYboEAAA8gjDSTTzzZprWLVq3t5v3AABAzyCM9JCQ3p7/q95T8aXHxwQAoKcRRnrIy/9xuYYP7qcXf+zee2nacsuz2z02FgAApgSZLsBftPfumNShg/Q/P5/i8f1WfnFWCYP6enxcAAB6CmdGfNykJ7izBgDg2wgjfuDU1+dMlwAAQKcRRjzEZrN953P7fTbdM0n3XDtSwyK7dpllzENbutQfAACTCCMGXRIToXuuvVh9Q5pP3UkbOtCtseoaGj1VFgAAPcqtMJKXl6fLLrtM4eHhioqK0owZM3TgwIF2+xUXFys1NVVhYWEaPny4li1b1umCvdV3J7C2M5+1XX/52RVutU/65aau7RAAAEPcCiPFxcWaN2+edu7cqcLCQjU0NCgzM1NnzpxptU95ebmmTZumSZMmqbS0VIsWLdKCBQtUUFDQ5eLhqrGpO9+IAwBA93Dr1t5Nm1z/9b1ixQpFRUVp9+7dmjx5cot9li1bpiFDhmjJkiWSpFGjRqmkpERPPvmkZs6c2bmqA8x1o6NV+OFn7ba7aNFGHV58Yw9UBACA53Rpzkhtba0kadCgQa222bFjhzIzM13WXX/99SopKdG5cy3fBVJXVyeHw+GyoGM4OwIA8DWdDiOWZSknJ0dXXXWVUlJSWm1XU1Oj6Ohol3XR0dFqaGjQ8ePHW+yTl5cnu93uXBISEjpbpjEduZumw2O50faiRRs9t2MAAHpAp8PIXXfdpffff18vv/xyu22/e9vr+cme311/Xm5urmpra51LZWVlZ8vsMd19PmLvQ5namZuhay6Jar+Wrs6eBQCgB3UqjMyfP1/r16/X1q1bFR8f32bbmJgY1dTUuKw7duyYgoKCFBkZ2WKf0NBQRUREuCyB5Maxsc3WhYcFK8Ye1qEX7l37u+LuKAsAgG7h1gRWy7I0f/58rVu3TkVFRUpMTGy3T3p6ul5//XWXdVu2bFFaWpqCg4Pdq9aLeeqqzN9+namIPq0fllGxEdq0r6bV7ZL0yedn1NRkqVcvD14rAgCgm7h1ZmTevHlavXq1/vSnPyk8PFw1NTWqqanRV1995WyTm5urOXPmOD9nZ2fryJEjysnJ0f79+/XCCy/o+eef18KFCz33LfyIvW9ws8tXF0eHO//c0Xwx49l3PFkWAADdxq0wkp+fr9raWk2ZMkWxsbHO5ZVXXnG2qa6uVkVFhfNzYmKiNm7cqKKiIo0fP16PPPKIli5d6ve39bpzTuL2K4dJkiaNvMBl/WvzrtRdU0formtG/HPcDg78/tFa7qwBAPgEty/TtGflypXN1l199dXas2ePO7vyOV35tX9rarzGxQ9Q4gX9XNaPSxigcQkDXNa1Num3Jb9+7QM9+r/GdKEyAAC6H++m6SbuhBObzaakmHCFBHn2cLy0q4KzIwAAr0cY8TGhbgYWnjsCAPB2hBEf82+XD3G7z9fneKMvAMB7EUZ8TN8Qt6b5SJIu+RVv9AUAeC/CiIdcOnSgy2dve8IHZ0cAAN6KMOIhj80YowXfugXX23B2BADgrQgjHmLvG6yczCTTZbSp8ouzpksAAKAZwkgAmfTEVtMlAADQDGEkwOw6dMJ0CQAAuCCMBJjblu80XQIAAC4IIwFo6V8Pmi4BAAAnwkgA+l3hxx16zxAAAD2BMBKg7i9433QJAABIIowErD+XHFVdAw9CAwCYRxgJYEm/5EFoAADzCCMBrvbsOdMlAAACHGGkm9hs3vZ2mpaNe3iL6RIAAAGOMOLDFmSM9Mg4b374mUfGAQCgMwgjPizWHuaRce5cVeKRcQAA6AzCiA/z5KNCfvTcLs8NBgCAGwgjPqzJg2nk7b8f19fnuNUXANDzCCM+zJIUERbksfEu+RW3+gIAeh5hxJdZlt64Z7LpKgAA6BLCiA8bGR2uCwf08dh4IUH85wAA6HmeO8ePHrNhwVU69PkZTRwe2eE+V46I1Dt/P9Fmmx9eltDV0gAAcBv/FPZByXF2TR8X51afn06+qN02vvKgNgCAfyGMAAAAowgj3aQnTzKsvOOydtt0pJ7kuAgPVAMAgHsII35gSlJUu2068kiSmZfGe6AaAADcQxiBJOnW1Hj16sWcEQBAzyOMAAAAowgjAaK9OSPcSAMAMIUw0k0u6B/ao/sbPrhfj+4PAABPIYx42LOzLtWdVyXqhuSYHt3vX7Kv0OhY7oYBAPgensDqYdPGxGramNge3++gfiG6cWysPqx2dKq/TVynAQCYwZkRSJIsdeDeXwAAugFhBAAAGEUYgSQu0wAAzCGM+JHIfiGtbiNsAAC8FWHEj8xMjdf3Uzv3SHeeMwIAMMXtMLJt2zZNnz5dcXFxstlsevXVV9tsX1RUJJvN1mz56KOPOlszWhHcu5eevHWcxlxob7aNCaoAAG/l9q29Z86c0bhx43THHXdo5syZHe534MABRUT88zkYgwcPdnfXAADAD7kdRrKyspSVleX2jqKiojRgwAC3+8F9LZ0FYc4IAMBb9dickQkTJig2NlYZGRnaunVrm23r6urkcDhcFgAA4J+6PYzExsZq+fLlKigo0Nq1a5WUlKSMjAxt27at1T55eXmy2+3OJSEhobvLBAAAhnT74+CTkpKUlJTk/Jyenq7Kyko9+eSTmjx5cot9cnNzlZOT4/zscDgIJG5IjrXrgyrXs0m8tRcA4K2M3No7ceJEHTx4sNXtoaGhioiIcFnQcQ/cNEo/vXq4Ni6Y5FxncTMNAMBLGXlRXmlpqWJje/5lcoEiIixYuVmjTJcBAECHuB1GTp8+rb///e/Oz+Xl5SorK9OgQYM0ZMgQ5ebmqqqqSqtWrZIkLVmyRMOGDVNycrLq6+u1evVqFRQUqKCgwHPfAm6x2ThTAgDwHm6HkZKSEk2dOtX5+fzcjrlz52rlypWqrq5WRUWFc3t9fb0WLlyoqqoq9enTR8nJydqwYYOmTZvmgfLRUcwJAQB4K7fDyJQpU2S18c/qlStXuny+7777dN9997ldGHoaaQUAYAbvpgEAAEYRRvxcWPA3hzglrvn7agAA8AZG7qZBzyn9Vaa+Ptcoe99g5zqbxGvzAABegzMjfq5PSG8N7BfSbP2yH12qBdeMMFARAACuCCMByGaz6YaUWOVkJrXfGACAbkYYCUAt3Q3Frb8AAFMIIwAAwCjCSACytXAahBMjAABTCCOQxN01AABzCCMAAMAowkgAaumSDJdpAACmEEYCSL+Q3pKkMfE8jRUA4D14AmsAee2uq/THHYf1syk87AwA4D0IIwFkRFR//ebmlBa38ZwRAIApXKYBAABGEUYAAIBRhBEAAGAUYQQAABhFGIEkycaTRgAAhhBGAACAUYSRAHfhgD6SpKwxMYYrAQAEKp4zEuC23DtZVSe/0sXR4aZLAQAEKM6MBLh+oUEEEQCAUYQRAABgFGEEAAAYRRgBAABGEUYAAIBRhBEAAGAUYQQAABhFGAEAAEYRRgAAgFGEEQAAYBRhBAAAGEUYAQAARhFGAACAUYQRAABgFGEEAAAYRRgBAABGEUYAAIBRhBEAAGCU22Fk27Ztmj59uuLi4mSz2fTqq6+226e4uFipqakKCwvT8OHDtWzZss7UCgAA/JDbYeTMmTMaN26cnn766Q61Ly8v17Rp0zRp0iSVlpZq0aJFWrBggQoKCtwuFgAA+J8gdztkZWUpKyurw+2XLVumIUOGaMmSJZKkUaNGqaSkRE8++aRmzpzp7u4BAICf6fY5Izt27FBmZqbLuuuvv14lJSU6d+5ci33q6urkcDhcFgAA4J+6PYzU1NQoOjraZV10dLQaGhp0/PjxFvvk5eXJbrc7l4SEhO4uEwAAGNIjd9PYbDaXz5Zltbj+vNzcXNXW1jqXysrKbq8RAACY4facEXfFxMSopqbGZd2xY8cUFBSkyMjIFvuEhoYqNDS0u0sDAABeoNvPjKSnp6uwsNBl3ZYtW5SWlqbg4ODu3j0AAPByboeR06dPq6ysTGVlZZK+uXW3rKxMFRUVkr65xDJnzhxn++zsbB05ckQ5OTnav3+/XnjhBT3//PNauHChZ74BAADwaW5fpikpKdHUqVOdn3NyciRJc+fO1cqVK1VdXe0MJpKUmJiojRs36t5779UzzzyjuLg4LV26lNt6AQCAJMlmnZ9N6sUcDofsdrtqa2sVERFhuhwAANABHf39zbtpAACAUYQRAABgFGEEAAAYRRgBAABGEUYAAIBRhBEAAGAUYQQAABhFGAEAAEYRRgAAgFGEEQAAYBRhBAAAGEUYAQAARhFGAACAUYQRAABgFGEEAAAYRRgBAABGEUYAAIBRhBEAAGAUYQQAABhFGAEAAEYRRgAAgFGEEQAAYBRhBAAAGEUYAQAARhFGAACAUYQRAABgFGEEAAAYRRgBAABGEUYAAIBRhBEAAGAUYQQAABhFGAEAAEYRRgAAgFGEEQAAYBRhBAAAGEUYAQAARhFGAACAUYQRAABgFGEEAAAYRRgBAABGdSqMPPvss0pMTFRYWJhSU1P11ltvtdq2qKhINput2fLRRx91umgAAOA/3A4jr7zyiu655x498MADKi0t1aRJk5SVlaWKioo2+x04cEDV1dXOZeTIkZ0uGgAA+A+3w8jvfvc7/eQnP9Gdd96pUaNGacmSJUpISFB+fn6b/aKiohQTE+Ncevfu3emiAQCA/3ArjNTX12v37t3KzMx0WZ+Zmant27e32XfChAmKjY1VRkaGtm7d2mbburo6ORwOlwUAAPgnt8LI8ePH1djYqOjoaJf10dHRqqmpabFPbGysli9froKCAq1du1ZJSUnKyMjQtm3bWt1PXl6e7Ha7c0lISHCnTAAA4EOCOtPJZrO5fLYsq9m685KSkpSUlOT8nJ6ersrKSj355JOaPHlyi31yc3OVk5Pj/OxwOAgkAAD4KbfOjFxwwQXq3bt3s7Mgx44da3a2pC0TJ07UwYMHW90eGhqqiIgIlwUAAPgnt8JISEiIUlNTVVhY6LK+sLBQV1xxRYfHKS0tVWxsrDu7BgAAfsrtyzQ5OTmaPXu20tLSlJ6eruXLl6uiokLZ2dmSvrnEUlVVpVWrVkmSlixZomHDhik5OVn19fVavXq1CgoKVFBQ4NlvAgAAfJLbYeS2227TiRMn9PDDD6u6ulopKSnauHGjhg4dKkmqrq52eeZIfX29Fi5cqKqqKvXp00fJycnasGGDpk2b5rlvAQAAfJbNsizLdBHtcTgcstvtqq2tZf4IAAA+oqO/v3k3DQAAMIowAgBtOH66TifP1psuA/BrnXrOCAAEigfW7dXmfZ9p+OB+mjTiAl01crCuHBGpviH87xPwFH6aAKAN5xq/mVZ36PMzOvT5Gb2444jL9tuvGKb7bkginABdwARWAGhH7dlz2nHouN46eFz/vfuo6huaWm274JoR+tmUEeoTwstAgY7+/iaMAIAbGpssvbj9sB7+fx92uM+eX12nQf1CurEqwDsRRgCgmw37xQa3+4SHBenlf5+olAvt3VAR4F24tRcAulnxf05ptq5fO5dnTn3doJv+79u6ddn2bqoK8D2EEQDopKGR/fT6XVfptrR/vlV87f++Uv916ziXdslxzf9FOLAvl22A85j+DQBdMCberrxbxuiVkkpJUpNlaWZqvFbvOqLSipMaGtlXGxZMcravOHFWX5ytV8LAPqZKBrwOYQQAuqhXL5vzz0H/+PPvf5SqldsP698uH+LSdkhkXw2J7Nuj9QHejjACAB7w06uH6/NTdRoR1V+SFBURpvtuuMRwVYBvIIwAgAfkZo0yXQLgs5jACgAAjCKMAAAAowgjAADAKMIIAAAwijACAACMIowAAACjCCMAAMAowggAADCKMAIAAIwijAAAAKMIIwAAwCjCCAAAMIowAgAAjCKMAAAAo4JMFwAAANrX1GRpxrPvaFC/EA3uH6qDx06rrPKk7rl2pEbHRiiyf4guHNBX9j7BCg3qpV69bKZL7jDCCAAAPqD2q3N6/2hts/VL3jzYZr/04ZGK7B+ic41NGnZBPw3sG6KBfYM1oG+IBvX7558H9AlWUG8zF0wIIwAA+IA+Ib214vbL9PmpOtU4vtbvCj92bhufMECfn6pT1cmvmvXbcehEh8Z/4vtj9a9pCR6r1x2EEQAAfEBYcG9NvSTK+TkmIky/eu0DvfwfE3XpkIGSpGG/2CBJ+tHEIZo4PFK9bDada2zS8dP1On66TtUnv1Ivm01fnq3XF2fP6eTZen15pl6Orxs0sG+Ike8lEUYAAPBJ/3pZgv71spbPZIyNH6CbxsZ1eKyGxiZPldUphBEAAAKcqbki53FrLwAAfuaiwf1Ml+AWzowAAOAnXp13pQ4fP6PUoYNMl+IWwggAAH5ifMIAjU8YYLoMt3GZBgAAGEUYAQAARhFGAACAUYQRAABgVKfCyLPPPqvExESFhYUpNTVVb731Vpvti4uLlZqaqrCwMA0fPlzLli3rVLEAAMD/uB1GXnnlFd1zzz164IEHVFpaqkmTJikrK0sVFRUtti8vL9e0adM0adIklZaWatGiRVqwYIEKCgq6XDwAAPB9NsuyLHc6XH755br00kuVn5/vXDdq1CjNmDFDeXl5zdrff//9Wr9+vfbv3+9cl52drb/97W/asWNHh/bpcDhkt9tVW1uriIgId8oFAACGdPT3t1tnRurr67V7925lZma6rM/MzNT27dtb7LNjx45m7a+//nqVlJTo3LlzLfapq6uTw+FwWQAAgH9yK4wcP35cjY2Nio6OdlkfHR2tmpqaFvvU1NS02L6hoUHHjx9vsU9eXp7sdrtzSUgw80pjAADQ/To1gdVms7l8tiyr2br22re0/rzc3FzV1tY6l8rKys6UCQAAfIBbj4O/4IIL1Lt372ZnQY4dO9bs7Md5MTExLbYPCgpSZGRki31CQ0MVGhrqTmkAAMBHuXVmJCQkRKmpqSosLHRZX1hYqCuuuKLFPunp6c3ab9myRWlpaQoODnazXAAA4G/cvkyTk5Oj5557Ti+88IL279+ve++9VxUVFcrOzpb0zSWWOXPmONtnZ2fryJEjysnJ0f79+/XCCy/o+eef18KFCz33LQAAgM9y+629t912m06cOKGHH35Y1dXVSklJ0caNGzV06FBJUnV1tcszRxITE7Vx40bde++9euaZZxQXF6elS5dq5syZHd7n+Tkm3FUDAIDvOP97u72niLj9nBETjh49yh01AAD4qMrKSsXHx7e63SfCSFNTkz799FOFh4e3edeOuxwOhxISElRZWcnD1LwMx8Y7cVy8E8fFO3FcvjkjcurUKcXFxalXr9Znhrh9mcaEXr16tZmouioiIiJg/0Pxdhwb78Rx8U4cF+8U6MfFbre324a39gIAAKMIIwAAwKiADiOhoaF68MEHecCaF+LYeCeOi3fiuHgnjkvH+cQEVgAA4L8C+swIAAAwjzACAACMIowAAACjCCMAAMAonw8j+fn5Gjt2rPOhMunp6XrjjTec2y3L0kMPPaS4uDj16dNHU6ZM0b59+1zGqKur0/z583XBBReoX79++t73vqejR4+6tPnyyy81e/Zs2e122e12zZ49WydPnuyJr+gX8vLyZLPZdM899zjXcWx63kMPPSSbzeayxMTEOLdzTMypqqrSj370I0VGRqpv374aP368du/e7dzOsTFj2LBhzX5mbDab5s2bJ4nj4jGWj1u/fr21YcMG68CBA9aBAwesRYsWWcHBwdYHH3xgWZZlLV682AoPD7cKCgqsvXv3WrfddpsVGxtrORwO5xjZ2dnWhRdeaBUWFlp79uyxpk6dao0bN85qaGhwtrnhhhuslJQUa/v27db27dutlJQU66abburx7+uL3n33XWvYsGHW2LFjrbvvvtu5nmPT8x588EErOTnZqq6udi7Hjh1zbueYmPHFF19YQ4cOtW6//XZr165dVnl5ufXmm29af//7351tODZmHDt2zOXnpbCw0JJkbd261bIsjoun+HwYacnAgQOt5557zmpqarJiYmKsxYsXO7d9/fXXlt1ut5YtW2ZZlmWdPHnSCg4OttasWeNsU1VVZfXq1cvatGmTZVmW9eGHH1qSrJ07dzrb7Nixw5JkffTRRz30rXzTqVOnrJEjR1qFhYXW1Vdf7QwjHBszHnzwQWvcuHEtbuOYmHP//fdbV111VavbOTbe4+6777Yuuugiq6mpiePiQT5/mebbGhsbtWbNGp05c0bp6ekqLy9XTU2NMjMznW1CQ0N19dVXa/v27ZKk3bt369y5cy5t4uLilJKS4myzY8cO2e12XX755c42EydOlN1ud7ZBy+bNm6cbb7xR1157rct6jo05Bw8eVFxcnBITE/WDH/xAhw4dksQxMWn9+vVKS0vTrbfeqqioKE2YMEF/+MMfnNs5Nt6hvr5eq1ev1o9//GPZbDaOiwf5RRjZu3ev+vfvr9DQUGVnZ2vdunUaPXq0ampqJEnR0dEu7aOjo53bampqFBISooEDB7bZJioqqtl+o6KinG3Q3Jo1a7Rnzx7l5eU128axMePyyy/XqlWrtHnzZv3hD39QTU2NrrjiCp04cYJjYtChQ4eUn5+vkSNHavPmzcrOztaCBQu0atUqSfy8eItXX31VJ0+e1O233y6J4+JJPvHW3vYkJSWprKxMJ0+eVEFBgebOnavi4mLndpvN5tLesqxm677ru21aat+RcQJVZWWl7r77bm3ZskVhYWGttuPY9KysrCznn8eMGaP09HRddNFFevHFFzVx4kRJHBMTmpqalJaWpscee0ySNGHCBO3bt0/5+fmaM2eOsx3Hxqznn39eWVlZiouLc1nPcek6vzgzEhISohEjRigtLU15eXkaN26cnnrqKeddAt9NlseOHXMm2ZiYGNXX1+vLL79ss81nn33WbL+ff/55s0SMb+zevVvHjh1TamqqgoKCFBQUpOLiYi1dulRBQUHOvzeOjVn9+vXTmDFjdPDgQX5eDIqNjdXo0aNd1o0aNUoVFRWSxLHxAkeOHNGbb76pO++807mO4+I5fhFGvsuyLNXV1SkxMVExMTEqLCx0bquvr1dxcbGuuOIKSVJqaqqCg4Nd2lRXV+uDDz5wtklPT1dtba3effddZ5tdu3aptrbW2QauMjIytHfvXpWVlTmXtLQ0zZo1S2VlZRo+fDjHxgvU1dVp//79io2N5efFoCuvvFIHDhxwWffxxx9r6NChksSx8QIrVqxQVFSUbrzxRuc6josH9fycWc/Kzc21tm3bZpWXl1vvv/++tWjRIqtXr17Wli1bLMv65rYru91urV271tq7d6/1wx/+sMXbruLj460333zT2rNnj3XNNde0eNvV2LFjrR07dlg7duywxowZE1C3XXnCt++msSyOjQk///nPraKiIuvQoUPWzp07rZtuuskKDw+3Dh8+bFkWx8SUd9991woKCrIeffRR6+DBg9ZLL71k9e3b11q9erWzDcfGnMbGRmvIkCHW/fff32wbx8UzfD6M/PjHP7aGDh1qhYSEWIMHD7YyMjKcQcSyvrkl7sEHH7RiYmKs0NBQa/LkydbevXtdxvjqq6+su+66yxo0aJDVp08f66abbrIqKipc2pw4ccKaNWuWFR4eboWHh1uzZs2yvvzyy574in7ju2GEY9Pzzj8DITg42IqLi7NuueUWa9++fc7tHBNzXn/9dSslJcUKDQ21LrnkEmv58uUu2zk25mzevNmSZB04cKDZNo6LZ9gsy7JMn50BAACByy/njAAAAN9BGAEAAEYRRgAAgFGEEQAAYBRhBAAAGEUYAQAARhFGAACAUYQRAABgFGEEAAAYRRgBAABGEUYAAIBRhBEAAGDU/weTounbhdwbQAAAAABJRU5ErkJggg==",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"import matplotlib.pyplot as plt\n",
"plt.ion()\n",
"plt.plot(data['wave'],data['flux'])"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[<matplotlib.lines.Line2D at 0x70ddabf58b50>]"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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FL/61a+QmZmJtWvX4vPPP+/0e8pkMvTt29faUjtNo9E47f9RbB2vjW3idbFNvC62ydmvy816RK6xOozMnz8flZWVePHFF1FSUoLY2Fhs27YN4eHhAICSkpI2a45ERkZi27Zt+P3vf4+3334bISEhWLVqFR544AFr35qIiIgckNXrjDgSrl9iu3htbBOvi23idbFNvC6d59TPplEqlXj++efbDJYl28BrY5t4XWwTr4tt4nXpPKfuGSEiIiLpOXXPCBEREUmPYYSIiIgkxTBCREREkmIYISIiIknZfRhJSUnBsGHDLIvKJCYm4ttvv7UcF0URf//73xESEgI3NzdMnjwZJ0+ebPM3DAYDnn76afj5+cHDwwP33nsvLl261KZNdXU1Fi5caHl438KFC1FTU9MbH9EhJCcnQxAEPPfcc5Z9vDa97+9//zsEQWizBQUFWY7zmkinuLgYjz76KHx9feHu7o4RI0bgyJEjluO8NtKIiIi44d+MIAhYsmQJAF6XbiPauS1btohbt24V8/LyxLy8PHHlypWiQqEQT5w4IYqiKL766quiWq0WU1NTxZycHHH+/PlicHCwqNfrLX8jKSlJ7NOnj5iWliYePXpUnDJlijh8+HCxubnZ0uauu+4SY2NjxX379on79u0TY2NjxXvuuafXP689OnjwoBgRESEOGzZMfPbZZy37eW163/PPPy/GxMSIJSUllq2srMxynNdEGlVVVWJ4eLj42GOPiQcOHBALCgrE7777Tjx79qylDa+NNMrKytr8e0lLSxMBiLt27RJFkdelu9h9GGmPt7e3+P7774smk0kMCgoSX331VcuxxsZGUavViqtXrxZFURRrampEhUIhbtiwwdKmuLhYlMlk4vbt20VRFMVTp06JAMT9+/db2mRmZooAxNOnT/fSp7JPtbW14oABA8S0tDRx0qRJljDCayON559/Xhw+fHi7x3hNpLN8+XJx/PjxHR7ntbEdzz77rNivXz/RZDLxunQju79N83MtLS3YsGED6uvrkZiYiIKCApSWlmLGjBmWNkqlEpMmTcK+ffsAAEeOHEFTU1ObNiEhIYiNjbW0yczMhFarxejRoy1txowZA61Wa2lD7VuyZAnuvvtuTJs2rc1+Xhvp5OfnIyQkBJGRkXj44Ydx/vx5ALwmUtqyZQsSEhLw0EMPISAgAHFxcXjvvfcsx3ltbIPRaMT69evxxBNPQBAEXpdu5BBhJCcnB56enlAqlUhKSsKmTZswZMgQlJaWAgACAwPbtA8MDLQcKy0thaurK7y9vW/aJiAg4Ib3DQgIsLShG23YsAFHjx5FcnLyDcd4baQxevRorFu3Djt27MB7772H0tJSjB07FpWVlbwmEjp//jxSUlIwYMAA7NixA0lJSXjmmWcsDxzltbENmzdvRk1NDR577DEAvC7dyeoH5dmi6OhoZGdno6amBqmpqVi8eDEyMjIsxwVBaNNeFMUb9l3v+jbtte/M33FWRUVFePbZZ7Fz506oVKoO2/Ha9K5Zs2ZZfh86dCgSExPRr18/fPzxxxgzZgwAXhMpmEwmJCQk4JVXXgEAxMXF4eTJk0hJScGiRYss7XhtpLV27VrMmjULISEhbfbzutw+h+gZcXV1Rf/+/ZGQkIDk5GQMHz4cb775pmWWwPXJsqyszJJkg4KCYDQaUV1dfdM2V65cueF9y8vLb0jEZHbkyBGUlZUhPj4ecrkccrkcGRkZWLVqFeRyueV/N14baXl4eGDo0KHIz8/nvxcJBQcHY8iQIW32DR482PIEdF4b6V28eBHfffcdnnzyScs+Xpfu4xBh5HqiKMJgMCAyMhJBQUFIS0uzHDMajcjIyMDYsWMBAPHx8VAoFG3alJSU4MSJE5Y2iYmJ0Ol0OHjwoKXNgQMHoNPpLG2oralTpyInJwfZ2dmWLSEhAQsWLEB2djaioqJ4bWyAwWBAbm4ugoOD+e9FQuPGjUNeXl6bfWfOnEF4eDgA8NrYgA8//BABAQG4++67Lft4XbpR74+Z7V4rVqwQd+/eLRYUFIjHjx8XV65cKcpkMnHnzp2iKJqnXWm1WnHjxo1iTk6O+Mgjj7Q77apv377id999Jx49elS888472512NWzYMDEzM1PMzMwUhw4d6lTTrrrDz2fTiCKvjRT+8Ic/iOnp6eL58+fF/fv3i/fcc4+oVqvFCxcuiKLIayKVgwcPinK5XHz55ZfF/Px88dNPPxXd3d3F9evXW9rw2kinpaVFDAsLE5cvX37DMV6X7mH3YeSJJ54Qw8PDRVdXV9Hf31+cOnWqJYiIonlK3PPPPy8GBQWJSqVSnDhxopiTk9PmbzQ0NIhPPfWU6OPjI7q5uYn33HOPWFhY2KZNZWWluGDBAlGtVotqtVpcsGCBWF1d3Rsf0WFcH0Z4bXrftTUQFAqFGBISIt5///3iyZMnLcd5TaTzzTffiLGxsaJSqRQHDRokrlmzps1xXhvp7NixQwQg5uXl3XCM16V7CKIoilL3zhAREZHzcsgxI0RERGQ/GEaIiIhIUgwjREREJCmGESIiIpIUwwgRERFJimGEiIiIJMUwQkRERJJiGCEiIiJJMYwQERGRpBhGiIiISFIMI0RERCQphhEiIiKS1P8PhtiO8e5jBxcAAAAASUVORK5CYII=",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"import matplotlib.pyplot as plt\n",
"plt.ion()\n",
"plt.plot(cont['wave'],cont['flux'])"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/tmp/ipykernel_1358811/340378805.py:39: UserWarning: Glyph 24402 (\\N{CJK UNIFIED IDEOGRAPH-5F52}) missing from font(s) DejaVu Sans.\n",
" plt.tight_layout()\n",
"/tmp/ipykernel_1358811/340378805.py:39: UserWarning: Glyph 19968 (\\N{CJK UNIFIED IDEOGRAPH-4E00}) missing from font(s) DejaVu Sans.\n",
" plt.tight_layout()\n",
"/tmp/ipykernel_1358811/340378805.py:39: UserWarning: Glyph 21270 (\\N{CJK UNIFIED IDEOGRAPH-5316}) missing from font(s) DejaVu Sans.\n",
" plt.tight_layout()\n",
"/tmp/ipykernel_1358811/340378805.py:39: UserWarning: Glyph 35889 (\\N{CJK UNIFIED IDEOGRAPH-8C31}) missing from font(s) DejaVu Sans.\n",
" plt.tight_layout()\n",
"/tmp/ipykernel_1358811/340378805.py:39: UserWarning: Glyph 32447 (\\N{CJK UNIFIED IDEOGRAPH-7EBF}) missing from font(s) DejaVu Sans.\n",
" plt.tight_layout()\n"
]
},
{
"data": {
"image/png": "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tG7dupB8nhtiD+vREQCL7q2cpn2GS9c6/qUr7K/o+ZtLNX3OfFlsfJkAAAAAAAiH/RUe9fvTIlPOvea245TgbN57/qKiIp155pm69957dfLJJ6u0tFQffPCBP9x65513FBcXp/fee08//fSTLrjgAqWnp+vOO++UJN1000165ZVXNG/ePPXs2VNLly7VOeecow4dOmjs2LHatGmTjjzySI0bN07vvvuuUlJS9NFHH6mysjJsr18imIoyFj3iOVm7laTb7M/qXPtivX7rJJ3wp9dkc7jMLg4AAAAAAJikqKhIlZWVOuWUU9S5c2dJ0sCBA/3bnU6nnn76aSUkJKh///667bbbdN111+n222/X/v37df/99+vdd99VQUGBJKlbt2768MMP9fe//11jx47Vo48+Krfbrfnz58vhcEiSevXqFfbXRTAVhV70HKvdRpLudzymKbZPtfS28Rpy3etKTmlndmkAAAAAALQq8Q6b1tx2nGnnbq78/HyNHz9eAwcO1HHHHacJEybotNNOU7t27fzbExIS/O0LCgq0Z88ebdy4Udu2bdOBAwd07LHH1jhmeXm5hgwZIklauXKlxowZ4w+lIoVgKkr911ug4opE/c3xgI60rdLKv4yX67x/q2/3rmaXBgAAAABAq2GxWJo9nM5MNptNixcv1scff6y33npLf/3rXzV79mx99tlnje5nsVjk9XolSf/73//UsWPHGttdLt8Irfj4+PAU3gQmP4+wQOY1+8A7SGeXz9YuI0mDrevkeO4Efb7y6/AVBwAAAAAAopbFYtGoUaM0Z84cffnll3I6nVqwYIEk6auvvtL+/fv9bT/99FMlJSUpNzdX/fr1k8vlUmFhoXr06FFjycvLkyQNGjRIH3zwgSoqKiL6mgimotxKo4dOK79Fm4326mHdrI4Lpuo/i98zuywAAAAAABBBn332me666y4tX75chYWFeuWVV/Trr7+qb9++knzD8mbMmKE1a9bozTff1C233KJLL71UVqtVycnJuvbaa3XVVVfpueee07p16/Tll1/q0Ucf1XPPPSdJuvTSS1VSUqLf/OY3Wr58udauXasXXnhB33//fVhfF8FUDFhndNRpZbdqnTdbHS07NObDc3Tn354zuywAAAAAABAhKSkpWrp0qU444QT16tVLN910k+677z5NnDhRkjR+/Hj17NlTRx55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",
"text/plain": [
"<Figure size 1200x800 with 2 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"import pandas as pd\n",
"import numpy as np\n",
"from scipy.interpolate import interp1d\n",
"data = pd.read_csv('./results/hhe35nl.spec',comment='#',names=['wave','flux'],sep='\\s+')\n",
"cont = pd.read_csv('./results/hhe35nl.cont',comment='#',names=['wave','flux'],sep='\\s+')\n",
"# 创建连续谱的插值函数\n",
"cont_interp = interp1d(cont['wave'], cont['flux'], kind='linear', bounds_error=False, fill_value='extrapolate')\n",
"\n",
"# 在data的波长点上插值得到连续谱\n",
"cont_flux_interp = cont_interp(data['wave'])\n",
"\n",
"# 创建新的连续谱数据框使用data的波长点\n",
"cont_new = pd.DataFrame({\n",
" 'wave': data['wave'],\n",
" 'flux': cont_flux_interp\n",
"})\n",
"\n",
"# 计算归一化通量\n",
"data['flux_nor'] = data['flux'] / cont_new['flux']\n",
"data['flux_nor'] = data['flux_nor'].fillna(1.0)\n",
"\n",
"# 可视化结果\n",
"import matplotlib.pyplot as plt\n",
"plt.figure(figsize=(12, 8))\n",
"\n",
"# 原始数据\n",
"plt.subplot(3, 1, 1)\n",
"plt.plot(data['wave'], data['flux'], label='spec')\n",
"plt.plot(cont['wave'], cont['flux'], label='cont')\n",
"plt.legend()\n",
"# plt.title('原始数据')\n",
"\n",
"# 归一化谱线\n",
"plt.subplot(3, 1, 2)\n",
"plt.plot(data['wave'], data['flux_nor'])\n",
"plt.title('归一化谱线')\n",
"# plt.axhline(y=1, color='r', linestyle='--')\n",
"\n",
"plt.tight_layout()\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[<matplotlib.lines.Line2D at 0x70dd73175420>]"
]
},
"execution_count": 13,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.plot(data['wave'])"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>wave</th>\n",
" <th>flux</th>\n",
" <th>flux_nor</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>2999.89195</td>\n",
" <td>339322000.0</td>\n",
" <td>0.999988</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>2999.89853</td>\n",
" <td>339318000.0</td>\n",
" <td>0.999984</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>2999.90511</td>\n",
" <td>339314000.0</td>\n",
" <td>0.999980</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>2999.91169</td>\n",
" <td>339310000.0</td>\n",
" <td>0.999976</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>2999.91827</td>\n",
" <td>339305000.0</td>\n",
" <td>0.999969</td>\n",
" </tr>\n",
" <tr>\n",
" <th>...</th>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>403271</th>\n",
" <td>7409.94150</td>\n",
" <td>14113600.0</td>\n",
" <td>0.999941</td>\n",
" </tr>\n",
" <tr>\n",
" <th>403272</th>\n",
" <td>7409.95803</td>\n",
" <td>14113300.0</td>\n",
" <td>0.999929</td>\n",
" </tr>\n",
" <tr>\n",
" <th>403273</th>\n",
" <td>7409.97456</td>\n",
" <td>14112900.0</td>\n",
" <td>0.999909</td>\n",
" </tr>\n",
" <tr>\n",
" <th>403274</th>\n",
" <td>7409.99108</td>\n",
" <td>14112600.0</td>\n",
" <td>0.999896</td>\n",
" </tr>\n",
" <tr>\n",
" <th>403275</th>\n",
" <td>7410.00026</td>\n",
" <td>14112400.0</td>\n",
" <td>0.999887</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>403276 rows × 3 columns</p>\n",
"</div>"
],
"text/plain": [
" wave flux flux_nor\n",
"0 2999.89195 339322000.0 0.999988\n",
"1 2999.89853 339318000.0 0.999984\n",
"2 2999.90511 339314000.0 0.999980\n",
"3 2999.91169 339310000.0 0.999976\n",
"4 2999.91827 339305000.0 0.999969\n",
"... ... ... ...\n",
"403271 7409.94150 14113600.0 0.999941\n",
"403272 7409.95803 14113300.0 0.999929\n",
"403273 7409.97456 14112900.0 0.999909\n",
"403274 7409.99108 14112600.0 0.999896\n",
"403275 7410.00026 14112400.0 0.999887\n",
"\n",
"[403276 rows x 3 columns]"
]
},
"execution_count": 10,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"data"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {},
"outputs": [],
"source": [
"data.to_csv('spec.csv',index=False,header=False,sep=',')"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[<matplotlib.lines.Line2D at 0x70ddabdd9a20>]"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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KyUAAKzQacJHdGS4bjynj7rERh0VLo61eicAAPC/ThM+JOnui4daXQIAAJ0eq1ABAICAInwAAICAInwAAICAInwAAICAInwAAICAInwAAICAInwAAICAInwAAICAarfw8fjjj6tPnz6Kjo7W6NGjtXz58vZ6KgAAEETaJXy89tpruv3223X33Xdrw4YNOuecczRt2jTt27evPZ4OAAAEEZsxxvj7QceNG6dRo0bpiSee8G0bMmSIrrjiCi1cuPC4v+tyueRwOOR0OpWYyMXXAAAIBq35/Pb7yEddXZ3WrVunqVOnNts+depUrVix4qj2brdbLper2Q0AAIQuv4ePkpISeTwepaamNtuempqqwsLCo9ovXLhQDofDd8vMzPR3SQAAoANpt6va2my2ZveNMUdtk6S5c+dqzpw5vvtOp1O9evViBAQAgCDS9Ll9MrM5/B4+kpOTFR4eftQoR1FR0VGjIZJkt9tlt9t995uKZwQEAIDgU1FRIYfDcdw2fg8fUVFRGj16tBYtWqQrr7zSt33RokW6/PLLT/j7GRkZysvLU0JCQosjJf7gcrmUmZmpvLw8JrVaiH7oGOgH69EHHQP90DbGGFVUVCgjI+OEbdvla5c5c+ZoxowZGjNmjCZMmKAnn3xS+/bt080333zC3w0LC1PPnj3bo6yjJCYm8gfWAdAPHQP9YD36oGOgH07diUY8mrRL+LjmmmtUWlqqP/3pTyooKNCwYcP04YcfKisrqz2eDgAABJF2m3A6e/ZszZ49u70eHgAABKlOeW0Xu92uefPmNZvoisCjHzoG+sF69EHHQD8ETruscAoAAHAsnXLkAwAAWIfwAQAAAorwAQAAAorwAQAAAioow8cTTzyhESNG+BaCmTBhgj766CPffmOM5s+fr4yMDMXExGjSpEnaunVrs8dwu9267bbblJycrLi4OF122WXav39/szZlZWWaMWOG76J3M2bMUHl5eSBeYlAIVD/07t1bNput2e3OO+8MyGsMBv7ohyeffFKTJk1SYmKibDZbi3/nHA/HF6h+4Hg4trb2waFDh3Tbbbdp0KBBio2NVa9evfTLX/5STqez2fNwLPiBCULvvvuu+eCDD8yOHTvMjh07zF133WUiIyPNli1bjDHG3HfffSYhIcG8+eabZvPmzeaaa64x6enpxuVy+R7j5ptvNj169DCLFi0y69evN5MnTzYjR440DQ0NvjYXXnihGTZsmFmxYoVZsWKFGTZsmLnkkksC/no7qkD1Q1ZWlvnTn/5kCgoKfLeKioqAv96Oyh/98NBDD5mFCxeahQsXGkmmrKzsqOfheDi+QPUDx8OxtbUPNm/ebKZPn27effddk52dbT777DMzYMAAc9VVVzV7Ho6FtgvK8NGSrl27mqeeesp4vV6TlpZm7rvvPt++2tpa43A4zN/+9jdjjDHl5eUmMjLSvPrqq742Bw4cMGFhYebjjz82xhjzzTffGElm1apVvjYrV640ksz27dsD9KqCj7/7wZjGN9uHHnooYK8hFLSmH460ZMmSFj/0OB5Ojb/7wRiOh9Y61T5o8vrrr5uoqChTX19vjOFY8Jeg/NrlSB6PR6+++qqqqqo0YcIE5eTkqLCwUFOnTvW1sdvtOu+887RixQpJ0rp161RfX9+sTUZGhoYNG+Zrs3LlSjkcDo0bN87XZvz48XI4HL42+FZ79UOT+++/X926ddPpp5+uv/zlL6qrqwvMCwsyp9IPJ4PjoXXaqx+acDycmL/6wOl0KjExURERjQuCcyz4R7str97eNm/erAkTJqi2tlbx8fH697//raFDh/o6PzU1tVn71NRU7d27V5JUWFioqKgode3a9ag2hYWFvjYpKSlHPW9KSoqvDdq/HyTpV7/6lUaNGqWuXbtq9erVmjt3rnJycvTUU0+186sLHm3ph5PB8XBy2rsfJI6HE/FnH5SWlurPf/6zbrrpJt82jgX/CNrwMWjQIG3cuFHl5eV68803NXPmTC1dutS332azNWtvjDlq23d9t01L7U/mcTqTQPTDr3/9a9/PI0aMUNeuXfWDH/zA939/aJ9++C6OhxMLRD9wPByfv/rA5XLp4osv1tChQzVv3rxm+zgW2i5ov3aJiopS//79NWbMGC1cuFAjR47Uww8/rLS0NEk6KoEWFRX5Em9aWprq6upUVlZ23DYHDx486nmLi4uPSs6dWXv3Q0vGjx8vScrOzvbnSwlqbemHk8HxcHLaux9awvHQnD/6oKKiQhdeeKFv5CQyMtK3j2PBP4I2fHyXMUZut1t9+vRRWlqaFi1a5NtXV1enpUuXauLEiZKk0aNHKzIyslmbgoICbdmyxddmwoQJcjqdWr16ta/NV199JafT6WuDo/m7H1qyYcMGSVJ6eno7vYrg15p+OBkcD6fG3/3QEo6H42ttH7hcLk2dOlVRUVF69913FR0d3ezxOBb8xIJJrm02d+5cs2zZMpOTk2M2bdpk7rrrLhMWFmY++eQTY0zj6VQOh8O89dZbZvPmzebaa69t8RTPnj17mk8//dSsX7/enH/++S2eajtixAizcuVKs3LlSjN8+HBOpzpCIPphxYoV5sEHHzQbNmwwe/bsMa+99prJyMgwl112mSWvuSPyRz8UFBSYDRs2mH/84x9Gklm2bJnZsGGDKS0t9bXheDi+QPQDx8PxtbUPXC6XGTdunBk+fLjJzs5udjoznw3+FZTh44YbbjBZWVkmKirKdO/e3Xzve9/z/XEZY4zX6zXz5s0zaWlpxm63m3PPPdds3ry52WPU1NSYW2+91SQlJZmYmBhzySWXmH379jVrU1paaq6//nqTkJBgEhISzPXXX9/iqW+dVSD6Yd26dWbcuHHG4XCY6OhoM2jQIDNv3jxTVVUVsNfZ0fmjH+bNm2ckHXV79tlnfW04Ho4vEP3A8XB8be2DplOcW7rl5OT42nEstJ3NGGMCPdoCAAA6r5CZ8wEAAIID4QMAAAQU4QMAAAQU4QMAAAQU4QMAAAQU4QMAAAQU4QMAAAQU4QMAAAQU4QMAAAQU4QMAAAQU4QMAAAQU4QMAAATU/wcB5cKWF1qCzAAAAABJRU5ErkJggg==",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"import matplotlib.pyplot as plt\n",
"plt.ion()\n",
"data['flux_nor'] = data['flux'] / cont['flux']\n",
"plt.plot(data['wave'],data['flux_nor'])"
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"0 3.056000e+09\n",
"1 3.061460e+09\n",
"2 3.063140e+09\n",
"3 3.063960e+09\n",
"4 3.064560e+09\n",
" ... \n",
"1195 3.054650e+09\n",
"1196 3.061830e+09\n",
"1197 3.061170e+09\n",
"1198 3.021170e+09\n",
"1199 2.925480e+09\n",
"Name: flux, Length: 1200, dtype: float64"
]
},
"execution_count": 16,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"data['flux']"
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"0 3.142010e+09\n",
"1 3.138210e+09\n",
"2 3.134510e+09\n",
"3 3.131020e+09\n",
"4 3.127420e+09\n",
"5 3.123660e+09\n",
"6 3.119950e+09\n",
"7 3.116050e+09\n",
"8 3.112360e+09\n",
"9 3.108810e+09\n",
"10 3.105200e+09\n",
"11 3.104370e+09\n",
"Name: flux, dtype: float64"
]
},
"execution_count": 17,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"cont['flux']"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"0 0.972626\n",
"1 0.975543\n",
"2 0.977231\n",
"3 0.978582\n",
"4 0.979900\n",
" ... \n",
"1195 NaN\n",
"1196 NaN\n",
"1197 NaN\n",
"1198 NaN\n",
"1199 NaN\n",
"Name: flux_nor, Length: 1200, dtype: float64"
]
},
"execution_count": 15,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"data['flux_nor']"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "study",
"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.10.13"
}
},
"nbformat": 4,
"nbformat_minor": 2
}