function J=jacobian_map_phi_odd(bodd)
global mu sigma

m=length(bodd);

J=zeros(m,m);
c2fft=quadratic_sumFFT_real([bodd;zeros(m,1)]);
c2fft=c2fft.';

for n=1:m
    j=1:n;
    J(n,j)=(pi^2*(2*n-1)^2+sigma*mu)*(n==j)+real(6*sigma*(c2fft(n-j+1+1)-c2fft(n+j+1)));
    J(j,n)=J(n,j); 
end
end

function [s]=quadratic_sumFFT_real(a1)

m=length(a1);
b1=-flipud(a1(1:m));
ta1=[zeros(m,1);0;b1;a1;zeros(m,1)];
tu1=ifft(ifftshift(ta1));
Ft=fftshift(fft(tu1.*tu1));
s=(4*m+1)*Ft(2*m+1:3*m+1);
end







