One of the homeworks I had to do during my Communication Systems course at the PoliTO was calculating some attenuation values of a copper line in function of distance and frequence, based on the MAR1 model. Oddly enough, Googling MAR1 I couldn’t find a single thing about the model so I decided to post my work here so people can take a look at how it works. I’ve made this in Matlab.

The following function computes the attenuation:

function [att] = mar1(d, f) % mar1(d, f) Calculates the attenuation in dB % depending on length d (in km) and % frequency f (in Hz) mu0 = 4*pi*10^-4; R0 = 277.623806; Lalpha = 421.576013 * 10^-6; Linf = Lalpha; a = 1.470148; b = 2; c = 2.765; delta = 0.001123; C1Mhz = 49.792437 * 10^-9; Zl = 100; Zs = Zl; Cf = C1Mhz * (f / 10^6)^-(2*delta/pi) * cos(delta); sf = (mu0 * 1i * f) / ((0.75^2) * R0); Zf = 1i * 2 * pi * f * Linf + R0 * ((1/4) + (3/4) * sqrt(1 + (a*sf*(sf+b))/(sf+c))); Yf = 2*pi*f*Cf*(1i+tan(delta)); Z0 = sqrt(Zf/Yf); gamma = sqrt(Zf * Yf); A = cosh(gamma*d); B = Z0*sinh(gamma*d); C = (1/Z0) * sinh(gamma*d); D = cosh(gamma*d); ratio = Zl / (A*Zl + B + C * Zl * Zs + D * Zs); att=20*log10(abs(1/ratio)); |

If you put this in a nested loop that iterates over some distances and frequencies and plot it afterwards, you get a nice result such as this.

This shows you why ADSL is slower than for example internet access by cable. A reason why more recent versions of ADSL and VDSL are faster is because the line length is shortened and thus the frequency can be raised, and in turn so is the symbol rate.