Quadruple 128 bit Floating Point Library 1.0

Licença: Grátis ‎Tamanho do arquivo: 83.97 KB
‎Classificação dos utilizadores: 2.3/5 - ‎9 ‎votos

Sobre Quadruple 128 bit Floating Point Library

Assinado uma biblioteca de dados flutuante de 128 bits, com 64 bits de precisão eficazes (vs. 53 para o tipo duplo incorporado) e um expoente de 64 bits (vs. 11 para Duplos). Com maior precisão e maior alcance, os Quads são especialmente úteis quando se lida com valores muito grandes ou muito pequenos, como os de modelos probabilísticos. A adoção de uma precisão fixa maior em vez de um tipo de precisão arbitrária (como o BigDecimal de Java) significa que, embora ainda mais lenta do que a aritmética incorporada, a penalidade é apenas uma ordem de magnitude ou menos e, portanto, ainda viável em muitas aplicações pesadas em matemática. Por exemplo, num portátil Intel Core i5-2410M, mil milhões de multiplicações demoram 17 segundos com valores duplos, 135 segundos com valores Quad utilizando o operador sobrecarregado * e apenas 76 segundos utilizando o método Multiply (a sobrecarga mais alta de * deve-se à lógica de inlining pobre do compilador .Net/JIT optimizador). Em comparação, a solução comum para a subfluxo e transbordo de multiplicação, logaritmos resumindo, demora 130 segundos. Além de ser mais rápido e preciso do que a aritmética de log, quads também simplifica o código, eliminando a necessidade de lembrar quais as variáveis que são log'd e convertendo para trás e para a frente para valores de log'd. A biblioteca Quádrupla está escrita em C# (código fonte incluído) e alvos .Net 4.0; deve também ser facilmente portátil para .Net 2.0 e línguas semelhantes (como Java) com modificações simples.