function IL=VDSLIL(loopno,freq,len) %VDSLIL - Get get insertion loss given an ETSI VDSL loop, % a freq. axis, and a length. % % Parameter: loopno Loop number to test % Parameter: freq Frequency for test [Hz] % Parameter: len Length of loop [m] % Returns: IL Insertion loss [dB] % % Example(s): % % Insertion loss @ 300kHz for Loop#3 with a length of 2840m: % VDSLIL(3,300e3,2840) % % Find the reach for insertion loss 40.4069 @ 300kHz: % fzero(inline('VDSLIL(1,300e3,x)-40.4069'),2000) %% =========================================================================== %% =========================================================================== % Copyright (C): % 2001-2009 by Forschungszentrum Telekommunikation Wien, Austria; % All rights reserved. % Project : B1, FTW % Author(s) : Tomas Nordstrom (Tomas.Nordstrom@FTW.at) % % CVS: $Id: VDSLIL.m 752 2009-01-02 13:03:52Z tono $ %% =========================================================================== %% =========================================================================== % Change History % 2001-07-03 (ToNo) Created % 2002-01-25 (ToNo) Changed the IL calc to be more direct % 2003-11-03 (ToNo) Lists now use cell arrays for both Octave and Matlab %% =========================================================================== global ex; nomodems = 20+1; tt.name=sprintf('ETSI VDSL Loop %d len %.0fm',loopno,len); switch loopno case 1, cable='BT_dwug'; % TP100 tt.topology={{0, '', 'CO', ''},... {len, cable, 'N1', sprintf('%.0f m TP100',len)}}; tt.traffic={{1, 2, 'VDSL', nomodems}}; case 2, cable='KPN_L1'; % TP150 tt.topology={{0, '', 'CO', ''},... {len, cable, 'N1', sprintf('%.0f m TP150',len)}}; tt.traffic={{1, 2, 'VDSL', nomodems}}; case 3, tt.topology={{0, '', 'CO', ''},... {70, 'KPN_R2', 'E', sprintf('%.0f m TP100x',70)},... {len-70, 'KPN_L1', 'N1', sprintf('%.0f m TP150',len-70)}};% TP150 tt.traffic={{1, 3, 'VDSL', nomodems}}; otherwise estr=sprintf('Loop #d not implemented\n',loopno); error(estr); end; segs = length(tt.topology); IL = -getIL(ex,1,segs,tt.topology,freq,ex.param.Zterm);