Eu preciso implementar uma aproximação ao inverso de , ou seja, a função quadrada de super raiz (ssrt). Por exemplo, meios que . Não estou tão interessado em nenhuma precisão / profundidade de bits em particular quanto em entender quais são minhas opções em contraste com abordagens mais diretas usando séries de potência.
O Wolfram Alpha fornece uma boa solução simbólica em termos da função Lambert W (ou seja, ). Wikipedia dá a mesma fórmula , bem como o equivalente . Dado que há uma quantidade razoável de informações sobre o cálculo de para uma variedade de requisitos. Conheço pelo menos dois livros que detalham detalhadamente a aproximação de ln ( x ) [1] [2], tecnicamente isso é tudo o que é necessário para implementar algo [3] [4], então há muito espaço para otimizar a partir dessa direção.
No entanto, tenho duas perguntas:
- As técnicas de aproximação específicas para esta função foram publicadas em algum lugar?
- Ele tem outro nome além de "super raiz quadrada" que tornaria a busca por referências um pouco mais fácil?
O Wikipedia / Google encontrou algumas referências dedicadas a funções mais gerais de "tetração" que incluem como um caso especial, mas a maioria deles parecem ser mais orientada para explorar / definindo os casos gerais.
-
- Corless, R .; Gonnet, G .; Hare, D .; Jeffrey, D .; Knuth, Donald (1996), "Sobre a função Lambert W" http://www.apmaths.uwo.ca/~djeffrey/Offprints/W-adv-cm.pdf
- Biblioteca Digital de Funções Matemáticas . http://dlmf.nist.gov/4.13
- Crenshaw, Jack W. (2000), Math Toolkit for Real-Time Programming.
- Hart, John F. (1978), Computer Approximations.
- Chapeau-Blondeau, F. e Monir, A. (2002). Avaliação numérica da função Lambert W e aplicação na geração de ruído gaussiano generalizado com expoente 1/2. Transações IEEE no processamento de sinais 50, 2160-2165. http://www.istia.univ-angers.fr/~chapeau/papers/lambertw.pdf
- Minero, Paul. Rápido aproximado Lambert W . http://www.machinedlearnings.com/2011/07/fast-approximate-lambert-w.html
-
Atualizar
Depois de fazer mais algumas pesquisas ao longo dos últimos dias, eu ainda não encontrei o tipo de hands-on "estilo Crenshaw" tratamento de s s r t ( x ) que eu estava esperando, mas eu encontrar um novo referência que vale a pena documentar aqui. Na página três em [ 5 ] , há uma seção intitulada "Aproximação rápida", que detalha a aproximação de W ( x ) no contexto da geração de ruído. Como um aparte interessante, a densidade de probabilidade do "ruído gaussiano com expoente 1/2" [no artigo] parece surpreendentemente semelhante ao histograma na resposta de Kellenjb paraesta pergunta sobre a detecção de recorte de sinal .
Além disso, o link fornecido por rwong nos comentários é um excelente recurso para realmente implementar o W ( x ) , e até vincula ao projeto licenciado por BSD do autor chamado fastapprox , que inclui a implementação descrita.