Any POD like numeric type is supported in uBlas. As long as the regular operators (+,-,*) are defined for that type, and it has regular construction semantics. You can even use it with boost multiprecision to achieve arbitrary precision arithmetic.

Something that may be an issue is the behavior of these types with streams. You may need to overload operator<< for these to behave properly.


On 1/18/19 9:32 AM, Robert Firl via ublas wrote:

Hello Everyone,


Note that I have not reviewed all of the documentation.  I have looked at the Overview page.  Plus, I have performed uBLAS include directory searches on the phrases:


long double






What I am trying to determine is the highest precision floating point type supported by uBLAS.  It looks to be long double, hopefully as an 80-bit representation.  Is this correct?


If not, if a compiler supports 128-bit floating point, does uBLAS through the type_traits, value_type use support the boost::float128_t type?


Here at my employer, there is a series of algorithmic tests we have to do on an implementation with double.  The current implementation may be losing precision.  The tests need higher precision to prove whether this hypothesis is correct. An 80-bit long double is enough.  However, if the boost::float128_t is fully supported in uBLAS, then it is already known how to fully enable the 128-bit floating point support. Thank you all for your help.






PS The Gmane newsgroup auto authorization e-mail reply address has an issue.  Three times now, I have replied to the authorization message.  Within a minute of clicking send, I receive a rejected message that the "authorization code" has status 550 unknown user.  I assume this indicates a Gmane issue.  Is that correct?


ublas mailing list
Sent to: