Determine and plot the magnitude and phase spectra of the periodic triangular signal x(t) with a period = 8 over (-4,4]. Use the following code segment and the functions called within this code (posted to Evaltools in the Labex_1 zip folder). echo off clear all; clc; fnct='lambda': a=-4; b=4; n=24; tol=0.1; xx=fseries (fnct, a, b, n, tol); xx1=xx (n+1:-1:2); xx1=[conj (xx1), Xx]; absxx1=abs (xx1); n1=[-n:n]: figure (1); clf; stem (nl, absxxl); title('The Discrete Magnitude Spectrum'); phasexx1=angle (xx1); figure (2); clf; stem (n1, phasexx1); title ('The Discrete Phase Spectrum'); Lambda.m X Fseries.m + function y=lambda (x) y=lambda (x) generates a triangular signal y=(x+1).* (x>-1 & x<0)+(x==0) + (-x+1).* (x>0 & x<1); Fseries.mx + 1 function xx-fseries (funfon, a, b,n, tol, p1, P2, P3) 2 FSERIES Returns the Fourier series coefficients. 3 XX-FSERIES (FUNFCN, A, B, N, TOL, P1, P2, P3) 4 funfcn=the given function, in an m-file. 5 $ It can depend on up to three parameters 6 pl,p2, and p3. The function is given over one period extending from 'a' to 'b! 8 xx-vector of length n+l of Fourier Series 9 Coefficients, xx0, xxl,...,xxn. 10 p1, p2,p3-parameters of funton. 11 tol=the error level. 12 13 - 3-sqrt(-1); 14 args0=0); 15 - for nn-l:nargin-5 16 args0=[args0,',p', int2str (nn)); 17 - end 18 - args-[argso,' '; 19 - t=b-a; 20 xx (1)-eval(['1/(', num2str (t),'). * quad(funfen, a, b, tol, [l', args]); 21 22 - for i-lin 23 - new fun = 'exp_fnet'; 24 - args-[',', num2 str(i), ,', num2 str(t), args0, ")"]; 25 xx (i+1)=eval(['1/('.num2 str(t),').quad (new_fun, a, b, tol, (), funfcn', args]); 26 end