%
% This source code is freely distributed from the "colormonogenic" website:
% http://xlim-sic.labo.univ-poitiers.fr/projets/colormonogenic/
% published in 2018,
% which presents the main research results by 
% Raphaël Soulard & Philippe Carré,
% from the XLIM Laboratory (UMR CNRS 7252),
% University of Poitiers, France.
%
% Author: R. Soulard.
%

% Subfunction for the radial filterbank 'mwt_radial.m'
%
% Experimentally pre-computed normalization constants 
% according to the chosen wavelet definition.
% Scales from 1 to ...
%
% (No dependencies)
%

% Supported wavelet types 'typ':
% {'GaussianHP'}
% {'GaussianLP'}
% {'Storath',order} (order in {0..5})
% {'UnserSimonc'}
% {'UnserMeyer'}
% {'UnserPapadakis'}
% {'UnserShannon'}
% {'PadU1D'}

function norm_csts = mwt_get_norm_csts( typ )
switch typ{1},
case 'GaussianHP', % ---------------------------------------------------- %
  % with sigma=1:
  norm_csts = [ 0.8731180559;...
                0.8552071666;...
                0.8119513116;...
                0.8084951635;...
                0.8082578144;...
                0.8082425469;...
                0.8082413875 ];

case 'GaussianLP', % ---------------------------------------------------- %
  norm_csts = [  0.8355995993;... 
                 0.9759332331;...
                 0.8809474635;...
                 0.8546453370;...
                 0.8483564705;...
                 0.8468012786    ];
               
case 'Storath', % ------------------------------------------------------- %
  if length(typ)>1,
    w_order = typ{2};
  else
    w_order = 2; % parameter 'order' in {0,1,2,3,4,5}
  end
  switch w_order,
  case 0, norm_csts = [  0.9419281918; 0.5816475120  ]; % measured
  case 2, norm_csts = [  0.9427196648; 0.5777879378    ]; % measured
  case 5, norm_csts = [  0.9429372424; 0.5767218314    ]; % measured
  otherwise  norm_csts = [  0.9427; 0.577 ]; % imagined ...
  end
  %
  % feel free to measure accurate constants for the other orders...
  %
case 'UnserSimonc', % --------------------------------------------------- %
  norm_csts = [ 0.9472498833;...
                0.5551123377;...
                0.5550829672;...
                0.5546819554    ];
  
case 'UnserMeyer', % ---------------------------------------------------- %
  norm_csts = [ 0.9428275798;...
                0.5772594450;...
                0.5772739668;...
                0.5785531351    ];
               
case 'UnserPapadakis', % ------------------------------------------------ %
  norm_csts = [ 0.9342635973;...
                0.6176182957;...
                0.6175721974;...
                0.6178892835    ];
case 'UnserShannon', % -------------------------------------------------- %
  norm_csts = [ 0.8968736389;...
                0.7673768224;...
                0.7654655446;...
                0.7603453163    ];
case 'PadU1D', % ------------------------------------------------------ %
  norm_csts = [ 0.9595129663;...
                0.4877926252;...
                0.4879524953;...
                0.4872284132;...
                0.4808575023    ];

end % end switch typ{1}

