function [y,N,tol]=Wstrs(x,tol)
% Den här matlabfunktionen beräknar funktionsserien 
% f(x) = summa 2^(-k/2)*sin((2^k)*x) (k löper från ett till oändligheten). 
% f(x) är kontinuerlig men ingenstans deriverbar!
% Följande kommandon genererar grafen för  f(x):
% > x=-1:.01:4; y=brown(x); plot(x,y)
a=min(x);b=max(x);l=length(x);

if ~exist('tol')
   if a==b
      tol = 1E-4;
   else
      tol = (b-a)./(l.*100);
   end
end
xk=rem(2*x,2*pi); % Heltalsmultipler av 2 pi tas bort!

%Nedan beräknas antalet termer (N) som skall tas med i serien 
%för att felet skall bli mindre än  tol.
N = ceil(2.*log((1+sqrt(2))./tol)./log(2));

y = zeros(size(x));
y = sin(xk)./sqrt(2); % 1:a termen i funktionsserien.

for k=2:N;
   xk=2.*xk;
   xk=rem(xk,2*pi); 
   y = y+sin(xk)./sqrt(2.^k); 
end

