
Boost : 
Subject: Re: [boost] question about TMP
From: DE (satan66613_at_[hidden])
Date: 20090904 11:19:46
for those who is still interested
i thought about types that a library user can actually use and finally
came to this decision
one can use something like
//don't look at syntax, check out the concept
matrix<double> m; //general rectangular dense matrix
matrix<double, sparse> sp; //rectangular sparse matrix
square<double> sq; //square matrix, although one might
square<double, symmetric> sym; //use the following types which
square<double, upper_triang> ut; //model corresponding concepts
square<double, lower_triang> lt; //i.e. symmetric, upper & lower
//triangular matrices
square<double, symmetric  sparse> sparse_sym; //also this
square<double, lower_triang  sparse> sparse_lt;//might be useful
band<double> b; //guess...
band<double, symmetric> bs; //why not?
//etc...
all these types provide strict explicit interfaces
e.g.
 'square' provides 'resize(size_t)' member but not
'resize(size_t, size_t)'
 'band' provides useful 'bandwidth()' member and
'diagonal(int)' member which returns diagonal (might be useful for
implementing a band solver)
 Pavel
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk