You can subscribe to this list here.
| 2000 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(17) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(23) |
| 2002 |
Jan
(18) |
Feb
(20) |
Mar
(22) |
Apr
(41) |
May
(28) |
Jun
(25) |
Jul
(10) |
Aug
(7) |
Sep
(5) |
Oct
(20) |
Nov
(13) |
Dec
(11) |
| 2003 |
Jan
(28) |
Feb
(5) |
Mar
(6) |
Apr
(5) |
May
(17) |
Jun
(6) |
Jul
(45) |
Aug
(35) |
Sep
(24) |
Oct
(50) |
Nov
(53) |
Dec
(6) |
| 2004 |
Jan
(4) |
Feb
(10) |
Mar
(52) |
Apr
(46) |
May
(8) |
Jun
(25) |
Jul
(12) |
Aug
(6) |
Sep
(8) |
Oct
(8) |
Nov
(9) |
Dec
(7) |
| 2005 |
Jan
(18) |
Feb
(60) |
Mar
(19) |
Apr
(26) |
May
(14) |
Jun
(27) |
Jul
(8) |
Aug
(15) |
Sep
(19) |
Oct
(53) |
Nov
(20) |
Dec
(23) |
| 2006 |
Jan
(16) |
Feb
(27) |
Mar
(33) |
Apr
(51) |
May
(36) |
Jun
(25) |
Jul
(54) |
Aug
(30) |
Sep
(25) |
Oct
(67) |
Nov
(43) |
Dec
(13) |
| 2007 |
Jan
(23) |
Feb
(27) |
Mar
(55) |
Apr
(79) |
May
(60) |
Jun
(66) |
Jul
(46) |
Aug
(30) |
Sep
(90) |
Oct
(49) |
Nov
(85) |
Dec
(74) |
| 2008 |
Jan
(68) |
Feb
(59) |
Mar
(64) |
Apr
(28) |
May
(66) |
Jun
(35) |
Jul
(73) |
Aug
(76) |
Sep
(65) |
Oct
(46) |
Nov
(41) |
Dec
(19) |
| 2009 |
Jan
(46) |
Feb
(90) |
Mar
(51) |
Apr
(104) |
May
(13) |
Jun
(24) |
Jul
(20) |
Aug
(39) |
Sep
(109) |
Oct
(101) |
Nov
(117) |
Dec
(57) |
| 2010 |
Jan
(55) |
Feb
(42) |
Mar
(39) |
Apr
(22) |
May
(33) |
Jun
(41) |
Jul
(25) |
Aug
(52) |
Sep
(75) |
Oct
(60) |
Nov
(62) |
Dec
(52) |
| 2011 |
Jan
(70) |
Feb
(31) |
Mar
(26) |
Apr
(28) |
May
(17) |
Jun
(38) |
Jul
(51) |
Aug
(35) |
Sep
(27) |
Oct
(35) |
Nov
(10) |
Dec
(20) |
| 2012 |
Jan
(21) |
Feb
(29) |
Mar
(13) |
Apr
(37) |
May
(33) |
Jun
(12) |
Jul
(34) |
Aug
(27) |
Sep
(29) |
Oct
(35) |
Nov
(58) |
Dec
(27) |
| 2013 |
Jan
(27) |
Feb
(16) |
Mar
(40) |
Apr
(16) |
May
(34) |
Jun
(37) |
Jul
(6) |
Aug
(3) |
Sep
(4) |
Oct
(49) |
Nov
(13) |
Dec
(12) |
| 2014 |
Jan
(15) |
Feb
(21) |
Mar
(11) |
Apr
(13) |
May
(27) |
Jun
(60) |
Jul
(19) |
Aug
(29) |
Sep
(20) |
Oct
(28) |
Nov
(41) |
Dec
(15) |
| 2015 |
Jan
(33) |
Feb
(29) |
Mar
(26) |
Apr
(17) |
May
(2) |
Jun
(13) |
Jul
(21) |
Aug
(30) |
Sep
(22) |
Oct
(15) |
Nov
(46) |
Dec
(20) |
| 2016 |
Jan
(6) |
Feb
(5) |
Mar
(9) |
Apr
(15) |
May
(9) |
Jun
(4) |
Jul
(3) |
Aug
(4) |
Sep
(39) |
Oct
(8) |
Nov
(5) |
Dec
(8) |
| 2017 |
Jan
(4) |
Feb
(14) |
Mar
(4) |
Apr
(16) |
May
(5) |
Jun
(10) |
Jul
(25) |
Aug
(2) |
Sep
(5) |
Oct
(11) |
Nov
(8) |
Dec
(11) |
| 2018 |
Jan
(7) |
Feb
(4) |
Mar
|
Apr
(1) |
May
(4) |
Jun
(21) |
Jul
(8) |
Aug
(3) |
Sep
(2) |
Oct
(2) |
Nov
(1) |
Dec
|
| 2019 |
Jan
(1) |
Feb
(5) |
Mar
(18) |
Apr
(9) |
May
(5) |
Jun
(21) |
Jul
(25) |
Aug
(25) |
Sep
(4) |
Oct
(2) |
Nov
(2) |
Dec
(5) |
| 2020 |
Jan
|
Feb
|
Mar
(3) |
Apr
|
May
(2) |
Jun
(2) |
Jul
(1) |
Aug
|
Sep
(1) |
Oct
(2) |
Nov
(6) |
Dec
|
| 2021 |
Jan
(1) |
Feb
|
Mar
(2) |
Apr
(1) |
May
(4) |
Jun
|
Jul
(1) |
Aug
|
Sep
(2) |
Oct
(9) |
Nov
(1) |
Dec
(5) |
| 2022 |
Jan
(7) |
Feb
(3) |
Mar
|
Apr
(2) |
May
(5) |
Jun
(3) |
Jul
(3) |
Aug
(3) |
Sep
(3) |
Oct
(14) |
Nov
|
Dec
(1) |
| 2023 |
Jan
(10) |
Feb
|
Mar
|
Apr
(2) |
May
|
Jun
(2) |
Jul
(2) |
Aug
(1) |
Sep
|
Oct
(5) |
Nov
|
Dec
|
| 2024 |
Jan
(8) |
Feb
|
Mar
(2) |
Apr
(1) |
May
|
Jun
|
Jul
(4) |
Aug
(5) |
Sep
|
Oct
(4) |
Nov
(1) |
Dec
(1) |
| 2025 |
Jan
(3) |
Feb
(2) |
Mar
(2) |
Apr
(1) |
May
(2) |
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
(1) |
Nov
|
Dec
|
| 2026 |
Jan
(1) |
Feb
(12) |
Mar
|
Apr
(2) |
May
(8) |
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: Peter C. <pca...@gm...> - 2015-04-14 18:08:29
|
Hi, just a few updates from my side. My adjoint branch now supports the rate volatility structures and experimental one factor models (and connected classes). I guess I will change my mode of working on the branch to "on demand conversion", either driven by my own requirements and use cases or also by anyone interested in specific classes / parts of the library - since I have some experience with the conversion process now and in order to keep the "ql-template" codebase homogeneous and in one location I would be happy to do the work. Pull requests are of course also still very welcome. From time to time I will update the branch with the recent changes from the mainstream version. Some problems with CppAD / QuantLib / Boost came up in the past months, or also wishes for new features like new functions to include. Since CppAD's maintainer Brad Bell is quite open and fast to update the project accordingly, in my opinion we should avoid own patches or extensions to CppAD but rather try to stick with the official (yet possibly very recent) CppAD releases. Currently there are two open points: atanh, asinh and acosh should be included => this is on the wishlist https://github.com/coin-or/CppAD/commit/135165758d425f39aa9800f51a356723630165b1 #QL_NO_UBLAS_SUPPORT must be defined, otherwise Matrix_t<T>::inverse does not compile for T=CppAD::AD<Base> => this seems to be a bug in CppAD https://github.com/coin-or/CppAD/blob/master/bug/boost_lu.sh @Alex, did you work around the last point somehow ? Thanks Peter On 3 March 2015 at 13:18, Alexander Sokol <so...@co...> wrote: > Hi Luigi, Ferdinando, Peter: > > Thank you for the feedback! Answering a few of the recent comments in no > particular order. > > 1) We concluded that the only way to both avoid making breaking changes to > QuantLib and avoid creating a custom fork of CppAD/ADOL-C, is to introduce a > class for Real and place AD<double> inside this class. Otherwise things like > implicit conversions from Null and InterestRate classes will not work > correctly and will require changes to one or the other, or can break > existing code due to ambiguous conversion. > > 2) On the other hand, with the class for Real, we can have a compile time > define to use CppAD, ADOL-C, as well as regular double (for validation of > conversion to the class) inside, and it will be very easy to add any future > AD library. We are using SFINAE for this, and the approach should be > relatively safe as far as unintended implicit conversions. I think this is > the best approach in long term. We checked that the wrapper gets fully > inlined and has zero impact on performance (this can be verified by looking > at assembly code), so there is really no downsize I can think of to > introducing it. If Real has to be a class for AD anyway, the best way to > proceed in my view is to create our own class, and then place various AD > implementations inside, rather than change the core QuantLib code to work > with various AD doubles. > > 3) Luigi, given that you are very busy these days, can you give me the list > of all officially supported compiler versions and are additional tests that > are not in test suite - we will then create a TeamCity installation that > will be running continuous builds to verify that our branch works and has no > regression. Incidentally, I would personally prefer to limit AD-based > version to C++11, or rather its subset implemented by MSVC 2013, gcc, and > clang. But if we have to support older compilers, we can try to get it work > with cpp98 as well. > > 4) I will shortly send a pull request to Luigi for two branches - one based > on master-adjoint-ready (please take a look if you have a moment, it is > almost done and already pushed to > github.com/compatibl/master-adjoint-ready), which I hope you will consider > pulling into your master. The changes on this branch have to do with mixing > double and Real or things like if(double), etc. - namely it is just > correcting something in core QuantLib that stops AD from working, but does > not have AD itself and keeps Real=double. These fixes should be very safe > but we will test them before the pull request is sent. The second branch > will have AD and I hope you can pull it into a separate branch in your repo > so more people can try it. > > Best regards > Alex > > > > > -- > View this message in context: http://quantlib.10058.n7.nabble.com/Adjoint-Greeks-tp16147p16302.html > Sent from the quantlib-dev mailing list archive at Nabble.com. > > ------------------------------------------------------------------------------ > Dive into the World of Parallel Programming The Go Parallel Website, sponsored > by Intel and developed in partnership with Slashdot Media, is your hub for all > things parallel software development, from weekly thought leadership blogs to > news, videos, case studies, tutorials and more. Take a look and join the > conversation now. http://goparallel.sourceforge.net/ > _______________________________________________ > QuantLib-dev mailing list > Qua...@li... > https://lists.sourceforge.net/lists/listinfo/quantlib-dev |
|
From: Luigi B. <lui...@gm...> - 2015-04-14 08:16:35
|
What do you mean "added to the array"? Does the plotting function try to modify it? Luigi On Sat, Mar 14, 2015 at 5:50 PM, Joseph Wang <joe...@gm...> wrote: > FYI, I found the following issue when plotting a sampled curve. > > https://github.com/lballabio/quantlib/issues/200 > > Running in the debugger, the segfault happens when something gets > added to the array so there is something about the way plotting works. > > > ------------------------------------------------------------------------------ > Dive into the World of Parallel Programming The Go Parallel Website, > sponsored > by Intel and developed in partnership with Slashdot Media, is your hub for > all > things parallel software development, from weekly thought leadership blogs > to > news, videos, case studies, tutorials and more. Take a look and join the > conversation now. http://goparallel.sourceforge.net/ > _______________________________________________ > QuantLib-dev mailing list > Qua...@li... > https://lists.sourceforge.net/lists/listinfo/quantlib-dev > -- <https://leanpub.com/implementingquantlib/> <https://implementingquantlib.blogspot.com> <https://twitter.com/lballabio> |
|
From: Cheng L. <scr...@gm...> - 2015-04-04 12:09:16
|
Thank you, Eric.
-----邮件原件-----
发件人: Eric Ehlers [mailto:eri...@re...]
发送时间: 2015年4月4日 17:51
收件人: Cheng Li
抄送: qua...@li...
主题: Re: [Quantlib-dev] 答复: Preparing To Release ObjectHandler/QuantLibAddin/QuantLibXL 1.5
Hi Cheng,
It is on my repo, in branch v1.5.0:
https://github.com/eehlers/quantlib/tree/v1.5.0
You could do
git clone https://github.com/eehlers/quantlib.git
cd quantlib
git checkout v1.5.0
Alternatively you could fork my repo on github.
Cheers,
Eric
On Sat, 4 Apr 2015 17:29:28 +0800
"Cheng Li" <scr...@gm...> wrote:
> Hi Eric,
>
> Is it on the github? Can I know the link? Thanks.
>
> Regards,
> Cheng
>
> -----邮件原件-----
> 发件人: Eric Ehlers [mailto:eri...@re...]
> 发送时间: 2015年4月4日 1:12
> 收件人: qua...@li...
> 主题: [Quantlib-dev] Preparing To Release
> ObjectHandler/QuantLibAddin/QuantLibXL 1.5
>
> Hi All,
>
> I am finalizing the 1.5 release. If there is any functionality you
> would like to include, I would be grateful if you could please make a
> pull request to my v1.5.0 branch. This branch comprises Luigi's
> QuantLib-v1.5 tag plus some additional changes for OH/QLA/QLXL 1.5
> release files.
>
> Kind Regards,
> Eric
>
> ----------------------------------------------------------------------
> ------
> --
> Dive into the World of Parallel Programming The Go Parallel Website,
> sponsored by Intel and developed in partnership with Slashdot Media,
> is your hub for all things parallel software development, from weekly
> thought leadership blogs to news, videos, case studies, tutorials and
> more. Take a look and join the conversation now.
> http://goparallel.sourceforge.net/
> _______________________________________________ QuantLib-dev mailing
> list Qua...@li...
> https://lists.sourceforge.net/lists/listinfo/quantlib-dev
>
>
> ----------------------------------------------------------------------
> -------- Dive into the World of Parallel Programming The Go Parallel
> Website, sponsored by Intel and developed in partnership with Slashdot
> Media, is your hub for all things parallel software development, from
> weekly thought leadership blogs to news, videos, case studies,
> tutorials and more. Take a look and join the conversation now.
> http://goparallel.sourceforge.net/
> _______________________________________________ QuantLib-dev mailing
> list Qua...@li...
> https://lists.sourceforge.net/lists/listinfo/quantlib-dev
|
|
From: Eric E. <eri...@re...> - 2015-04-04 09:51:22
|
Hi Cheng,
It is on my repo, in branch v1.5.0:
https://github.com/eehlers/quantlib/tree/v1.5.0
You could do
git clone https://github.com/eehlers/quantlib.git
cd quantlib
git checkout v1.5.0
Alternatively you could fork my repo on github.
Cheers,
Eric
On Sat, 4 Apr 2015 17:29:28 +0800
"Cheng Li" <scr...@gm...> wrote:
> Hi Eric,
>
> Is it on the github? Can I know the link? Thanks.
>
> Regards,
> Cheng
>
> -----邮件原件-----
> 发件人: Eric Ehlers [mailto:eri...@re...]
> 发送时间: 2015年4月4日 1:12
> 收件人: qua...@li...
> 主题: [Quantlib-dev] Preparing To Release
> ObjectHandler/QuantLibAddin/QuantLibXL 1.5
>
> Hi All,
>
> I am finalizing the 1.5 release. If there is any functionality you
> would like to include, I would be grateful if you could please make a
> pull request to my v1.5.0 branch. This branch comprises Luigi's
> QuantLib-v1.5 tag plus some additional changes for OH/QLA/QLXL 1.5
> release files.
>
> Kind Regards,
> Eric
>
> ----------------------------------------------------------------------------
> --
> Dive into the World of Parallel Programming The Go Parallel Website,
> sponsored by Intel and developed in partnership with Slashdot Media,
> is your hub for all things parallel software development, from weekly
> thought leadership blogs to news, videos, case studies, tutorials and
> more. Take a look and join the conversation now.
> http://goparallel.sourceforge.net/
> _______________________________________________ QuantLib-dev mailing
> list Qua...@li...
> https://lists.sourceforge.net/lists/listinfo/quantlib-dev
>
>
> ------------------------------------------------------------------------------
> Dive into the World of Parallel Programming The Go Parallel Website,
> sponsored by Intel and developed in partnership with Slashdot Media,
> is your hub for all things parallel software development, from weekly
> thought leadership blogs to news, videos, case studies, tutorials and
> more. Take a look and join the conversation now.
> http://goparallel.sourceforge.net/
> _______________________________________________ QuantLib-dev mailing
> list Qua...@li...
> https://lists.sourceforge.net/lists/listinfo/quantlib-dev
|
|
From: Cheng L. <scr...@gm...> - 2015-04-04 09:30:15
|
Hi Eric, Is it on the github? Can I know the link? Thanks. Regards, Cheng -----邮件原件----- 发件人: Eric Ehlers [mailto:eri...@re...] 发送时间: 2015年4月4日 1:12 收件人: qua...@li... 主题: [Quantlib-dev] Preparing To Release ObjectHandler/QuantLibAddin/QuantLibXL 1.5 Hi All, I am finalizing the 1.5 release. If there is any functionality you would like to include, I would be grateful if you could please make a pull request to my v1.5.0 branch. This branch comprises Luigi's QuantLib-v1.5 tag plus some additional changes for OH/QLA/QLXL 1.5 release files. Kind Regards, Eric ---------------------------------------------------------------------------- -- Dive into the World of Parallel Programming The Go Parallel Website, sponsored by Intel and developed in partnership with Slashdot Media, is your hub for all things parallel software development, from weekly thought leadership blogs to news, videos, case studies, tutorials and more. Take a look and join the conversation now. http://goparallel.sourceforge.net/ _______________________________________________ QuantLib-dev mailing list Qua...@li... https://lists.sourceforge.net/lists/listinfo/quantlib-dev |
|
From: Eric E. <eri...@re...> - 2015-04-03 16:11:55
|
Hi All, I am finalizing the 1.5 release. If there is any functionality you would like to include, I would be grateful if you could please make a pull request to my v1.5.0 branch. This branch comprises Luigi's QuantLib-v1.5 tag plus some additional changes for OH/QLA/QLXL 1.5 release files. Kind Regards, Eric |
|
From: Peter C. <pca...@gm...> - 2015-04-02 15:11:46
|
ah, alright. thanks Peter On 2 April 2015 at 17:00, Luigi Ballabio <lui...@gm...> wrote: > It looks like a VC9 bug: > <http://stackoverflow.com/questions/16709854/template-a-shared-ptr-argument>. > > On Thu, Apr 2, 2015 at 4:54 PM, Peter Caspers <pca...@gm...> > wrote: >> >> but why doesn't it work with boost::make_shared in msvc, did you >> understand this ? >> >> >> On 2 April 2015 at 15:47, Ferdinando M. Ametrano >> <fer...@am...> wrote: >> > ok, thank you >> > >> > the file was digitalcmsspreadcoupon and I pulled it just before your >> > last >> > commit 4h ago >> > >> > >> > On Thu, Apr 2, 2015 at 2:03 PM, Luigi Ballabio >> > <lui...@gm...> >> > wrote: >> >> >> >> Is this the latest master? There's no longer a call to make_shared >> >> there. >> >> >> >> Luigi >> >> >> >> On Thu, Apr 2, 2015 at 1:45 PM, Ferdinando M. Ametrano >> >> <fer...@am...> wrote: >> >>> >> >>> Hi all >> >>> >> >>> pulling from Luigi's master: cmsspreadcoupon does not compile with VC9 >> >>> boost 1.56 (error below) >> >>> >> >>> anyone able to fix it? >> >>> >> >>> thank you >> >>> F >> >>> 1>------ Build started: Project: QuantLib, Configuration: Release >> >>> Win32 >> >>> ------ >> >>> 1>Compiling... >> >>> 1>digitalcmsspreadcoupon.cpp >> >>> >> >>> >> >>> 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) >> >>> : error C2780: 'boost::detail::sp_if_size_array<T>::type >> >>> boost::make_shared(const boost::detail::array_inner<T>::type &)' : >> >>> expects 1 >> >>> arguments - 0 provided >> >>> 1> >> >>> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_array.hpp(89) : >> >>> see >> >>> declaration of 'boost::make_shared' >> >>> >> >>> >> >>> 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) >> >>> : error C2780: 'boost::detail::sp_if_array<T>::type >> >>> boost::make_shared(size_t,const boost::detail::array_inner<T>::type >> >>> &)' : >> >>> expects 2 arguments - 0 provided >> >>> 1> >> >>> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_array.hpp(62) : >> >>> see >> >>> declaration of 'boost::make_shared' >> >>> >> >>> >> >>> 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) >> >>> : error C2783: 'boost::detail::sp_if_size_array<T>::type >> >>> boost::make_shared(void)' : could not deduce template argument for 'T' >> >>> 1> >> >>> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_array.hpp(39) : >> >>> see >> >>> declaration of 'boost::make_shared' >> >>> >> >>> >> >>> 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) >> >>> : error C2780: 'boost::detail::sp_if_array<T>::type >> >>> boost::make_shared(size_t)' : expects 1 arguments - 0 provided >> >>> 1> >> >>> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_array.hpp(18) : >> >>> see >> >>> declaration of 'boost::make_shared' >> >>> >> >>> >> >>> 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) >> >>> : error C2780: 'boost::detail::sp_if_not_array<T>::type >> >>> boost::make_shared(const A1 &,const A2 &,const A3 &,const A4 &,const >> >>> A5 >> >>> &,const A6 &,const A7 &,const A8 &,const A9 &)' : expects 9 arguments >> >>> - 0 >> >>> provided >> >>> 1> >> >>> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(1088) >> >>> : see >> >>> declaration of 'boost::make_shared' >> >>> >> >>> >> >>> 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) >> >>> : error C2780: 'boost::detail::sp_if_not_array<T>::type >> >>> boost::make_shared(const A1 &,const A2 &,const A3 &,const A4 &,const >> >>> A5 >> >>> &,const A6 &,const A7 &,const A8 &)' : expects 8 arguments - 0 >> >>> provided >> >>> 1> >> >>> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(1052) >> >>> : see >> >>> declaration of 'boost::make_shared' >> >>> >> >>> >> >>> 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) >> >>> : error C2780: 'boost::detail::sp_if_not_array<T>::type >> >>> boost::make_shared(const A1 &,const A2 &,const A3 &,const A4 &,const >> >>> A5 >> >>> &,const A6 &,const A7 &)' : expects 7 arguments - 0 provided >> >>> 1> >> >>> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(1016) >> >>> : see >> >>> declaration of 'boost::make_shared' >> >>> >> >>> >> >>> 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) >> >>> : error C2780: 'boost::detail::sp_if_not_array<T>::type >> >>> boost::make_shared(const A1 &,const A2 &,const A3 &,const A4 &,const >> >>> A5 >> >>> &,const A6 &)' : expects 6 arguments - 0 provided >> >>> 1> >> >>> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(980) : >> >>> see >> >>> declaration of 'boost::make_shared' >> >>> >> >>> >> >>> 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) >> >>> : error C2780: 'boost::detail::sp_if_not_array<T>::type >> >>> boost::make_shared(const A1 &,const A2 &,const A3 &,const A4 &,const >> >>> A5 &)' >> >>> : expects 5 arguments - 0 provided >> >>> 1> >> >>> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(944) : >> >>> see >> >>> declaration of 'boost::make_shared' >> >>> >> >>> >> >>> 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) >> >>> : error C2780: 'boost::detail::sp_if_not_array<T>::type >> >>> boost::make_shared(const A1 &,const A2 &,const A3 &,const A4 &)' : >> >>> expects 4 >> >>> arguments - 0 provided >> >>> 1> >> >>> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(908) : >> >>> see >> >>> declaration of 'boost::make_shared' >> >>> >> >>> >> >>> 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) >> >>> : error C2780: 'boost::detail::sp_if_not_array<T>::type >> >>> boost::make_shared(const A1 &,const A2 &,const A3 &)' : expects 3 >> >>> arguments >> >>> - 0 provided >> >>> 1> >> >>> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(872) : >> >>> see >> >>> declaration of 'boost::make_shared' >> >>> >> >>> >> >>> 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) >> >>> : error C2780: 'boost::detail::sp_if_not_array<T>::type >> >>> boost::make_shared(const A1 &,const A2 &)' : expects 2 arguments - 0 >> >>> provided >> >>> 1> >> >>> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(836) : >> >>> see >> >>> declaration of 'boost::make_shared' >> >>> >> >>> >> >>> 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) >> >>> : error C2780: 'boost::detail::sp_if_not_array<T>::type >> >>> boost::make_shared(const A1 &)' : expects 1 arguments - 0 provided >> >>> 1> >> >>> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(800) : >> >>> see >> >>> declaration of 'boost::make_shared' >> >>> >> >>> >> >>> 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) >> >>> : error C2783: 'boost::detail::sp_if_not_array<T>::type >> >>> boost::make_shared(void)' : could not deduce template argument for 'T' >> >>> 1> >> >>> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(307) : >> >>> see >> >>> declaration of 'boost::make_shared' >> >>> 1>Build log was saved at >> >>> >> >>> "file://c:\Projects\quantlib\QuantLib\build\vc90\Win32\Release\BuildLog.htm" >> >>> 1>QuantLib - 14 error(s), 0 warning(s) >> >>> ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped >> >>> ========== >> >>> >> >>> >> >>> >> >>> >> >>> ------------------------------------------------------------------------------ >> >>> Dive into the World of Parallel Programming The Go Parallel Website, >> >>> sponsored >> >>> by Intel and developed in partnership with Slashdot Media, is your hub >> >>> for all >> >>> things parallel software development, from weekly thought leadership >> >>> blogs to >> >>> news, videos, case studies, tutorials and more. Take a look and join >> >>> the >> >>> conversation now. http://goparallel.sourceforge.net/ >> >>> _______________________________________________ >> >>> QuantLib-dev mailing list >> >>> Qua...@li... >> >>> https://lists.sourceforge.net/lists/listinfo/quantlib-dev >> >>> >> >> >> >> >> >> >> >> -- >> >> <https://leanpub.com/implementingquantlib/> >> >> <https://implementingquantlib.blogspot.com> >> >> <https://twitter.com/lballabio> >> > >> > > > > > > -- > <https://leanpub.com/implementingquantlib/> > <https://implementingquantlib.blogspot.com> > <https://twitter.com/lballabio> |
|
From: Luigi B. <lui...@gm...> - 2015-04-02 15:01:03
|
It looks like a VC9 bug: < http://stackoverflow.com/questions/16709854/template-a-shared-ptr-argument>. On Thu, Apr 2, 2015 at 4:54 PM, Peter Caspers <pca...@gm...> wrote: > but why doesn't it work with boost::make_shared in msvc, did you > understand this ? > > > On 2 April 2015 at 15:47, Ferdinando M. Ametrano > <fer...@am...> wrote: > > ok, thank you > > > > the file was digitalcmsspreadcoupon and I pulled it just before your last > > commit 4h ago > > > > > > On Thu, Apr 2, 2015 at 2:03 PM, Luigi Ballabio <lui...@gm... > > > > wrote: > >> > >> Is this the latest master? There's no longer a call to make_shared > there. > >> > >> Luigi > >> > >> On Thu, Apr 2, 2015 at 1:45 PM, Ferdinando M. Ametrano > >> <fer...@am...> wrote: > >>> > >>> Hi all > >>> > >>> pulling from Luigi's master: cmsspreadcoupon does not compile with VC9 > >>> boost 1.56 (error below) > >>> > >>> anyone able to fix it? > >>> > >>> thank you > >>> F > >>> 1>------ Build started: Project: QuantLib, Configuration: Release Win32 > >>> ------ > >>> 1>Compiling... > >>> 1>digitalcmsspreadcoupon.cpp > >>> > >>> > 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) > >>> : error C2780: 'boost::detail::sp_if_size_array<T>::type > >>> boost::make_shared(const boost::detail::array_inner<T>::type &)' : > expects 1 > >>> arguments - 0 provided > >>> 1> > >>> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_array.hpp(89) : > see > >>> declaration of 'boost::make_shared' > >>> > >>> > 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) > >>> : error C2780: 'boost::detail::sp_if_array<T>::type > >>> boost::make_shared(size_t,const boost::detail::array_inner<T>::type > &)' : > >>> expects 2 arguments - 0 provided > >>> 1> > >>> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_array.hpp(62) : > see > >>> declaration of 'boost::make_shared' > >>> > >>> > 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) > >>> : error C2783: 'boost::detail::sp_if_size_array<T>::type > >>> boost::make_shared(void)' : could not deduce template argument for 'T' > >>> 1> > >>> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_array.hpp(39) : > see > >>> declaration of 'boost::make_shared' > >>> > >>> > 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) > >>> : error C2780: 'boost::detail::sp_if_array<T>::type > >>> boost::make_shared(size_t)' : expects 1 arguments - 0 provided > >>> 1> > >>> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_array.hpp(18) : > see > >>> declaration of 'boost::make_shared' > >>> > >>> > 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) > >>> : error C2780: 'boost::detail::sp_if_not_array<T>::type > >>> boost::make_shared(const A1 &,const A2 &,const A3 &,const A4 &,const A5 > >>> &,const A6 &,const A7 &,const A8 &,const A9 &)' : expects 9 arguments > - 0 > >>> provided > >>> 1> > >>> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(1088) > : see > >>> declaration of 'boost::make_shared' > >>> > >>> > 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) > >>> : error C2780: 'boost::detail::sp_if_not_array<T>::type > >>> boost::make_shared(const A1 &,const A2 &,const A3 &,const A4 &,const A5 > >>> &,const A6 &,const A7 &,const A8 &)' : expects 8 arguments - 0 provided > >>> 1> > >>> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(1052) > : see > >>> declaration of 'boost::make_shared' > >>> > >>> > 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) > >>> : error C2780: 'boost::detail::sp_if_not_array<T>::type > >>> boost::make_shared(const A1 &,const A2 &,const A3 &,const A4 &,const A5 > >>> &,const A6 &,const A7 &)' : expects 7 arguments - 0 provided > >>> 1> > >>> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(1016) > : see > >>> declaration of 'boost::make_shared' > >>> > >>> > 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) > >>> : error C2780: 'boost::detail::sp_if_not_array<T>::type > >>> boost::make_shared(const A1 &,const A2 &,const A3 &,const A4 &,const A5 > >>> &,const A6 &)' : expects 6 arguments - 0 provided > >>> 1> > >>> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(980) : > see > >>> declaration of 'boost::make_shared' > >>> > >>> > 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) > >>> : error C2780: 'boost::detail::sp_if_not_array<T>::type > >>> boost::make_shared(const A1 &,const A2 &,const A3 &,const A4 &,const > A5 &)' > >>> : expects 5 arguments - 0 provided > >>> 1> > >>> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(944) : > see > >>> declaration of 'boost::make_shared' > >>> > >>> > 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) > >>> : error C2780: 'boost::detail::sp_if_not_array<T>::type > >>> boost::make_shared(const A1 &,const A2 &,const A3 &,const A4 &)' : > expects 4 > >>> arguments - 0 provided > >>> 1> > >>> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(908) : > see > >>> declaration of 'boost::make_shared' > >>> > >>> > 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) > >>> : error C2780: 'boost::detail::sp_if_not_array<T>::type > >>> boost::make_shared(const A1 &,const A2 &,const A3 &)' : expects 3 > arguments > >>> - 0 provided > >>> 1> > >>> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(872) : > see > >>> declaration of 'boost::make_shared' > >>> > >>> > 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) > >>> : error C2780: 'boost::detail::sp_if_not_array<T>::type > >>> boost::make_shared(const A1 &,const A2 &)' : expects 2 arguments - 0 > >>> provided > >>> 1> > >>> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(836) : > see > >>> declaration of 'boost::make_shared' > >>> > >>> > 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) > >>> : error C2780: 'boost::detail::sp_if_not_array<T>::type > >>> boost::make_shared(const A1 &)' : expects 1 arguments - 0 provided > >>> 1> > >>> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(800) : > see > >>> declaration of 'boost::make_shared' > >>> > >>> > 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) > >>> : error C2783: 'boost::detail::sp_if_not_array<T>::type > >>> boost::make_shared(void)' : could not deduce template argument for 'T' > >>> 1> > >>> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(307) : > see > >>> declaration of 'boost::make_shared' > >>> 1>Build log was saved at > >>> > "file://c:\Projects\quantlib\QuantLib\build\vc90\Win32\Release\BuildLog.htm" > >>> 1>QuantLib - 14 error(s), 0 warning(s) > >>> ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped > >>> ========== > >>> > >>> > >>> > >>> > ------------------------------------------------------------------------------ > >>> Dive into the World of Parallel Programming The Go Parallel Website, > >>> sponsored > >>> by Intel and developed in partnership with Slashdot Media, is your hub > >>> for all > >>> things parallel software development, from weekly thought leadership > >>> blogs to > >>> news, videos, case studies, tutorials and more. Take a look and join > the > >>> conversation now. http://goparallel.sourceforge.net/ > >>> _______________________________________________ > >>> QuantLib-dev mailing list > >>> Qua...@li... > >>> https://lists.sourceforge.net/lists/listinfo/quantlib-dev > >>> > >> > >> > >> > >> -- > >> <https://leanpub.com/implementingquantlib/> > >> <https://implementingquantlib.blogspot.com> > >> <https://twitter.com/lballabio> > > > > > -- <https://leanpub.com/implementingquantlib/> <https://implementingquantlib.blogspot.com> <https://twitter.com/lballabio> |
|
From: Peter C. <pca...@gm...> - 2015-04-02 14:54:18
|
but why doesn't it work with boost::make_shared in msvc, did you understand this ? On 2 April 2015 at 15:47, Ferdinando M. Ametrano <fer...@am...> wrote: > ok, thank you > > the file was digitalcmsspreadcoupon and I pulled it just before your last > commit 4h ago > > > On Thu, Apr 2, 2015 at 2:03 PM, Luigi Ballabio <lui...@gm...> > wrote: >> >> Is this the latest master? There's no longer a call to make_shared there. >> >> Luigi >> >> On Thu, Apr 2, 2015 at 1:45 PM, Ferdinando M. Ametrano >> <fer...@am...> wrote: >>> >>> Hi all >>> >>> pulling from Luigi's master: cmsspreadcoupon does not compile with VC9 >>> boost 1.56 (error below) >>> >>> anyone able to fix it? >>> >>> thank you >>> F >>> 1>------ Build started: Project: QuantLib, Configuration: Release Win32 >>> ------ >>> 1>Compiling... >>> 1>digitalcmsspreadcoupon.cpp >>> >>> 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) >>> : error C2780: 'boost::detail::sp_if_size_array<T>::type >>> boost::make_shared(const boost::detail::array_inner<T>::type &)' : expects 1 >>> arguments - 0 provided >>> 1> >>> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_array.hpp(89) : see >>> declaration of 'boost::make_shared' >>> >>> 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) >>> : error C2780: 'boost::detail::sp_if_array<T>::type >>> boost::make_shared(size_t,const boost::detail::array_inner<T>::type &)' : >>> expects 2 arguments - 0 provided >>> 1> >>> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_array.hpp(62) : see >>> declaration of 'boost::make_shared' >>> >>> 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) >>> : error C2783: 'boost::detail::sp_if_size_array<T>::type >>> boost::make_shared(void)' : could not deduce template argument for 'T' >>> 1> >>> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_array.hpp(39) : see >>> declaration of 'boost::make_shared' >>> >>> 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) >>> : error C2780: 'boost::detail::sp_if_array<T>::type >>> boost::make_shared(size_t)' : expects 1 arguments - 0 provided >>> 1> >>> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_array.hpp(18) : see >>> declaration of 'boost::make_shared' >>> >>> 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) >>> : error C2780: 'boost::detail::sp_if_not_array<T>::type >>> boost::make_shared(const A1 &,const A2 &,const A3 &,const A4 &,const A5 >>> &,const A6 &,const A7 &,const A8 &,const A9 &)' : expects 9 arguments - 0 >>> provided >>> 1> >>> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(1088) : see >>> declaration of 'boost::make_shared' >>> >>> 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) >>> : error C2780: 'boost::detail::sp_if_not_array<T>::type >>> boost::make_shared(const A1 &,const A2 &,const A3 &,const A4 &,const A5 >>> &,const A6 &,const A7 &,const A8 &)' : expects 8 arguments - 0 provided >>> 1> >>> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(1052) : see >>> declaration of 'boost::make_shared' >>> >>> 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) >>> : error C2780: 'boost::detail::sp_if_not_array<T>::type >>> boost::make_shared(const A1 &,const A2 &,const A3 &,const A4 &,const A5 >>> &,const A6 &,const A7 &)' : expects 7 arguments - 0 provided >>> 1> >>> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(1016) : see >>> declaration of 'boost::make_shared' >>> >>> 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) >>> : error C2780: 'boost::detail::sp_if_not_array<T>::type >>> boost::make_shared(const A1 &,const A2 &,const A3 &,const A4 &,const A5 >>> &,const A6 &)' : expects 6 arguments - 0 provided >>> 1> >>> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(980) : see >>> declaration of 'boost::make_shared' >>> >>> 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) >>> : error C2780: 'boost::detail::sp_if_not_array<T>::type >>> boost::make_shared(const A1 &,const A2 &,const A3 &,const A4 &,const A5 &)' >>> : expects 5 arguments - 0 provided >>> 1> >>> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(944) : see >>> declaration of 'boost::make_shared' >>> >>> 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) >>> : error C2780: 'boost::detail::sp_if_not_array<T>::type >>> boost::make_shared(const A1 &,const A2 &,const A3 &,const A4 &)' : expects 4 >>> arguments - 0 provided >>> 1> >>> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(908) : see >>> declaration of 'boost::make_shared' >>> >>> 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) >>> : error C2780: 'boost::detail::sp_if_not_array<T>::type >>> boost::make_shared(const A1 &,const A2 &,const A3 &)' : expects 3 arguments >>> - 0 provided >>> 1> >>> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(872) : see >>> declaration of 'boost::make_shared' >>> >>> 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) >>> : error C2780: 'boost::detail::sp_if_not_array<T>::type >>> boost::make_shared(const A1 &,const A2 &)' : expects 2 arguments - 0 >>> provided >>> 1> >>> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(836) : see >>> declaration of 'boost::make_shared' >>> >>> 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) >>> : error C2780: 'boost::detail::sp_if_not_array<T>::type >>> boost::make_shared(const A1 &)' : expects 1 arguments - 0 provided >>> 1> >>> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(800) : see >>> declaration of 'boost::make_shared' >>> >>> 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) >>> : error C2783: 'boost::detail::sp_if_not_array<T>::type >>> boost::make_shared(void)' : could not deduce template argument for 'T' >>> 1> >>> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(307) : see >>> declaration of 'boost::make_shared' >>> 1>Build log was saved at >>> "file://c:\Projects\quantlib\QuantLib\build\vc90\Win32\Release\BuildLog.htm" >>> 1>QuantLib - 14 error(s), 0 warning(s) >>> ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped >>> ========== >>> >>> >>> >>> ------------------------------------------------------------------------------ >>> Dive into the World of Parallel Programming The Go Parallel Website, >>> sponsored >>> by Intel and developed in partnership with Slashdot Media, is your hub >>> for all >>> things parallel software development, from weekly thought leadership >>> blogs to >>> news, videos, case studies, tutorials and more. Take a look and join the >>> conversation now. http://goparallel.sourceforge.net/ >>> _______________________________________________ >>> QuantLib-dev mailing list >>> Qua...@li... >>> https://lists.sourceforge.net/lists/listinfo/quantlib-dev >>> >> >> >> >> -- >> <https://leanpub.com/implementingquantlib/> >> <https://implementingquantlib.blogspot.com> >> <https://twitter.com/lballabio> > > |
|
From: Ferdinando M. A. <fer...@am...> - 2015-04-02 13:48:33
|
ok, thank you the file was *digital*cmsspreadcoupon and I pulled it just before your last commit 4h ago On Thu, Apr 2, 2015 at 2:03 PM, Luigi Ballabio <lui...@gm...> wrote: > Is this the latest master? There's no longer a call to make_shared there. > > Luigi > > On Thu, Apr 2, 2015 at 1:45 PM, Ferdinando M. Ametrano < > fer...@am...> wrote: > >> Hi all >> >> pulling from Luigi's master: cmsspreadcoupon does not compile with VC9 >> boost 1.56 (error below) >> >> anyone able to fix it? >> >> thank you >> F >> 1>------ Build started: Project: QuantLib, Configuration: Release Win32 >> ------ >> 1>Compiling... >> 1>digitalcmsspreadcoupon.cpp >> 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) >> : error C2780: 'boost::detail::sp_if_size_array<T>::type >> boost::make_shared(const boost::detail::array_inner<T>::type &)' : expects >> 1 arguments - 0 provided >> 1> >> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_array.hpp(89) : see >> declaration of 'boost::make_shared' >> 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) >> : error C2780: 'boost::detail::sp_if_array<T>::type >> boost::make_shared(size_t,const boost::detail::array_inner<T>::type &)' : >> expects 2 arguments - 0 provided >> 1> >> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_array.hpp(62) : see >> declaration of 'boost::make_shared' >> 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) >> : error C2783: 'boost::detail::sp_if_size_array<T>::type >> boost::make_shared(void)' : could not deduce template argument for 'T' >> 1> >> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_array.hpp(39) : see >> declaration of 'boost::make_shared' >> 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) >> : error C2780: 'boost::detail::sp_if_array<T>::type >> boost::make_shared(size_t)' : expects 1 arguments - 0 provided >> 1> >> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_array.hpp(18) : see >> declaration of 'boost::make_shared' >> 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) >> : error C2780: 'boost::detail::sp_if_not_array<T>::type >> boost::make_shared(const A1 &,const A2 &,const A3 &,const A4 &,const A5 >> &,const A6 &,const A7 &,const A8 &,const A9 &)' : expects 9 arguments - 0 >> provided >> 1> >> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(1088) : see >> declaration of 'boost::make_shared' >> 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) >> : error C2780: 'boost::detail::sp_if_not_array<T>::type >> boost::make_shared(const A1 &,const A2 &,const A3 &,const A4 &,const A5 >> &,const A6 &,const A7 &,const A8 &)' : expects 8 arguments - 0 provided >> 1> >> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(1052) : see >> declaration of 'boost::make_shared' >> 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) >> : error C2780: 'boost::detail::sp_if_not_array<T>::type >> boost::make_shared(const A1 &,const A2 &,const A3 &,const A4 &,const A5 >> &,const A6 &,const A7 &)' : expects 7 arguments - 0 provided >> 1> >> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(1016) : see >> declaration of 'boost::make_shared' >> 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) >> : error C2780: 'boost::detail::sp_if_not_array<T>::type >> boost::make_shared(const A1 &,const A2 &,const A3 &,const A4 &,const A5 >> &,const A6 &)' : expects 6 arguments - 0 provided >> 1> >> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(980) : see >> declaration of 'boost::make_shared' >> 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) >> : error C2780: 'boost::detail::sp_if_not_array<T>::type >> boost::make_shared(const A1 &,const A2 &,const A3 &,const A4 &,const A5 &)' >> : expects 5 arguments - 0 provided >> 1> >> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(944) : see >> declaration of 'boost::make_shared' >> 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) >> : error C2780: 'boost::detail::sp_if_not_array<T>::type >> boost::make_shared(const A1 &,const A2 &,const A3 &,const A4 &)' : expects >> 4 arguments - 0 provided >> 1> >> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(908) : see >> declaration of 'boost::make_shared' >> 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) >> : error C2780: 'boost::detail::sp_if_not_array<T>::type >> boost::make_shared(const A1 &,const A2 &,const A3 &)' : expects 3 arguments >> - 0 provided >> 1> >> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(872) : see >> declaration of 'boost::make_shared' >> 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) >> : error C2780: 'boost::detail::sp_if_not_array<T>::type >> boost::make_shared(const A1 &,const A2 &)' : expects 2 arguments - 0 >> provided >> 1> >> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(836) : see >> declaration of 'boost::make_shared' >> 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) >> : error C2780: 'boost::detail::sp_if_not_array<T>::type >> boost::make_shared(const A1 &)' : expects 1 arguments - 0 provided >> 1> >> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(800) : see >> declaration of 'boost::make_shared' >> 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) >> : error C2783: 'boost::detail::sp_if_not_array<T>::type >> boost::make_shared(void)' : could not deduce template argument for 'T' >> 1> >> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(307) : see >> declaration of 'boost::make_shared' >> 1>Build log was saved at >> "file://c:\Projects\quantlib\QuantLib\build\vc90\Win32\Release\BuildLog.htm" >> 1>QuantLib - 14 error(s), 0 warning(s) >> ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped >> ========== >> >> >> >> ------------------------------------------------------------------------------ >> Dive into the World of Parallel Programming The Go Parallel Website, >> sponsored >> by Intel and developed in partnership with Slashdot Media, is your hub >> for all >> things parallel software development, from weekly thought leadership >> blogs to >> news, videos, case studies, tutorials and more. Take a look and join the >> conversation now. http://goparallel.sourceforge.net/ >> _______________________________________________ >> QuantLib-dev mailing list >> Qua...@li... >> https://lists.sourceforge.net/lists/listinfo/quantlib-dev >> >> > > > -- > <https://leanpub.com/implementingquantlib/> > <https://implementingquantlib.blogspot.com> > <https://twitter.com/lballabio> > |
|
From: Luigi B. <lui...@gm...> - 2015-04-02 12:04:04
|
Is this the latest master? There's no longer a call to make_shared there. Luigi On Thu, Apr 2, 2015 at 1:45 PM, Ferdinando M. Ametrano < fer...@am...> wrote: > Hi all > > pulling from Luigi's master: cmsspreadcoupon does not compile with VC9 > boost 1.56 (error below) > > anyone able to fix it? > > thank you > F > 1>------ Build started: Project: QuantLib, Configuration: Release Win32 > ------ > 1>Compiling... > 1>digitalcmsspreadcoupon.cpp > 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) > : error C2780: 'boost::detail::sp_if_size_array<T>::type > boost::make_shared(const boost::detail::array_inner<T>::type &)' : expects > 1 arguments - 0 provided > 1> > C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_array.hpp(89) : see > declaration of 'boost::make_shared' > 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) > : error C2780: 'boost::detail::sp_if_array<T>::type > boost::make_shared(size_t,const boost::detail::array_inner<T>::type &)' : > expects 2 arguments - 0 provided > 1> > C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_array.hpp(62) : see > declaration of 'boost::make_shared' > 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) > : error C2783: 'boost::detail::sp_if_size_array<T>::type > boost::make_shared(void)' : could not deduce template argument for 'T' > 1> > C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_array.hpp(39) : see > declaration of 'boost::make_shared' > 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) > : error C2780: 'boost::detail::sp_if_array<T>::type > boost::make_shared(size_t)' : expects 1 arguments - 0 provided > 1> > C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_array.hpp(18) : see > declaration of 'boost::make_shared' > 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) > : error C2780: 'boost::detail::sp_if_not_array<T>::type > boost::make_shared(const A1 &,const A2 &,const A3 &,const A4 &,const A5 > &,const A6 &,const A7 &,const A8 &,const A9 &)' : expects 9 arguments - 0 > provided > 1> > C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(1088) : see > declaration of 'boost::make_shared' > 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) > : error C2780: 'boost::detail::sp_if_not_array<T>::type > boost::make_shared(const A1 &,const A2 &,const A3 &,const A4 &,const A5 > &,const A6 &,const A7 &,const A8 &)' : expects 8 arguments - 0 provided > 1> > C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(1052) : see > declaration of 'boost::make_shared' > 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) > : error C2780: 'boost::detail::sp_if_not_array<T>::type > boost::make_shared(const A1 &,const A2 &,const A3 &,const A4 &,const A5 > &,const A6 &,const A7 &)' : expects 7 arguments - 0 provided > 1> > C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(1016) : see > declaration of 'boost::make_shared' > 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) > : error C2780: 'boost::detail::sp_if_not_array<T>::type > boost::make_shared(const A1 &,const A2 &,const A3 &,const A4 &,const A5 > &,const A6 &)' : expects 6 arguments - 0 provided > 1> > C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(980) : see > declaration of 'boost::make_shared' > 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) > : error C2780: 'boost::detail::sp_if_not_array<T>::type > boost::make_shared(const A1 &,const A2 &,const A3 &,const A4 &,const A5 &)' > : expects 5 arguments - 0 provided > 1> > C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(944) : see > declaration of 'boost::make_shared' > 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) > : error C2780: 'boost::detail::sp_if_not_array<T>::type > boost::make_shared(const A1 &,const A2 &,const A3 &,const A4 &)' : expects > 4 arguments - 0 provided > 1> > C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(908) : see > declaration of 'boost::make_shared' > 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) > : error C2780: 'boost::detail::sp_if_not_array<T>::type > boost::make_shared(const A1 &,const A2 &,const A3 &)' : expects 3 arguments > - 0 provided > 1> > C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(872) : see > declaration of 'boost::make_shared' > 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) > : error C2780: 'boost::detail::sp_if_not_array<T>::type > boost::make_shared(const A1 &,const A2 &)' : expects 2 arguments - 0 > provided > 1> > C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(836) : see > declaration of 'boost::make_shared' > 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) > : error C2780: 'boost::detail::sp_if_not_array<T>::type > boost::make_shared(const A1 &)' : expects 1 arguments - 0 provided > 1> > C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(800) : see > declaration of 'boost::make_shared' > 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) > : error C2783: 'boost::detail::sp_if_not_array<T>::type > boost::make_shared(void)' : could not deduce template argument for 'T' > 1> > C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(307) : see > declaration of 'boost::make_shared' > 1>Build log was saved at > "file://c:\Projects\quantlib\QuantLib\build\vc90\Win32\Release\BuildLog.htm" > 1>QuantLib - 14 error(s), 0 warning(s) > ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ========== > > > > ------------------------------------------------------------------------------ > Dive into the World of Parallel Programming The Go Parallel Website, > sponsored > by Intel and developed in partnership with Slashdot Media, is your hub for > all > things parallel software development, from weekly thought leadership blogs > to > news, videos, case studies, tutorials and more. Take a look and join the > conversation now. http://goparallel.sourceforge.net/ > _______________________________________________ > QuantLib-dev mailing list > Qua...@li... > https://lists.sourceforge.net/lists/listinfo/quantlib-dev > > -- <https://leanpub.com/implementingquantlib/> <https://implementingquantlib.blogspot.com> <https://twitter.com/lballabio> |
|
From: Ferdinando M. A. <fer...@am...> - 2015-04-02 11:51:41
|
Hi all pulling from Luigi's master: cmsspreadcoupon does not compile with VC9 boost 1.56 (error below) anyone able to fix it? thank you F 1>------ Build started: Project: QuantLib, Configuration: Release Win32 ------ 1>Compiling... 1>digitalcmsspreadcoupon.cpp 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) : error C2780: 'boost::detail::sp_if_size_array<T>::type boost::make_shared(const boost::detail::array_inner<T>::type &)' : expects 1 arguments - 0 provided 1> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_array.hpp(89) : see declaration of 'boost::make_shared' 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) : error C2780: 'boost::detail::sp_if_array<T>::type boost::make_shared(size_t,const boost::detail::array_inner<T>::type &)' : expects 2 arguments - 0 provided 1> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_array.hpp(62) : see declaration of 'boost::make_shared' 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) : error C2783: 'boost::detail::sp_if_size_array<T>::type boost::make_shared(void)' : could not deduce template argument for 'T' 1> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_array.hpp(39) : see declaration of 'boost::make_shared' 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) : error C2780: 'boost::detail::sp_if_array<T>::type boost::make_shared(size_t)' : expects 1 arguments - 0 provided 1> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_array.hpp(18) : see declaration of 'boost::make_shared' 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) : error C2780: 'boost::detail::sp_if_not_array<T>::type boost::make_shared(const A1 &,const A2 &,const A3 &,const A4 &,const A5 &,const A6 &,const A7 &,const A8 &,const A9 &)' : expects 9 arguments - 0 provided 1> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(1088) : see declaration of 'boost::make_shared' 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) : error C2780: 'boost::detail::sp_if_not_array<T>::type boost::make_shared(const A1 &,const A2 &,const A3 &,const A4 &,const A5 &,const A6 &,const A7 &,const A8 &)' : expects 8 arguments - 0 provided 1> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(1052) : see declaration of 'boost::make_shared' 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) : error C2780: 'boost::detail::sp_if_not_array<T>::type boost::make_shared(const A1 &,const A2 &,const A3 &,const A4 &,const A5 &,const A6 &,const A7 &)' : expects 7 arguments - 0 provided 1> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(1016) : see declaration of 'boost::make_shared' 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) : error C2780: 'boost::detail::sp_if_not_array<T>::type boost::make_shared(const A1 &,const A2 &,const A3 &,const A4 &,const A5 &,const A6 &)' : expects 6 arguments - 0 provided 1> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(980) : see declaration of 'boost::make_shared' 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) : error C2780: 'boost::detail::sp_if_not_array<T>::type boost::make_shared(const A1 &,const A2 &,const A3 &,const A4 &,const A5 &)' : expects 5 arguments - 0 provided 1> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(944) : see declaration of 'boost::make_shared' 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) : error C2780: 'boost::detail::sp_if_not_array<T>::type boost::make_shared(const A1 &,const A2 &,const A3 &,const A4 &)' : expects 4 arguments - 0 provided 1> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(908) : see declaration of 'boost::make_shared' 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) : error C2780: 'boost::detail::sp_if_not_array<T>::type boost::make_shared(const A1 &,const A2 &,const A3 &)' : expects 3 arguments - 0 provided 1> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(872) : see declaration of 'boost::make_shared' 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) : error C2780: 'boost::detail::sp_if_not_array<T>::type boost::make_shared(const A1 &,const A2 &)' : expects 2 arguments - 0 provided 1> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(836) : see declaration of 'boost::make_shared' 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) : error C2780: 'boost::detail::sp_if_not_array<T>::type boost::make_shared(const A1 &)' : expects 1 arguments - 0 provided 1> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(800) : see declaration of 'boost::make_shared' 1>c:\Projects\quantlib\QuantLib\ql/experimental/coupons/digitalcmsspreadcoupon.hpp(38) : error C2783: 'boost::detail::sp_if_not_array<T>::type boost::make_shared(void)' : could not deduce template argument for 'T' 1> C:\Projects\boost_1_56_0\boost/smart_ptr/make_shared_object.hpp(307) : see declaration of 'boost::make_shared' 1>Build log was saved at "file://c:\Projects\quantlib\QuantLib\build\vc90\Win32\Release\BuildLog.htm" 1>QuantLib - 14 error(s), 0 warning(s) ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ========== |
|
From: Alexander L. <am...@vi...> - 2015-03-22 18:54:22
|
Yeah, sure. I'll take a look. On Sun, Mar 22, 2015 at 8:26 AM, Luigi Ballabio <lui...@gm...> wrote: > Klaus did some work to use Boost.Date to implement our dates. It's in pull > request <https://github.com/lballabio/quantlib/pull/186>. If it doesn't > decrease performances, I'd rather go that way instead of implementing date > calculations again. Alexander, do you have time to do some tests? > > Luigi > > On Sun, Mar 22, 2015 at 10:14 AM, Peter Caspers <pca...@gm...> > wrote: > >> in which the perfomance numbers above depend a lot on the test loop >> setup, the compiler seems to apply some clever optimizations when >> using a "regular" year pattern as input to the leap year functions. >> With random years, the factors are more like this >> >> ql / boost = 1.0 >> ql / isLeap2 = 2.7 >> >> so not that impressive any more. >> >> >> On 22 March 2015 at 09:54, Peter Caspers <pca...@gm...> wrote: >> > Hi Alex, >> > >> > I am in favour of this. Just note that (at least) you would have to >> > take care about Date::yearOffset(...) and Date::maxSerialNumber(...) >> > as well when extending the range of possible dates. I am not sure if >> > there are other code places to consider, Luigi will be the right >> > person to answer that ultimately. >> > >> > Apart from that I played around a bit and >> > >> > boost::gregorian::gregorian_calendar::is_leap_year(y) >> > >> > seems to be faster than the original ql code anyway (only 1900 is >> > treated different, ql is following the excel "convention" here). I >> > seem to observe a factor ql / boost of around 6. >> > >> > And this >> > >> > inline bool isLeap2(int y) { >> > if(y%4 != 0) return false; >> > if(y%100 != 0) return true; >> > if(y%400 != 0) return false; >> > return true; >> > } >> > >> > is even faster (ql / isLeap2 = 40 ). Again be careful with 1900. >> > >> > Best regards >> > Peter >> > >> > >> > On 22 March 2015 at 03:02, Alexander Lamana <am...@vi...> >> wrote: >> >> Hi, >> >> >> >> I was looking at date.cpp and noticed this [0]. I realize that 2200 is >> far >> >> off, but this section made me wince. >> >> >> >> Is there any interest in (or reason against) redoing this section so >> that it >> >> lazily populates an array, instead of having one hard coded? I have >> some >> >> spare time this weekend. >> >> >> >> [0] >> >> >> https://github.com/lballabio/quantlib/blob/master/QuantLib/ql/time/date.cpp#L208 >> >> >> >> >> >> Thanks, >> >> Alex >> >> >> >> >> ------------------------------------------------------------------------------ >> >> Dive into the World of Parallel Programming The Go Parallel Website, >> >> sponsored >> >> by Intel and developed in partnership with Slashdot Media, is your hub >> for >> >> all >> >> things parallel software development, from weekly thought leadership >> blogs >> >> to >> >> news, videos, case studies, tutorials and more. Take a look and join >> the >> >> conversation now. http://goparallel.sourceforge.net/ >> >> _______________________________________________ >> >> QuantLib-dev mailing list >> >> Qua...@li... >> >> https://lists.sourceforge.net/lists/listinfo/quantlib-dev >> >> >> >> >> ------------------------------------------------------------------------------ >> Dive into the World of Parallel Programming The Go Parallel Website, >> sponsored >> by Intel and developed in partnership with Slashdot Media, is your hub >> for all >> things parallel software development, from weekly thought leadership >> blogs to >> news, videos, case studies, tutorials and more. Take a look and join the >> conversation now. http://goparallel.sourceforge.net/ >> _______________________________________________ >> QuantLib-dev mailing list >> Qua...@li... >> https://lists.sourceforge.net/lists/listinfo/quantlib-dev >> > > > > -- > <https://leanpub.com/implementingquantlib/> > <https://implementingquantlib.blogspot.com> > <https://twitter.com/lballabio> > |
|
From: Luigi B. <lui...@gm...> - 2015-03-22 12:26:57
|
Klaus did some work to use Boost.Date to implement our dates. It's in pull request <https://github.com/lballabio/quantlib/pull/186>. If it doesn't decrease performances, I'd rather go that way instead of implementing date calculations again. Alexander, do you have time to do some tests? Luigi On Sun, Mar 22, 2015 at 10:14 AM, Peter Caspers <pca...@gm...> wrote: > in which the perfomance numbers above depend a lot on the test loop > setup, the compiler seems to apply some clever optimizations when > using a "regular" year pattern as input to the leap year functions. > With random years, the factors are more like this > > ql / boost = 1.0 > ql / isLeap2 = 2.7 > > so not that impressive any more. > > > On 22 March 2015 at 09:54, Peter Caspers <pca...@gm...> wrote: > > Hi Alex, > > > > I am in favour of this. Just note that (at least) you would have to > > take care about Date::yearOffset(...) and Date::maxSerialNumber(...) > > as well when extending the range of possible dates. I am not sure if > > there are other code places to consider, Luigi will be the right > > person to answer that ultimately. > > > > Apart from that I played around a bit and > > > > boost::gregorian::gregorian_calendar::is_leap_year(y) > > > > seems to be faster than the original ql code anyway (only 1900 is > > treated different, ql is following the excel "convention" here). I > > seem to observe a factor ql / boost of around 6. > > > > And this > > > > inline bool isLeap2(int y) { > > if(y%4 != 0) return false; > > if(y%100 != 0) return true; > > if(y%400 != 0) return false; > > return true; > > } > > > > is even faster (ql / isLeap2 = 40 ). Again be careful with 1900. > > > > Best regards > > Peter > > > > > > On 22 March 2015 at 03:02, Alexander Lamana <am...@vi...> wrote: > >> Hi, > >> > >> I was looking at date.cpp and noticed this [0]. I realize that 2200 is > far > >> off, but this section made me wince. > >> > >> Is there any interest in (or reason against) redoing this section so > that it > >> lazily populates an array, instead of having one hard coded? I have some > >> spare time this weekend. > >> > >> [0] > >> > https://github.com/lballabio/quantlib/blob/master/QuantLib/ql/time/date.cpp#L208 > >> > >> > >> Thanks, > >> Alex > >> > >> > ------------------------------------------------------------------------------ > >> Dive into the World of Parallel Programming The Go Parallel Website, > >> sponsored > >> by Intel and developed in partnership with Slashdot Media, is your hub > for > >> all > >> things parallel software development, from weekly thought leadership > blogs > >> to > >> news, videos, case studies, tutorials and more. Take a look and join the > >> conversation now. http://goparallel.sourceforge.net/ > >> _______________________________________________ > >> QuantLib-dev mailing list > >> Qua...@li... > >> https://lists.sourceforge.net/lists/listinfo/quantlib-dev > >> > > > ------------------------------------------------------------------------------ > Dive into the World of Parallel Programming The Go Parallel Website, > sponsored > by Intel and developed in partnership with Slashdot Media, is your hub for > all > things parallel software development, from weekly thought leadership blogs > to > news, videos, case studies, tutorials and more. Take a look and join the > conversation now. http://goparallel.sourceforge.net/ > _______________________________________________ > QuantLib-dev mailing list > Qua...@li... > https://lists.sourceforge.net/lists/listinfo/quantlib-dev > -- <https://leanpub.com/implementingquantlib/> <https://implementingquantlib.blogspot.com> <https://twitter.com/lballabio> |
|
From: Peter C. <pca...@gm...> - 2015-03-22 09:14:49
|
in which the perfomance numbers above depend a lot on the test loop
setup, the compiler seems to apply some clever optimizations when
using a "regular" year pattern as input to the leap year functions.
With random years, the factors are more like this
ql / boost = 1.0
ql / isLeap2 = 2.7
so not that impressive any more.
On 22 March 2015 at 09:54, Peter Caspers <pca...@gm...> wrote:
> Hi Alex,
>
> I am in favour of this. Just note that (at least) you would have to
> take care about Date::yearOffset(...) and Date::maxSerialNumber(...)
> as well when extending the range of possible dates. I am not sure if
> there are other code places to consider, Luigi will be the right
> person to answer that ultimately.
>
> Apart from that I played around a bit and
>
> boost::gregorian::gregorian_calendar::is_leap_year(y)
>
> seems to be faster than the original ql code anyway (only 1900 is
> treated different, ql is following the excel "convention" here). I
> seem to observe a factor ql / boost of around 6.
>
> And this
>
> inline bool isLeap2(int y) {
> if(y%4 != 0) return false;
> if(y%100 != 0) return true;
> if(y%400 != 0) return false;
> return true;
> }
>
> is even faster (ql / isLeap2 = 40 ). Again be careful with 1900.
>
> Best regards
> Peter
>
>
> On 22 March 2015 at 03:02, Alexander Lamana <am...@vi...> wrote:
>> Hi,
>>
>> I was looking at date.cpp and noticed this [0]. I realize that 2200 is far
>> off, but this section made me wince.
>>
>> Is there any interest in (or reason against) redoing this section so that it
>> lazily populates an array, instead of having one hard coded? I have some
>> spare time this weekend.
>>
>> [0]
>> https://github.com/lballabio/quantlib/blob/master/QuantLib/ql/time/date.cpp#L208
>>
>>
>> Thanks,
>> Alex
>>
>> ------------------------------------------------------------------------------
>> Dive into the World of Parallel Programming The Go Parallel Website,
>> sponsored
>> by Intel and developed in partnership with Slashdot Media, is your hub for
>> all
>> things parallel software development, from weekly thought leadership blogs
>> to
>> news, videos, case studies, tutorials and more. Take a look and join the
>> conversation now. http://goparallel.sourceforge.net/
>> _______________________________________________
>> QuantLib-dev mailing list
>> Qua...@li...
>> https://lists.sourceforge.net/lists/listinfo/quantlib-dev
>>
|
|
From: Peter C. <pca...@gm...> - 2015-03-22 08:54:25
|
Hi Alex,
I am in favour of this. Just note that (at least) you would have to
take care about Date::yearOffset(...) and Date::maxSerialNumber(...)
as well when extending the range of possible dates. I am not sure if
there are other code places to consider, Luigi will be the right
person to answer that ultimately.
Apart from that I played around a bit and
boost::gregorian::gregorian_calendar::is_leap_year(y)
seems to be faster than the original ql code anyway (only 1900 is
treated different, ql is following the excel "convention" here). I
seem to observe a factor ql / boost of around 6.
And this
inline bool isLeap2(int y) {
if(y%4 != 0) return false;
if(y%100 != 0) return true;
if(y%400 != 0) return false;
return true;
}
is even faster (ql / isLeap2 = 40 ). Again be careful with 1900.
Best regards
Peter
On 22 March 2015 at 03:02, Alexander Lamana <am...@vi...> wrote:
> Hi,
>
> I was looking at date.cpp and noticed this [0]. I realize that 2200 is far
> off, but this section made me wince.
>
> Is there any interest in (or reason against) redoing this section so that it
> lazily populates an array, instead of having one hard coded? I have some
> spare time this weekend.
>
> [0]
> https://github.com/lballabio/quantlib/blob/master/QuantLib/ql/time/date.cpp#L208
>
>
> Thanks,
> Alex
>
> ------------------------------------------------------------------------------
> Dive into the World of Parallel Programming The Go Parallel Website,
> sponsored
> by Intel and developed in partnership with Slashdot Media, is your hub for
> all
> things parallel software development, from weekly thought leadership blogs
> to
> news, videos, case studies, tutorials and more. Take a look and join the
> conversation now. http://goparallel.sourceforge.net/
> _______________________________________________
> QuantLib-dev mailing list
> Qua...@li...
> https://lists.sourceforge.net/lists/listinfo/quantlib-dev
>
|
|
From: Alexander L. <am...@vi...> - 2015-03-22 02:03:23
|
Hi, I was looking at date.cpp and noticed this [0]. I realize that 2200 is far off, but this section made me wince. Is there any interest in (or reason against) redoing this section so that it lazily populates an array, instead of having one hard coded? I have some spare time this weekend. [0] https://github.com/lballabio/quantlib/blob/master/QuantLib/ql/time/date.cpp#L208 Thanks, Alex |
|
From: Joseph W. <joe...@gm...> - 2015-03-17 17:45:15
|
Here is a link to a python script that has a lot of my recent work all together. https://github.com/joequant/bitquant/blob/master/web/home/ipython/examples/bitcoin-future.py It has * intraday pricing * cryptocurrency futures pricing * the fd API and associated fixes Add the stuff is in the bitcoin branch on the joequant github repository |
|
From: Luigi B. <lui...@gm...> - 2015-03-17 08:48:20
|
Thanks, I've added the correction to the git repository.
Luigi
On Mon, Mar 16, 2015 at 1:42 PM, Ioan F. <if...@ny...> wrote:
> Luigi,
>
> After testing, it seems that we are not using the correct day count
> convention when defining the Fed Funds Overnight Index. The change is
> minimal, and below please see the correct version of the fedfunds.cpp file.
> If I may suggest so, please update the library to reflect the correction.
> A quick confirmation message would be highly appreciated (so I know we
> don't
> need to worry about it going forward and that will be included in the next
> official release).
>
> Thank you,
> Ioan
>
> fedfunds.cpp:
>
> #include <ql/indexes/ibor/fedfunds.hpp>
> #include <ql/time/calendars/unitedstates.hpp>
> #include <ql/time/daycounters/actual360.hpp>
> #include <ql/currencies/america.hpp>
>
> namespace QuantLib {
>
> FedFunds::FedFunds(const Handle<YieldTermStructure>& h)
> : OvernightIndex("FedFunds", 0,
> USDCurrency(),
>
> UnitedStates(UnitedStates::Settlement),
> Actual360(), h) {}
>
> }
>
>
>
>
> --
> View this message in context:
> http://quantlib.10058.n7.nabble.com/QuantLib-extension-creating-a-FedFunds-derived-class-equivalent-of-Eonia-for-USD-tp15344p16369.html
> Sent from the quantlib-dev mailing list archive at Nabble.com.
>
>
> ------------------------------------------------------------------------------
> Dive into the World of Parallel Programming The Go Parallel Website,
> sponsored
> by Intel and developed in partnership with Slashdot Media, is your hub for
> all
> things parallel software development, from weekly thought leadership blogs
> to
> news, videos, case studies, tutorials and more. Take a look and join the
> conversation now. http://goparallel.sourceforge.net/
> _______________________________________________
> QuantLib-dev mailing list
> Qua...@li...
> https://lists.sourceforge.net/lists/listinfo/quantlib-dev
>
--
<https://leanpub.com/implementingquantlib/>
<https://implementingquantlib.blogspot.com>
<https://twitter.com/lballabio>
|
|
From: Ioan F. <if...@ny...> - 2015-03-16 12:53:30
|
Luigi,
After testing, it seems that we are not using the correct day count
convention when defining the Fed Funds Overnight Index. The change is
minimal, and below please see the correct version of the fedfunds.cpp file.
If I may suggest so, please update the library to reflect the correction.
A quick confirmation message would be highly appreciated (so I know we don't
need to worry about it going forward and that will be included in the next
official release).
Thank you,
Ioan
fedfunds.cpp:
#include <ql/indexes/ibor/fedfunds.hpp>
#include <ql/time/calendars/unitedstates.hpp>
#include <ql/time/daycounters/actual360.hpp>
#include <ql/currencies/america.hpp>
namespace QuantLib {
FedFunds::FedFunds(const Handle<YieldTermStructure>& h)
: OvernightIndex("FedFunds", 0,
USDCurrency(),
UnitedStates(UnitedStates::Settlement),
Actual360(), h) {}
}
--
View this message in context: http://quantlib.10058.n7.nabble.com/QuantLib-extension-creating-a-FedFunds-derived-class-equivalent-of-Eonia-for-USD-tp15344p16369.html
Sent from the quantlib-dev mailing list archive at Nabble.com.
|
|
From: Joseph W. <joe...@gm...> - 2015-03-15 11:37:04
|
No. It's numerical differentiation, but it just exposes some of the things that are currently calculated. On Sun, Mar 15, 2015 at 7:31 PM, Cheng Li <scr...@gm...> wrote: > Hi Joseph, > > So is it the similar algorithmic differentiation approach for FD? > > Regards, > Cheng > -----邮件原件----- > 发件人: Joseph Wang [mailto:joe...@gm...] > 发送时间: 2015年3月15日 15:16 > 收件人: qua...@li... > 主题: [Quantlib-dev] Heads up - FD engine enhancements > > Just a heads up. I'm working on some enhancements to the FD engine that > will let you pull the entire greeks curves from one calculation. > All of the math is there, it's just a matter of adding the interfaces to the > engine so that I can pull out the data. > > ---------------------------------------------------------------------------- > -- > Dive into the World of Parallel Programming The Go Parallel Website, > sponsored by Intel and developed in partnership with Slashdot Media, is your > hub for all things parallel software development, from weekly thought > leadership blogs to news, videos, case studies, tutorials and more. Take a > look and join the conversation now. http://goparallel.sourceforge.net/ > _______________________________________________ > QuantLib-dev mailing list > Qua...@li... > https://lists.sourceforge.net/lists/listinfo/quantlib-dev > |
|
From: Cheng L. <scr...@gm...> - 2015-03-15 11:32:05
|
Hi Joseph, So is it the similar algorithmic differentiation approach for FD? Regards, Cheng -----邮件原件----- 发件人: Joseph Wang [mailto:joe...@gm...] 发送时间: 2015年3月15日 15:16 收件人: qua...@li... 主题: [Quantlib-dev] Heads up - FD engine enhancements Just a heads up. I'm working on some enhancements to the FD engine that will let you pull the entire greeks curves from one calculation. All of the math is there, it's just a matter of adding the interfaces to the engine so that I can pull out the data. ---------------------------------------------------------------------------- -- Dive into the World of Parallel Programming The Go Parallel Website, sponsored by Intel and developed in partnership with Slashdot Media, is your hub for all things parallel software development, from weekly thought leadership blogs to news, videos, case studies, tutorials and more. Take a look and join the conversation now. http://goparallel.sourceforge.net/ _______________________________________________ QuantLib-dev mailing list Qua...@li... https://lists.sourceforge.net/lists/listinfo/quantlib-dev |
|
From: Joseph W. <joe...@gm...> - 2015-03-15 07:15:36
|
Just a heads up. I'm working on some enhancements to the FD engine that will let you pull the entire greeks curves from one calculation. All of the math is there, it's just a matter of adding the interfaces to the engine so that I can pull out the data. |
|
From: Joseph W. <joe...@gm...> - 2015-03-14 16:50:07
|
FYI, I found the following issue when plotting a sampled curve. https://github.com/lballabio/quantlib/issues/200 Running in the debugger, the segfault happens when something gets added to the array so there is something about the way plotting works. |
|
From: Eric E. <eri...@re...> - 2015-03-06 18:29:25
|
Hello, Each has different dependencies appropriate to the solution file in which is is included. Regards, Eric On Fri, 6 Mar 2015 19:45:52 +0200 Francois Botha <ig...@gm...> wrote: > Hi, > > Why all the "duplicate" project files in the QuantLibAddin directory. > For example: > > QuantLibObjects_vc10.vcxproj > QuantLibObjects2_vc10.vcxproj > QuantLibObjects3_vc10.vcxproj > QuantLibObjects4_vc10.vcxproj > > regards > Francois Botha |