On Tue, Dec 14, 2010 at 10:13:32PM +0000, Garth N. Wells wrote: > > > On 14/12/10 16:13, Benjamin Kehlet wrote: > >On 26 November 2010 00:04, Anders Logg<[email protected]> wrote: > >>On Thu, Nov 25, 2010 at 11:02:54PM +0000, Garth N. Wells wrote: > >>> > >>> > >>>On 25/11/10 22:48, Benjamin Kehlet wrote: > >>>>On 25 November 2010 23:29, Garth N. Wells<[email protected]> wrote: > >>>>> > >>>>> > >>>>>On 25/11/10 20:17, Anders Logg wrote: > >>>>>> > >>>>>>On Thu, Nov 25, 2010 at 05:55:36PM +0000, Garth N. Wells wrote: > >>>>>>> > >>>>>>> > >>>>>>>On 25/11/10 17:34, Anders Logg wrote: > >>>>>>>> > >>>>>>>>On Thu, Nov 25, 2010 at 05:07:40PM +0000, Garth N. Wells wrote: > >>>>>>>>> > >>>>>>>>>There is a dependency on > >>>>>>>>> > >>>>>>>>> dolfin/ode/SORSolver.h > >>>>>>>>> > >>>>>>>>>in dolfin/common/real.cpp. This seems odd to me. Is there a reason > >>>>>>>>>for > >>>>>>>>>it? > >>>>>>>>> > >>>>>>>>>Garth > >>>>>>>> > >>>>>>>>real.h/cpp provide some basic algorithms that work on high precision > >>>>>>>>floats. One of these is the matrix exponential which is computed by a > >>>>>>>>rational approximation, hence the need for solving a linear system. > >>>>>>>> > >>>>>>>>The SORSolver is the only solver in DOLFIN that handles high precision > >>>>>>>>floats (uBLAS etc can't be used). > >>>>>>> > >>>>>>>What is the typical system size? > >>>>>>> > >>>>>>>Garth > >>>>>> > >>>>>>We have used it for (dense) matrices of size up to 100 x 100 for > >>>>>>computing quadrature weights etc for the cG(100) method. > >>>>>> > >>>>> > >>>>>You could try Armadillo? I guess it can be templated over the higher > >>>>>precision floats. > >>>> > >>>>Yes. With uBLAS the problem was that, even if it is templated, it > >>>>relied on non-templated code (eg. stuff in cmath). > >>>>Also Peter Gottschling claims that MTL4 can do this. Maybe it is worth a > >>>>try? > >>>> > >>> > >>>I would try Armadillo since it's already a required dependency, and > >>>it's targeted more at dense problems than MTL4 is. > >>> > >>>Garth > >> > >>Agree. > >> > > > >It turns out Armadillo can not handle gmp types. > >The Armadillo documentation says: "... type can be one of: char, int, > >float, double, std::complex<double>, etc.". However, the promising > >"etc." does not contain the gmp types. > > Have you tried it with gmp types?
I think that's what he's saying. He tried whether "etc" worked with GMP types and it didn't work. Benjamin? -- Anders > Garth > > >So, any other suggestions? Or should we leave as it is (ie. use real*) > >and just clean up the code and add comments? > > > >Benjamin _______________________________________________ Mailing list: https://launchpad.net/~dolfin Post to : [email protected] Unsubscribe : https://launchpad.net/~dolfin More help : https://help.launchpad.net/ListHelp

