yade.minieigenHP module

When yade uses high-precision number as Real type the usual (old) import minieigen has to be replaced with:

import yade.minieigenHP as minieigen

This command ensures backward compatibility between both because this module contains only these four lines:

if(yade.config.highPrecisionBits != 64):
        from yade._minieigenHP import *
else:
        from minieigen import *

This approach guarantees that minieigenHP library uses exactly the same number of decimal places as yade is using everywhere else.

Please note that such precision can be very arbitrary, because cpp_bin_float or mpfr take it as a compile-time argument. Hence such minieigenHP cannot be separately precompiled as a package. Though it could be precompiled for some special types such as boost::multiprecision::float128.