"Primero importamos las librerias necesarias para el desarrollo del quiz"
]
},
{
"cell_type": "code",
"execution_count": 79,
"metadata": {},
"outputs": [],
"source": [
"import numpy as np\n",
"import pandas as pd\n",
"import matplotlib.pyplot as plt\n",
"from tabulate import tabulate"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Dos subsistemas que comparten energía, cada una con 2 partículas y 6 niveles de energía. Cada partícula puede ocupar un nivel de energía a la vez. El objetivo es encontrar el par de energías de los subsistemas A y B con más número de estados accesibles cuya energía total sea 10. \n",
"\n",
"Vamos a ver todos los estados posibles para el subsistema A y B y luego vamos a ver cuales son los pares de estados que suman 10. Posteriormente se contará el número de estados accesibles de la energía total como una función de la energía de alguno de los subsistemas, esto debido a que hay una ligadura entre las energías de los subsistemas A y B (EA+EB=ET)."
]
},
{
"cell_type": "code",
"execution_count": 56,
"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>EA</th>\n",
" <th>EB</th>\n",
" <th>OmegaA</th>\n",
" <th>OmegaB</th>\n",
" <th>OmegaT</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>2</td>\n",
" <td>8</td>\n",
" <td>1</td>\n",
" <td>5</td>\n",
" <td>5</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>3</td>\n",
" <td>7</td>\n",
" <td>2</td>\n",
" <td>6</td>\n",
" <td>12</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>4</td>\n",
" <td>6</td>\n",
" <td>3</td>\n",
" <td>5</td>\n",
" <td>15</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>5</td>\n",
" <td>5</td>\n",
" <td>4</td>\n",
" <td>4</td>\n",
" <td>16</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>6</td>\n",
" <td>4</td>\n",
" <td>5</td>\n",
" <td>3</td>\n",
" <td>15</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>7</td>\n",
" <td>3</td>\n",
" <td>6</td>\n",
" <td>2</td>\n",
" <td>12</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>8</td>\n",
" <td>2</td>\n",
" <td>5</td>\n",
" <td>1</td>\n",
" <td>5</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" EA EB OmegaA OmegaB OmegaT\n",
"0 2 8 1 5 5\n",
"1 3 7 2 6 12\n",
"2 4 6 3 5 15\n",
"3 5 5 4 4 16\n",
"4 6 4 5 3 15\n",
"5 7 3 6 2 12\n",
"6 8 2 5 1 5"
]
},
"execution_count": 56,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"ET = 10 #Energia total\n",
"\n",
"NumPartA = 2 #Numero de particulas A\n",
"NumPartB = 2 #Numero de particulas B\n",
"\n",
"EnerPosible = 6 #Numero de energias posibles\n",
"\n",
"#Estados posibles de las particulas A y B con cualquier energía\n",
"EstadosA = [[i+1, j+1] for i in range(EnerPosible) for j in range(EnerPosible)]\n",
"EstadosB = [[i+1, j+1] for i in range(EnerPosible) for j in range(EnerPosible)]\n",
"\n",
"#Producto cartesiano de los estados posibles de las particulas A y B en un dataframe\n",
"TodosEstados = pd.DataFrame([(a, b) for a in EstadosA for b in EstadosB], columns=['A', 'B'])\n",
"#Ahora, para cada energía de A y B, contamos los estados accesibles y, además, los estados accesibles para la energía total siendo el producto de las anteriores\n",
"def NumeroEstadosSub(DF, Esub, Sistema = 'A'):\n",
"Ahora con el número de estados accesibles para cada energía EA, podemos verificar el comportamiento del número de estados accesibles $\\Omega_T(E_A,E_B) = \\Omega_T(E_A)$:"
Primero importamos las librerias necesarias para el desarrollo del quiz
%% Cell type:code id: tags:
``` python
importnumpyasnp
importpandasaspd
importmatplotlib.pyplotasplt
fromtabulateimporttabulate
```
%% Cell type:markdown id: tags:
Dos subsistemas que comparten energía, cada una con 2 partículas y 6 niveles de energía. Cada partícula puede ocupar un nivel de energía a la vez. El objetivo es encontrar el par de energías de los subsistemas A y B con más número de estados accesibles cuya energía total sea 10.
Vamos a ver todos los estados posibles para el subsistema A y B y luego vamos a ver cuales son los pares de estados que suman 10. Posteriormente se contará el número de estados accesibles de la energía total como una función de la energía de alguno de los subsistemas, esto debido a que hay una ligadura entre las energías de los subsistemas A y B (EA+EB=ET).
%% Cell type:code id: tags:
``` python
ET=10#Energia total
NumPartA=2#Numero de particulas A
NumPartB=2#Numero de particulas B
EnerPosible=6#Numero de energias posibles
#Estados posibles de las particulas A y B con cualquier energía
#Ahora, para cada energía de A y B, contamos los estados accesibles y, además, los estados accesibles para la energía total siendo el producto de las anteriores
Ahora con el número de estados accesibles para cada energía EA, podemos verificar el comportamiento del número de estados accesibles $\Omega_T(E_A,E_B) = \Omega_T(E_A)$: