-----Original Message----- From: Boost [mailto:boost-bounces@lists.boost.org] On Behalf Of Saurav Sent: Friday, April 12, 2013 9:20 AM To: boost@lists.boost.org Subject: [boost] Google Summer of Code 2013 - Boost.org - Boost.Multiprecision
Hi!
I am a CS undergraduate student and I really want to work on Boost.Multiprecisionhttps://svn.boost.org/trac/boost/wiki/SoC2013#Boost.Multiprecision. C++ has been my favorite programming language and I find GSoC 2013 a wonderful opportunity to create something valuable with it, while getting some 'value' out of it for myself.
That's all from my side. I wish to get through to Christopher Kormanyo, the mentor for the project I am interested in, to discuss more specifically about the further steps.
I hope you are studying https://svn.boost.org/trac/boost/wiki/SoC2013#Boost.Multiprecision http://www.boost.org/doc/libs/1_53_0/libs/multiprecision/doc/html/index.html and especially http://www.loria.fr/~zimmerma/mca/mca-cup-0.5.1.pdf If you study the existing decimal (radix = 10) implementation, you will see that multiprecision makes it rather complicated, even if the underlying algorithms are not. It must be specific for radix = 2 to be fast. Ask again if you are still interested after studying these documents, and some of the code. It would be useful to see if you can build some of the examples using Boost.Multiprecision decimal, perhaps using a Boost.Math function or two. Extra marks for devising and running a Boost.Test for what you compute. You could send or post a zip of your files and output. And/or you might also try out this example: ------------------------------------------------------------ Consider the sinc function known from fields such as optics, scattering, and radiation theory. sinc(x) = sin(x) / x Write a C++ program with a single template for the sinc function that handles float, double, long double, and the cpp_dec_float_50 type from Boost.Multiprecision. Please handle negative arguments elegantly using simple reflection. For arguments very close to zero, use std::numeric_limits<T>::epsilon() to find the cutoff where the function should return 1. Describe in a few sentences how your solution uses templates to create a generic numerical program for the sinc function. Verify your numerical results for all four data types, for example, with data from Wolfram's Alpha. The command: Table[N[Sin[x]/x, 60], {x, Pi/32, Pi/2, Pi/32}] will create a nice data table with 60 decimal digits of precision. The value at x = 0 is, of course, 1. Have fun! Paul --- Paul A. Bristow, Prizet Farmhouse, Kendal LA8 8AB UK +44 1539 561830 07714330204 pbristow@hetp.u-net.com