diff --git a/.markdownlint.json b/.markdownlint.json index ff2e60d..ff96881 100644 --- a/.markdownlint.json +++ b/.markdownlint.json @@ -1,4 +1,5 @@ { "MD013": false, - "no-duplicate-heading": false + "no-duplicate-heading": false, + "no-inline-html": false } \ No newline at end of file diff --git a/README.html b/README.html index 4c55265..3a1373d 100644 --- a/README.html +++ b/README.html @@ -140,6 +140,11 @@

Idiot's guide to ELEC4402 communication systems

+ +

This unit allows you to bring infinite physical notes (except books borrowed from the UWA library) to all tests and the final exam. You can't rely on what material they provide in the test/exam, it is very minimal to say the least. Hope this helps.

+

If you have issues or suggestions, raise them on GitHub. I accept pull requests for fixes or suggestions but the content must not be copyrighted under a non-GPL compatible license.

+

Download PDF 📄

+

It is recommended to refer to use the PDF copy instead of whatever GitHub renders.

License and information

Notes are open-source and licensed under the GNU GPL-3.0. You must include the full-text of the license and follow its terms when using these notes or any diagrams in derivative works (but not when printing as notes)

Copyright (C) 2024 Peter Tanner

@@ -157,8 +162,6 @@ GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.

-

Access a PDF render of the notes (It is recommended to refer to this instead of the GitHub rendered page!)

-

I accept pull requests or suggestions but the content must not be copyrighted under a non-GPL compatible license.

Fourier transform identities

@@ -340,7 +343,7 @@ G_y(f)&=G(f)G_w(f)\\
-

A WSS random process needs to be both ergodic in mean and autocorrelation to be considered an ergodic process

+

Note: A WSS random process needs to be both ergodic in mean and autocorrelation to be considered an ergodic process

Other identities

f∗(g∗h)=(f∗g)∗hConvolution associativea(f∗g)=(af)∗gConvolution associative∑x=−∞∞(f(xa)δ(ω−xb))=f(ωab)\begin{align*} f*(g*h) &=(f*g)*h\quad\text{Convolution associative}\\ @@ -416,7 +419,7 @@ h(t)&=h_I(t)\cos(2\pi f_c t)-h_Q(t)\sin(2\pi f_c t)\\ m_a&=k_a A_m \quad\text{ (Symmetrical $m(t)$)}\\ x(t)&=A_c\cos(2\pi f_c t)\left[1+k_a m(t)\right]=A_c\cos(2\pi f_c t)\left[1+m_a m(t)/A_c\right], \\ &\text{where $m(t)=A_m\hat m(t)$ and $\hat m(t)$ is the normalized modulating signal}\\ - P_c &=\frac{{A_c}^2}{2}\quad\text{Carrier power}\\ + P_c &=\frac{ {A_c}^2}{2}\quad\text{Carrier power}\\ P_x &=\frac{1}{4}{m_a}^2{A_c}^2\\ \eta&=\frac{\text{Signal Power}}{\text{Total Power}}=\frac{P_x}{P_x+P_c}\\ B_T&=2f_m=2B @@ -448,8 +451,8 @@ h(t)&=h_I(t)\cos(2\pi f_c t)-h_Q(t)\sin(2\pi f_c t)\\

FM signal power

Pav=Ac22Pband_index=Ac2Jband_index2(β)2band_index=0  ⟹  fc+0fmband_index=1  ⟹  fc+1fm,…\begin{align*} - P_\text{av}&=\frac{{A_c}^2}{2}\\ - P_\text{band\_index}&=\frac{{A_c}^2{J_\text{band\_index}}^2(\beta)}{2}\\ + P_\text{av}&=\frac{ {A_c}^2}{2}\\ + P_\text{band\_index}&=\frac{ {A_c}^2{J_\text{band\_index}}^2(\beta)}{2}\\ \text{band\_index}&=0\implies f_c+0f_m\\ \text{band\_index}&=1\implies f_c+1f_m,\dots\\ \end{align*} @@ -559,6 +562,7 @@ B_T &= 2(D+1)W_m

Do not transmit more than 2B2B samples per second over a channel of BB bandwidth.

By Bob K - Own work, CC0, https://commons.wikimedia.org/w/index.php?curid=94674142

Insert here figure 8.3 from M F Mesiya - Contemporary Communication Systems (Add image to images/sampling.png)

+

Cannot add directly due to copyright!

sampling sampling

Quantizer

@@ -576,6 +580,7 @@ B_T &= 2(D+1)W_m \end{align*}

Insert here figure 8.17 from M F Mesiya - Contemporary Communication Systems (Add image to images/quantizer.png)

+

Cannot add directly due to copyright!

quantizer quantizer

Line codes

@@ -619,7 +624,7 @@ h400000v40h-400000z"/>​s1(t)=AcTb2φ1(t)=2Ebφ1(t)s1(t)=0Since Eb=Eaverage=12(Ac22×Tb+0)=Ac24Tb\begin{align*} s_1(t)&=A_c\sqrt{\frac{T_b}{2}}\varphi_1(t)=\sqrt{2E_b}\varphi_1(t)\\ s_1(t)&=0\\ - &\text{Since $E_b=E_\text{average}=\frac{1}{2}(\frac{{A_c}^2}{2}\times T_b + 0)=\frac{{A_c}^2}{4}T_b$} + &\text{Since $E_b=E_\text{average}=\frac{1}{2}(\frac{ {A_c}^2}{2}\times T_b + 0)=\frac{ {A_c}^2}{4}T_b$} \end{align*}

Symbol mapping

-

bn:{1,0}→an:{1,−1}b_n:\{1,0\}\to a_n:\{1,\color{lime}-1\color{white}\} -

+

bn:{1,0}→an:{1,−1}b_n:\{1,0\}\to a_n:\{1,\color{green}-1\color{white}\} +

2 possible waveforms

s1(t)=AcTb2φ1(t)=Ebφ1(t)s1(t)=−AcTb2φ1(t)=−Ebφ2(t)Since Eb=Eaverage=12(Ac22×Tb+Ac22×Tb)=Ac22Tb\begin{align*} s_1(t)&=A_c\sqrt{\frac{T_b}{2}}\varphi_1(t)=\sqrt{E_b}\varphi_1(t)\\ s_1(t)&=-A_c\sqrt{\frac{T_b}{2}}\varphi_1(t)=-\sqrt{E_b}\varphi_2(t)\\ - &\text{Since $E_b=E_\text{average}=\frac{1}{2}(\frac{{A_c}^2}{2}\times T_b + \frac{{A_c}^2}{2}\times T_b)=\frac{{A_c}^2}{2}T_b$} + &\text{Since $E_b=E_\text{average}=\frac{1}{2}(\frac{ {A_c}^2}{2}\times T_b + \frac{ {A_c}^2}{2}\times T_b)=\frac{ {A_c}^2}{2}T_b$} \end{align*}

Code

-tBitstream[bitstream_, Tb_, title_] := 
+tBitstream[bitstream_, Tb_, title_] :=
   Module[{timeSteps, gridLines, plot},
-   timeSteps = 
-    Flatten[Table[{(n - 1)     Tb, bitstream[[n]]}, {n, 1, 
-        Length[bitstream]}] /. {t_, v_} :> {{t, v}, {t + Tb, v}}, 1]; 
+   timeSteps =
+    Flatten[Table[{(n - 1)     Tb, bitstream[[n]]}, {n, 1,
+        Length[bitstream]}] /. {t_, v_} :> { {t, v}, {t + Tb, v}}, 1];
    gridLines = {Join[
-      Table[{n  Tb, Dashed}, {n, 1, 2  Length[bitstream], 2}], 
+      Table[{n  Tb, Dashed}, {n, 1, 2  Length[bitstream], 2}],
       Table[{n  Tb, Thin}, {n, 0, 2  Length[bitstream], 2}]], None};
-   plot = 
-    Labeled[ListLinePlot[timeSteps, InterpolationOrder -> 0, 
-      PlotRange -> Full, GridLines -> gridLines, PlotStyle -> Thick, 
-      Ticks -> {Table[{n     Tb, 
-          Row[{n, "\!\(\*SubscriptBox[\(T\), \(b\)]\)"}]}, {n, 0, 
-          Length[bitstream]}], {-1, 0, 1}}, 
-      LabelStyle -> Directive[Bold, 12], 
-      PlotRangePadding -> {Scaled[.05]}, AspectRatio -> 0.1, 
+   plot =
+    Labeled[ListLinePlot[timeSteps, InterpolationOrder -> 0,
+      PlotRange -> Full, GridLines -> gridLines, PlotStyle -> Thick,
+      Ticks -> {Table[{n     Tb,
+          Row[{n, "\!\(\*SubscriptBox[\(T\), \(b\)]\)"}]}, {n, 0,
+          Length[bitstream]}], {-1, 0, 1}},
+      LabelStyle -> Directive[Bold, 12],
+      PlotRangePadding -> {Scaled[.05]}, AspectRatio -> 0.1,
       ImageSize -> Large], {Style[title, "Text", 16]}, {Right}]];
 

tBitstream[{0, 1, 0, 0, 1, 0, 1, 1, 1, 0}, 1, "Bitstream Step Plot"] tBitstream[{-1, -1, -1, -1, 1, 1, 1, 1, 1, 1}, 1, "I(t)"] @@ -1059,141 +1064,6 @@ c-8,0,-12,-0.7,-12,-2z M1001 80 h400000v40h-400000z"/>​)​

Value tables for erf(x)\text{erf}(x) and Q(x)Q(x)

-

erf(x)\text{erf}(x) function

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
xxerf(x)\text{erf}(x)xxerf(x)\text{erf}(x)xxerf(x)\text{erf}(x)
0.000.000.000000.000000.750.750.711160.711161.501.500.966110.96611
0.050.050.056370.056370.800.800.742100.742101.551.550.971620.97162
0.100.100.112460.112460.850.850.770670.770671.601.600.976350.97635
0.150.150.168000.168000.900.900.796910.796911.651.650.980380.98038
0.200.200.222700.222700.950.950.820890.820891.701.700.983790.98379
0.250.250.276330.276331.001.000.842700.842701.751.750.986670.98667
0.300.300.328630.328631.051.050.862440.862441.801.800.989090.98909
0.350.350.379380.379381.101.100.880210.880211.851.850.991110.99111
0.400.400.428390.428391.151.150.896120.896121.901.900.992790.99279
0.450.450.475480.475481.201.200.910310.910311.951.950.994180.99418
0.500.500.520500.520501.251.250.922900.922902.002.000.995320.99532
0.550.550.563320.563321.301.300.934010.934012.502.500.999590.99959
0.600.600.603860.603861.351.350.943760.943763.003.000.999980.99998
0.650.650.642030.642031.401.400.952290.952293.303.300.9999980.999998**
0.700.700.677800.677801.451.450.959700.95970

Q(x)Q(x) function

@@ -1672,7 +1542,143 @@ h400000v40h-400000z"/>​

Adapted from table 6.1 M F Mesiya - Contemporary Communication Systems

+

erf(x)\text{erf}(x) function

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
xxerf(x)\text{erf}(x)xxerf(x)\text{erf}(x)xxerf(x)\text{erf}(x)
0.000.000.000000.000000.750.750.711160.711161.501.500.966110.96611
0.050.050.056370.056370.800.800.742100.742101.551.550.971620.97162
0.100.100.112460.112460.850.850.770670.770671.601.600.976350.97635
0.150.150.168000.168000.900.900.796910.796911.651.650.980380.98038
0.200.200.222700.222700.950.950.820890.820891.701.700.983790.98379
0.250.250.276330.276331.001.000.842700.842701.751.750.986670.98667
0.300.300.328630.328631.051.050.862440.862441.801.800.989090.98909
0.350.350.379380.379381.101.100.880210.880211.851.850.991110.99111
0.400.400.428390.428391.151.150.896120.896121.901.900.992790.99279
0.450.450.475480.475481.201.200.910310.910311.951.950.994180.99418
0.500.500.520500.520501.251.250.922900.922902.002.000.995320.99532
0.550.550.563320.563321.301.300.934010.934012.502.500.999590.99959
0.600.600.603860.603861.351.350.943760.943763.003.000.999980.99998
0.650.650.642030.642031.401.400.952290.952293.303.300.9999980.999998**
0.700.700.677800.677801.451.450.959700.95970

**The value of erf(3.30)\text{erf}(3.30) should be ≈0.999997\approx0.999997 instead, but this value is quoted in the formula table.

+

Receiver output shit

ro(t)={so1(t)+no(t)code 1so2(t)+no(t)code 0n:AWGN with σo2\begin{align*} r_o(t)&=\begin{cases} @@ -1718,8 +1724,8 @@ h400000v40h-400000z"/>​ -W=Babs-absW=B_\text{\color{lime}abs-abs} -W=BabsW=B_\text{\color{lime}abs} +W=Babs-absW=B_\text{\color{green}abs-abs} +W=BabsW=B_\text{\color{green}abs} W=Babs-abs=1+αT=(1+α)DW=B_\text{abs-abs}=\frac{1+\alpha}{T}=(1+\alpha)D @@ -1740,7 +1746,7 @@ h400000v40h-400000z"/>​

Nyquist stuff

-

Condition for 0 ISI TODO:

+

TODO: Condition for 0 ISI

Pr(kT)={1k=00k≠0P_r(kT)=\begin{cases} 1 & k=0\\ 0 & k\neq0 @@ -1753,7 +1759,6 @@ h400000v40h-400000z"/>​

-

Table of bandpass signalling and BER

@@ -1955,7 +1960,7 @@ M1001 80h400000v40h-400000z"/> - + diff --git a/README.md b/README.md index 5c21a19..843ace9 100644 --- a/README.md +++ b/README.md @@ -1,12 +1,14 @@ # Idiot's guide to ELEC4402 communication systems + + This unit allows you to bring infinite physical notes (except books borrowed from the UWA library) to all tests and the final exam. You can't rely on what material they provide in the test/exam, it is very _minimal_ to say the least. Hope this helps. If you have issues or suggestions, [raise them on GitHub](https://github.com/peter-tanner/IDIOTS-GUIDE-TO-ELEC4402-communication-systems/issues/new). I accept [pull requests](https://github.com/peter-tanner/IDIOTS-GUIDE-TO-ELEC4402-communication-systems/pulls) for fixes or suggestions but the content must not be copyrighted under a non-GPL compatible license. -## [Download PDF 📄](/README.pdf) +## [Download PDF 📄](https://raw.githubusercontent.com/peter-tanner/IDIOTS-GUIDE-TO-ELEC4402-communication-systems/refs/heads/master/README.pdf) -It is recommended to refer to use [the PDF copy](/README.pdf) instead of whatever GitHub renders. +It is recommended to refer to use [the PDF copy](https://raw.githubusercontent.com/peter-tanner/IDIOTS-GUIDE-TO-ELEC4402-communication-systems/refs/heads/master/README.pdf) instead of whatever GitHub renders. ## License and information @@ -145,7 +147,7 @@ G_y(f)&=G(f)G_w(f)\\ | ergodic in mean | $$\lim_{T\to\infty}\braket{X(t)}_T=m_X(t)=m_X$$ | $$\lim_{T\to\infty}\text{VAR}[\braket{X(t)}_T]=0$$ | | ergodic in autocorrelation function | $$\lim_{T\to\infty}\braket{X(t+\tau)X(t)}_T=R_X(\tau)$$ | $$\lim_{T\to\infty}\text{VAR}[\braket{X(t+\tau)X(t)}_T]=0$$ | -**A WSS random process needs to be both ergodic in mean and autocorrelation to be considered an ergodic process** +Note: **A WSS random process needs to be both ergodic in mean and autocorrelation to be considered an ergodic process** ### Other identities @@ -234,7 +236,7 @@ h(t)&=h_I(t)\cos(2\pi f_c t)-h_Q(t)\sin(2\pi f_c t)\\ m_a&=k_a A_m \quad\text{ (Symmetrical $m(t)$)}\\ x(t)&=A_c\cos(2\pi f_c t)\left[1+k_a m(t)\right]=A_c\cos(2\pi f_c t)\left[1+m_a m(t)/A_c\right], \\ &\text{where $m(t)=A_m\hat m(t)$ and $\hat m(t)$ is the normalized modulating signal}\\ - P_c &=\frac{{A_c}^2}{2}\quad\text{Carrier power}\\ + P_c &=\frac{ {A_c}^2}{2}\quad\text{Carrier power}\\ P_x &=\frac{1}{4}{m_a}^2{A_c}^2\\ \eta&=\frac{\text{Signal Power}}{\text{Total Power}}=\frac{P_x}{P_x+P_c}\\ B_T&=2f_m=2B @@ -280,8 +282,8 @@ Overmodulation (resulting in phase reversals at crossing points): $m_a>1$ ```math \begin{align*} - P_\text{av}&=\frac{{A_c}^2}{2}\\ - P_\text{band\_index}&=\frac{{A_c}^2{J_\text{band\_index}}^2(\beta)}{2}\\ + P_\text{av}&=\frac{ {A_c}^2}{2}\\ + P_\text{band\_index}&=\frac{ {A_c}^2{J_\text{band\_index}}^2(\beta)}{2}\\ \text{band\_index}&=0\implies f_c+0f_m\\ \text{band\_index}&=1\implies f_c+1f_m,\dots\\ \end{align*} @@ -425,6 +427,8 @@ Do not transmit more than $2B$ samples per second over a channel of $B$ bandwidt ### Insert here figure 8.3 from M F Mesiya - Contemporary Communication Systems (Add image to `images/sampling.png`) +Cannot add directly due to copyright! + ![sampling](copyrighted_images/sampling.png) ![sampling](images/sampling.png) @@ -450,6 +454,8 @@ Do not transmit more than $2B$ samples per second over a channel of $B$ bandwidt ### Insert here figure 8.17 from M F Mesiya - Contemporary Communication Systems (Add image to `images/quantizer.png`) +Cannot add directly due to copyright! + ![quantizer](copyrighted_images/quantizer.png) ![quantizer](images/quantizer.png) @@ -499,7 +505,7 @@ b_n:\{1,0\}\to a_n:\{1,0\} \begin{align*} s_1(t)&=A_c\sqrt{\frac{T_b}{2}}\varphi_1(t)=\sqrt{2E_b}\varphi_1(t)\\ s_1(t)&=0\\ - &\text{Since $E_b=E_\text{average}=\frac{1}{2}(\frac{{A_c}^2}{2}\times T_b + 0)=\frac{{A_c}^2}{4}T_b$} + &\text{Since $E_b=E_\text{average}=\frac{1}{2}(\frac{ {A_c}^2}{2}\times T_b + 0)=\frac{ {A_c}^2}{4}T_b$} \end{align*} ``` @@ -527,7 +533,7 @@ b_n:\{1,0\}\to a_n:\{1,\color{green}-1\color{white}\} \begin{align*} s_1(t)&=A_c\sqrt{\frac{T_b}{2}}\varphi_1(t)=\sqrt{E_b}\varphi_1(t)\\ s_1(t)&=-A_c\sqrt{\frac{T_b}{2}}\varphi_1(t)=-\sqrt{E_b}\varphi_2(t)\\ - &\text{Since $E_b=E_\text{average}=\frac{1}{2}(\frac{{A_c}^2}{2}\times T_b + \frac{{A_c}^2}{2}\times T_b)=\frac{{A_c}^2}{2}T_b$} + &\text{Since $E_b=E_\text{average}=\frac{1}{2}(\frac{ {A_c}^2}{2}\times T_b + \frac{ {A_c}^2}{2}\times T_b)=\frac{ {A_c}^2}{2}T_b$} \end{align*} ``` @@ -582,22 +588,22 @@ Note on energy per symbol: Since $|s_i(t)|=A_c$, have to normalize distance as f
Code

-tBitstream[bitstream_, Tb_, title_] := 
+tBitstream[bitstream_, Tb_, title_] :=
   Module[{timeSteps, gridLines, plot},
-   timeSteps = 
-    Flatten[Table[{(n - 1)     Tb, bitstream[[n]]}, {n, 1, 
-        Length[bitstream]}] /. {t_, v_} :> {{t, v}, {t + Tb, v}}, 1]; 
+   timeSteps =
+    Flatten[Table[{(n - 1)     Tb, bitstream[[n]]}, {n, 1,
+        Length[bitstream]}] /. {t_, v_} :> { {t, v}, {t + Tb, v}}, 1];
    gridLines = {Join[
-      Table[{n  Tb, Dashed}, {n, 1, 2  Length[bitstream], 2}], 
+      Table[{n  Tb, Dashed}, {n, 1, 2  Length[bitstream], 2}],
       Table[{n  Tb, Thin}, {n, 0, 2  Length[bitstream], 2}]], None};
-   plot = 
-    Labeled[ListLinePlot[timeSteps, InterpolationOrder -> 0, 
-      PlotRange -> Full, GridLines -> gridLines, PlotStyle -> Thick, 
-      Ticks -> {Table[{n     Tb, 
-          Row[{n, "\!\(\*SubscriptBox[\(T\), \(b\)]\)"}]}, {n, 0, 
-          Length[bitstream]}], {-1, 0, 1}}, 
-      LabelStyle -> Directive[Bold, 12], 
-      PlotRangePadding -> {Scaled[.05]}, AspectRatio -> 0.1, 
+   plot =
+    Labeled[ListLinePlot[timeSteps, InterpolationOrder -> 0,
+      PlotRange -> Full, GridLines -> gridLines, PlotStyle -> Thick,
+      Ticks -> {Table[{n     Tb,
+          Row[{n, "\!\(\*SubscriptBox[\(T\), \(b\)]\)"}]}, {n, 0,
+          Length[bitstream]}], {-1, 0, 1}},
+      LabelStyle -> Directive[Bold, 12],
+      PlotRangePadding -> {Scaled[.05]}, AspectRatio -> 0.1,
       ImageSize -> Large], {Style[title, "Text", 16]}, {Right}]];
 
 tBitstream[{0, 1, 0, 0, 1, 0, 1, 1, 1, 0}, 1, "Bitstream Step Plot"]
@@ -655,26 +661,6 @@ Bit error rate (BER) from matched filter outputs and filter output noise
 
 ## Value tables for $\text{erf}(x)$ and $Q(x)$
 
-### $\text{erf}(x)$ function
-
-| $x$    | $\text{erf}(x)$ | $x$    | $\text{erf}(x)$ | $x$    | $\text{erf}(x)$ |
-| ------ | --------------- | ------ | --------------- | ------ | --------------- |
-| $0.00$ | $0.00000$       | $0.75$ | $0.71116$       | $1.50$ | $0.96611$       |
-| $0.05$ | $0.05637$       | $0.80$ | $0.74210$       | $1.55$ | $0.97162$       |
-| $0.10$ | $0.11246$       | $0.85$ | $0.77067$       | $1.60$ | $0.97635$       |
-| $0.15$ | $0.16800$       | $0.90$ | $0.79691$       | $1.65$ | $0.98038$       |
-| $0.20$ | $0.22270$       | $0.95$ | $0.82089$       | $1.70$ | $0.98379$       |
-| $0.25$ | $0.27633$       | $1.00$ | $0.84270$       | $1.75$ | $0.98667$       |
-| $0.30$ | $0.32863$       | $1.05$ | $0.86244$       | $1.80$ | $0.98909$       |
-| $0.35$ | $0.37938$       | $1.10$ | $0.88021$       | $1.85$ | $0.99111$       |
-| $0.40$ | $0.42839$       | $1.15$ | $0.89612$       | $1.90$ | $0.99279$       |
-| $0.45$ | $0.47548$       | $1.20$ | $0.91031$       | $1.95$ | $0.99418$       |
-| $0.50$ | $0.52050$       | $1.25$ | $0.92290$       | $2.00$ | $0.99532$       |
-| $0.55$ | $0.56332$       | $1.30$ | $0.93401$       | $2.50$ | $0.99959$       |
-| $0.60$ | $0.60386$       | $1.35$ | $0.94376$       | $3.00$ | $0.99998$       |
-| $0.65$ | $0.64203$       | $1.40$ | $0.95229$       | $3.30$ | $0.999998$\*\*  |
-| $0.70$ | $0.67780$       | $1.45$ | $0.95970$       |        |                 |
-
 ### $Q(x)$ function
 
 | $x$    | $Q(x)$     | $x$    | $Q(x)$                  | $x$    | $Q(x)$                   | $x$    | $Q(x)$                   |
@@ -724,12 +710,34 @@ Bit error rate (BER) from matched filter outputs and filter output noise
 | $2.10$ | $0.017864$ | $4.40$ | $5.4125 \times 10^{-6}$ | $6.65$ | $1.4655 \times 10^{-11}$ | $8.90$ | $2.7923 \times 10^{-19}$ |
 | $2.15$ | $0.015778$ | $4.45$ | $4.2935 \times 10^{-6}$ | $6.70$ | $1.0421 \times 10^{-11}$ | $8.95$ | $1.7774 \times 10^{-19}$ |
 | $2.20$ | $0.013903$ | $4.50$ | $3.3977 \times 10^{-6}$ | $6.75$ | $7.3923 \times 10^{-12}$ | $9.00$ | $1.1286 \times 10^{-19}$ |
-| $2.25$ | $0.012224$ |        |                         |        |                          |
+| $2.25$ | $0.012224$ |        |                         |        |                          |        |                          |
 
 Adapted from table 6.1 M F Mesiya - Contemporary Communication Systems
 
+### $\text{erf}(x)$ function
+
+| $x$    | $\text{erf}(x)$ | $x$    | $\text{erf}(x)$ | $x$    | $\text{erf}(x)$ |
+| ------ | --------------- | ------ | --------------- | ------ | --------------- |
+| $0.00$ | $0.00000$       | $0.75$ | $0.71116$       | $1.50$ | $0.96611$       |
+| $0.05$ | $0.05637$       | $0.80$ | $0.74210$       | $1.55$ | $0.97162$       |
+| $0.10$ | $0.11246$       | $0.85$ | $0.77067$       | $1.60$ | $0.97635$       |
+| $0.15$ | $0.16800$       | $0.90$ | $0.79691$       | $1.65$ | $0.98038$       |
+| $0.20$ | $0.22270$       | $0.95$ | $0.82089$       | $1.70$ | $0.98379$       |
+| $0.25$ | $0.27633$       | $1.00$ | $0.84270$       | $1.75$ | $0.98667$       |
+| $0.30$ | $0.32863$       | $1.05$ | $0.86244$       | $1.80$ | $0.98909$       |
+| $0.35$ | $0.37938$       | $1.10$ | $0.88021$       | $1.85$ | $0.99111$       |
+| $0.40$ | $0.42839$       | $1.15$ | $0.89612$       | $1.90$ | $0.99279$       |
+| $0.45$ | $0.47548$       | $1.20$ | $0.91031$       | $1.95$ | $0.99418$       |
+| $0.50$ | $0.52050$       | $1.25$ | $0.92290$       | $2.00$ | $0.99532$       |
+| $0.55$ | $0.56332$       | $1.30$ | $0.93401$       | $2.50$ | $0.99959$       |
+| $0.60$ | $0.60386$       | $1.35$ | $0.94376$       | $3.00$ | $0.99998$       |
+| $0.65$ | $0.64203$       | $1.40$ | $0.95229$       | $3.30$ | $0.999998$\*\*  |
+| $0.70$ | $0.67780$       | $1.45$ | $0.95970$       |        |                 |
+
 \*\*The value of $\text{erf}(3.30)$ should be $\approx0.999997$ instead, but this value is quoted in the formula table.
 
+
+ ### Receiver output shit ```math @@ -800,7 +808,7 @@ To solve this type of question: ### Nyquist stuff -#### Condition for 0 ISI TODO: +#### TODO: Condition for 0 ISI ```math P_r(kT)=\begin{cases} @@ -819,8 +827,6 @@ P_r(kT)=\begin{cases} \end{align*} ``` -
- ### Table of bandpass signalling and BER | **Binary Bandpass Signaling** | **$B_\text{null-null}$ (Hz)** | **$B_\text{abs-abs}\color{red}=2B_\text{abs}$ (Hz)** | **BER with Coherent Detection** | **BER with Noncoherent Detection** | @@ -843,7 +849,7 @@ Adapted from table 11.4 M F Mesiya - Contemporary Communication Systems | Modulation | $G_x(f)$ | | ---------- | ------------------------------------------------------------------------------------------------- | -| Quadrature | $\color{red}\frac{{A_c}^2}{4}[G_I(f-f_c)+G_I(f+f_c)+G_Q(f-f_c)+G_Q(f+f_c)]$ | +| Quadrature | $\color{red}\frac{ {A_c}^2}{4}[G_I(f-f_c)+G_I(f+f_c)+G_Q(f-f_c)+G_Q(f+f_c)]$ | | Linear | $\color{red}\frac{\|V(f)\|^2}{2}\sum_{l=-\infty}^\infty R(l)\exp(-j2\pi l f T)\quad\text{What??}$ | ### Symbol error probability diff --git a/README.pdf b/README.pdf index 03b4980..abe0307 100644 Binary files a/README.pdf and b/README.pdf differ
QuadratureAc24[GI(f−fc)+GI(f+fc)+GQ(f−fc)+GQ(f+fc)]\color{red}\frac{{A_c}^2}{4}[G_I(f-f_c)+G_I(f+f_c)+G_Q(f-f_c)+G_Q(f+f_c)]Ac24[GI(f−fc)+GI(f+fc)+GQ(f−fc)+GQ(f+fc)]\color{red}\frac{ {A_c}^2}{4}[G_I(f-f_c)+G_I(f+f_c)+G_Q(f-f_c)+G_Q(f+f_c)]
Linear