\documentclass[11pt,a4paper,dvipsnames]{article}
\usepackage[utf8]{inputenc}

\input{../preamble.tex}

\title{Entrega 3 de problemes\\Física Estadística}
\author{Adrià Vilanova Martínez}
\date{21 de juny, 2021}

\showcorrectionsfalse % Change "true" to "false" in order to show corrections as
                      % if they weren't corrections (in black instead of red).

\begin{document}

\maketitle

\begin{Problem}
  Un sistema està format per dues partícules idèntiques sense interacció, que poden estar cadascuna d'elles en 4 estats monoparticulars d'energies $0$, $\varepsilon$, $2 \varepsilon$ i $3 \varepsilon$. Escriviu la funció de partició canònica del sistema en funció de la variable $x = e^{- \beta \varepsilon}$ en els casos següents:

  \begin{enumerate}[(a)]
    \item Les dues partícules són distingibles i no tenen degeneració d'espín.
    \item Les dues partícules son indistingibles i tenen espín zero (estadística de Bose-Einstein).
    \item Les dues partícules son indistingibles i tenen espín $1/2$ (estadística de Fermi-Dirac). Noteu que, en aquest cas, cal tenir en compte la orientació de l'espín per determinar els diferents micro-estats, així com la seva degeneració.
  \end{enumerate}
\end{Problem}

\textbf{Solució per (a):} \\
Tenim:
\[ Z_1(T) = e^{- \beta 0} + e^{- \beta} + e^{- 2 \beta} + e^{- 3 \beta} = 1 + x + x^2 + x^3. \]

I en aquest cas, per ser dues partícules distingibles sense degeneració d'espín tenim:
\[ Z_2(T) = (Z_1(T))^2 = (1 + x + x^2 + x^3)^2. \]

\textbf{Solució per (b):} \\
En aquest cas, pel fet de ser indstingibles, hem de restar al càlcul anterior els estats degenerats (només els hem de comptar un cop). Si representem els estats de les dues partícules amb la parella $(n_1, n_2)$, on $n_1, n_2 \in \{ 0, 1, 2, 3 \}$ són els estats de les dues partícules i pel fet que són indistingibles $(n_1, n_2) = (n_2, n_1)$, abans estàvem comptant 2 cops els següents estats: $(0, 1)$, $(0, 2)$, $(0, 3)$, $(1, 2)$, $(1, 3)$, $(2, 3)$. Aquests estats tenen energies $E_i = n_1 + n_2$. Així doncs, tenim:
\[ Z(T) = (1 + x + x^2 + x^3)^2 - x - x^2 - 2x^3 - x^4 - x^5 = \]
\[ = (1 + 2x + 3x^2 + 4x^3 + 3x^4 + 2x^5 + x^6) - x - x^2 - 2x^3 - x^4 - x^5 = \]
\[ = 1 + x + 2x^2 + 2x^3 + 2x^4 + x^5 + x^6. \]

\textbf{Solució per (c):} \\
En aquest cas, si els dos fermions estan en el mateix estat, l'spin de les dues partícules ha de ser diferent i per tant els estats $(0, 0)$, $(1, 1)$, $(2, 2)$ i $(3, 3)$ tenen degeneració 1.

En quant als altres estats --$(0, 1)$, $(0, 2)$, $(0, 3)$, $(1, 2)$, $(1, 3)$, $(2, 3)$-- en ser diferents els estats de les dues partícules, cada partícula pot tenir un estat de l'espín qualsevol, donant les combinacions $\uparrow \uparrow$, $\downarrow \uparrow$, $\uparrow \downarrow$ i $\downarrow \downarrow$ (és a dir, degeneració 4).

Notem que aquí estem considerant tant $\downarrow \uparrow$ com $\uparrow \downarrow$, ja que tot i que les partícules siguin indistingibles, són diferents els estats $(0 \downarrow, 1 \uparrow)$ i $(0 \uparrow, 1 \downarrow)$.

Això ens dona la següent funció de partició:
\[ Z(T) = 1 + x^2 + x^4 + x^6 + 4(x + x^2 + 2x^3 + x^4 + x^5). \]

\newpage

\begin{Problem}
  Els modes normals de vibració d'un sòlid format per $N$ àtoms en una xarxa tridimensional donen lloc, en determinades circumstàncies, a ones amb una relació de dispersió de la forma
  \[ \omega = A | \vec{k} |^n, \]
  amb 3 modes de vibració per a cada freqüència.

  \begin{enumerate}[(a)]
    \item Determineu la densitat d'estats $g(\omega)$.
    \item Sabent que les freqüències estan acotades entre $0$ i $\omega_\text{max}$, determineu $\omega_\text{max}$.
    \item Doneu una expressió per a la capacitat calorífica a volum constant (podeu deixar una integral numèrica indicada).
    \item Trobeu i discutiu els límits d'alta i baixa temperatura.
  \end{enumerate}
\end{Problem}

\textbf{Solució per (a):} \\
Tenim que:
\[ d\omega = n A |k|^{n - 1} dk. \]
Aleshores:
\[ g(\omega) d\omega = g(k(\omega)) \frac{dk}{d\omega} d\omega = \frac{4 \pi V}{(2 \pi)^3} \frac{k^2}{n A k^{n - 1}} d\omega = \frac{3V}{2 n \pi^2} \frac{\omega^{\frac{3}{n} - 1}}{A^{\frac{3}{n}}} d\omega. \]

\textbf{Solució per (b):} \\
Tal com hem vist a teoria:
\[ 3N = \int_{\omega_\text{min}}^{\omega_\text{max}} g(\omega) \, d\omega = \underbrace{\frac{3V}{2 n \pi^2} A^{- \frac{3}{n}}}_{:= C} \int_0^{\omega_\text{max}} \omega^{\frac{3}{n} - 1} d\omega = \]
\[ = \frac{C}{\frac{3}{n}} \left[ \omega^{\frac{3}{n}} \right]_0^{\omega_\text{max}} = \frac{1}{3} Cn \omega_\text{max}^{3/n} \implies \]
\[ \implies \omega_\text{max} = \left( \frac{9}{Cn} \right)^\frac{n}{3} = A \left( \frac{6 \pi^2 N}{V} \right)^\frac{n}{3}. \]

\textbf{Solució per (c):} \\
Tenint en compte que $\varepsilon = \hbar \omega$ podem calcular l'energia interna mitjana:
\[ U = \int_0^{\omega_\text{max}} \frac{\hbar \omega}{e^{\beta \hbar \omega} - 1} g(\omega) \, d\omega. \]
Aleshores, definint $s := \beta \hbar \omega$:
\[ C_V = - \frac{1}{K_B T^2} \left( \frac{\partial U}{\partial \beta} \right)_V = \frac{9 N K_B}{n s_\text{max}^{3/n}} \underbrace{\int_0^{s_\text{max}} \frac{s^{1 + \frac{3}{n}} e^s}{(e^s - 1)^2} \, ds}_{:= I(s_\text{max})}. \]
Desfent el canvi de variables:
\[ C_V = \frac{9 N K_B}{n} \left( \frac{K_B T}{\hbar \omega_\text{max}} \right)^\frac{3}{n} I(s_\text{max}). \]

\textbf{Solució per (d):} \\
Per a temperatures baixes:
\[ \lim_{T \to 0} C_V = \frac{9 N K_B}{n} \left( \frac{K_B}{\hbar \omega_\text{max}} \right)^\frac{3}{n} \lim_{T \to 0} (T^\frac{3}{n} I(s_\text{max})). \]
A aquest límit tenim que $s_\text{max} \propto \frac{1}{T}$, així que $s_\text{max}$ tendeix a una constant i $I(s_\text{max})$ també (anomenem-la $I(T = 0)$). En aquest cas, veiem que la capacitat calorífica es fa zero, degut al fet que $T^\frac{3}{n} \to 0$.

Per a temperatures altes, utilitzant Taylor a l'expressió de dins de la integral obtenim:
\[ \lim_{T \to \infty} C_V = 3 N K_B, \]
que coincideix amb el teorema d'equipartició que vam veure a la part clàssica de la teoria.

\newpage

\begin{Problem}
  El grafè està format per una monocapa d'àtoms de carboni. Els electrons a la banda de conducció del material es mouen dins d'aquesta capa com un gas bidimensional amb una relació de dispersió lineal donada per:
  \[ \varepsilon(k) = \hbar v k, \]
  on $v$ és una velocitat constant. Per a una mostra de grafè d'àrea $A = L_x L_y$, els vectors d'ona permesos per les condicions de contorn són de la forma $\vec{k} = \frac{2 \pi}{L_x} m \hat{x} + \frac{2 \pi}{L_y} n \hat{y}$, amb $m, n \in \mathbb{Z}$ i $\hat{x}, \hat{y}$ vectors unitaris.

  \begin{enumerate}[(a)]
    \item Calculeu la densitat d'estats a la banda de conducció en termes d'energia, $g(\varepsilon)$, tenint en compte que cada electró contribueix, a més, amb un factor 2 degut a la degeneració del seu espí.
    \item Si considerem que per a temperatures $T$ baixes el potencial químic del gas $\mu(T)$ és nul, trobeu una expressió de l'energia interna $U(T, A)$ dels electrons tenint en compte que l'energia de l'estat fonamental $U(T = 0, A) = U_0 = 0$. Expresseu el resultat en termes d'una integral adimensional $I$ que no cal que avalueu explícitament.
    \item Determineu l'exponent $n$ característic de la dependència de la calor específica en la temperatura $C_A(T, A) \sim T^n$ a àrea constant i temperatures baixes per als electrons del grafè.
  \end{enumerate}
\end{Problem}

\textbf{Solució per (a):} \\
Tenim que:
\[ \varepsilon = \hbar v k = \hbar v \sqrt{k_x^2 + k_y^2} = \hbar v 2 \pi \sqrt{ \left(\frac{m}{L_x}\right)^2 + \left(\frac{n}{L_y}\right)^2 }. \]
Aleshores:
\[ g(\varepsilon) \, d\varepsilon = 2 g(k) \frac{dk}{d\varepsilon} d\varepsilon = 2 \frac{A}{(2 \pi)^2} 4 \pi k \frac{1}{\hbar v} \, d\varepsilon = 2 \frac{A}{\pi (\hbar v)^2} \varepsilon. \]
%\[ = 2A \sqrt{ \left(\frac{m}{L_x}\right)^2 + \left(\frac{n}{L_y}\right)^2 } \, d\varepsilon = \]
%\[ = 2 \sqrt{(m L_y)^2 + (n L_x)^2}. \]

\textbf{Solució per (b):}
\[ U = \tilde{U_0} + \int_0^b \frac{g(\varepsilon)}{e^{\beta \varepsilon} - 1} \, d \varepsilon = \tilde{U_0} + 2 \frac{A}{\pi (\hbar v)^2} \int_0^b \frac{\varepsilon}{e^{\beta \varepsilon} - 1} \, d \varepsilon. \]
Com $U(T = 0, A) = 0$, aleshores $\tilde{U_0} = 0$.

\begin{Problem}
  Considereu un sistema de $N$ fermions lliures. Els estats monoparticulars tenen energies $\varepsilon_n = (4n + 1) \varepsilon_0$ amb $n \in \mathbb{N}^*$ i degeneració $g_n = 2n - 1$. Determineu l'energia del nivell de Fermi i l'energia total del sistema per a $T = 0$.
\end{Problem}

Em sap greu, però no sé fer aquest exercici.

\end{document}
