Login  Register

Re: How to copy a Boost::Matrix into a Quantlib::Matrix

Posted by jean-renaud viala on Nov 09, 2011; 9:49am
URL: http://quantlib.414.s1.nabble.com/How-to-copy-a-Boost-Matrix-into-a-Quantlib-Matrix-tp12318p12320.html

Hello

 

It works with the following code:

            

for (int i=0; i < N; ++i)

{

std::copy(mat[i].begin(), mat[i].end(), result.row_begin(i));

}

With mat being a std::vector<std::vector<double>> and result a Quantlib Matrix

 

 

We tried

std::copy(mat.begin(), mat.end(), result.begin());

but it did not compile

 

I have a question: do you favors Quantlib::Matrix or boost::numeric::ublas::matrix<double> for mathematical calculus?

 

Regards

JRV

 

 

     

-----Original Message-----
From: Bojan Nikolic [mailto:[hidden email]]
Sent: Tuesday, November 08, 2011 10:02 AM
To: Viala Jean-Renaud (AMUNDI)
Cc: [hidden email]
Subject: Re: [Quantlib-dev] How to copy a Boost::Matrix into a Quantlib::Matrix

 

 

Hi,

 

jrviala <[hidden email]> writes:

 

> I'm trying to use std::copy but it fails to compile

> It seems a rather simple problem I'm confident someone has used it somewhere

> could you tell me the correct wording?

 

Something like this should work:

 

 boost::numeric::ublas::matrix<double> m (3, 3);                                                                                                           

 QuantLib::Matrix mm(3,3);

 std::copy(m.begin1(), m.end1(), mm.begin());          

 

Although you need to check the column/row convention (I believe this

will transpose the matrix).

 

Best,

Bojan

 

--

Bojan Nikolic          ||          http://www.bnikolic.co.uk/ql


------------------------------------------------------------------------------
RSA(R) Conference 2012
Save $700 by Nov 18
Register now
http://p.sf.net/sfu/rsa-sfdev2dev1
_______________________________________________
QuantLib-dev mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-dev