function [g]=square_root_raised_cosine(alfa,points,intervals) %function [g]=square_root_raised_cosine(alfa,points,intervals) %alfa: roll off factor (01) disp('error: wrong roll-off factor'); return; end t=-intervals:1/points:intervals; warning off; g=(4*alfa.*t.*cos((1+alfa)*pi*t)+sin((1-alfa)*pi*t))./t./(1-(4*alfa*t).^2)/pi; if alfa~=0 a=(1+alfa)*pi/4/alfa; b=(1-alfa)*pi/4/alfa; c=(4*alfa*cos(a)-(1+alfa)*pi*sin(a)+(1-alfa)*pi*cos(b))/2/pi*-1; g(t==1/4/alfa)=c; g(t==-1/4/alfa)=c; end g(t==0)=(4*alfa+(1-alfa)*pi)/pi; g=g/(points)^0.5; warning on