function [left, right] = ggdfwhm(mu, alpha, beta) % Half the Maximum: hm = ggdpdf(mu, mu, alpha, beta) / 2; f = @(x)(ggdpdf(x, mu, alpha, beta) - hm); % Find roots left and right of center peak: left = fzero(f, [mu - 3 * alpha, mu]); right = fzero(f, [mu, mu + 3 * alpha]); end function p = ggdpdf(x, mu, alpha, beta) % % PDF of Generalized Gaussian Distribution % https://en.wikipedia.org/wiki/Generalized_normal_distribution % % Equivalent to normpdf if beta == 2; then sigma = alpha^2 / 2. % p = beta ./ (2 * alpha * gamma(1/beta)) .* exp(-(abs(x-mu)/alpha).^beta); end