\input{../preamble.tex}

\begin{document}
  \textbf{(c) Demostreu que, independentment de l'amplitud, quan se sumen (o resten) tensions de freqüències diferents, $|V_{12}|^2 = |V_1|^2 + |V_2|^2$. Quina relació hi ha entre els seus valors RMS?}

  L'amplitud mitjana quadràtica (RMS) està definida com:
  \[ V_{12, \text{RMS}} = \lim_{T \to \infty} \sqrt{\frac{1}{2T} \int_{-T}^T V(x)^2 dx} = \lim_{x \to \infty} \sqrt{\frac{1}{2T} \int_{-T}^T (V_1(x) + V_2(x))^2 dx}. \]

  Si tenim dos tensions alternes amb freqüències diferents, calculem la intergral de la suma (o la diferència):
  \[ \int_{-T}^T (V_1(x) \pm V_2(x))^2 dx = \int_{-T}^T (V_1 \cos(\omega_1 x) \pm V_2 \cos(\omega_2 x))^2 dx = \]
  \[ = \int_{-T}^T (V_1^2 \cos^2(\omega_1 x) + V_2^2 \cos^2(\omega_2 x) \pm V_1 V_2 \cos(\omega_1 x) \cos(\omega_2 x)) dx = \]
  \[ = \left[ V_1^2 \frac{1}{2} t + \frac{sin(2 \omega_1 x)}{4 \omega_1} + V_2^2 \frac{1}{2} t + \frac{sin(2 \omega_2 x)}{4 \omega_2} \pm \frac{\omega_1 \sin(\omega_1 x) \cos(\omega_2 x) - \omega_2 \cos(\omega_1 x) \sin(\omega_2 x)}{\omega_1^2 - \omega_2^2} \right]_{-T}^T = \]
  \[ = T [ V_1^2 + V_2^2 ] + \xi(T), \]
  on $\xi(T)$ és una funció fitada per tot $T \in \mathbb{R}$.

  Per tant, substituint a la primera expressió:
  \[ V_{12, \text{RMS}} = \lim_{T \to \infty} \sqrt{\frac{1}{2T} \left[ T(V_1^2 + V_2^2) + \xi(T) \right]} = \lim_{T \to \infty} \sqrt{\frac{1}{2} \left[ V_1^2 + V_2^2 + \frac{\xi(T)}{T} \right]} = \]
  \[ = \sqrt{\left(\frac{V_1}{\sqrt{2}}\right)^2 + \left(\frac{V_2}{\sqrt{2}}\right)^2} = \sqrt{V_{1, \text{RMS}}^2 + V_{2, \text{RMS}}^2}, \]
  on hem utilitzat que com $\xi(T)$ és fitada per tot $T$, aleshores $\dfrac{\xi(T)}{T} \xrightarrow[T \to \infty]{} 0$.

  Per tant, reorganitzant l'equació:
  \[ V_{12, \text{RMS}}^2 = V_{1, \text{RMS}}^2 + V_{2, \text{RMS}}^2 \]

  Si tenim en compte que $V_{i, \text{RMS}} = \dfrac{V_i}{\sqrt{2}}$, aleshores substituint obtenim la igualtat que ens demanaven demostrar.
\end{document}
