Comments (4)
Hey Greg, thanks for taking a look at my project! I'm also aware of the issue and working on a fix, forwarding Base.Printf
calls for MultiFloat{T,N}
through conversion to BigFloat
, just like I've done with Base.show
. This is kind of janky, but print performance isn't a very high priority for me, so for interactive use this ought to be sufficient.
from multifloats.jl.
Here's a possible solution:
using MultiFloats
using Printf
import Printf: fix_dec, ini_dec
if VERSION < v"1.1"
fix_dec(out, d::MultiFloat, flags::String, width::Int, precision::Int, c::Char) =
fix_dec(out, BigFloat(d), flags, width, precision, c)
ini_dec(out, d::MultiFloat, ndigits::Int, flags::String, width::Int, precision::Int, c::Char) =
ini_dec(out, BigFloat(d), ndigits, flags, width, precision, c)
else
fix_dec(out, d::MultiFloat, flags::String, width::Int, precision::Int, c::Char, digits) =
fix_dec(out, BigFloat(d), flags, width, precision, c, digits)
ini_dec(out, d::MultiFloat, ndigits::Int, flags::String, width::Int, precision::Int, c::Char, digits) =
ini_dec(out, BigFloat(d), ndigits, flags, width, precision, c, digits)
end
from multifloats.jl.
@GregPlowman Nice, thanks! There needs to be a little more logic involving renormalization and setprecision
to ensure that no bits are lost in the conversion to BigFloat
, but it looks like those are definitely the right functions to implement. I really appreciate the tip about Julia versions, by the way -- I probably wouldn't have caught that myself.
Would you like to be credited in any way besides a mention in this comment?
from multifloats.jl.
Just updated to new version. All looks good.
Thanks for fixing this, and fast response.
(Please, no need for credit/mention)
from multifloats.jl.
Related Issues (20)
- Warning sign in Feature Comparison table
- Missing methods in conversion to Integer
- Promotion of Irrationals HOT 2
- Some rounding error issue between CPU & GPU HOT 4
- No method matching round(MF)
- ^ not defined.
- Convertion error
- `exp`, `log` and friends slow.
- `significand`, `frexp` not defined HOT 1
- Catastrophic loss of precision in `hypot` HOT 3
- Why warning about DoubleFloats allocation? HOT 1
- Support ranges (if possible) HOT 1
- Suboptimal performance of multiplication by an integer HOT 1
- bug: "clean" mode has worse accuracy than regular Float64 HOT 1
- bug: weird issues with big MultiFloats
- feature request: make prevfloat and nextfloat accept the optional integer argument
- Wrong or outdated claim, and suggestion HOT 4
- Loss of accuracy in `*` / `+` HOT 2
- `repr`
- sincos leads to stackoverflow HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from multifloats.jl.