Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r61395 - in sandbox/numeric_bindings/libs/numeric/bindings/doc: blas/level1 blas/level2 blas/level3 lapack lapack/computational lapack/driver
From: rutger_at_[hidden]
Date: 2010-04-19 03:37:35


Author: rutger
Date: 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
New Revision: 61395
URL: http://svn.boost.org/trac/boost/changeset/61395

Log:
Added quickbook versions of blas/lapack generated documentation

Added:
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level1/asum.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level1/axpy.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level1/copy.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level1/dot.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level1/dotc.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level1/iamax.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level1/nrm2.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level1/prec_dot.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level1/rot.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level1/rotg.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level1/rotm.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level1/rotmg.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level1/scal.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level1/swap.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/gbmv.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/gemv.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/ger.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/gerc.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/geru.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/hbmv.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/hemv.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/her.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/her2.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/hpmv.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/hpr.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/hpr2.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/sbmv.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/spmv.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/spr.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/spr2.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/symv.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/syr.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/syr2.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/tbmv.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/tbsv.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/tpmv.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/tpsv.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/trmv.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/trsv.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level3/gemm.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level3/hemm.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level3/her2k.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level3/herk.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level3/symm.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level3/syr2k.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level3/syrk.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level3/trmm.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level3/trsm.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/auxiliary.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/bdsdc.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/bdsqr.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gbbrd.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gbcon.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gbequ.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gbrfs.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gbtrf.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gbtrs.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gebak.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gebal.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gebrd.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gecon.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/geequ.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gehrd.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gelqf.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/geqlf.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/geqp3.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/geqrf.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gerfs.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gerqf.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/getrf.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/getri.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/getrs.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ggbak.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ggbal.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gghrd.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ggqrf.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ggrqf.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ggsvp.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gtrfs.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gttrs.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hbgst.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hbtrd.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hecon.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hegst.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/herfs.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hetrd.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hetrf.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hetri.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hetrs.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hgeqz.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hpcon.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hprfs.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hptrd.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hptrf.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hptri.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hptrs.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hsein.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hseqr.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/labrd.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/lacon.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/laebz.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/larz.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/latrd.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/latrs.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/latrz.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/opgtr.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/opmtr.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/orgbr.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/orghr.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/orglq.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/orgql.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/orgqr.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/orgrq.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/orgtr.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ormbr.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ormhr.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ormlq.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ormql.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ormqr.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ormrq.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ormrz.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ormtr.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pbcon.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pbequ.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pbrfs.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pbstf.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pbtrf.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pbtrs.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pftrs.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pocon.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/poequ.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/porfs.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/potrf.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/potri.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/potrs.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ppcon.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ppequ.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pprfs.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pptrf.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pptri.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pptrs.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ptcon.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pteqr.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ptrfs.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pttrf.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pttrs.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/sbgst.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/sbtrd.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/spcon.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/sprfs.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/sptrd.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/sptrf.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/sptri.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/sptrs.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/stebz.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/stedc.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/stegr.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/stein.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/stemr.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/steqr.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/sterf.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/sycon.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/sygst.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/syrfs.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/sytrd.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/sytrf.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/sytri.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/sytrs.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/tbcon.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/tbrfs.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/tbtrs.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/tgevc.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/tgexc.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/tgsen.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/tgsja.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/tgsna.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/tgsyl.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/tpcon.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/tprfs.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/tptri.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/tptrs.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/trcon.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/trevc.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/trexc.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/trrfs.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/trsen.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/trsna.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/trsyl.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/trtri.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/trtrs.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/tzrzf.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ungbr.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/unghr.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/unglq.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ungql.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ungqr.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ungrq.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ungtr.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/unmbr.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/unmhr.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/unmlq.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/unmql.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/unmqr.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/unmrq.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/unmrz.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/unmtr.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/upgtr.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/upmtr.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/cgesv.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/cposv.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gbsv.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gbsvx.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gees.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/geesx.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/geev.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/geevx.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gegv.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gejsv.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gels.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gelsd.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gelss.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gelsy.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gesdd.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gesv.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gesvd.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gesvx.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gges.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/ggesx.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/ggev.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/ggevx.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/ggglm.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gglse.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/ggsvd.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gtsv.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gtsvx.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hbev.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hbevd.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hbevx.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hbgv.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hbgvd.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hbgvx.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/heev.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/heevd.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/heevr.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/heevx.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hegv.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hegvd.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hegvx.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hesv.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hesvx.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hpev.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hpevd.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hpevx.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hpgv.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hpgvd.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hpgvx.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hpsv.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hpsvx.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/lacgv.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/lalsd.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/largv.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/pbsv.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/pbsvx.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/posv.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/posvx.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/ppsv.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/ppsvx.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/ptsv.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/ptsvx.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/sbev.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/sbevd.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/sbevx.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/sbgv.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/sbgvd.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/sbgvx.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/sgesv.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/spev.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/spevd.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/spevx.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/spgv.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/spgvd.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/spgvx.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/sposv.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/spsv.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/spsvx.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/stev.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/stevd.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/stevr.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/stevx.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/syev.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/syevd.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/syevr.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/syevx.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/sygv.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/sygvd.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/sygvx.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/sysv.qbk (contents, props changed)
   sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/sysvx.qbk (contents, props changed)

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level1/asum.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level1/asum.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,76 @@
+
+[section asum]
+
+[heading Prototype]
+There is one prototype of `asum` available, please see below.
+``
+asum( const VectorX& x );
+``
+
+
+[heading Description]
+
+`asum` (short for absolute sum) provides a C++
+interface to BLAS routines SASUM, DASUM, SCASUM, and DZASUM.
+
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `VectorX`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorX>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of asum.
+[ [ Value type of VectorX ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`float`][SASUM][cblas_sasum][cublasSasum] ]
+[ [`double`][DASUM][cblas_dasum][cublasDasum] ]
+[ [`complex<float>`][SCASUM][cblas_scasum][cublasScasum] ]
+[ [`complex<double>`][DZASUM][cblas_dzasum][Unavailable] ]
+
+]
+
+The original routines SASUM, DASUM, SCASUM, and DZASUM have three arguments,
+whereas `asum` requires one arguments.
+
+[table Deduction of arguments of asum.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/asum.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/asum.hpp>
+using namespace boost::numeric::bindings;
+
+blas::asum( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/sasum.f sasum.f], [@http://www.netlib.org/blas/dasum.f dasum.f], [@http://www.netlib.org/blas/scasum.f scasum.f], and [@http://www.netlib.org/blas/dzasum.f dzasum.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level1/axpy.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level1/axpy.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,80 @@
+
+[section axpy]
+
+[heading Prototype]
+There are two prototypes of `axpy` available, please see below.
+``
+axpy( const Scalar >, const VectorX& x, VectorY& y );
+``
+
+``
+axpy( const Scalar a, const VectorX& x, VectorY& y );
+``
+
+
+[heading Description]
+
+`axpy` (short for a times x plus y) provides a C++
+interface to BLAS routines SAXPY, DAXPY, CAXPY, and ZAXPY.
+
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `VectorX`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorX>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of axpy.
+[ [ Value type of VectorX ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`float`][SAXPY][cblas_saxpy][cublasSaxpy] ]
+[ [`double`][DAXPY][cblas_daxpy][cublasDaxpy] ]
+[ [`complex<float>`][CAXPY][cblas_caxpy][cublasCaxpy] ]
+[ [`complex<double>`][ZAXPY][cblas_zaxpy][Unavailable] ]
+
+]
+
+The original routines SAXPY, DAXPY, CAXPY, and ZAXPY have six arguments,
+whereas `axpy` requires three arguments.
+
+[table Deduction of arguments of axpy.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/axpy.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/axpy.hpp>
+using namespace boost::numeric::bindings;
+
+blas::axpy( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/saxpy.f saxpy.f], [@http://www.netlib.org/blas/daxpy.f daxpy.f], [@http://www.netlib.org/blas/caxpy.f caxpy.f], and [@http://www.netlib.org/blas/zaxpy.f zaxpy.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level1/copy.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level1/copy.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,76 @@
+
+[section copy]
+
+[heading Prototype]
+There is one prototype of `copy` available, please see below.
+``
+copy( const VectorX& x, VectorY& y );
+``
+
+
+[heading Description]
+
+`copy` (short for TODO) provides a C++
+interface to BLAS routines SCOPY, DCOPY, CCOPY, and ZCOPY.
+
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `VectorX`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorX>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of copy.
+[ [ Value type of VectorX ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`float`][SCOPY][cblas_scopy][cublasScopy] ]
+[ [`double`][DCOPY][cblas_dcopy][cublasDcopy] ]
+[ [`complex<float>`][CCOPY][cblas_ccopy][cublasCcopy] ]
+[ [`complex<double>`][ZCOPY][cblas_zcopy][Unavailable] ]
+
+]
+
+The original routines SCOPY, DCOPY, CCOPY, and ZCOPY have five arguments,
+whereas `copy` requires two arguments.
+
+[table Deduction of arguments of copy.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/copy.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/copy.hpp>
+using namespace boost::numeric::bindings;
+
+blas::copy( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/scopy.f scopy.f], [@http://www.netlib.org/blas/dcopy.f dcopy.f], [@http://www.netlib.org/blas/ccopy.f ccopy.f], and [@http://www.netlib.org/blas/zcopy.f zcopy.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level1/dot.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level1/dot.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,76 @@
+
+[section dot]
+
+[heading Prototype]
+There is one prototype of `dot` available, please see below.
+``
+dot( const VectorX& x, const VectorY& y );
+``
+
+
+[heading Description]
+
+`dot` (short for TODO) provides a C++
+interface to BLAS routines SDOT, DDOT, CDOTU, and ZDOTU.
+
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `VectorX`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorX>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of dot.
+[ [ Value type of VectorX ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`float`][SDOT][cblas_sdot][cublasSdot] ]
+[ [`double`][DDOT][cblas_ddot][cublasDdot] ]
+[ [`complex<float>`][CDOTU][cblas_cdotu_sub][cublasCdotu] ]
+[ [`complex<double>`][ZDOTU][cblas_zdotu_sub][cublasZdotu] ]
+
+]
+
+The original routines SDOT, DDOT, CDOTU, and ZDOTU have five arguments,
+whereas `dot` requires two arguments.
+
+[table Deduction of arguments of dot.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/dot.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/dot.hpp>
+using namespace boost::numeric::bindings;
+
+blas::dot( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/sdot.f sdot.f], [@http://www.netlib.org/blas/ddot.f ddot.f], [@http://www.netlib.org/blas/cdotu.f cdotu.f], and [@http://www.netlib.org/blas/zdotu.f zdotu.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level1/dotc.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level1/dotc.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,74 @@
+
+[section dotc]
+
+[heading Prototype]
+There is one prototype of `dotc` available, please see below.
+``
+dotc( const VectorX& x, const VectorY& y );
+``
+
+
+[heading Description]
+
+`dotc` (short for TODO) provides a C++
+interface to BLAS routines CDOTC and ZDOTC.
+
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `VectorX`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorX>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of dotc.
+[ [ Value type of VectorX ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`complex<float>`][CDOTC][cblas_cdotc_sub][cublasCdotc] ]
+[ [`complex<double>`][ZDOTC][cblas_zdotc_sub][Unavailable] ]
+
+]
+
+The original routines CDOTC and ZDOTC have five arguments,
+whereas `dotc` requires two arguments.
+
+[table Deduction of arguments of dotc.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/dotc.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/dotc.hpp>
+using namespace boost::numeric::bindings;
+
+blas::dotc( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/cdotc.f cdotc.f] and [@http://www.netlib.org/blas/zdotc.f zdotc.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level1/iamax.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level1/iamax.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,76 @@
+
+[section iamax]
+
+[heading Prototype]
+There is one prototype of `iamax` available, please see below.
+``
+iamax( const VectorX& x );
+``
+
+
+[heading Description]
+
+`iamax` (short for TODO) provides a C++
+interface to BLAS routines ISAMAX, IDAMAX, ICAMAX, and IZAMAX.
+
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `VectorX`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorX>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of iamax.
+[ [ Value type of VectorX ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`float`][ISAMAX][cblas_isamax][cublasIsamax] ]
+[ [`double`][IDAMAX][cblas_idamax][cublasIdamax] ]
+[ [`complex<float>`][ICAMAX][cblas_icamax][cublasIcamax] ]
+[ [`complex<double>`][IZAMAX][cblas_izamax][Unavailable] ]
+
+]
+
+The original routines ISAMAX, IDAMAX, ICAMAX, and IZAMAX have three arguments,
+whereas `iamax` requires one arguments.
+
+[table Deduction of arguments of iamax.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/iamax.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/iamax.hpp>
+using namespace boost::numeric::bindings;
+
+blas::iamax( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/isamax.f isamax.f], [@http://www.netlib.org/blas/idamax.f idamax.f], [@http://www.netlib.org/blas/icamax.f icamax.f], and [@http://www.netlib.org/blas/izamax.f izamax.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level1/nrm2.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level1/nrm2.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,76 @@
+
+[section nrm2]
+
+[heading Prototype]
+There is one prototype of `nrm2` available, please see below.
+``
+nrm2( const VectorX& x );
+``
+
+
+[heading Description]
+
+`nrm2` (short for TODO) provides a C++
+interface to BLAS routines SNRM2, DNRM2, SCNRM2, and DZNRM2.
+
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `VectorX`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorX>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of nrm2.
+[ [ Value type of VectorX ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`float`][SNRM2][cblas_snrm2][cublasSnrm2] ]
+[ [`double`][DNRM2][cblas_dnrm2][cublasDnrm2] ]
+[ [`complex<float>`][SCNRM2][cblas_scnrm2][cublasScnrm2] ]
+[ [`complex<double>`][DZNRM2][cblas_dznrm2][Unavailable] ]
+
+]
+
+The original routines SNRM2, DNRM2, SCNRM2, and DZNRM2 have three arguments,
+whereas `nrm2` requires one arguments.
+
+[table Deduction of arguments of nrm2.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/nrm2.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/nrm2.hpp>
+using namespace boost::numeric::bindings;
+
+blas::nrm2( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/snrm2.f snrm2.f], [@http://www.netlib.org/blas/dnrm2.f dnrm2.f], [@http://www.netlib.org/blas/scnrm2.f scnrm2.f], and [@http://www.netlib.org/blas/dznrm2.f dznrm2.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level1/prec_dot.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level1/prec_dot.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,78 @@
+
+[section prec_dot]
+
+[heading Prototype]
+There is one prototype of `prec_dot` available, please see below.
+``
+prec_dot( const VectorX& x, const VectorY& y );
+``
+
+
+[heading Description]
+
+`prec_dot` (short for TODO) provides a C++
+interface to BLAS routines DSDOT.
+precision accumulation and result.
+
+Returns D.P. dot product accumulated in D.P., for S.P. SX and SY
+`prec_dot` = sum for I = 0 to N-1 of SX(LX+I*INCX) * SY(LY+I*INCY),
+where LX = 1 if INCX .GE. 0, else LX = 1+(1-N)*INCX, and LY is
+defined in a similar way using INCY.
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `VectorX`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorX>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of prec_dot.
+[ [ Value type of VectorX ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`double`][DSDOT][cblas_dsdot][Unavailable] ]
+
+]
+
+The original routines DSDOT have five arguments,
+whereas `prec_dot` requires two arguments.
+
+[table Deduction of arguments of prec_dot.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/prec_dot.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/prec_dot.hpp>
+using namespace boost::numeric::bindings;
+
+blas::prec_dot( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/dsdot.f dsdot.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level1/rot.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level1/rot.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,78 @@
+
+[section rot]
+
+[heading Prototype]
+There is one prototype of `rot` available, please see below.
+``
+rot( VectorX& x, VectorY& y, const Scalar >, const Scalar > );
+``
+
+
+[heading Description]
+
+`rot` (short for TODO) provides a C++
+interface to BLAS routines SROT, DROT, CSROT, and ZDROT.
+Applies a plane rotation, where the cos and sin (c and s) are real
+and the vectors cx and cy are complex.
+jack dongarra, linpack, 3/11/78.
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `VectorX`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorX>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of rot.
+[ [ Value type of VectorX ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`float`][SROT][cblas_srot][cublasSrot] ]
+[ [`double`][DROT][cblas_drot][cublasDrot] ]
+[ [`complex<float>`][CSROT][Unavailable][cublasCsrot] ]
+[ [`complex<double>`][ZDROT][Unavailable][Unavailable] ]
+
+]
+
+The original routines SROT, DROT, CSROT, and ZDROT have seven arguments,
+whereas `rot` requires four arguments.
+
+[table Deduction of arguments of rot.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/rot.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/rot.hpp>
+using namespace boost::numeric::bindings;
+
+blas::rot( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/srot.f srot.f], [@http://www.netlib.org/blas/drot.f drot.f], [@http://www.netlib.org/blas/csrot.f csrot.f], and [@http://www.netlib.org/blas/zdrot.f zdrot.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level1/rotg.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level1/rotg.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,80 @@
+
+[section rotg]
+
+[heading Prototype]
+There are two prototypes of `rotg` available, please see below.
+``
+rotg( Scalar >, Scalar >, Scalar >, Scalar > );
+``
+
+``
+rotg( Scalar& a, Scalar& b, Scalar >, Scalar& s );
+``
+
+
+[heading Description]
+
+`rotg` (short for TODO) provides a C++
+interface to BLAS routines SROTG, DROTG, CROTG, and ZROTG.
+
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `$FIRST_TYPENAME`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<$FIRST_TYPENAME>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of rotg.
+[ [ Value type of $FIRST_TYPENAME ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`float`][SROTG][cblas_srotg][cublasSrotg] ]
+[ [`double`][DROTG][cblas_drotg][cublasDrotg] ]
+[ [`complex<float>`][CROTG][Unavailable][Unavailable] ]
+[ [`complex<double>`][ZROTG][Unavailable][Unavailable] ]
+
+]
+
+The original routines SROTG, DROTG, CROTG, and ZROTG have four arguments,
+whereas `rotg` requires four arguments.
+
+[table Deduction of arguments of rotg.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/rotg.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/rotg.hpp>
+using namespace boost::numeric::bindings;
+
+blas::rotg( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/srotg.f srotg.f], [@http://www.netlib.org/blas/drotg.f drotg.f], [@http://www.netlib.org/blas/crotg.f crotg.f], and [@http://www.netlib.org/blas/zrotg.f zrotg.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level1/rotm.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level1/rotm.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,88 @@
+
+[section rotm]
+
+[heading Prototype]
+There is one prototype of `rotm` available, please see below.
+``
+rotm( VectorX& x, VectorY& y, VectorPARAM& param );
+``
+
+
+[heading Description]
+
+`rotm` (short for TODO) provides a C++
+interface to BLAS routines SROTM and DROTM.
+APPLY THE MODIFIED GIVENS TRANSFORMATION, H, TO THE 2 BY N MATRIX
+
+(DX**T) , WHERE **T INDICATES TRANSPOSE. THE ELEMENTS OF DX ARE IN
+(DY**T)
+
+DX(LX+I*INCX), I = 0 TO N-1, WHERE LX = 1 IF INCX .GE. 0, ELSE
+LX = (-INCX)*N, AND SIMILARLY FOR SY USING LY AND INCY.
+WITH DPARAM(1)=DFLAG, H HAS ONE OF THE FOLLOWING FORMS..
+
+DFLAG=-1.D0 DFLAG=0.D0 DFLAG=1.D0 DFLAG=-2.D0
+
+(DH11 DH12) (1.D0 DH12) (DH11 1.D0) (1.D0 0.D0)
+H=( ) ( ) ( ) ( )
+(DH21 DH22), (DH21 1.D0), (-1.D0 DH22), (0.D0 1.D0).
+SEE `rotm`G FOR A DESCRIPTION OF DATA STORAGE IN DPARAM.
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `VectorX`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorX>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of rotm.
+[ [ Value type of VectorX ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`float`][SROTM][cblas_srotm][cublasSrotm] ]
+[ [`double`][DROTM][cblas_drotm][cublasDrotm] ]
+
+]
+
+The original routines SROTM and DROTM have six arguments,
+whereas `rotm` requires three arguments.
+
+[table Deduction of arguments of rotm.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/rotm.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/rotm.hpp>
+using namespace boost::numeric::bindings;
+
+blas::rotm( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/srotm.f srotm.f] and [@http://www.netlib.org/blas/drotm.f drotm.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level1/rotmg.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level1/rotmg.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,96 @@
+
+[section rotmg]
+
+[heading Prototype]
+There are two prototypes of `rotmg` available, please see below.
+``
+rotmg( Scalar >, Scalar >, Scalar >, const Scalar >,
+ VectorSPARAM& sparam );
+``
+
+``
+rotmg( Scalar >, Scalar >, Scalar >, const Scalar >,
+ VectorDPARAM& dparam );
+``
+
+
+[heading Description]
+
+`rotmg` (short for TODO) provides a C++
+interface to BLAS routines SROTMG and DROTMG.
+CONSTRUCT THE MODIFIED GIVENS TRANSFORMATION MATRIX H WHICH ZEROS
+THE SECOND COMPONENT OF THE 2-VECTOR (DSQRT(DD1)*DX1,DSQRT(DD2)*
+DY2)**T.
+WITH DPARAM(1)=DFLAG, H HAS ONE OF THE FOLLOWING FORMS..
+
+DFLAG=-1.D0 DFLAG=0.D0 DFLAG=1.D0 DFLAG=-2.D0
+
+(DH11 DH12) (1.D0 DH12) (DH11 1.D0) (1.D0 0.D0)
+H=( ) ( ) ( ) ( )
+(DH21 DH22), (DH21 1.D0), (-1.D0 DH22), (0.D0 1.D0).
+LOCATIONS 2-4 OF DPARAM CONTAIN DH11, DH21, DH12, AND DH22
+RESPECTIVELY. (VALUES OF 1.D0, -1.D0, OR 0.D0 IMPLIED BY THE
+VALUE OF DPARAM(1) ARE NOT STORED IN DPARAM.)
+
+THE VALUES OF GAMSQ AND RGAMSQ SET IN THE DATA STATEMENT MAY BE
+INEXACT. THIS IS OK AS THEY ARE ONLY USED FOR TESTING THE SIZE
+OF DD1 AND DD2. ALL ACTUAL SCALING OF DATA IS DONE USING GAM.
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `VectorSPARAM`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorSPARAM>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of rotmg.
+[ [ Value type of VectorSPARAM ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`float`][SROTMG][cblas_srotmg][cublasSrotmg] ]
+[ [`double`][DROTMG][cblas_drotmg][cublasDrotmg] ]
+
+]
+
+The original routines SROTMG and DROTMG have five arguments,
+whereas `rotmg` requires five arguments.
+
+[table Deduction of arguments of rotmg.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/rotmg.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/rotmg.hpp>
+using namespace boost::numeric::bindings;
+
+blas::rotmg( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/srotmg.f srotmg.f] and [@http://www.netlib.org/blas/drotmg.f drotmg.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level1/scal.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level1/scal.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,82 @@
+
+[section scal]
+
+[heading Prototype]
+There are two prototypes of `scal` available, please see below.
+``
+scal( const Scalar >, VectorX& x );
+``
+
+``
+scal( const ScalarA a, VectorX& x );
+``
+
+
+[heading Description]
+
+`scal` (short for scale) provides a C++
+interface to BLAS routines SSCAL, DSCAL, CSSCAL, ZDSCAL, CSCAL, and ZSCAL.
+
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `VectorX`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorX>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of scal.
+[ [ Value type of VectorX ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`float`][SSCAL][cblas_sscal][cublasSscal] ]
+[ [`double`][DSCAL][cblas_dscal][cublasDscal] ]
+[ [`combined float and complex<float>`][CSSCAL][cblas_csscal][cublasCsscal] ]
+[ [`combined double and complex<double>`][ZDSCAL][cblas_zdscal][Unavailable] ]
+[ [`complex<float>`][CSCAL][cblas_cscal][cublasCscal] ]
+[ [`complex<double>`][ZSCAL][cblas_zscal][cublasZscal] ]
+
+]
+
+The original routines SSCAL, DSCAL, CSSCAL, ZDSCAL, CSCAL, and ZSCAL have four arguments,
+whereas `scal` requires two arguments.
+
+[table Deduction of arguments of scal.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/scal.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/scal.hpp>
+using namespace boost::numeric::bindings;
+
+blas::scal( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/sscal.f sscal.f], [@http://www.netlib.org/blas/dscal.f dscal.f], [@http://www.netlib.org/blas/csscal.f csscal.f], [@http://www.netlib.org/blas/zdscal.f zdscal.f], [@http://www.netlib.org/blas/cscal.f cscal.f], and [@http://www.netlib.org/blas/zscal.f zscal.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level1/swap.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level1/swap.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,76 @@
+
+[section swap]
+
+[heading Prototype]
+There is one prototype of `swap` available, please see below.
+``
+swap( VectorX& x, VectorY& y );
+``
+
+
+[heading Description]
+
+`swap` (short for TODO) provides a C++
+interface to BLAS routines SSWAP, DSWAP, CSWAP, and ZSWAP.
+
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `VectorX`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorX>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of swap.
+[ [ Value type of VectorX ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`float`][SSWAP][cblas_sswap][cublasSswap] ]
+[ [`double`][DSWAP][cblas_dswap][cublasDswap] ]
+[ [`complex<float>`][CSWAP][cblas_cswap][cublasCswap] ]
+[ [`complex<double>`][ZSWAP][cblas_zswap][Unavailable] ]
+
+]
+
+The original routines SSWAP, DSWAP, CSWAP, and ZSWAP have five arguments,
+whereas `swap` requires two arguments.
+
+[table Deduction of arguments of swap.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/swap.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/swap.hpp>
+using namespace boost::numeric::bindings;
+
+blas::swap( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/sswap.f sswap.f], [@http://www.netlib.org/blas/dswap.f dswap.f], [@http://www.netlib.org/blas/cswap.f cswap.f], and [@http://www.netlib.org/blas/zswap.f zswap.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/gbmv.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/gbmv.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,89 @@
+
+[section gbmv]
+
+[heading Prototype]
+There are two prototypes of `gbmv` available, please see below.
+``
+gbmv( const Scalar >, const MatrixA& a, const VectorX& x,
+ const Scalar >, VectorY& y );
+``
+
+``
+gbmv( const Scalar alpha, const MatrixA& a, const VectorX& x,
+ const Scalar beta, VectorY& y );
+``
+
+
+[heading Description]
+
+`gbmv` (short for generic, banded, matrix-vector operation) provides a C++
+interface to BLAS routines SGBMV, DGBMV, CGBMV, and ZGBMV.
+`gbmv` performs one of the matrix-vector operations
+
+y := alpha*A*x + beta*y, or y := alpha*A'*x + beta*y, or
+
+y := alpha*conjg( A' )*x + beta*y,
+
+where alpha and beta are scalars, x and y are vectors and A is an
+m by n band matrix, with kl sub-diagonals and ku super-diagonals.
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of gbmv.
+[ [ Value type of MatrixA ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`float`][SGBMV][cblas_sgbmv][cublasSgbmv] ]
+[ [`double`][DGBMV][cblas_dgbmv][Unavailable] ]
+[ [`complex<float>`][CGBMV][cblas_cgbmv][cublasCgbmv] ]
+[ [`complex<double>`][ZGBMV][cblas_zgbmv][Unavailable] ]
+
+]
+
+The original routines SGBMV, DGBMV, CGBMV, and ZGBMV have thirteen arguments,
+whereas `gbmv` requires five arguments.
+
+[table Deduction of arguments of gbmv.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/gbmv.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/gbmv.hpp>
+using namespace boost::numeric::bindings;
+
+blas::gbmv( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/sgbmv.f sgbmv.f], [@http://www.netlib.org/blas/dgbmv.f dgbmv.f], [@http://www.netlib.org/blas/cgbmv.f cgbmv.f], and [@http://www.netlib.org/blas/zgbmv.f zgbmv.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/gemv.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/gemv.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,89 @@
+
+[section gemv]
+
+[heading Prototype]
+There are two prototypes of `gemv` available, please see below.
+``
+gemv( const Scalar >, const MatrixA& a, const VectorX& x,
+ const Scalar >, VectorY& y );
+``
+
+``
+gemv( const Scalar alpha, const MatrixA& a, const VectorX& x,
+ const Scalar beta, VectorY& y );
+``
+
+
+[heading Description]
+
+`gemv` (short for generic matrix-vector operation) provides a C++
+interface to BLAS routines SGEMV, DGEMV, CGEMV, and ZGEMV.
+`gemv` performs one of the matrix-vector operations
+
+y := alpha*A*x + beta*y, or y := alpha*A'*x + beta*y, or
+
+y := alpha*conjg( A' )*x + beta*y,
+
+where alpha and beta are scalars, x and y are vectors and A is an
+m by n matrix.
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of gemv.
+[ [ Value type of MatrixA ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`float`][SGEMV][cblas_sgemv][cublasSgemv] ]
+[ [`double`][DGEMV][cblas_dgemv][cublasDgemv] ]
+[ [`complex<float>`][CGEMV][cblas_cgemv][cublasCgemv] ]
+[ [`complex<double>`][ZGEMV][cblas_zgemv][cublasZgemv] ]
+
+]
+
+The original routines SGEMV, DGEMV, CGEMV, and ZGEMV have eleven arguments,
+whereas `gemv` requires five arguments.
+
+[table Deduction of arguments of gemv.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/gemv.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/gemv.hpp>
+using namespace boost::numeric::bindings;
+
+blas::gemv( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/sgemv.f sgemv.f], [@http://www.netlib.org/blas/dgemv.f dgemv.f], [@http://www.netlib.org/blas/cgemv.f cgemv.f], and [@http://www.netlib.org/blas/zgemv.f zgemv.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/ger.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/ger.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,79 @@
+
+[section ger]
+
+[heading Prototype]
+There is one prototype of `ger` available, please see below.
+``
+ger( const Scalar >, const VectorX& x, const VectorY& y, MatrixA& a );
+``
+
+
+[heading Description]
+
+`ger` (short for generic rank-1 update) provides a C++
+interface to BLAS routines SGER and DGER.
+`ger` performs the rank 1 operation
+
+A := alpha*x*y' + A,
+
+where alpha is a scalar, x is an m element vector, y is an n element
+vector and A is an m by n matrix.
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `VectorX`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorX>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of ger.
+[ [ Value type of VectorX ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`float`][SGER][cblas_sger][cublasSger] ]
+[ [`double`][DGER][cblas_dger][cublasDger] ]
+
+]
+
+The original routines SGER and DGER have nine arguments,
+whereas `ger` requires four arguments.
+
+[table Deduction of arguments of ger.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/ger.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/ger.hpp>
+using namespace boost::numeric::bindings;
+
+blas::ger( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/sger.f sger.f] and [@http://www.netlib.org/blas/dger.f dger.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/gerc.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/gerc.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,80 @@
+
+[section gerc]
+
+[heading Prototype]
+There is one prototype of `gerc` available, please see below.
+``
+gerc( const Scalar alpha, const VectorX& x, const VectorY& y,
+ MatrixA& a );
+``
+
+
+[heading Description]
+
+`gerc` (short for TODO) provides a C++
+interface to BLAS routines CGERC and ZGERC.
+`gerc` performs the rank 1 operation
+
+A := alpha*x*conjg( y' ) + A,
+
+where alpha is a scalar, x is an m element vector, y is an n element
+vector and A is an m by n matrix.
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `VectorX`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorX>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of gerc.
+[ [ Value type of VectorX ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`complex<float>`][CGERC][cblas_cgerc][cublasCgerc] ]
+[ [`complex<double>`][ZGERC][cblas_zgerc][Unavailable] ]
+
+]
+
+The original routines CGERC and ZGERC have nine arguments,
+whereas `gerc` requires four arguments.
+
+[table Deduction of arguments of gerc.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/gerc.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/gerc.hpp>
+using namespace boost::numeric::bindings;
+
+blas::gerc( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/cgerc.f cgerc.f] and [@http://www.netlib.org/blas/zgerc.f zgerc.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/geru.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/geru.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,80 @@
+
+[section geru]
+
+[heading Prototype]
+There is one prototype of `geru` available, please see below.
+``
+geru( const Scalar alpha, const VectorX& x, const VectorY& y,
+ MatrixA& a );
+``
+
+
+[heading Description]
+
+`geru` (short for TODO) provides a C++
+interface to BLAS routines CGERU and ZGERU.
+`geru` performs the rank 1 operation
+
+A := alpha*x*y' + A,
+
+where alpha is a scalar, x is an m element vector, y is an n element
+vector and A is an m by n matrix.
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `VectorX`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorX>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of geru.
+[ [ Value type of VectorX ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`complex<float>`][CGERU][cblas_cgeru][cublasCgeru] ]
+[ [`complex<double>`][ZGERU][cblas_zgeru][Unavailable] ]
+
+]
+
+The original routines CGERU and ZGERU have nine arguments,
+whereas `geru` requires four arguments.
+
+[table Deduction of arguments of geru.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/geru.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/geru.hpp>
+using namespace boost::numeric::bindings;
+
+blas::geru( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/cgeru.f cgeru.f] and [@http://www.netlib.org/blas/zgeru.f zgeru.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/hbmv.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/hbmv.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,80 @@
+
+[section hbmv]
+
+[heading Prototype]
+There is one prototype of `hbmv` available, please see below.
+``
+hbmv( const Scalar alpha, const MatrixA& a, const VectorX& x,
+ const Scalar beta, VectorY& y );
+``
+
+
+[heading Description]
+
+`hbmv` (short for hermitian, banded, matrix-vector operation) provides a C++
+interface to BLAS routines CHBMV and ZHBMV.
+`hbmv` performs the matrix-vector operation
+
+y := alpha*A*x + beta*y,
+
+where alpha and beta are scalars, x and y are n element vectors and
+A is an n by n hermitian band matrix, with k super-diagonals.
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of hbmv.
+[ [ Value type of MatrixA ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`complex<float>`][CHBMV][cblas_chbmv][cublasChbmv] ]
+[ [`complex<double>`][ZHBMV][cblas_zhbmv][Unavailable] ]
+
+]
+
+The original routines CHBMV and ZHBMV have eleven arguments,
+whereas `hbmv` requires five arguments.
+
+[table Deduction of arguments of hbmv.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/hbmv.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/hbmv.hpp>
+using namespace boost::numeric::bindings;
+
+blas::hbmv( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/chbmv.f chbmv.f] and [@http://www.netlib.org/blas/zhbmv.f zhbmv.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/hemv.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/hemv.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,80 @@
+
+[section hemv]
+
+[heading Prototype]
+There is one prototype of `hemv` available, please see below.
+``
+hemv( const Scalar alpha, const MatrixA& a, const VectorX& x,
+ const Scalar beta, VectorY& y );
+``
+
+
+[heading Description]
+
+`hemv` (short for hermitian matrix-vector operation) provides a C++
+interface to BLAS routines CHEMV and ZHEMV.
+`hemv` performs the matrix-vector operation
+
+y := alpha*A*x + beta*y,
+
+where alpha and beta are scalars, x and y are n element vectors and
+A is an n by n hermitian matrix.
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of hemv.
+[ [ Value type of MatrixA ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`complex<float>`][CHEMV][cblas_chemv][cublasChemv] ]
+[ [`complex<double>`][ZHEMV][cblas_zhemv][Unavailable] ]
+
+]
+
+The original routines CHEMV and ZHEMV have ten arguments,
+whereas `hemv` requires five arguments.
+
+[table Deduction of arguments of hemv.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/hemv.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/hemv.hpp>
+using namespace boost::numeric::bindings;
+
+blas::hemv( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/chemv.f chemv.f] and [@http://www.netlib.org/blas/zhemv.f zhemv.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/her.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/her.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,79 @@
+
+[section her]
+
+[heading Prototype]
+There is one prototype of `her` available, please see below.
+``
+her( const Scalar >, const VectorX& x, MatrixA& a );
+``
+
+
+[heading Description]
+
+`her` (short for hermitian rank-1 update) provides a C++
+interface to BLAS routines CHER and ZHER.
+`her` performs the hermitian rank 1 operation
+
+A := alpha*x*conjg( x' ) + A,
+
+where alpha is a real scalar, x is an n element vector and A is an
+n by n hermitian matrix.
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `VectorX`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorX>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of her.
+[ [ Value type of VectorX ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`complex<float>`][CHER][cblas_cher][cublasCher] ]
+[ [`complex<double>`][ZHER][cblas_zher][Unavailable] ]
+
+]
+
+The original routines CHER and ZHER have seven arguments,
+whereas `her` requires three arguments.
+
+[table Deduction of arguments of her.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/her.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/her.hpp>
+using namespace boost::numeric::bindings;
+
+blas::her( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/cher.f cher.f] and [@http://www.netlib.org/blas/zher.f zher.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/her2.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/her2.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,80 @@
+
+[section her2]
+
+[heading Prototype]
+There is one prototype of `her2` available, please see below.
+``
+her2( const Scalar alpha, const VectorX& x, const VectorY& y,
+ MatrixA& a );
+``
+
+
+[heading Description]
+
+`her2` (short for hermitian rank-2 update) provides a C++
+interface to BLAS routines CHER2 and ZHER2.
+`her2` performs the hermitian rank 2 operation
+
+A := alpha*x*conjg( y' ) + conjg( alpha )*y*conjg( x' ) + A,
+
+where alpha is a scalar, x and y are n element vectors and A is an n
+by n hermitian matrix.
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `VectorX`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorX>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of her2.
+[ [ Value type of VectorX ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`complex<float>`][CHER2][cblas_cher2][cublasCher2] ]
+[ [`complex<double>`][ZHER2][cblas_zher2][Unavailable] ]
+
+]
+
+The original routines CHER2 and ZHER2 have nine arguments,
+whereas `her2` requires four arguments.
+
+[table Deduction of arguments of her2.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/her2.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/her2.hpp>
+using namespace boost::numeric::bindings;
+
+blas::her2( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/cher2.f cher2.f] and [@http://www.netlib.org/blas/zher2.f zher2.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/hpmv.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/hpmv.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,80 @@
+
+[section hpmv]
+
+[heading Prototype]
+There is one prototype of `hpmv` available, please see below.
+``
+hpmv( const Scalar alpha, const MatrixAP& ap, const VectorX& x,
+ const Scalar beta, VectorY& y );
+``
+
+
+[heading Description]
+
+`hpmv` (short for hermitian, packed, matrix-vector operation) provides a C++
+interface to BLAS routines CHPMV and ZHPMV.
+`hpmv` performs the matrix-vector operation
+
+y := alpha*A*x + beta*y,
+
+where alpha and beta are scalars, x and y are n element vectors and
+A is an n by n hermitian matrix, supplied in packed form.
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of hpmv.
+[ [ Value type of MatrixAP ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`complex<float>`][CHPMV][cblas_chpmv][cublasChpmv] ]
+[ [`complex<double>`][ZHPMV][cblas_zhpmv][Unavailable] ]
+
+]
+
+The original routines CHPMV and ZHPMV have nine arguments,
+whereas `hpmv` requires five arguments.
+
+[table Deduction of arguments of hpmv.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/hpmv.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/hpmv.hpp>
+using namespace boost::numeric::bindings;
+
+blas::hpmv( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/chpmv.f chpmv.f] and [@http://www.netlib.org/blas/zhpmv.f zhpmv.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/hpr.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/hpr.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,79 @@
+
+[section hpr]
+
+[heading Prototype]
+There is one prototype of `hpr` available, please see below.
+``
+hpr( const Scalar >, const VectorX& x, MatrixAP& ap );
+``
+
+
+[heading Description]
+
+`hpr` (short for hermitian, packed, rank-1 update) provides a C++
+interface to BLAS routines CHPR and ZHPR.
+`hpr` performs the hermitian rank 1 operation
+
+A := alpha*x*conjg( x' ) + A,
+
+where alpha is a real scalar, x is an n element vector and A is an
+n by n hermitian matrix, supplied in packed form.
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `VectorX`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorX>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of hpr.
+[ [ Value type of VectorX ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`complex<float>`][CHPR][cblas_chpr][cublasChpr] ]
+[ [`complex<double>`][ZHPR][cblas_zhpr][Unavailable] ]
+
+]
+
+The original routines CHPR and ZHPR have six arguments,
+whereas `hpr` requires three arguments.
+
+[table Deduction of arguments of hpr.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/hpr.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/hpr.hpp>
+using namespace boost::numeric::bindings;
+
+blas::hpr( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/chpr.f chpr.f] and [@http://www.netlib.org/blas/zhpr.f zhpr.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/hpr2.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/hpr2.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,80 @@
+
+[section hpr2]
+
+[heading Prototype]
+There is one prototype of `hpr2` available, please see below.
+``
+hpr2( const Scalar alpha, const VectorX& x, const VectorY& y,
+ MatrixAP& ap );
+``
+
+
+[heading Description]
+
+`hpr2` (short for hermitian, packed, rank-2 update) provides a C++
+interface to BLAS routines CHPR2 and ZHPR2.
+`hpr2` performs the hermitian rank 2 operation
+
+A := alpha*x*conjg( y' ) + conjg( alpha )*y*conjg( x' ) + A,
+
+where alpha is a scalar, x and y are n element vectors and A is an
+n by n hermitian matrix, supplied in packed form.
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `VectorX`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorX>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of hpr2.
+[ [ Value type of VectorX ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`complex<float>`][CHPR2][cblas_chpr2][cublasChpr2] ]
+[ [`complex<double>`][ZHPR2][cblas_zhpr2][Unavailable] ]
+
+]
+
+The original routines CHPR2 and ZHPR2 have eight arguments,
+whereas `hpr2` requires four arguments.
+
+[table Deduction of arguments of hpr2.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/hpr2.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/hpr2.hpp>
+using namespace boost::numeric::bindings;
+
+blas::hpr2( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/chpr2.f chpr2.f] and [@http://www.netlib.org/blas/zhpr2.f zhpr2.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/sbmv.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/sbmv.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,80 @@
+
+[section sbmv]
+
+[heading Prototype]
+There is one prototype of `sbmv` available, please see below.
+``
+sbmv( const Scalar >, const MatrixA& a, const VectorX& x,
+ const Scalar >, VectorY& y );
+``
+
+
+[heading Description]
+
+`sbmv` (short for symmetric, banded, matrix-vector operation) provides a C++
+interface to BLAS routines SSBMV and DSBMV.
+`sbmv` performs the matrix-vector operation
+
+y := alpha*A*x + beta*y,
+
+where alpha and beta are scalars, x and y are n element vectors and
+A is an n by n symmetric band matrix, with k super-diagonals.
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of sbmv.
+[ [ Value type of MatrixA ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`float`][SSBMV][cblas_ssbmv][cublasSsbmv] ]
+[ [`double`][DSBMV][cblas_dsbmv][Unavailable] ]
+
+]
+
+The original routines SSBMV and DSBMV have eleven arguments,
+whereas `sbmv` requires five arguments.
+
+[table Deduction of arguments of sbmv.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/sbmv.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/sbmv.hpp>
+using namespace boost::numeric::bindings;
+
+blas::sbmv( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/ssbmv.f ssbmv.f] and [@http://www.netlib.org/blas/dsbmv.f dsbmv.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/spmv.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/spmv.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,80 @@
+
+[section spmv]
+
+[heading Prototype]
+There is one prototype of `spmv` available, please see below.
+``
+spmv( const Scalar >, const MatrixAP& ap, const VectorX& x,
+ const Scalar >, VectorY& y );
+``
+
+
+[heading Description]
+
+`spmv` (short for symmetric, packed, matrix-vector operation) provides a C++
+interface to BLAS routines SSPMV and DSPMV.
+`spmv` performs the matrix-vector operation
+
+y := alpha*A*x + beta*y,
+
+where alpha and beta are scalars, x and y are n element vectors and
+A is an n by n symmetric matrix, supplied in packed form.
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of spmv.
+[ [ Value type of MatrixAP ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`float`][SSPMV][cblas_sspmv][cublasSspmv] ]
+[ [`double`][DSPMV][cblas_dspmv][Unavailable] ]
+
+]
+
+The original routines SSPMV and DSPMV have nine arguments,
+whereas `spmv` requires five arguments.
+
+[table Deduction of arguments of spmv.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/spmv.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/spmv.hpp>
+using namespace boost::numeric::bindings;
+
+blas::spmv( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/sspmv.f sspmv.f] and [@http://www.netlib.org/blas/dspmv.f dspmv.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/spr.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/spr.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,79 @@
+
+[section spr]
+
+[heading Prototype]
+There is one prototype of `spr` available, please see below.
+``
+spr( const Scalar >, const VectorX& x, MatrixAP& ap );
+``
+
+
+[heading Description]
+
+`spr` (short for symmetric, packed, rank-1 update) provides a C++
+interface to BLAS routines SSPR and DSPR.
+`spr` performs the symmetric rank 1 operation
+
+A := alpha*x*x' + A,
+
+where alpha is a real scalar, x is an n element vector and A is an
+n by n symmetric matrix, supplied in packed form.
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `VectorX`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorX>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of spr.
+[ [ Value type of VectorX ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`float`][SSPR][cblas_sspr][cublasSspr] ]
+[ [`double`][DSPR][cblas_dspr][Unavailable] ]
+
+]
+
+The original routines SSPR and DSPR have six arguments,
+whereas `spr` requires three arguments.
+
+[table Deduction of arguments of spr.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/spr.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/spr.hpp>
+using namespace boost::numeric::bindings;
+
+blas::spr( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/sspr.f sspr.f] and [@http://www.netlib.org/blas/dspr.f dspr.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/spr2.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/spr2.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,79 @@
+
+[section spr2]
+
+[heading Prototype]
+There is one prototype of `spr2` available, please see below.
+``
+spr2( const Scalar >, const VectorX& x, const VectorY& y, MatrixAP& ap );
+``
+
+
+[heading Description]
+
+`spr2` (short for symmetric, packed, rank-2 update) provides a C++
+interface to BLAS routines SSPR2 and DSPR2.
+`spr2` performs the symmetric rank 2 operation
+
+A := alpha*x*y' + alpha*y*x' + A,
+
+where alpha is a scalar, x and y are n element vectors and A is an
+n by n symmetric matrix, supplied in packed form.
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `VectorX`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorX>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of spr2.
+[ [ Value type of VectorX ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`float`][SSPR2][cblas_sspr2][cublasSspr2] ]
+[ [`double`][DSPR2][cblas_dspr2][Unavailable] ]
+
+]
+
+The original routines SSPR2 and DSPR2 have eight arguments,
+whereas `spr2` requires four arguments.
+
+[table Deduction of arguments of spr2.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/spr2.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/spr2.hpp>
+using namespace boost::numeric::bindings;
+
+blas::spr2( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/sspr2.f sspr2.f] and [@http://www.netlib.org/blas/dspr2.f dspr2.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/symv.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/symv.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,80 @@
+
+[section symv]
+
+[heading Prototype]
+There is one prototype of `symv` available, please see below.
+``
+symv( const Scalar >, const MatrixA& a, const VectorX& x,
+ const Scalar >, VectorY& y );
+``
+
+
+[heading Description]
+
+`symv` (short for symmetric matrix-vector operation) provides a C++
+interface to BLAS routines SSYMV and DSYMV.
+`symv` performs the matrix-vector operation
+
+y := alpha*A*x + beta*y,
+
+where alpha and beta are scalars, x and y are n element vectors and
+A is an n by n symmetric matrix.
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of symv.
+[ [ Value type of MatrixA ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`float`][SSYMV][cblas_ssymv][cublasSsymv] ]
+[ [`double`][DSYMV][cblas_dsymv][Unavailable] ]
+
+]
+
+The original routines SSYMV and DSYMV have ten arguments,
+whereas `symv` requires five arguments.
+
+[table Deduction of arguments of symv.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/symv.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/symv.hpp>
+using namespace boost::numeric::bindings;
+
+blas::symv( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/ssymv.f ssymv.f] and [@http://www.netlib.org/blas/dsymv.f dsymv.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/syr.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/syr.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,79 @@
+
+[section syr]
+
+[heading Prototype]
+There is one prototype of `syr` available, please see below.
+``
+syr( const Scalar >, const VectorX& x, MatrixA& a );
+``
+
+
+[heading Description]
+
+`syr` (short for symmetric rank-1 update) provides a C++
+interface to BLAS routines SSYR and DSYR.
+`syr` performs the symmetric rank 1 operation
+
+A := alpha*x*x' + A,
+
+where alpha is a real scalar, x is an n element vector and A is an
+n by n symmetric matrix.
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `VectorX`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorX>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of syr.
+[ [ Value type of VectorX ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`float`][SSYR][cblas_ssyr][cublasSsyr] ]
+[ [`double`][DSYR][cblas_dsyr][cublasDsyr] ]
+
+]
+
+The original routines SSYR and DSYR have seven arguments,
+whereas `syr` requires three arguments.
+
+[table Deduction of arguments of syr.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/syr.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/syr.hpp>
+using namespace boost::numeric::bindings;
+
+blas::syr( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/ssyr.f ssyr.f] and [@http://www.netlib.org/blas/dsyr.f dsyr.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/syr2.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/syr2.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,79 @@
+
+[section syr2]
+
+[heading Prototype]
+There is one prototype of `syr2` available, please see below.
+``
+syr2( const Scalar >, const VectorX& x, const VectorY& y, MatrixA& a );
+``
+
+
+[heading Description]
+
+`syr2` (short for symmetric rank-2 update) provides a C++
+interface to BLAS routines SSYR2 and DSYR2.
+`syr2` performs the symmetric rank 2 operation
+
+A := alpha*x*y' + alpha*y*x' + A,
+
+where alpha is a scalar, x and y are n element vectors and A is an n
+by n symmetric matrix.
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `VectorX`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorX>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of syr2.
+[ [ Value type of VectorX ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`float`][SSYR2][cblas_ssyr2][cublasSsyr2] ]
+[ [`double`][DSYR2][cblas_dsyr2][Unavailable] ]
+
+]
+
+The original routines SSYR2 and DSYR2 have nine arguments,
+whereas `syr2` requires four arguments.
+
+[table Deduction of arguments of syr2.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/syr2.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/syr2.hpp>
+using namespace boost::numeric::bindings;
+
+blas::syr2( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/ssyr2.f ssyr2.f] and [@http://www.netlib.org/blas/dsyr2.f dsyr2.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/tbmv.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/tbmv.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,81 @@
+
+[section tbmv]
+
+[heading Prototype]
+There is one prototype of `tbmv` available, please see below.
+``
+tbmv( const int_t k, const MatrixA& a, VectorX& x );
+``
+
+
+[heading Description]
+
+`tbmv` (short for triangular, banded, matrix-vector operation) provides a C++
+interface to BLAS routines STBMV, DTBMV, CTBMV, and ZTBMV.
+`tbmv` performs one of the matrix-vector operations
+
+x := A*x, or x := A'*x, or x := conjg( A' )*x,
+
+where x is an n element vector and A is an n by n unit, or non-unit,
+upper or lower triangular band matrix, with ( k + 1 ) diagonals.
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of tbmv.
+[ [ Value type of MatrixA ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`float`][STBMV][cblas_stbmv][cublasStbmv] ]
+[ [`double`][DTBMV][cblas_dtbmv][Unavailable] ]
+[ [`complex<float>`][CTBMV][cblas_ctbmv][cublasCtbmv] ]
+[ [`complex<double>`][ZTBMV][cblas_ztbmv][Unavailable] ]
+
+]
+
+The original routines STBMV, DTBMV, CTBMV, and ZTBMV have nine arguments,
+whereas `tbmv` requires three arguments.
+
+[table Deduction of arguments of tbmv.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/tbmv.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/tbmv.hpp>
+using namespace boost::numeric::bindings;
+
+blas::tbmv( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/stbmv.f stbmv.f], [@http://www.netlib.org/blas/dtbmv.f dtbmv.f], [@http://www.netlib.org/blas/ctbmv.f ctbmv.f], and [@http://www.netlib.org/blas/ztbmv.f ztbmv.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/tbsv.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/tbsv.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,85 @@
+
+[section tbsv]
+
+[heading Prototype]
+There is one prototype of `tbsv` available, please see below.
+``
+tbsv( const int_t k, const MatrixA& a, VectorX& x );
+``
+
+
+[heading Description]
+
+`tbsv` (short for triangular, banded, solve system of equations) provides a C++
+interface to BLAS routines STBSV, DTBSV, CTBSV, and ZTBSV.
+`tbsv` solves one of the systems of equations
+
+A*x = b, or A'*x = b, or conjg( A' )*x = b,
+
+where b and x are n element vectors and A is an n by n unit, or
+non-unit, upper or lower triangular band matrix, with ( k + 1 )
+diagonals.
+
+No test for singularity or near-singularity is included in this
+routine. Such tests must be performed before calling this routine.
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of tbsv.
+[ [ Value type of MatrixA ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`float`][STBSV][cblas_stbsv][cublasStbsv] ]
+[ [`double`][DTBSV][cblas_dtbsv][Unavailable] ]
+[ [`complex<float>`][CTBSV][cblas_ctbsv][cublasCtbsv] ]
+[ [`complex<double>`][ZTBSV][cblas_ztbsv][Unavailable] ]
+
+]
+
+The original routines STBSV, DTBSV, CTBSV, and ZTBSV have nine arguments,
+whereas `tbsv` requires three arguments.
+
+[table Deduction of arguments of tbsv.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/tbsv.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/tbsv.hpp>
+using namespace boost::numeric::bindings;
+
+blas::tbsv( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/stbsv.f stbsv.f], [@http://www.netlib.org/blas/dtbsv.f dtbsv.f], [@http://www.netlib.org/blas/ctbsv.f ctbsv.f], and [@http://www.netlib.org/blas/ztbsv.f ztbsv.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/tpmv.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/tpmv.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,81 @@
+
+[section tpmv]
+
+[heading Prototype]
+There is one prototype of `tpmv` available, please see below.
+``
+tpmv( const MatrixAP& ap, VectorX& x );
+``
+
+
+[heading Description]
+
+`tpmv` (short for triangular, packed, matrix-vector operation) provides a C++
+interface to BLAS routines STPMV, DTPMV, CTPMV, and ZTPMV.
+`tpmv` performs one of the matrix-vector operations
+
+x := A*x, or x := A'*x, or x := conjg( A' )*x,
+
+where x is an n element vector and A is an n by n unit, or non-unit,
+upper or lower triangular matrix, supplied in packed form.
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of tpmv.
+[ [ Value type of MatrixAP ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`float`][STPMV][cblas_stpmv][cublasStpmv] ]
+[ [`double`][DTPMV][cblas_dtpmv][Unavailable] ]
+[ [`complex<float>`][CTPMV][cblas_ctpmv][cublasCtpmv] ]
+[ [`complex<double>`][ZTPMV][cblas_ztpmv][Unavailable] ]
+
+]
+
+The original routines STPMV, DTPMV, CTPMV, and ZTPMV have seven arguments,
+whereas `tpmv` requires two arguments.
+
+[table Deduction of arguments of tpmv.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/tpmv.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/tpmv.hpp>
+using namespace boost::numeric::bindings;
+
+blas::tpmv( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/stpmv.f stpmv.f], [@http://www.netlib.org/blas/dtpmv.f dtpmv.f], [@http://www.netlib.org/blas/ctpmv.f ctpmv.f], and [@http://www.netlib.org/blas/ztpmv.f ztpmv.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/tpsv.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/tpsv.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,84 @@
+
+[section tpsv]
+
+[heading Prototype]
+There is one prototype of `tpsv` available, please see below.
+``
+tpsv( const MatrixAP& ap, VectorX& x );
+``
+
+
+[heading Description]
+
+`tpsv` (short for triangular, packed, solve system of equations) provides a C++
+interface to BLAS routines STPSV, DTPSV, CTPSV, and ZTPSV.
+`tpsv` solves one of the systems of equations
+
+A*x = b, or A'*x = b, or conjg( A' )*x = b,
+
+where b and x are n element vectors and A is an n by n unit, or
+non-unit, upper or lower triangular matrix, supplied in packed form.
+
+No test for singularity or near-singularity is included in this
+routine. Such tests must be performed before calling this routine.
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of tpsv.
+[ [ Value type of MatrixAP ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`float`][STPSV][cblas_stpsv][cublasStpsv] ]
+[ [`double`][DTPSV][cblas_dtpsv][Unavailable] ]
+[ [`complex<float>`][CTPSV][cblas_ctpsv][cublasCtpsv] ]
+[ [`complex<double>`][ZTPSV][cblas_ztpsv][Unavailable] ]
+
+]
+
+The original routines STPSV, DTPSV, CTPSV, and ZTPSV have seven arguments,
+whereas `tpsv` requires two arguments.
+
+[table Deduction of arguments of tpsv.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/tpsv.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/tpsv.hpp>
+using namespace boost::numeric::bindings;
+
+blas::tpsv( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/stpsv.f stpsv.f], [@http://www.netlib.org/blas/dtpsv.f dtpsv.f], [@http://www.netlib.org/blas/ctpsv.f ctpsv.f], and [@http://www.netlib.org/blas/ztpsv.f ztpsv.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/trmv.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/trmv.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,81 @@
+
+[section trmv]
+
+[heading Prototype]
+There is one prototype of `trmv` available, please see below.
+``
+trmv( const MatrixA& a, VectorX& x );
+``
+
+
+[heading Description]
+
+`trmv` (short for triangular matrix-vector operation) provides a C++
+interface to BLAS routines STRMV, DTRMV, CTRMV, and ZTRMV.
+`trmv` performs one of the matrix-vector operations
+
+x := A*x, or x := A'*x, or x := conjg( A' )*x,
+
+where x is an n element vector and A is an n by n unit, or non-unit,
+upper or lower triangular matrix.
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of trmv.
+[ [ Value type of MatrixA ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`float`][STRMV][cblas_strmv][cublasStrmv] ]
+[ [`double`][DTRMV][cblas_dtrmv][Unavailable] ]
+[ [`complex<float>`][CTRMV][cblas_ctrmv][Unavailable] ]
+[ [`complex<double>`][ZTRMV][cblas_ztrmv][Unavailable] ]
+
+]
+
+The original routines STRMV, DTRMV, CTRMV, and ZTRMV have eight arguments,
+whereas `trmv` requires two arguments.
+
+[table Deduction of arguments of trmv.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/trmv.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/trmv.hpp>
+using namespace boost::numeric::bindings;
+
+blas::trmv( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/strmv.f strmv.f], [@http://www.netlib.org/blas/dtrmv.f dtrmv.f], [@http://www.netlib.org/blas/ctrmv.f ctrmv.f], and [@http://www.netlib.org/blas/ztrmv.f ztrmv.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/trsv.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level2/trsv.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,84 @@
+
+[section trsv]
+
+[heading Prototype]
+There is one prototype of `trsv` available, please see below.
+``
+trsv( const MatrixA& a, VectorX& x );
+``
+
+
+[heading Description]
+
+`trsv` (short for triangular solve system of equations) provides a C++
+interface to BLAS routines STRSV, DTRSV, CTRSV, and ZTRSV.
+`trsv` solves one of the systems of equations
+
+A*x = b, or A'*x = b, or conjg( A' )*x = b,
+
+where b and x are n element vectors and A is an n by n unit, or
+non-unit, upper or lower triangular matrix.
+
+No test for singularity or near-singularity is included in this
+routine. Such tests must be performed before calling this routine.
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of trsv.
+[ [ Value type of MatrixA ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`float`][STRSV][cblas_strsv][cublasStrsv] ]
+[ [`double`][DTRSV][cblas_dtrsv][cublasDtrsv] ]
+[ [`complex<float>`][CTRSV][cblas_ctrsv][cublasCtrsv] ]
+[ [`complex<double>`][ZTRSV][cblas_ztrsv][Unavailable] ]
+
+]
+
+The original routines STRSV, DTRSV, CTRSV, and ZTRSV have eight arguments,
+whereas `trsv` requires two arguments.
+
+[table Deduction of arguments of trsv.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/trsv.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/trsv.hpp>
+using namespace boost::numeric::bindings;
+
+blas::trsv( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/strsv.f strsv.f], [@http://www.netlib.org/blas/dtrsv.f dtrsv.f], [@http://www.netlib.org/blas/ctrsv.f ctrsv.f], and [@http://www.netlib.org/blas/ztrsv.f ztrsv.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level3/gemm.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level3/gemm.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,91 @@
+
+[section gemm]
+
+[heading Prototype]
+There are two prototypes of `gemm` available, please see below.
+``
+gemm( const Scalar >, const MatrixA& a, const MatrixB& b,
+ const Scalar >, MatrixC& c );
+``
+
+``
+gemm( const Scalar alpha, const MatrixA& a, const MatrixB& b,
+ const Scalar beta, MatrixC& c );
+``
+
+
+[heading Description]
+
+`gemm` (short for generic matrix-matrix operation) provides a C++
+interface to BLAS routines SGEMM, DGEMM, CGEMM, and ZGEMM.
+`gemm` performs one of the matrix-matrix operations
+
+C := alpha*op( A )*op( B ) + beta*C,
+
+where op( X ) is one of
+
+op( X ) = X or op( X ) = X' or op( X ) = conjg( X' ),
+
+alpha and beta are scalars, and A, B and C are matrices, with op( A )
+an m by k matrix, op( B ) a k by n matrix and C an m by n matrix.
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of gemm.
+[ [ Value type of MatrixA ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`float`][SGEMM][cblas_sgemm][cublasSgemm] ]
+[ [`double`][DGEMM][cblas_dgemm][cublasDgemm] ]
+[ [`complex<float>`][CGEMM][cblas_cgemm][cublasCgemm] ]
+[ [`complex<double>`][ZGEMM][cblas_zgemm][cublasZgemm] ]
+
+]
+
+The original routines SGEMM, DGEMM, CGEMM, and ZGEMM have thirteen arguments,
+whereas `gemm` requires five arguments.
+
+[table Deduction of arguments of gemm.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/gemm.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/gemm.hpp>
+using namespace boost::numeric::bindings;
+
+blas::gemm( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/sgemm.f sgemm.f], [@http://www.netlib.org/blas/dgemm.f dgemm.f], [@http://www.netlib.org/blas/cgemm.f cgemm.f], and [@http://www.netlib.org/blas/zgemm.f zgemm.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level3/hemm.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level3/hemm.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,84 @@
+
+[section hemm]
+
+[heading Prototype]
+There is one prototype of `hemm` available, please see below.
+``
+hemm( const Side side, const Scalar alpha, const MatrixA& a,
+ const MatrixB& b, const Scalar beta, MatrixC& c );
+``
+
+
+[heading Description]
+
+`hemm` (short for hermitian matrix-matrix operation) provides a C++
+interface to BLAS routines CHEMM and ZHEMM.
+`hemm` performs one of the matrix-matrix operations
+
+C := alpha*A*B + beta*C,
+
+or
+
+C := alpha*B*A + beta*C,
+
+where alpha and beta are scalars, A is an hermitian matrix and B and
+C are m by n matrices.
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of hemm.
+[ [ Value type of MatrixA ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`complex<float>`][CHEMM][cblas_chemm][cublasChemm] ]
+[ [`complex<double>`][ZHEMM][cblas_zhemm][Unavailable] ]
+
+]
+
+The original routines CHEMM and ZHEMM have twelve arguments,
+whereas `hemm` requires six arguments.
+
+[table Deduction of arguments of hemm.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/hemm.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/hemm.hpp>
+using namespace boost::numeric::bindings;
+
+blas::hemm( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/chemm.f chemm.f] and [@http://www.netlib.org/blas/zhemm.f zhemm.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level3/her2k.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level3/her2k.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,85 @@
+
+[section her2k]
+
+[heading Prototype]
+There is one prototype of `her2k` available, please see below.
+``
+her2k( const Scalar alpha, const MatrixA& a, const MatrixB& b,
+ const Scalar >, MatrixC& c );
+``
+
+
+[heading Description]
+
+`her2k` (short for hermitian rank-2k update) provides a C++
+interface to BLAS routines CHER2K and ZHER2K.
+`her2k` performs one of the hermitian rank 2k operations
+
+C := alpha*A*conjg( B' ) + conjg( alpha )*B*conjg( A' ) + beta*C,
+
+or
+
+C := alpha*conjg( A' )*B + conjg( alpha )*conjg( B' )*A + beta*C,
+
+where alpha and beta are scalars with beta real, C is an n by n
+hermitian matrix and A and B are n by k matrices in the first case
+and k by n matrices in the second case.
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of her2k.
+[ [ Value type of MatrixA ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`complex<float>`][CHER2K][cblas_cher2k][cublasCher2k] ]
+[ [`complex<double>`][ZHER2K][cblas_zher2k][Unavailable] ]
+
+]
+
+The original routines CHER2K and ZHER2K have twelve arguments,
+whereas `her2k` requires five arguments.
+
+[table Deduction of arguments of her2k.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/her2k.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/her2k.hpp>
+using namespace boost::numeric::bindings;
+
+blas::her2k( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/cher2k.f cher2k.f] and [@http://www.netlib.org/blas/zher2k.f zher2k.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level3/herk.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level3/herk.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,84 @@
+
+[section herk]
+
+[heading Prototype]
+There is one prototype of `herk` available, please see below.
+``
+herk( const Scalar >, const MatrixA& a, const Scalar >, MatrixC& c );
+``
+
+
+[heading Description]
+
+`herk` (short for hermitian rank-k update) provides a C++
+interface to BLAS routines CHERK and ZHERK.
+`herk` performs one of the hermitian rank k operations
+
+C := alpha*A*conjg( A' ) + beta*C,
+
+or
+
+C := alpha*conjg( A' )*A + beta*C,
+
+where alpha and beta are real scalars, C is an n by n hermitian
+matrix and A is an n by k matrix in the first case and a k by n
+matrix in the second case.
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of herk.
+[ [ Value type of MatrixA ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`complex<float>`][CHERK][cblas_cherk][cublasCherk] ]
+[ [`complex<double>`][ZHERK][cblas_zherk][Unavailable] ]
+
+]
+
+The original routines CHERK and ZHERK have ten arguments,
+whereas `herk` requires four arguments.
+
+[table Deduction of arguments of herk.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/herk.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/herk.hpp>
+using namespace boost::numeric::bindings;
+
+blas::herk( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/cherk.f cherk.f] and [@http://www.netlib.org/blas/zherk.f zherk.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level3/symm.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level3/symm.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,91 @@
+
+[section symm]
+
+[heading Prototype]
+There are two prototypes of `symm` available, please see below.
+``
+symm( const Side side, const Scalar >, const MatrixA& a,
+ const MatrixB& b, const Scalar >, MatrixC& c );
+``
+
+``
+symm( const Side side, const Scalar alpha, const MatrixA& a,
+ const MatrixB& b, const Scalar beta, MatrixC& c );
+``
+
+
+[heading Description]
+
+`symm` (short for symmetric matrix-matrix operation) provides a C++
+interface to BLAS routines SSYMM, DSYMM, CSYMM, and ZSYMM.
+`symm` performs one of the matrix-matrix operations
+
+C := alpha*A*B + beta*C,
+
+or
+
+C := alpha*B*A + beta*C,
+
+where alpha and beta are scalars, A is a symmetric matrix and B and
+C are m by n matrices.
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of symm.
+[ [ Value type of MatrixA ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`float`][SSYMM][cblas_ssymm][cublasSsymm] ]
+[ [`double`][DSYMM][cblas_dsymm][cublasDsymm] ]
+[ [`complex<float>`][CSYMM][cblas_csymm][cublasCsymm] ]
+[ [`complex<double>`][ZSYMM][cblas_zsymm][Unavailable] ]
+
+]
+
+The original routines SSYMM, DSYMM, CSYMM, and ZSYMM have twelve arguments,
+whereas `symm` requires six arguments.
+
+[table Deduction of arguments of symm.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/symm.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/symm.hpp>
+using namespace boost::numeric::bindings;
+
+blas::symm( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/ssymm.f ssymm.f], [@http://www.netlib.org/blas/dsymm.f dsymm.f], [@http://www.netlib.org/blas/csymm.f csymm.f], and [@http://www.netlib.org/blas/zsymm.f zsymm.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level3/syr2k.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level3/syr2k.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,92 @@
+
+[section syr2k]
+
+[heading Prototype]
+There are two prototypes of `syr2k` available, please see below.
+``
+syr2k( const Scalar >, const MatrixA& a, const MatrixB& b,
+ const Scalar >, MatrixC& c );
+``
+
+``
+syr2k( const Scalar alpha, const MatrixA& a, const MatrixB& b,
+ const Scalar beta, MatrixC& c );
+``
+
+
+[heading Description]
+
+`syr2k` (short for symmetric rank-2k update) provides a C++
+interface to BLAS routines SSYR2K, DSYR2K, CSYR2K, and ZSYR2K.
+`syr2k` performs one of the symmetric rank 2k operations
+
+C := alpha*A*B' + alpha*B*A' + beta*C,
+
+or
+
+C := alpha*A'*B + alpha*B'*A + beta*C,
+
+where alpha and beta are scalars, C is an n by n symmetric matrix
+and A and B are n by k matrices in the first case and k by n
+matrices in the second case.
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of syr2k.
+[ [ Value type of MatrixA ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`float`][SSYR2K][cblas_ssyr2k][cublasSsyr2k] ]
+[ [`double`][DSYR2K][cblas_dsyr2k][cublasDsyr2k] ]
+[ [`complex<float>`][CSYR2K][cblas_csyr2k][cublasCsyr2k] ]
+[ [`complex<double>`][ZSYR2K][cblas_zsyr2k][Unavailable] ]
+
+]
+
+The original routines SSYR2K, DSYR2K, CSYR2K, and ZSYR2K have twelve arguments,
+whereas `syr2k` requires five arguments.
+
+[table Deduction of arguments of syr2k.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/syr2k.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/syr2k.hpp>
+using namespace boost::numeric::bindings;
+
+blas::syr2k( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/ssyr2k.f ssyr2k.f], [@http://www.netlib.org/blas/dsyr2k.f dsyr2k.f], [@http://www.netlib.org/blas/csyr2k.f csyr2k.f], and [@http://www.netlib.org/blas/zsyr2k.f zsyr2k.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level3/syrk.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level3/syrk.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,91 @@
+
+[section syrk]
+
+[heading Prototype]
+There are two prototypes of `syrk` available, please see below.
+``
+syrk( const Scalar >, const MatrixA& a, const Scalar >, MatrixC& c );
+``
+
+``
+syrk( const Scalar alpha, const MatrixA& a, const Scalar beta,
+ MatrixC& c );
+``
+
+
+[heading Description]
+
+`syrk` (short for symmetric rank-k update) provides a C++
+interface to BLAS routines SSYRK, DSYRK, CSYRK, and ZSYRK.
+`syrk` performs one of the symmetric rank k operations
+
+C := alpha*A*A' + beta*C,
+
+or
+
+C := alpha*A'*A + beta*C,
+
+where alpha and beta are scalars, C is an n by n symmetric matrix
+and A is an n by k matrix in the first case and a k by n matrix
+in the second case.
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of syrk.
+[ [ Value type of MatrixA ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`float`][SSYRK][cblas_ssyrk][cublasSsyrk] ]
+[ [`double`][DSYRK][cblas_dsyrk][cublasDsyrk] ]
+[ [`complex<float>`][CSYRK][cblas_csyrk][cublasCsyrk] ]
+[ [`complex<double>`][ZSYRK][cblas_zsyrk][cublasZsyrk] ]
+
+]
+
+The original routines SSYRK, DSYRK, CSYRK, and ZSYRK have ten arguments,
+whereas `syrk` requires four arguments.
+
+[table Deduction of arguments of syrk.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/syrk.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/syrk.hpp>
+using namespace boost::numeric::bindings;
+
+blas::syrk( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/ssyrk.f ssyrk.f], [@http://www.netlib.org/blas/dsyrk.f dsyrk.f], [@http://www.netlib.org/blas/csyrk.f csyrk.f], and [@http://www.netlib.org/blas/zsyrk.f zsyrk.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level3/trmm.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level3/trmm.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,88 @@
+
+[section trmm]
+
+[heading Prototype]
+There are two prototypes of `trmm` available, please see below.
+``
+trmm( const Side side, const Scalar >, const MatrixA& a, MatrixB& b );
+``
+
+``
+trmm( const Side side, const Scalar alpha, const MatrixA& a,
+ MatrixB& b );
+``
+
+
+[heading Description]
+
+`trmm` (short for triangular matrix-matrix operation) provides a C++
+interface to BLAS routines STRMM, DTRMM, CTRMM, and ZTRMM.
+`trmm` performs one of the matrix-matrix operations
+
+B := alpha*op( A )*B, or B := alpha*B*op( A )
+
+where alpha is a scalar, B is an m by n matrix, A is a unit, or
+non-unit, upper or lower triangular matrix and op( A ) is one of
+
+op( A ) = A or op( A ) = A' or op( A ) = conjg( A' ).
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of trmm.
+[ [ Value type of MatrixA ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`float`][STRMM][cblas_strmm][cublasStrmm] ]
+[ [`double`][DTRMM][cblas_dtrmm][cublasDtrmm] ]
+[ [`complex<float>`][CTRMM][cblas_ctrmm][cublasCtrmm] ]
+[ [`complex<double>`][ZTRMM][cblas_ztrmm][Unavailable] ]
+
+]
+
+The original routines STRMM, DTRMM, CTRMM, and ZTRMM have eleven arguments,
+whereas `trmm` requires four arguments.
+
+[table Deduction of arguments of trmm.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/trmm.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/trmm.hpp>
+using namespace boost::numeric::bindings;
+
+blas::trmm( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/strmm.f strmm.f], [@http://www.netlib.org/blas/dtrmm.f dtrmm.f], [@http://www.netlib.org/blas/ctrmm.f ctrmm.f], and [@http://www.netlib.org/blas/ztrmm.f ztrmm.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level3/trsm.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/blas/level3/trsm.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,90 @@
+
+[section trsm]
+
+[heading Prototype]
+There are two prototypes of `trsm` available, please see below.
+``
+trsm( const Side side, const Scalar >, const MatrixA& a, MatrixB& b );
+``
+
+``
+trsm( const Side side, const Scalar alpha, const MatrixA& a,
+ MatrixB& b );
+``
+
+
+[heading Description]
+
+`trsm` (short for TODO) provides a C++
+interface to BLAS routines STRSM, DTRSM, CTRSM, and ZTRSM.
+`trsm` solves one of the matrix equations
+
+op( A )*X = alpha*B, or X*op( A ) = alpha*B,
+
+where alpha is a scalar, X and B are m by n matrices, A is a unit, or
+non-unit, upper or lower triangular matrix and op( A ) is one of
+
+op( A ) = A or op( A ) = A' or op( A ) = conjg( A' ).
+
+The matrix X is overwritten on B.
+
+The selection of the BLAS routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+Table X below illustrates to which specific routine this dispatching will take place.
+
+[table Dispatching of trsm.
+[ [ Value type of MatrixA ] [BLAS routine] [CBLAS routine] [CUBLAS routine] ]
+[ [`float`][STRSM][cblas_strsm][cublasStrsm] ]
+[ [`double`][DTRSM][cblas_dtrsm][cublasDtrsm] ]
+[ [`complex<float>`][CTRSM][cblas_ctrsm][cublasCtrsm] ]
+[ [`complex<double>`][ZTRSM][cblas_ztrsm][cublasZtrsm] ]
+
+]
+
+The original routines STRSM, DTRSM, CTRSM, and ZTRSM have eleven arguments,
+whereas `trsm` requires four arguments.
+
+[table Deduction of arguments of trsm.
+]
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/blas/trsm.hpp].
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+[heading Complexity]
+
+[heading Example]
+``
+#include <boost/numeric/bindings/blas/trsm.hpp>
+using namespace boost::numeric::bindings;
+
+blas::trsm( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+[heading Notes]
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/blas/strsm.f strsm.f], [@http://www.netlib.org/blas/dtrsm.f dtrsm.f], [@http://www.netlib.org/blas/ctrsm.f ctrsm.f], and [@http://www.netlib.org/blas/ztrsm.f ztrsm.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/auxiliary.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/auxiliary.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,24 @@
+
+[include auxiliary/larf.qbk]
+[include auxiliary/larfb.qbk]
+[include auxiliary/larfg.qbk]
+[include auxiliary/larft.qbk]
+[include auxiliary/larfx.qbk]
+[include auxiliary/largv.qbk]
+[include auxiliary/larnv.qbk]
+[include auxiliary/larrb.qbk]
+[include auxiliary/larre.qbk]
+[include auxiliary/langb.qbk]
+[include auxiliary/lange.qbk]
+[include auxiliary/lanhb.qbk]
+[include auxiliary/lanhe.qbk]
+[include auxiliary/lanhp.qbk]
+[include auxiliary/lanhs.qbk]
+[include auxiliary/lansb.qbk]
+[include auxiliary/lansp.qbk]
+[include auxiliary/lansy.qbk]
+[include auxiliary/lantb.qbk]
+[include auxiliary/lantp.qbk]
+[include auxiliary/lantr.qbk]
+
+

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,162 @@
+
+[include computational/hbgst.qbk]
+[include computational/hegst.qbk]
+[include computational/pbstf.qbk]
+[include computational/sbgst.qbk]
+[include computational/sygst.qbk]
+[include computational/ggqrf.qbk]
+[include computational/ggrqf.qbk]
+[include computational/gelqf.qbk]
+[include computational/geqlf.qbk]
+[include computational/geqp3.qbk]
+[include computational/geqrf.qbk]
+[include computational/gerqf.qbk]
+[include computational/larz.qbk]
+[include computational/latrz.qbk]
+[include computational/orglq.qbk]
+[include computational/orgql.qbk]
+[include computational/orgqr.qbk]
+[include computational/orgrq.qbk]
+[include computational/ormlq.qbk]
+[include computational/ormql.qbk]
+[include computational/ormqr.qbk]
+[include computational/ormrq.qbk]
+[include computational/ormrz.qbk]
+[include computational/tzrzf.qbk]
+[include computational/unglq.qbk]
+[include computational/ungql.qbk]
+[include computational/ungqr.qbk]
+[include computational/ungrq.qbk]
+[include computational/unmlq.qbk]
+[include computational/unmql.qbk]
+[include computational/unmqr.qbk]
+[include computational/unmrq.qbk]
+[include computational/unmrz.qbk]
+[include computational/bdsdc.qbk]
+[include computational/bdsqr.qbk]
+[include computational/gbbrd.qbk]
+[include computational/gebrd.qbk]
+[include computational/labrd.qbk]
+[include computational/orgbr.qbk]
+[include computational/ormbr.qbk]
+[include computational/ungbr.qbk]
+[include computational/unmbr.qbk]
+[include computational/gebak.qbk]
+[include computational/gebal.qbk]
+[include computational/gehrd.qbk]
+[include computational/hsein.qbk]
+[include computational/hseqr.qbk]
+[include computational/orghr.qbk]
+[include computational/ormhr.qbk]
+[include computational/trevc.qbk]
+[include computational/trexc.qbk]
+[include computational/trsen.qbk]
+[include computational/trsna.qbk]
+[include computational/trsyl.qbk]
+[include computational/unghr.qbk]
+[include computational/unmhr.qbk]
+[include computational/gbcon.qbk]
+[include computational/gbequ.qbk]
+[include computational/gbrfs.qbk]
+[include computational/gbtrf.qbk]
+[include computational/gbtrs.qbk]
+[include computational/gecon.qbk]
+[include computational/geequ.qbk]
+[include computational/gerfs.qbk]
+[include computational/getrf.qbk]
+[include computational/getri.qbk]
+[include computational/getrs.qbk]
+[include computational/gtrfs.qbk]
+[include computational/gttrs.qbk]
+[include computational/hecon.qbk]
+[include computational/herfs.qbk]
+[include computational/hetrf.qbk]
+[include computational/hetri.qbk]
+[include computational/hetrs.qbk]
+[include computational/hpcon.qbk]
+[include computational/hprfs.qbk]
+[include computational/hptrf.qbk]
+[include computational/hptri.qbk]
+[include computational/hptrs.qbk]
+[include computational/lacon.qbk]
+[include computational/latrs.qbk]
+[include computational/pbcon.qbk]
+[include computational/pbequ.qbk]
+[include computational/pbrfs.qbk]
+[include computational/pbtrf.qbk]
+[include computational/pbtrs.qbk]
+[include computational/pftrs.qbk]
+[include computational/pocon.qbk]
+[include computational/poequ.qbk]
+[include computational/porfs.qbk]
+[include computational/potrf.qbk]
+[include computational/potri.qbk]
+[include computational/potrs.qbk]
+[include computational/ppcon.qbk]
+[include computational/ppequ.qbk]
+[include computational/pprfs.qbk]
+[include computational/pptrf.qbk]
+[include computational/pptri.qbk]
+[include computational/pptrs.qbk]
+[include computational/ptcon.qbk]
+[include computational/ptrfs.qbk]
+[include computational/pttrf.qbk]
+[include computational/pttrs.qbk]
+[include computational/spcon.qbk]
+[include computational/sprfs.qbk]
+[include computational/sptrf.qbk]
+[include computational/sptri.qbk]
+[include computational/sptrs.qbk]
+[include computational/sycon.qbk]
+[include computational/syrfs.qbk]
+[include computational/sytrf.qbk]
+[include computational/sytri.qbk]
+[include computational/sytrs.qbk]
+[include computational/tbcon.qbk]
+[include computational/tbrfs.qbk]
+[include computational/tbtrs.qbk]
+[include computational/tpcon.qbk]
+[include computational/tprfs.qbk]
+[include computational/tptri.qbk]
+[include computational/tptrs.qbk]
+[include computational/trcon.qbk]
+[include computational/trrfs.qbk]
+[include computational/trtri.qbk]
+[include computational/trtrs.qbk]
+[include computational/hbtrd.qbk]
+[include computational/hetrd.qbk]
+[include computational/hptrd.qbk]
+[include computational/laebz.qbk]
+[include computational/latrd.qbk]
+[include computational/opgtr.qbk]
+[include computational/opmtr.qbk]
+[include computational/orgtr.qbk]
+[include computational/ormtr.qbk]
+[include computational/pteqr.qbk]
+[include computational/sbtrd.qbk]
+[include computational/sptrd.qbk]
+[include computational/stebz.qbk]
+[include computational/stedc.qbk]
+[include computational/stegr.qbk]
+[include computational/stein.qbk]
+[include computational/stemr.qbk]
+[include computational/steqr.qbk]
+[include computational/sterf.qbk]
+[include computational/sytrd.qbk]
+[include computational/ungtr.qbk]
+[include computational/unmtr.qbk]
+[include computational/upgtr.qbk]
+[include computational/upmtr.qbk]
+[include computational/ggbak.qbk]
+[include computational/ggbal.qbk]
+[include computational/gghrd.qbk]
+[include computational/hgeqz.qbk]
+[include computational/tgevc.qbk]
+[include computational/tgexc.qbk]
+[include computational/tgsen.qbk]
+[include computational/tgsna.qbk]
+[include computational/tgsyl.qbk]
+[include computational/ggsvp.qbk]
+[include computational/tgsja.qbk]
+
+

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/bdsdc.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/bdsdc.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,95 @@
+
+[section bdsdc]
+
+[heading Prototype]
+There is one prototype of `bdsdc` available, please see below.
+``
+bdsdc( const char uplo, const char compq, const int_t n,
+ VectorD& d, VectorE& e, MatrixU& u, MatrixVT& vt, VectorQ& q,
+ VectorIQ& iq );
+``
+
+
+[heading Description]
+
+`bdsdc` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SBDSDC and DBDSDC.
+`bdsdc` computes the singular value decomposition (SVD) of a real
+N-by-N (upper or lower) bidiagonal matrix B: B = U * S * VT,
+using a divide and conquer method, where S is a diagonal matrix
+with non-negative diagonal elements (the singular values of B), and
+U and VT are orthogonal matrices of left and right singular vectors,
+respectively. `bdsdc` can be used to compute all singular values,
+and optionally, singular vectors or singular vectors in compact form.
+
+This code makes very mild assumptions about floating point
+arithmetic. It will work on machines with a guard digit in
+add/subtract, or on those binary machines without guard digits
+which subtract like the Cray X-MP, Cray Y-MP, Cray C-90, or Cray-2.
+It could conceivably fail on hexadecimal or decimal machines
+without guard digits, but we know of none. See DLASD3 for details.
+
+The code currently calls DLASDQ if singular values only are desired.
+However, it can be slightly modified to compute singular values
+using the divide and conquer method.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorD`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorD>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of bdsdc
+[ [ Value type of VectorD ] [LAPACK routine] ]
+[ [`float`][SBDSDC] ]
+[ [`double`][DBDSDC] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/bdsdc.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/bdsdc.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::bdsdc( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sbdsdc.f.html sbdsdc.f] and [@http://www.netlib.org/lapack/explore-html/dbdsdc.f.html dbdsdc.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/bdsqr.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/bdsqr.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,107 @@
+
+[section bdsqr]
+
+[heading Prototype]
+There is one prototype of `bdsqr` available, please see below.
+``
+bdsqr( const char uplo, const int_t n, VectorD& d,
+ VectorE& e, MatrixVT& vt, MatrixU& u, MatrixC& c );
+``
+
+
+[heading Description]
+
+`bdsqr` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SBDSQR, DBDSQR, CBDSQR, and ZBDSQR.
+`bdsqr` computes the singular values and, optionally, the right and/or
+left singular vectors from the singular value decomposition (SVD) of
+a real N-by-N (upper or lower) bidiagonal matrix B using the implicit
+zero-shift QR algorithm. The SVD of B has the form
+
+B = Q * S * P**H
+
+where S is the diagonal matrix of singular values, Q is an orthogonal
+matrix of left singular vectors, and P is an orthogonal matrix of
+right singular vectors. If left singular vectors are requested, this
+subroutine actually returns U*Q instead of Q, and, if right singular
+vectors are requested, this subroutine returns P**H*VT instead of
+P**H, for given complex input matrices U and VT. When U and VT are
+the unitary matrices that reduce a general matrix A to bidiagonal
+form: A = U*B*VT, as computed by ZGEBRD, then
+
+A = (U*Q) * S * (P**H*VT)
+
+is the SVD of A. Optionally, the subroutine may also compute Q**H*C
+for a given complex input matrix C.
+
+See "Computing Small Singular Values of Bidiagonal Matrices With
+Guaranteed High Relative Accuracy," by J. Demmel and W. Kahan,
+LAPACK Working Note #3 (or SIAM J. Sci. Statist. Comput. vol. 11,
+no. 5, pp. 873-912, Sept 1990) and
+"Accurate singular values and differential qd algorithms," by
+B. Parlett and V. Fernando, Technical Report CPAM-554, Mathematics
+Department, University of California at Berkeley, July 1992
+for a detailed description of the algorithm.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorD`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorD>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of bdsqr
+[ [ Value type of VectorD ] [LAPACK routine] ]
+[ [`float`][SBDSQR] ]
+[ [`double`][DBDSQR] ]
+[ [`complex<float>`][CBDSQR] ]
+[ [`complex<double>`][ZBDSQR] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/bdsqr.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/bdsqr.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::bdsqr( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sbdsqr.f.html sbdsqr.f], [@http://www.netlib.org/lapack/explore-html/dbdsqr.f.html dbdsqr.f], [@http://www.netlib.org/lapack/explore-html/cbdsqr.f.html cbdsqr.f], and [@http://www.netlib.org/lapack/explore-html/zbdsqr.f.html zbdsqr.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gbbrd.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gbbrd.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,83 @@
+
+[section gbbrd]
+
+[heading Prototype]
+There is one prototype of `gbbrd` available, please see below.
+``
+gbbrd( const char vect, MatrixAB& ab, VectorD& d, VectorE& e, MatrixQ& q,
+ MatrixPT& pt, MatrixC& c );
+``
+
+
+[heading Description]
+
+`gbbrd` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGBBRD, DGBBRD, CGBBRD, and ZGBBRD.
+`gbbrd` reduces a complex general m-by-n band matrix A to real upper
+bidiagonal form B by a unitary transformation: Q' * A * P = B.
+
+The routine computes B, and optionally forms Q or P', or computes
+Q'*C for a given matrix C.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAB`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAB>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of gbbrd
+[ [ Value type of MatrixAB ] [LAPACK routine] ]
+[ [`float`][SGBBRD] ]
+[ [`double`][DGBBRD] ]
+[ [`complex<float>`][CGBBRD] ]
+[ [`complex<double>`][ZGBBRD] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/gbbrd.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/gbbrd.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::gbbrd( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgbbrd.f.html sgbbrd.f], [@http://www.netlib.org/lapack/explore-html/dgbbrd.f.html dgbbrd.f], [@http://www.netlib.org/lapack/explore-html/cgbbrd.f.html cgbbrd.f], and [@http://www.netlib.org/lapack/explore-html/zgbbrd.f.html zgbbrd.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gbcon.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gbcon.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,85 @@
+
+[section gbcon]
+
+[heading Prototype]
+There is one prototype of `gbcon` available, please see below.
+``
+gbcon( const char norm, const MatrixAB& ab, const VectorIPIV& ipiv,
+ const Scalar >, Scalar > );
+``
+
+
+[heading Description]
+
+`gbcon` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGBCON, DGBCON, CGBCON, and ZGBCON.
+`gbcon` estimates the reciprocal of the condition number of a complex
+general band matrix A, in either the 1-norm or the infinity-norm,
+using the LU factorization computed by ZGBTRF.
+
+An estimate is obtained for norm(inv(A)), and the reciprocal of the
+condition number is computed as
+RCOND = 1 / ( norm(A) * norm(inv(A)) ).
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAB`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAB>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of gbcon
+[ [ Value type of MatrixAB ] [LAPACK routine] ]
+[ [`float`][SGBCON] ]
+[ [`double`][DGBCON] ]
+[ [`complex<float>`][CGBCON] ]
+[ [`complex<double>`][ZGBCON] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/gbcon.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/gbcon.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::gbcon( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgbcon.f.html sgbcon.f], [@http://www.netlib.org/lapack/explore-html/dgbcon.f.html dgbcon.f], [@http://www.netlib.org/lapack/explore-html/cgbcon.f.html cgbcon.f], and [@http://www.netlib.org/lapack/explore-html/zgbcon.f.html zgbcon.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gbequ.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gbequ.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,88 @@
+
+[section gbequ]
+
+[heading Prototype]
+There is one prototype of `gbequ` available, please see below.
+``
+gbequ( const MatrixAB& ab, VectorR& r, VectorC& c, Scalar >, Scalar >,
+ Scalar > );
+``
+
+
+[heading Description]
+
+`gbequ` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGBEQU, DGBEQU, CGBEQU, and ZGBEQU.
+`gbequ` computes row and column scalings intended to equilibrate an
+M-by-N band matrix A and reduce its condition number. R returns the
+row scale factors and C the column scale factors, chosen to try to
+make the largest element in each row and column of the matrix B with
+elements B(i,j)=R(i)*A(i,j)*C(j) have absolute value 1.
+
+R(i) and C(j) are restricted to be between SMLNUM = smallest safe
+number and BIGNUM = largest safe number. Use of these scaling
+factors is not guaranteed to reduce the condition number of A but
+works well in practice.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAB`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAB>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of gbequ
+[ [ Value type of MatrixAB ] [LAPACK routine] ]
+[ [`float`][SGBEQU] ]
+[ [`double`][DGBEQU] ]
+[ [`complex<float>`][CGBEQU] ]
+[ [`complex<double>`][ZGBEQU] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/gbequ.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/gbequ.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::gbequ( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgbequ.f.html sgbequ.f], [@http://www.netlib.org/lapack/explore-html/dgbequ.f.html dgbequ.f], [@http://www.netlib.org/lapack/explore-html/cgbequ.f.html cgbequ.f], and [@http://www.netlib.org/lapack/explore-html/zgbequ.f.html zgbequ.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gbrfs.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gbrfs.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,81 @@
+
+[section gbrfs]
+
+[heading Prototype]
+There is one prototype of `gbrfs` available, please see below.
+``
+gbrfs( const MatrixAB& ab, const MatrixAFB& afb, const VectorIPIV& ipiv,
+ const MatrixB& b, MatrixX& x, VectorFERR& ferr, VectorBERR& berr );
+``
+
+
+[heading Description]
+
+`gbrfs` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGBRFS, DGBRFS, CGBRFS, and ZGBRFS.
+`gbrfs` improves the computed solution to a system of linear
+equations when the coefficient matrix is banded, and provides
+error bounds and backward error estimates for the solution.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAB`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAB>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of gbrfs
+[ [ Value type of MatrixAB ] [LAPACK routine] ]
+[ [`float`][SGBRFS] ]
+[ [`double`][DGBRFS] ]
+[ [`complex<float>`][CGBRFS] ]
+[ [`complex<double>`][ZGBRFS] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/gbrfs.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/gbrfs.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::gbrfs( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgbrfs.f.html sgbrfs.f], [@http://www.netlib.org/lapack/explore-html/dgbrfs.f.html dgbrfs.f], [@http://www.netlib.org/lapack/explore-html/cgbrfs.f.html cgbrfs.f], and [@http://www.netlib.org/lapack/explore-html/zgbrfs.f.html zgbrfs.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gbtrf.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gbtrf.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,81 @@
+
+[section gbtrf]
+
+[heading Prototype]
+There is one prototype of `gbtrf` available, please see below.
+``
+gbtrf( MatrixAB& ab, VectorIPIV& ipiv );
+``
+
+
+[heading Description]
+
+`gbtrf` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGBTRF, DGBTRF, CGBTRF, and ZGBTRF.
+`gbtrf` computes an LU factorization of a complex m-by-n band matrix A
+using partial pivoting with row interchanges.
+
+This is the blocked version of the algorithm, calling Level 3 BLAS.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAB`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAB>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of gbtrf
+[ [ Value type of MatrixAB ] [LAPACK routine] ]
+[ [`float`][SGBTRF] ]
+[ [`double`][DGBTRF] ]
+[ [`complex<float>`][CGBTRF] ]
+[ [`complex<double>`][ZGBTRF] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/gbtrf.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/gbtrf.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::gbtrf( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgbtrf.f.html sgbtrf.f], [@http://www.netlib.org/lapack/explore-html/dgbtrf.f.html dgbtrf.f], [@http://www.netlib.org/lapack/explore-html/cgbtrf.f.html cgbtrf.f], and [@http://www.netlib.org/lapack/explore-html/zgbtrf.f.html zgbtrf.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gbtrs.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gbtrs.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,81 @@
+
+[section gbtrs]
+
+[heading Prototype]
+There is one prototype of `gbtrs` available, please see below.
+``
+gbtrs( const MatrixAB& ab, const VectorIPIV& ipiv, MatrixB& b );
+``
+
+
+[heading Description]
+
+`gbtrs` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGBTRS, DGBTRS, CGBTRS, and ZGBTRS.
+`gbtrs` solves a system of linear equations
+A * X = B, A**T * X = B, or A**H * X = B
+with a general band matrix A using the LU factorization computed
+by ZGBTRF.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAB`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAB>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of gbtrs
+[ [ Value type of MatrixAB ] [LAPACK routine] ]
+[ [`float`][SGBTRS] ]
+[ [`double`][DGBTRS] ]
+[ [`complex<float>`][CGBTRS] ]
+[ [`complex<double>`][ZGBTRS] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/gbtrs.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/gbtrs.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::gbtrs( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgbtrs.f.html sgbtrs.f], [@http://www.netlib.org/lapack/explore-html/dgbtrs.f.html dgbtrs.f], [@http://www.netlib.org/lapack/explore-html/cgbtrs.f.html cgbtrs.f], and [@http://www.netlib.org/lapack/explore-html/zgbtrs.f.html zgbtrs.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gebak.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gebak.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,81 @@
+
+[section gebak]
+
+[heading Prototype]
+There is one prototype of `gebak` available, please see below.
+``
+gebak( const char job, const Side side, const int_t ilo,
+ const int_t ihi, const VectorSCALE& scale, MatrixV& v );
+``
+
+
+[heading Description]
+
+`gebak` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGEBAK, DGEBAK, CGEBAK, and ZGEBAK.
+`gebak` forms the right or left eigenvectors of a complex general
+matrix by backward transformation on the computed eigenvectors of the
+balanced matrix output by ZGEBAL.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorSCALE`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorSCALE>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of gebak
+[ [ Value type of VectorSCALE ] [LAPACK routine] ]
+[ [`float`][SGEBAK] ]
+[ [`double`][DGEBAK] ]
+[ [`complex<float>`][CGEBAK] ]
+[ [`complex<double>`][ZGEBAK] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/gebak.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/gebak.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::gebak( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgebak.f.html sgebak.f], [@http://www.netlib.org/lapack/explore-html/dgebak.f.html dgebak.f], [@http://www.netlib.org/lapack/explore-html/cgebak.f.html cgebak.f], and [@http://www.netlib.org/lapack/explore-html/zgebak.f.html zgebak.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gebal.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gebal.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,87 @@
+
+[section gebal]
+
+[heading Prototype]
+There is one prototype of `gebal` available, please see below.
+``
+gebal( const char job, MatrixA& a, int_t& ilo,
+ int_t& ihi, VectorSCALE& scale );
+``
+
+
+[heading Description]
+
+`gebal` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGEBAL, DGEBAL, CGEBAL, and ZGEBAL.
+`gebal` balances a general complex matrix A. This involves, first,
+permuting A by a similarity transformation to isolate eigenvalues
+in the first 1 to ILO-1 and last IHI+1 to N elements on the
+diagonal; and second, applying a diagonal similarity transformation
+to rows and columns ILO to IHI to make the rows and columns as
+close in norm as possible. Both steps are optional.
+
+Balancing may reduce the 1-norm of the matrix, and improve the
+accuracy of the computed eigenvalues and/or eigenvectors.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of gebal
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SGEBAL] ]
+[ [`double`][DGEBAL] ]
+[ [`complex<float>`][CGEBAL] ]
+[ [`complex<double>`][ZGEBAL] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/gebal.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/gebal.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::gebal( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgebal.f.html sgebal.f], [@http://www.netlib.org/lapack/explore-html/dgebal.f.html dgebal.f], [@http://www.netlib.org/lapack/explore-html/cgebal.f.html cgebal.f], and [@http://www.netlib.org/lapack/explore-html/zgebal.f.html zgebal.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gebrd.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gebrd.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,82 @@
+
+[section gebrd]
+
+[heading Prototype]
+There is one prototype of `gebrd` available, please see below.
+``
+gebrd( MatrixA& a, VectorD& d, VectorE& e, VectorTAUQ& tauq,
+ VectorTAUP& taup );
+``
+
+
+[heading Description]
+
+`gebrd` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGEBRD, DGEBRD, CGEBRD, and ZGEBRD.
+`gebrd` reduces a general complex M-by-N matrix A to upper or lower
+bidiagonal form B by a unitary transformation: Q**H * A * P = B.
+
+If m >= n, B is upper bidiagonal; if m < n, B is lower bidiagonal.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of gebrd
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SGEBRD] ]
+[ [`double`][DGEBRD] ]
+[ [`complex<float>`][CGEBRD] ]
+[ [`complex<double>`][ZGEBRD] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/gebrd.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/gebrd.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::gebrd( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgebrd.f.html sgebrd.f], [@http://www.netlib.org/lapack/explore-html/dgebrd.f.html dgebrd.f], [@http://www.netlib.org/lapack/explore-html/cgebrd.f.html cgebrd.f], and [@http://www.netlib.org/lapack/explore-html/zgebrd.f.html zgebrd.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gecon.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gecon.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,84 @@
+
+[section gecon]
+
+[heading Prototype]
+There is one prototype of `gecon` available, please see below.
+``
+gecon( const char norm, const MatrixA& a, const Scalar >, Scalar > );
+``
+
+
+[heading Description]
+
+`gecon` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGECON, DGECON, CGECON, and ZGECON.
+`gecon` estimates the reciprocal of the condition number of a general
+complex matrix A, in either the 1-norm or the infinity-norm, using
+the LU factorization computed by ZGETRF.
+
+An estimate is obtained for norm(inv(A)), and the reciprocal of the
+condition number is computed as
+RCOND = 1 / ( norm(A) * norm(inv(A)) ).
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of gecon
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SGECON] ]
+[ [`double`][DGECON] ]
+[ [`complex<float>`][CGECON] ]
+[ [`complex<double>`][ZGECON] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/gecon.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/gecon.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::gecon( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgecon.f.html sgecon.f], [@http://www.netlib.org/lapack/explore-html/dgecon.f.html dgecon.f], [@http://www.netlib.org/lapack/explore-html/cgecon.f.html cgecon.f], and [@http://www.netlib.org/lapack/explore-html/zgecon.f.html zgecon.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/geequ.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/geequ.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,88 @@
+
+[section geequ]
+
+[heading Prototype]
+There is one prototype of `geequ` available, please see below.
+``
+geequ( const MatrixA& a, VectorR& r, VectorC& c, Scalar >, Scalar >,
+ Scalar > );
+``
+
+
+[heading Description]
+
+`geequ` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGEEQU, DGEEQU, CGEEQU, and ZGEEQU.
+`geequ` computes row and column scalings intended to equilibrate an
+M-by-N matrix A and reduce its condition number. R returns the row
+scale factors and C the column scale factors, chosen to try to make
+the largest element in each row and column of the matrix B with
+elements B(i,j)=R(i)*A(i,j)*C(j) have absolute value 1.
+
+R(i) and C(j) are restricted to be between SMLNUM = smallest safe
+number and BIGNUM = largest safe number. Use of these scaling
+factors is not guaranteed to reduce the condition number of A but
+works well in practice.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of geequ
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SGEEQU] ]
+[ [`double`][DGEEQU] ]
+[ [`complex<float>`][CGEEQU] ]
+[ [`complex<double>`][ZGEEQU] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/geequ.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/geequ.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::geequ( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgeequ.f.html sgeequ.f], [@http://www.netlib.org/lapack/explore-html/dgeequ.f.html dgeequ.f], [@http://www.netlib.org/lapack/explore-html/cgeequ.f.html cgeequ.f], and [@http://www.netlib.org/lapack/explore-html/zgeequ.f.html zgeequ.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gehrd.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gehrd.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,80 @@
+
+[section gehrd]
+
+[heading Prototype]
+There is one prototype of `gehrd` available, please see below.
+``
+gehrd( const int_t ilo, const int_t ihi,
+ MatrixA& a, VectorTAU& tau );
+``
+
+
+[heading Description]
+
+`gehrd` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGEHRD, DGEHRD, CGEHRD, and ZGEHRD.
+`gehrd` reduces a complex general matrix A to upper Hessenberg form H by
+an unitary similarity transformation: Q' * A * Q = H .
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of gehrd
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SGEHRD] ]
+[ [`double`][DGEHRD] ]
+[ [`complex<float>`][CGEHRD] ]
+[ [`complex<double>`][ZGEHRD] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/gehrd.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/gehrd.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::gehrd( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgehrd.f.html sgehrd.f], [@http://www.netlib.org/lapack/explore-html/dgehrd.f.html dgehrd.f], [@http://www.netlib.org/lapack/explore-html/cgehrd.f.html cgehrd.f], and [@http://www.netlib.org/lapack/explore-html/zgehrd.f.html zgehrd.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gelqf.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gelqf.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,79 @@
+
+[section gelqf]
+
+[heading Prototype]
+There is one prototype of `gelqf` available, please see below.
+``
+gelqf( MatrixA& a, VectorTAU& tau );
+``
+
+
+[heading Description]
+
+`gelqf` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGELQF, DGELQF, CGELQF, and ZGELQF.
+`gelqf` computes an LQ factorization of a complex M-by-N matrix A:
+A = L * Q.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of gelqf
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SGELQF] ]
+[ [`double`][DGELQF] ]
+[ [`complex<float>`][CGELQF] ]
+[ [`complex<double>`][ZGELQF] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/gelqf.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/gelqf.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::gelqf( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgelqf.f.html sgelqf.f], [@http://www.netlib.org/lapack/explore-html/dgelqf.f.html dgelqf.f], [@http://www.netlib.org/lapack/explore-html/cgelqf.f.html cgelqf.f], and [@http://www.netlib.org/lapack/explore-html/zgelqf.f.html zgelqf.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/geqlf.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/geqlf.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,79 @@
+
+[section geqlf]
+
+[heading Prototype]
+There is one prototype of `geqlf` available, please see below.
+``
+geqlf( MatrixA& a, VectorTAU& tau );
+``
+
+
+[heading Description]
+
+`geqlf` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGEQLF, DGEQLF, CGEQLF, and ZGEQLF.
+`geqlf` computes a QL factorization of a complex M-by-N matrix A:
+A = Q * L.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of geqlf
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SGEQLF] ]
+[ [`double`][DGEQLF] ]
+[ [`complex<float>`][CGEQLF] ]
+[ [`complex<double>`][ZGEQLF] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/geqlf.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/geqlf.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::geqlf( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgeqlf.f.html sgeqlf.f], [@http://www.netlib.org/lapack/explore-html/dgeqlf.f.html dgeqlf.f], [@http://www.netlib.org/lapack/explore-html/cgeqlf.f.html cgeqlf.f], and [@http://www.netlib.org/lapack/explore-html/zgeqlf.f.html zgeqlf.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/geqp3.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/geqp3.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,79 @@
+
+[section geqp3]
+
+[heading Prototype]
+There is one prototype of `geqp3` available, please see below.
+``
+geqp3( MatrixA& a, VectorJPVT& jpvt, VectorTAU& tau );
+``
+
+
+[heading Description]
+
+`geqp3` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGEQP3, DGEQP3, CGEQP3, and ZGEQP3.
+`geqp3` computes a QR factorization with column pivoting of a
+matrix A: A*P = Q*R using Level 3 BLAS.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of geqp3
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SGEQP3] ]
+[ [`double`][DGEQP3] ]
+[ [`complex<float>`][CGEQP3] ]
+[ [`complex<double>`][ZGEQP3] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/geqp3.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/geqp3.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::geqp3( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgeqp3.f.html sgeqp3.f], [@http://www.netlib.org/lapack/explore-html/dgeqp3.f.html dgeqp3.f], [@http://www.netlib.org/lapack/explore-html/cgeqp3.f.html cgeqp3.f], and [@http://www.netlib.org/lapack/explore-html/zgeqp3.f.html zgeqp3.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/geqrf.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/geqrf.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,79 @@
+
+[section geqrf]
+
+[heading Prototype]
+There is one prototype of `geqrf` available, please see below.
+``
+geqrf( MatrixA& a, VectorTAU& tau );
+``
+
+
+[heading Description]
+
+`geqrf` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGEQRF, DGEQRF, CGEQRF, and ZGEQRF.
+`geqrf` computes a QR factorization of a complex M-by-N matrix A:
+A = Q * R.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of geqrf
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SGEQRF] ]
+[ [`double`][DGEQRF] ]
+[ [`complex<float>`][CGEQRF] ]
+[ [`complex<double>`][ZGEQRF] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/geqrf.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/geqrf.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::geqrf( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgeqrf.f.html sgeqrf.f], [@http://www.netlib.org/lapack/explore-html/dgeqrf.f.html dgeqrf.f], [@http://www.netlib.org/lapack/explore-html/cgeqrf.f.html cgeqrf.f], and [@http://www.netlib.org/lapack/explore-html/zgeqrf.f.html zgeqrf.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gerfs.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gerfs.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,81 @@
+
+[section gerfs]
+
+[heading Prototype]
+There is one prototype of `gerfs` available, please see below.
+``
+gerfs( const MatrixA& a, const MatrixAF& af, const VectorIPIV& ipiv,
+ const MatrixB& b, MatrixX& x, VectorFERR& ferr, VectorBERR& berr );
+``
+
+
+[heading Description]
+
+`gerfs` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGERFS, DGERFS, CGERFS, and ZGERFS.
+`gerfs` improves the computed solution to a system of linear
+equations and provides error bounds and backward error estimates for
+the solution.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of gerfs
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SGERFS] ]
+[ [`double`][DGERFS] ]
+[ [`complex<float>`][CGERFS] ]
+[ [`complex<double>`][ZGERFS] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/gerfs.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/gerfs.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::gerfs( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgerfs.f.html sgerfs.f], [@http://www.netlib.org/lapack/explore-html/dgerfs.f.html dgerfs.f], [@http://www.netlib.org/lapack/explore-html/cgerfs.f.html cgerfs.f], and [@http://www.netlib.org/lapack/explore-html/zgerfs.f.html zgerfs.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gerqf.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gerqf.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,79 @@
+
+[section gerqf]
+
+[heading Prototype]
+There is one prototype of `gerqf` available, please see below.
+``
+gerqf( MatrixA& a, VectorTAU& tau );
+``
+
+
+[heading Description]
+
+`gerqf` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGERQF, DGERQF, CGERQF, and ZGERQF.
+`gerqf` computes an RQ factorization of a complex M-by-N matrix A:
+A = R * Q.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of gerqf
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SGERQF] ]
+[ [`double`][DGERQF] ]
+[ [`complex<float>`][CGERQF] ]
+[ [`complex<double>`][ZGERQF] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/gerqf.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/gerqf.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::gerqf( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgerqf.f.html sgerqf.f], [@http://www.netlib.org/lapack/explore-html/dgerqf.f.html dgerqf.f], [@http://www.netlib.org/lapack/explore-html/cgerqf.f.html cgerqf.f], and [@http://www.netlib.org/lapack/explore-html/zgerqf.f.html zgerqf.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/getrf.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/getrf.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,87 @@
+
+[section getrf]
+
+[heading Prototype]
+There is one prototype of `getrf` available, please see below.
+``
+getrf( MatrixA& a, VectorIPIV& ipiv );
+``
+
+
+[heading Description]
+
+`getrf` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGETRF, DGETRF, CGETRF, and ZGETRF.
+`getrf` computes an LU factorization of a general M-by-N matrix A
+using partial pivoting with row interchanges.
+
+The factorization has the form
+A = P * L * U
+where P is a permutation matrix, L is lower triangular with unit
+diagonal elements (lower trapezoidal if m > n), and U is upper
+triangular (upper trapezoidal if m < n).
+
+This is the right-looking Level 3 BLAS version of the algorithm.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of getrf
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SGETRF] ]
+[ [`double`][DGETRF] ]
+[ [`complex<float>`][CGETRF] ]
+[ [`complex<double>`][ZGETRF] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/getrf.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/getrf.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::getrf( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgetrf.f.html sgetrf.f], [@http://www.netlib.org/lapack/explore-html/dgetrf.f.html dgetrf.f], [@http://www.netlib.org/lapack/explore-html/cgetrf.f.html cgetrf.f], and [@http://www.netlib.org/lapack/explore-html/zgetrf.f.html zgetrf.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/getri.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/getri.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,82 @@
+
+[section getri]
+
+[heading Prototype]
+There is one prototype of `getri` available, please see below.
+``
+getri( MatrixA& a, const VectorIPIV& ipiv );
+``
+
+
+[heading Description]
+
+`getri` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGETRI, DGETRI, CGETRI, and ZGETRI.
+`getri` computes the inverse of a matrix using the LU factorization
+computed by ZGETRF.
+
+This method inverts U and then computes inv(A) by solving the system
+inv(A)*L = inv(U) for inv(A).
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of getri
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SGETRI] ]
+[ [`double`][DGETRI] ]
+[ [`complex<float>`][CGETRI] ]
+[ [`complex<double>`][ZGETRI] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/getri.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/getri.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::getri( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgetri.f.html sgetri.f], [@http://www.netlib.org/lapack/explore-html/dgetri.f.html dgetri.f], [@http://www.netlib.org/lapack/explore-html/cgetri.f.html cgetri.f], and [@http://www.netlib.org/lapack/explore-html/zgetri.f.html zgetri.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/getrs.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/getrs.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,81 @@
+
+[section getrs]
+
+[heading Prototype]
+There is one prototype of `getrs` available, please see below.
+``
+getrs( const MatrixA& a, const VectorIPIV& ipiv, MatrixB& b );
+``
+
+
+[heading Description]
+
+`getrs` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGETRS, DGETRS, CGETRS, and ZGETRS.
+`getrs` solves a system of linear equations
+A * X = B, A**T * X = B, or A**H * X = B
+with a general N-by-N matrix A using the LU factorization computed
+by ZGETRF.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of getrs
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SGETRS] ]
+[ [`double`][DGETRS] ]
+[ [`complex<float>`][CGETRS] ]
+[ [`complex<double>`][ZGETRS] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/getrs.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/getrs.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::getrs( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgetrs.f.html sgetrs.f], [@http://www.netlib.org/lapack/explore-html/dgetrs.f.html dgetrs.f], [@http://www.netlib.org/lapack/explore-html/cgetrs.f.html cgetrs.f], and [@http://www.netlib.org/lapack/explore-html/zgetrs.f.html zgetrs.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ggbak.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ggbak.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,83 @@
+
+[section ggbak]
+
+[heading Prototype]
+There is one prototype of `ggbak` available, please see below.
+``
+ggbak( const char job, const Side side, const int_t ilo,
+ const int_t ihi, const VectorLSCALE& lscale,
+ const VectorRSCALE& rscale, MatrixV& v );
+``
+
+
+[heading Description]
+
+`ggbak` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGGBAK, DGGBAK, CGGBAK, and ZGGBAK.
+`ggbak` forms the right or left eigenvectors of a complex generalized
+eigenvalue problem A*x = lambda*B*x, by backward transformation on
+the computed eigenvectors of the balanced pair of matrices output by
+ZGGBAL.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorLSCALE`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorLSCALE>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of ggbak
+[ [ Value type of VectorLSCALE ] [LAPACK routine] ]
+[ [`float`][SGGBAK] ]
+[ [`double`][DGGBAK] ]
+[ [`complex<float>`][CGGBAK] ]
+[ [`complex<double>`][ZGGBAK] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/ggbak.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/ggbak.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::ggbak( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sggbak.f.html sggbak.f], [@http://www.netlib.org/lapack/explore-html/dggbak.f.html dggbak.f], [@http://www.netlib.org/lapack/explore-html/cggbak.f.html cggbak.f], and [@http://www.netlib.org/lapack/explore-html/zggbak.f.html zggbak.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ggbal.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ggbal.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,88 @@
+
+[section ggbal]
+
+[heading Prototype]
+There is one prototype of `ggbal` available, please see below.
+``
+ggbal( const char job, MatrixA& a, MatrixB& b, int_t& ilo,
+ int_t& ihi, VectorLSCALE& lscale, VectorRSCALE& rscale );
+``
+
+
+[heading Description]
+
+`ggbal` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGGBAL, DGGBAL, CGGBAL, and ZGGBAL.
+`ggbal` balances a pair of general complex matrices (A,B). This
+involves, first, permuting A and B by similarity transformations to
+isolate eigenvalues in the first 1 to ILO$-$1 and last IHI+1 to N
+elements on the diagonal; and second, applying a diagonal similarity
+transformation to rows and columns ILO to IHI to make the rows
+and columns as close in norm as possible. Both steps are optional.
+
+Balancing may reduce the 1-norm of the matrices, and improve the
+accuracy of the computed eigenvalues and/or eigenvectors in the
+generalized eigenvalue problem A*x = lambda*B*x.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of ggbal
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SGGBAL] ]
+[ [`double`][DGGBAL] ]
+[ [`complex<float>`][CGGBAL] ]
+[ [`complex<double>`][ZGGBAL] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/ggbal.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/ggbal.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::ggbal( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sggbal.f.html sggbal.f], [@http://www.netlib.org/lapack/explore-html/dggbal.f.html dggbal.f], [@http://www.netlib.org/lapack/explore-html/cggbal.f.html cggbal.f], and [@http://www.netlib.org/lapack/explore-html/zggbal.f.html zggbal.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gghrd.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gghrd.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,103 @@
+
+[section gghrd]
+
+[heading Prototype]
+There is one prototype of `gghrd` available, please see below.
+``
+gghrd( const char compq, const char compz, const int_t ilo,
+ MatrixA& a, MatrixB& b, MatrixQ& q, MatrixZ& z );
+``
+
+
+[heading Description]
+
+`gghrd` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGGHRD, DGGHRD, CGGHRD, and ZGGHRD.
+`gghrd` reduces a pair of complex matrices (A,B) to generalized upper
+Hessenberg form using unitary transformations, where A is a
+general matrix and B is upper triangular. The form of the
+generalized eigenvalue problem is
+A*x = lambda*B*x,
+and B is typically made upper triangular by computing its QR
+factorization and moving the unitary matrix Q to the left side
+of the equation.
+
+This subroutine simultaneously reduces A to a Hessenberg matrix H:
+Q**H*A*Z = H
+and transforms B to another upper triangular matrix T:
+Q**H*B*Z = T
+in order to reduce the problem to its standard form
+H*y = lambda*T*y
+where y = Z**H*x.
+
+The unitary matrices Q and Z are determined as products of Givens
+rotations. They may either be formed explicitly, or they may be
+postmultiplied into input matrices Q1 and Z1, so that
+Q1 * A * Z1**H = (Q1*Q) * H * (Z1*Z)**H
+Q1 * B * Z1**H = (Q1*Q) * T * (Z1*Z)**H
+If Q1 is the unitary matrix from the QR factorization of B in the
+original equation A*x = lambda*B*x, then `gghrd` reduces the original
+problem to generalized Hessenberg form.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of gghrd
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SGGHRD] ]
+[ [`double`][DGGHRD] ]
+[ [`complex<float>`][CGGHRD] ]
+[ [`complex<double>`][ZGGHRD] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/gghrd.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/gghrd.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::gghrd( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgghrd.f.html sgghrd.f], [@http://www.netlib.org/lapack/explore-html/dgghrd.f.html dgghrd.f], [@http://www.netlib.org/lapack/explore-html/cgghrd.f.html cgghrd.f], and [@http://www.netlib.org/lapack/explore-html/zgghrd.f.html zgghrd.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ggqrf.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ggqrf.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,104 @@
+
+[section ggqrf]
+
+[heading Prototype]
+There is one prototype of `ggqrf` available, please see below.
+``
+ggqrf( MatrixA& a, VectorTAUA& taua, MatrixB& b, VectorTAUB& taub );
+``
+
+
+[heading Description]
+
+`ggqrf` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGGQRF, DGGQRF, CGGQRF, and ZGGQRF.
+`ggqrf` computes a generalized QR factorization of an N-by-M matrix A
+and an N-by-P matrix B:
+
+A = Q*R, B = Q*T*Z,
+
+where Q is an N-by-N unitary matrix, Z is a P-by-P unitary matrix,
+and R and T assume one of the forms:
+
+if N >= M, R = ( R11 ) M , or if N < M, R = ( R11 R12 ) N,
+( 0 ) N-M N M-N
+M
+
+where R11 is upper triangular, and
+
+if N <= P, T = ( 0 T12 ) N, or if N > P, T = ( T11 ) N-P,
+P-N N ( T21 ) P
+P
+
+where T12 or T21 is upper triangular.
+
+In particular, if B is square and nonsingular, the GQR factorization
+of A and B implicitly gives the QR factorization of inv(B)*A:
+
+inv(B)*A = Z'*(inv(T)*R)
+
+where inv(B) denotes the inverse of the matrix B, and Z' denotes the
+conjugate transpose of matrix Z.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of ggqrf
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SGGQRF] ]
+[ [`double`][DGGQRF] ]
+[ [`complex<float>`][CGGQRF] ]
+[ [`complex<double>`][ZGGQRF] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/ggqrf.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/ggqrf.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::ggqrf( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sggqrf.f.html sggqrf.f], [@http://www.netlib.org/lapack/explore-html/dggqrf.f.html dggqrf.f], [@http://www.netlib.org/lapack/explore-html/cggqrf.f.html cggqrf.f], and [@http://www.netlib.org/lapack/explore-html/zggqrf.f.html zggqrf.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ggrqf.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ggrqf.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,104 @@
+
+[section ggrqf]
+
+[heading Prototype]
+There is one prototype of `ggrqf` available, please see below.
+``
+ggrqf( MatrixA& a, VectorTAUA& taua, MatrixB& b, VectorTAUB& taub );
+``
+
+
+[heading Description]
+
+`ggrqf` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGGRQF, DGGRQF, CGGRQF, and ZGGRQF.
+`ggrqf` computes a generalized RQ factorization of an M-by-N matrix A
+and a P-by-N matrix B:
+
+A = R*Q, B = Z*T*Q,
+
+where Q is an N-by-N unitary matrix, Z is a P-by-P unitary
+matrix, and R and T assume one of the forms:
+
+if M <= N, R = ( 0 R12 ) M, or if M > N, R = ( R11 ) M-N,
+N-M M ( R21 ) N
+N
+
+where R12 or R21 is upper triangular, and
+
+if P >= N, T = ( T11 ) N , or if P < N, T = ( T11 T12 ) P,
+( 0 ) P-N P N-P
+N
+
+where T11 is upper triangular.
+
+In particular, if B is square and nonsingular, the GRQ factorization
+of A and B implicitly gives the RQ factorization of A*inv(B):
+
+A*inv(B) = (R*inv(T))*Z'
+
+where inv(B) denotes the inverse of the matrix B, and Z' denotes the
+conjugate transpose of the matrix Z.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of ggrqf
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SGGRQF] ]
+[ [`double`][DGGRQF] ]
+[ [`complex<float>`][CGGRQF] ]
+[ [`complex<double>`][ZGGRQF] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/ggrqf.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/ggrqf.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::ggrqf( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sggrqf.f.html sggrqf.f], [@http://www.netlib.org/lapack/explore-html/dggrqf.f.html dggrqf.f], [@http://www.netlib.org/lapack/explore-html/cggrqf.f.html cggrqf.f], and [@http://www.netlib.org/lapack/explore-html/zggrqf.f.html zggrqf.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ggsvp.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ggsvp.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,103 @@
+
+[section ggsvp]
+
+[heading Prototype]
+There is one prototype of `ggsvp` available, please see below.
+``
+ggsvp( const char jobu, const char jobv, const char jobq, MatrixA& a,
+ MatrixB& b, const Scalar >, const Scalar >, int_t& k,
+ int_t& l, MatrixU& u, MatrixV& v, MatrixQ& q );
+``
+
+
+[heading Description]
+
+`ggsvp` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGGSVP, DGGSVP, CGGSVP, and ZGGSVP.
+`ggsvp` computes unitary matrices U, V and Q such that
+
+N-K-L K L
+U'*A*Q = K ( 0 A12 A13 ) if M-K-L >= 0;
+L ( 0 0 A23 )
+M-K-L ( 0 0 0 )
+
+N-K-L K L
+= K ( 0 A12 A13 ) if M-K-L < 0;
+M-K ( 0 0 A23 )
+
+N-K-L K L
+V'*B*Q = L ( 0 0 B13 )
+P-L ( 0 0 0 )
+
+where the K-by-K matrix A12 and L-by-L matrix B13 are nonsingular
+upper triangular; A23 is L-by-L upper triangular if M-K-L >= 0,
+otherwise A23 is (M-K)-by-L upper trapezoidal. K+L = the effective
+numerical rank of the (M+P)-by-N matrix (A',B')'. Z' denotes the
+conjugate transpose of Z.
+
+This decomposition is the preprocessing step for computing the
+Generalized Singular Value Decomposition (GSVD), see subroutine
+ZGGSVD.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of ggsvp
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SGGSVP] ]
+[ [`double`][DGGSVP] ]
+[ [`complex<float>`][CGGSVP] ]
+[ [`complex<double>`][ZGGSVP] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/ggsvp.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/ggsvp.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::ggsvp( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sggsvp.f.html sggsvp.f], [@http://www.netlib.org/lapack/explore-html/dggsvp.f.html dggsvp.f], [@http://www.netlib.org/lapack/explore-html/cggsvp.f.html cggsvp.f], and [@http://www.netlib.org/lapack/explore-html/zggsvp.f.html zggsvp.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gtrfs.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gtrfs.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,83 @@
+
+[section gtrfs]
+
+[heading Prototype]
+There is one prototype of `gtrfs` available, please see below.
+``
+gtrfs( const int_t n, const VectorDL& dl, const VectorD& d,
+ const VectorDU& du, const VectorDLF& dlf, const VectorDF& df,
+ const VectorDUF& duf, const VectorDU2& du2, const VectorIPIV& ipiv,
+ const MatrixB& b, MatrixX& x, VectorFERR& ferr, VectorBERR& berr );
+``
+
+
+[heading Description]
+
+`gtrfs` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGTRFS, DGTRFS, CGTRFS, and ZGTRFS.
+`gtrfs` improves the computed solution to a system of linear
+equations when the coefficient matrix is tridiagonal, and provides
+error bounds and backward error estimates for the solution.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorDL`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorDL>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of gtrfs
+[ [ Value type of VectorDL ] [LAPACK routine] ]
+[ [`float`][SGTRFS] ]
+[ [`double`][DGTRFS] ]
+[ [`complex<float>`][CGTRFS] ]
+[ [`complex<double>`][ZGTRFS] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/gtrfs.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/gtrfs.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::gtrfs( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgtrfs.f.html sgtrfs.f], [@http://www.netlib.org/lapack/explore-html/dgtrfs.f.html dgtrfs.f], [@http://www.netlib.org/lapack/explore-html/cgtrfs.f.html cgtrfs.f], and [@http://www.netlib.org/lapack/explore-html/zgtrfs.f.html zgtrfs.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gttrs.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/gttrs.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,83 @@
+
+[section gttrs]
+
+[heading Prototype]
+There is one prototype of `gttrs` available, please see below.
+``
+gttrs( const int_t n, const VectorDL& dl, const VectorD& d,
+ const VectorDU& du, const VectorDU2& du2, const VectorIPIV& ipiv,
+ MatrixB& b );
+``
+
+
+[heading Description]
+
+`gttrs` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGTTRS, DGTTRS, CGTTRS, and ZGTTRS.
+`gttrs` solves one of the systems of equations
+A * X = B, A**T * X = B, or A**H * X = B,
+with a tridiagonal matrix A using the LU factorization computed
+by ZGTTRF.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorDL`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorDL>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of gttrs
+[ [ Value type of VectorDL ] [LAPACK routine] ]
+[ [`float`][SGTTRS] ]
+[ [`double`][DGTTRS] ]
+[ [`complex<float>`][CGTTRS] ]
+[ [`complex<double>`][ZGTTRS] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/gttrs.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/gttrs.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::gttrs( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgttrs.f.html sgttrs.f], [@http://www.netlib.org/lapack/explore-html/dgttrs.f.html dgttrs.f], [@http://www.netlib.org/lapack/explore-html/cgttrs.f.html cgttrs.f], and [@http://www.netlib.org/lapack/explore-html/zgttrs.f.html zgttrs.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hbgst.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hbgst.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,83 @@
+
+[section hbgst]
+
+[heading Prototype]
+There is one prototype of `hbgst` available, please see below.
+``
+hbgst( const char vect, MatrixAB& ab, const MatrixBB& bb, MatrixX& x );
+``
+
+
+[heading Description]
+
+`hbgst` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CHBGST and ZHBGST.
+`hbgst` reduces a complex Hermitian-definite banded generalized
+eigenproblem A*x = lambda*B*x to standard form C*y = lambda*y,
+such that C has the same bandwidth as A.
+
+B must have been previously factorized as S**H*S by ZPBSTF, using a
+split Cholesky factorization. A is overwritten by C = X**H*A*X, where
+X = S**(-1)*Q and Q is a unitary matrix chosen to preserve the
+bandwidth of A.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAB`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAB>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of hbgst
+[ [ Value type of MatrixAB ] [LAPACK routine] ]
+[ [`complex<float>`][CHBGST] ]
+[ [`complex<double>`][ZHBGST] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/hbgst.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/hbgst.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::hbgst( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/chbgst.f.html chbgst.f] and [@http://www.netlib.org/lapack/explore-html/zhbgst.f.html zhbgst.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hbtrd.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hbtrd.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,79 @@
+
+[section hbtrd]
+
+[heading Prototype]
+There is one prototype of `hbtrd` available, please see below.
+``
+hbtrd( const char vect, MatrixAB& ab, VectorD& d, VectorE& e,
+ MatrixQ& q );
+``
+
+
+[heading Description]
+
+`hbtrd` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CHBTRD and ZHBTRD.
+`hbtrd` reduces a complex Hermitian band matrix A to real symmetric
+tridiagonal form T by a unitary similarity transformation:
+Q**H * A * Q = T.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAB`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAB>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of hbtrd
+[ [ Value type of MatrixAB ] [LAPACK routine] ]
+[ [`complex<float>`][CHBTRD] ]
+[ [`complex<double>`][ZHBTRD] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/hbtrd.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/hbtrd.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::hbtrd( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/chbtrd.f.html chbtrd.f] and [@http://www.netlib.org/lapack/explore-html/zhbtrd.f.html zhbtrd.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hecon.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hecon.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,82 @@
+
+[section hecon]
+
+[heading Prototype]
+There is one prototype of `hecon` available, please see below.
+``
+hecon( const MatrixA& a, const VectorIPIV& ipiv, const Scalar >,
+ Scalar > );
+``
+
+
+[heading Description]
+
+`hecon` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CHECON and ZHECON.
+`hecon` estimates the reciprocal of the condition number of a complex
+Hermitian matrix A using the factorization A = U*D*U**H or
+A = L*D*L**H computed by ZHETRF.
+
+An estimate is obtained for norm(inv(A)), and the reciprocal of the
+condition number is computed as RCOND = 1 / (ANORM * norm(inv(A))).
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of hecon
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`complex<float>`][CHECON] ]
+[ [`complex<double>`][ZHECON] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/hecon.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/hecon.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::hecon( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/checon.f.html checon.f] and [@http://www.netlib.org/lapack/explore-html/zhecon.f.html zhecon.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hegst.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hegst.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,85 @@
+
+[section hegst]
+
+[heading Prototype]
+There is one prototype of `hegst` available, please see below.
+``
+hegst( const int_t itype, MatrixA& a, const MatrixB& b );
+``
+
+
+[heading Description]
+
+`hegst` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CHEGST and ZHEGST.
+`hegst` reduces a complex Hermitian-definite generalized
+eigenproblem to standard form.
+
+If ITYPE = 1, the problem is A*x = lambda*B*x,
+and A is overwritten by inv(U**H)*A*inv(U) or inv(L)*A*inv(L**H)
+
+If ITYPE = 2 or 3, the problem is A*B*x = lambda*x or
+B*A*x = lambda*x, and A is overwritten by U*A*U**H or L**H*A*L.
+
+B must have been previously factorized as U**H*U or L*L**H by ZPOTRF.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of hegst
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`complex<float>`][CHEGST] ]
+[ [`complex<double>`][ZHEGST] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/hegst.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/hegst.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::hegst( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/chegst.f.html chegst.f] and [@http://www.netlib.org/lapack/explore-html/zhegst.f.html zhegst.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/herfs.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/herfs.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,79 @@
+
+[section herfs]
+
+[heading Prototype]
+There is one prototype of `herfs` available, please see below.
+``
+herfs( const MatrixA& a, const MatrixAF& af, const VectorIPIV& ipiv,
+ const MatrixB& b, MatrixX& x, VectorFERR& ferr, VectorBERR& berr );
+``
+
+
+[heading Description]
+
+`herfs` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CHERFS and ZHERFS.
+`herfs` improves the computed solution to a system of linear
+equations when the coefficient matrix is Hermitian indefinite, and
+provides error bounds and backward error estimates for the solution.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of herfs
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`complex<float>`][CHERFS] ]
+[ [`complex<double>`][ZHERFS] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/herfs.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/herfs.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::herfs( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/cherfs.f.html cherfs.f] and [@http://www.netlib.org/lapack/explore-html/zherfs.f.html zherfs.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hetrd.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hetrd.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,78 @@
+
+[section hetrd]
+
+[heading Prototype]
+There is one prototype of `hetrd` available, please see below.
+``
+hetrd( MatrixA& a, VectorD& d, VectorE& e, VectorTAU& tau );
+``
+
+
+[heading Description]
+
+`hetrd` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CHETRD and ZHETRD.
+`hetrd` reduces a complex Hermitian matrix A to real symmetric
+tridiagonal form T by a unitary similarity transformation:
+Q**H * A * Q = T.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of hetrd
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`complex<float>`][CHETRD] ]
+[ [`complex<double>`][ZHETRD] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/hetrd.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/hetrd.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::hetrd( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/chetrd.f.html chetrd.f] and [@http://www.netlib.org/lapack/explore-html/zhetrd.f.html zhetrd.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hetrf.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hetrf.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,86 @@
+
+[section hetrf]
+
+[heading Prototype]
+There is one prototype of `hetrf` available, please see below.
+``
+hetrf( MatrixA& a, VectorIPIV& ipiv );
+``
+
+
+[heading Description]
+
+`hetrf` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CHETRF and ZHETRF.
+`hetrf` computes the factorization of a complex Hermitian matrix A
+using the Bunch-Kaufman diagonal pivoting method. The form of the
+factorization is
+
+A = U*D*U**H or A = L*D*L**H
+
+where U (or L) is a product of permutation and unit upper (lower)
+triangular matrices, and D is Hermitian and block diagonal with
+1-by-1 and 2-by-2 diagonal blocks.
+
+This is the blocked version of the algorithm, calling Level 3 BLAS.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of hetrf
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`complex<float>`][CHETRF] ]
+[ [`complex<double>`][ZHETRF] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/hetrf.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/hetrf.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::hetrf( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/chetrf.f.html chetrf.f] and [@http://www.netlib.org/lapack/explore-html/zhetrf.f.html zhetrf.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hetri.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hetri.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,78 @@
+
+[section hetri]
+
+[heading Prototype]
+There is one prototype of `hetri` available, please see below.
+``
+hetri( MatrixA& a, const VectorIPIV& ipiv );
+``
+
+
+[heading Description]
+
+`hetri` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CHETRI and ZHETRI.
+`hetri` computes the inverse of a complex Hermitian indefinite matrix
+A using the factorization A = U*D*U**H or A = L*D*L**H computed by
+ZHETRF.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of hetri
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`complex<float>`][CHETRI] ]
+[ [`complex<double>`][ZHETRI] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/hetri.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/hetri.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::hetri( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/chetri.f.html chetri.f] and [@http://www.netlib.org/lapack/explore-html/zhetri.f.html zhetri.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hetrs.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hetrs.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,78 @@
+
+[section hetrs]
+
+[heading Prototype]
+There is one prototype of `hetrs` available, please see below.
+``
+hetrs( const MatrixA& a, const VectorIPIV& ipiv, MatrixB& b );
+``
+
+
+[heading Description]
+
+`hetrs` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CHETRS and ZHETRS.
+`hetrs` solves a system of linear equations A*X = B with a complex
+Hermitian matrix A using the factorization A = U*D*U**H or
+A = L*D*L**H computed by ZHETRF.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of hetrs
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`complex<float>`][CHETRS] ]
+[ [`complex<double>`][ZHETRS] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/hetrs.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/hetrs.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::hetrs( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/chetrs.f.html chetrs.f] and [@http://www.netlib.org/lapack/explore-html/zhetrs.f.html zhetrs.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hgeqz.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hgeqz.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,128 @@
+
+[section hgeqz]
+
+[heading Prototype]
+There are two prototypes of `hgeqz` available, please see below.
+``
+hgeqz( const char job, const char compq, const char compz,
+ const int_t ilo, MatrixH& h, MatrixT& t,
+ VectorALPHAR& alphar, VectorALPHAI& alphai, VectorBETA& beta,
+ MatrixQ& q, MatrixZ& z );
+``
+
+``
+hgeqz( const char job, const char compq, const char compz,
+ const int_t ilo, MatrixH& h, MatrixT& t,
+ VectorALPHA& alpha, VectorBETA& beta, MatrixQ& q, MatrixZ& z );
+``
+
+
+[heading Description]
+
+`hgeqz` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SHGEQZ, DHGEQZ, CHGEQZ, and ZHGEQZ.
+`hgeqz` computes the eigenvalues of a complex matrix pair (H,T),
+where H is an upper Hessenberg matrix and T is upper triangular,
+using the single-shift QZ method.
+Matrix pairs of this type are produced by the reduction to
+generalized upper Hessenberg form of a complex matrix pair (A,B):
+
+A = Q1*H*Z1**H, B = Q1*T*Z1**H,
+
+as computed by ZGGHRD.
+
+If JOB='S', then the Hessenberg-triangular pair (H,T) is
+also reduced to generalized Schur form,
+
+H = Q*S*Z**H, T = Q*P*Z**H,
+
+where Q and Z are unitary matrices and S and P are upper triangular.
+
+Optionally, the unitary matrix Q from the generalized Schur
+factorization may be postmultiplied into an input matrix Q1, and the
+unitary matrix Z may be postmultiplied into an input matrix Z1.
+If Q1 and Z1 are the unitary matrices from ZGGHRD that reduced
+the matrix pair (A,B) to generalized Hessenberg form, then the output
+matrices Q1*Q and Z1*Z are the unitary factors from the generalized
+Schur factorization of (A,B):
+
+A = (Q1*Q)*S*(Z1*Z)**H, B = (Q1*Q)*P*(Z1*Z)**H.
+
+To avoid overflow, eigenvalues of the matrix pair (H,T)
+(equivalently, of (A,B)) are computed as a pair of complex values
+(alpha,beta). If beta is nonzero, lambda = alpha / beta is an
+eigenvalue of the generalized nonsymmetric eigenvalue problem (GNEP)
+A*x = lambda*B*x
+and if alpha is nonzero, mu = beta / alpha is an eigenvalue of the
+alternate form of the GNEP
+mu*A*y = B*y.
+The values of alpha and beta for the i-th eigenvalue can be read
+directly from the generalized Schur form: alpha = S(i,i),
+beta = P(i,i).
+
+Ref: C.B. Moler & G.W. Stewart, "An Algorithm for Generalized Matrix
+Eigenvalue Problems", SIAM J. Numer. Anal., 10(1973),
+pp. 241--256.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixH`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixH>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of hgeqz
+[ [ Value type of MatrixH ] [LAPACK routine] ]
+[ [`float`][SHGEQZ] ]
+[ [`double`][DHGEQZ] ]
+[ [`complex<float>`][CHGEQZ] ]
+[ [`complex<double>`][ZHGEQZ] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/hgeqz.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/hgeqz.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::hgeqz( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/shgeqz.f.html shgeqz.f], [@http://www.netlib.org/lapack/explore-html/dhgeqz.f.html dhgeqz.f], [@http://www.netlib.org/lapack/explore-html/chgeqz.f.html chgeqz.f], and [@http://www.netlib.org/lapack/explore-html/zhgeqz.f.html zhgeqz.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hpcon.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hpcon.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,82 @@
+
+[section hpcon]
+
+[heading Prototype]
+There is one prototype of `hpcon` available, please see below.
+``
+hpcon( const MatrixAP& ap, const VectorIPIV& ipiv, const Scalar >,
+ Scalar > );
+``
+
+
+[heading Description]
+
+`hpcon` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CHPCON and ZHPCON.
+`hpcon` estimates the reciprocal of the condition number of a complex
+Hermitian packed matrix A using the factorization A = U*D*U**H or
+A = L*D*L**H computed by ZHPTRF.
+
+An estimate is obtained for norm(inv(A)), and the reciprocal of the
+condition number is computed as RCOND = 1 / (ANORM * norm(inv(A))).
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of hpcon
+[ [ Value type of MatrixAP ] [LAPACK routine] ]
+[ [`complex<float>`][CHPCON] ]
+[ [`complex<double>`][ZHPCON] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/hpcon.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/hpcon.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::hpcon( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/chpcon.f.html chpcon.f] and [@http://www.netlib.org/lapack/explore-html/zhpcon.f.html zhpcon.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hprfs.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hprfs.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,80 @@
+
+[section hprfs]
+
+[heading Prototype]
+There is one prototype of `hprfs` available, please see below.
+``
+hprfs( const MatrixAP& ap, const MatrixAFP& afp, const VectorIPIV& ipiv,
+ const MatrixB& b, MatrixX& x, VectorFERR& ferr, VectorBERR& berr );
+``
+
+
+[heading Description]
+
+`hprfs` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CHPRFS and ZHPRFS.
+`hprfs` improves the computed solution to a system of linear
+equations when the coefficient matrix is Hermitian indefinite
+and packed, and provides error bounds and backward error estimates
+for the solution.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of hprfs
+[ [ Value type of MatrixAP ] [LAPACK routine] ]
+[ [`complex<float>`][CHPRFS] ]
+[ [`complex<double>`][ZHPRFS] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/hprfs.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/hprfs.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::hprfs( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/chprfs.f.html chprfs.f] and [@http://www.netlib.org/lapack/explore-html/zhprfs.f.html zhprfs.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hptrd.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hptrd.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,78 @@
+
+[section hptrd]
+
+[heading Prototype]
+There is one prototype of `hptrd` available, please see below.
+``
+hptrd( MatrixAP& ap, VectorD& d, VectorE& e, VectorTAU& tau );
+``
+
+
+[heading Description]
+
+`hptrd` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CHPTRD and ZHPTRD.
+`hptrd` reduces a complex Hermitian matrix A stored in packed form to
+real symmetric tridiagonal form T by a unitary similarity
+transformation: Q**H * A * Q = T.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of hptrd
+[ [ Value type of MatrixAP ] [LAPACK routine] ]
+[ [`complex<float>`][CHPTRD] ]
+[ [`complex<double>`][ZHPTRD] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/hptrd.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/hptrd.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::hptrd( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/chptrd.f.html chptrd.f] and [@http://www.netlib.org/lapack/explore-html/zhptrd.f.html zhptrd.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hptrf.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hptrf.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,83 @@
+
+[section hptrf]
+
+[heading Prototype]
+There is one prototype of `hptrf` available, please see below.
+``
+hptrf( MatrixAP& ap, VectorIPIV& ipiv );
+``
+
+
+[heading Description]
+
+`hptrf` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CHPTRF and ZHPTRF.
+`hptrf` computes the factorization of a complex Hermitian packed
+matrix A using the Bunch-Kaufman diagonal pivoting method:
+
+A = U*D*U**H or A = L*D*L**H
+
+where U (or L) is a product of permutation and unit upper (lower)
+triangular matrices, and D is Hermitian and block diagonal with
+1-by-1 and 2-by-2 diagonal blocks.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of hptrf
+[ [ Value type of MatrixAP ] [LAPACK routine] ]
+[ [`complex<float>`][CHPTRF] ]
+[ [`complex<double>`][ZHPTRF] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/hptrf.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/hptrf.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::hptrf( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/chptrf.f.html chptrf.f] and [@http://www.netlib.org/lapack/explore-html/zhptrf.f.html zhptrf.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hptri.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hptri.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,78 @@
+
+[section hptri]
+
+[heading Prototype]
+There is one prototype of `hptri` available, please see below.
+``
+hptri( MatrixAP& ap, const VectorIPIV& ipiv );
+``
+
+
+[heading Description]
+
+`hptri` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CHPTRI and ZHPTRI.
+`hptri` computes the inverse of a complex Hermitian indefinite matrix
+A in packed storage using the factorization A = U*D*U**H or
+A = L*D*L**H computed by ZHPTRF.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of hptri
+[ [ Value type of MatrixAP ] [LAPACK routine] ]
+[ [`complex<float>`][CHPTRI] ]
+[ [`complex<double>`][ZHPTRI] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/hptri.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/hptri.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::hptri( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/chptri.f.html chptri.f] and [@http://www.netlib.org/lapack/explore-html/zhptri.f.html zhptri.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hptrs.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hptrs.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,78 @@
+
+[section hptrs]
+
+[heading Prototype]
+There is one prototype of `hptrs` available, please see below.
+``
+hptrs( const MatrixAP& ap, const VectorIPIV& ipiv, MatrixB& b );
+``
+
+
+[heading Description]
+
+`hptrs` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CHPTRS and ZHPTRS.
+`hptrs` solves a system of linear equations A*X = B with a complex
+Hermitian matrix A stored in packed format using the factorization
+A = U*D*U**H or A = L*D*L**H computed by ZHPTRF.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of hptrs
+[ [ Value type of MatrixAP ] [LAPACK routine] ]
+[ [`complex<float>`][CHPTRS] ]
+[ [`complex<double>`][ZHPTRS] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/hptrs.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/hptrs.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::hptrs( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/chptrs.f.html chptrs.f] and [@http://www.netlib.org/lapack/explore-html/zhptrs.f.html zhptrs.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hsein.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hsein.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,97 @@
+
+[section hsein]
+
+[heading Prototype]
+There are two prototypes of `hsein` available, please see below.
+``
+hsein( const Side side, const char eigsrc, const char initv,
+ VectorSELECT& select, const MatrixH& h, VectorWR& wr,
+ const VectorWI& wi, MatrixVL& vl, MatrixVR& vr,
+ const int_t mm, int_t& m,
+ VectorIFAILL& ifaill, VectorIFAILR& ifailr );
+``
+
+``
+hsein( const Side side, const char eigsrc, const char initv,
+ const VectorSELECT& select, const MatrixH& h, VectorW& w,
+ MatrixVL& vl, MatrixVR& vr, const int_t mm,
+ int_t& m, VectorIFAILL& ifaill, VectorIFAILR& ifailr );
+``
+
+
+[heading Description]
+
+`hsein` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SHSEIN, DHSEIN, CHSEIN, and ZHSEIN.
+`hsein` uses inverse iteration to find specified right and/or left
+eigenvectors of a complex upper Hessenberg matrix H.
+
+The right eigenvector x and the left eigenvector y of the matrix H
+corresponding to an eigenvalue w are defined by:
+
+H * x = w * x, y**h * H = w * y**h
+
+where y**h denotes the conjugate transpose of the vector y.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorSELECT`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorSELECT>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of hsein
+[ [ Value type of VectorSELECT ] [LAPACK routine] ]
+[ [`float`][SHSEIN] ]
+[ [`double`][DHSEIN] ]
+[ [`complex<float>`][CHSEIN] ]
+[ [`complex<double>`][ZHSEIN] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/hsein.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/hsein.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::hsein( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/shsein.f.html shsein.f], [@http://www.netlib.org/lapack/explore-html/dhsein.f.html dhsein.f], [@http://www.netlib.org/lapack/explore-html/chsein.f.html chsein.f], and [@http://www.netlib.org/lapack/explore-html/zhsein.f.html zhsein.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hseqr.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/hseqr.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,93 @@
+
+[section hseqr]
+
+[heading Prototype]
+There are two prototypes of `hseqr` available, please see below.
+``
+hseqr( const char job, const char compz, const int_t ilo,
+ const int_t ihi, MatrixH& h, VectorWR& wr, VectorWI& wi,
+ MatrixZ& z );
+``
+
+``
+hseqr( const char job, const char compz, const int_t ilo,
+ const int_t ihi, MatrixH& h, VectorW& w, MatrixZ& z );
+``
+
+
+[heading Description]
+
+`hseqr` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SHSEQR, DHSEQR, CHSEQR, and ZHSEQR.
+`hseqr` computes the eigenvalues of a Hessenberg matrix H
+and, optionally, the matrices T and Z from the Schur decomposition
+H = Z T Z**H, where T is an upper triangular matrix (the
+Schur form), and Z is the unitary matrix of Schur vectors.
+
+Optionally Z may be postmultiplied into an input unitary
+matrix Q so that this routine can give the Schur factorization
+of a matrix A which has been reduced to the Hessenberg form H
+by the unitary matrix Q: A = Q*H*Q**H = (QZ)*H*(QZ)**H.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixH`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixH>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of hseqr
+[ [ Value type of MatrixH ] [LAPACK routine] ]
+[ [`float`][SHSEQR] ]
+[ [`double`][DHSEQR] ]
+[ [`complex<float>`][CHSEQR] ]
+[ [`complex<double>`][ZHSEQR] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/hseqr.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/hseqr.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::hseqr( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/shseqr.f.html shseqr.f], [@http://www.netlib.org/lapack/explore-html/dhseqr.f.html dhseqr.f], [@http://www.netlib.org/lapack/explore-html/chseqr.f.html chseqr.f], and [@http://www.netlib.org/lapack/explore-html/zhseqr.f.html zhseqr.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/labrd.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/labrd.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,87 @@
+
+[section labrd]
+
+[heading Prototype]
+There is one prototype of `labrd` available, please see below.
+``
+labrd( MatrixA& a, VectorD& d, VectorE& e, VectorTAUQ& tauq,
+ VectorTAUP& taup, MatrixX& x, MatrixY& y );
+``
+
+
+[heading Description]
+
+`labrd` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SLABRD, DLABRD, CLABRD, and ZLABRD.
+`labrd` reduces the first NB rows and columns of a complex general
+m by n matrix A to upper or lower real bidiagonal form by a unitary
+transformation Q' * A * P, and returns the matrices X and Y which
+are needed to apply the transformation to the unreduced part of A.
+
+If m >= n, A is reduced to upper bidiagonal form; if m < n, to lower
+bidiagonal form.
+
+This is an auxiliary routine called by ZGEBRD
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of labrd
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SLABRD] ]
+[ [`double`][DLABRD] ]
+[ [`complex<float>`][CLABRD] ]
+[ [`complex<double>`][ZLABRD] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/labrd.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/labrd.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::labrd( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/slabrd.f.html slabrd.f], [@http://www.netlib.org/lapack/explore-html/dlabrd.f.html dlabrd.f], [@http://www.netlib.org/lapack/explore-html/clabrd.f.html clabrd.f], and [@http://www.netlib.org/lapack/explore-html/zlabrd.f.html zlabrd.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/lacon.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/lacon.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,80 @@
+
+[section lacon]
+
+[heading Prototype]
+There is one prototype of `lacon` available, please see below.
+``
+lacon( const int_t n, VectorX& x, Scalar >,
+ int_t& kase );
+``
+
+
+[heading Description]
+
+`lacon` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SLACON, DLACON, CLACON, and ZLACON.
+`lacon` estimates the 1-norm of a square, complex matrix A.
+Reverse communication is used for evaluating matrix-vector products.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorX`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorX>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of lacon
+[ [ Value type of VectorX ] [LAPACK routine] ]
+[ [`float`][SLACON] ]
+[ [`double`][DLACON] ]
+[ [`complex<float>`][CLACON] ]
+[ [`complex<double>`][ZLACON] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/lacon.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/lacon.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::lacon( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/slacon.f.html slacon.f], [@http://www.netlib.org/lapack/explore-html/dlacon.f.html dlacon.f], [@http://www.netlib.org/lapack/explore-html/clacon.f.html clacon.f], and [@http://www.netlib.org/lapack/explore-html/zlacon.f.html zlacon.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/laebz.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/laebz.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,117 @@
+
+[section laebz]
+
+[heading Prototype]
+There is one prototype of `laebz` available, please see below.
+``
+laebz( const int_t ijob, const int_t nitmax,
+ const int_t n, const int_t minp,
+ const int_t nbmin, const Scalar >, const Scalar >,
+ const Scalar >, const VectorD& d, const VectorE& e,
+ const VectorE2& e2, VectorNVAL& nval, MatrixAB& ab, VectorC& c,
+ int_t& mout, MatrixNAB& nab );
+``
+
+
+[heading Description]
+
+`laebz` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SLAEBZ and DLAEBZ.
+`laebz` contains the iteration loops which compute and use the
+function N(w), which is the count of eigenvalues of a symmetric
+tridiagonal matrix T less than or equal to its argument w. It
+performs a choice of two types of loops:
+
+IJOB=1, followed by
+IJOB=2: It takes as input a list of intervals and returns a list of
+sufficiently small intervals whose union contains the same
+eigenvalues as the union of the original intervals.
+The input intervals are (AB(j,1),AB(j,2)], j=1,...,MINP.
+The output interval (AB(j,1),AB(j,2)] will contain
+eigenvalues NAB(j,1)+1,...,NAB(j,2), where 1 <= j <= MOUT.
+
+IJOB=3: It performs a binary search in each input interval
+(AB(j,1),AB(j,2)] for a point w(j) such that
+N(w(j))=NVAL(j), and uses C(j) as the starting point of
+the search. If such a w(j) is found, then on output
+AB(j,1)=AB(j,2)=w. If no such w(j) is found, then on output
+(AB(j,1),AB(j,2)] will be a small interval containing the
+point where N(w) jumps through NVAL(j), unless that point
+lies outside the initial interval.
+
+Note that the intervals are in all cases half-open intervals,
+i.e., of the form (a,b] , which includes b but not a .
+
+To avoid underflow, the matrix should be scaled so that its largest
+element is no greater than overflow**(1/2) * underflow**(1/4)
+in absolute value. To assure the most accurate computation
+of small eigenvalues, the matrix should be scaled to be
+not much smaller than that, either.
+
+See W. Kahan "Accurate Eigenvalues of a Symmetric Tridiagonal
+Matrix", Report CS41, Computer Science Dept., Stanford
+University, July 21, 1966
+
+Note: the arguments are, in general, *not* checked for unreasonable
+values.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorD`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorD>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of laebz
+[ [ Value type of VectorD ] [LAPACK routine] ]
+[ [`float`][SLAEBZ] ]
+[ [`double`][DLAEBZ] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/laebz.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/laebz.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::laebz( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/slaebz.f.html slaebz.f] and [@http://www.netlib.org/lapack/explore-html/dlaebz.f.html dlaebz.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/larz.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/larz.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,97 @@
+
+[section larz]
+
+[heading Prototype]
+There are two prototypes of `larz` available, please see below.
+``
+larz( const Side side, const int_t l, const VectorV& v,
+ const Scalar >, MatrixC& c );
+``
+
+``
+larz( const Side side, const int_t l, const VectorV& v,
+ const Scalar tau, MatrixC& c );
+``
+
+
+[heading Description]
+
+`larz` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SLARZ, DLARZ, CLARZ, and ZLARZ.
+`larz` applies a complex elementary reflector H to a complex
+M-by-N matrix C, from either the left or the right. H is represented
+in the form
+
+H = I - tau * v * v'
+
+where tau is a complex scalar and v is a complex vector.
+
+If tau = 0, then H is taken to be the unit matrix.
+
+To apply H' (the conjugate transpose of H), supply conjg(tau) instead
+tau.
+
+H is a product of k elementary reflectors as returned by ZTZRZF.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorV`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorV>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of larz
+[ [ Value type of VectorV ] [LAPACK routine] ]
+[ [`float`][SLARZ] ]
+[ [`double`][DLARZ] ]
+[ [`complex<float>`][CLARZ] ]
+[ [`complex<double>`][ZLARZ] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/larz.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/larz.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::larz( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/slarz.f.html slarz.f], [@http://www.netlib.org/lapack/explore-html/dlarz.f.html dlarz.f], [@http://www.netlib.org/lapack/explore-html/clarz.f.html clarz.f], and [@http://www.netlib.org/lapack/explore-html/zlarz.f.html zlarz.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/latrd.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/latrd.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,89 @@
+
+[section latrd]
+
+[heading Prototype]
+There is one prototype of `latrd` available, please see below.
+``
+latrd( const int_t nb, MatrixA& a, VectorE& e,
+ VectorTAU& tau, MatrixW& w );
+``
+
+
+[heading Description]
+
+`latrd` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SLATRD, DLATRD, CLATRD, and ZLATRD.
+`latrd` reduces NB rows and columns of a complex Hermitian matrix A to
+Hermitian tridiagonal form by a unitary similarity
+transformation Q' * A * Q, and returns the matrices V and W which are
+needed to apply the transformation to the unreduced part of A.
+
+If UPLO = 'U', `latrd` reduces the last NB rows and columns of a
+matrix, of which the upper triangle is supplied;
+if UPLO = 'L', `latrd` reduces the first NB rows and columns of a
+matrix, of which the lower triangle is supplied.
+
+This is an auxiliary routine called by ZHETRD.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of latrd
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SLATRD] ]
+[ [`double`][DLATRD] ]
+[ [`complex<float>`][CLATRD] ]
+[ [`complex<double>`][ZLATRD] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/latrd.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/latrd.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::latrd( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/slatrd.f.html slatrd.f], [@http://www.netlib.org/lapack/explore-html/dlatrd.f.html dlatrd.f], [@http://www.netlib.org/lapack/explore-html/clatrd.f.html clatrd.f], and [@http://www.netlib.org/lapack/explore-html/zlatrd.f.html zlatrd.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/latrs.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/latrs.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,90 @@
+
+[section latrs]
+
+[heading Prototype]
+There is one prototype of `latrs` available, please see below.
+``
+latrs( const char uplo, const char normin, const MatrixA& a, VectorX& x,
+ Scalar >, VectorCNORM& cnorm );
+``
+
+
+[heading Description]
+
+`latrs` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SLATRS, DLATRS, CLATRS, and ZLATRS.
+`latrs` solves one of the triangular systems
+
+A * x = s*b, A**T * x = s*b, or A**H * x = s*b,
+
+with scaling to prevent overflow. Here A is an upper or lower
+triangular matrix, A**T denotes the transpose of A, A**H denotes the
+conjugate transpose of A, x and b are n-element vectors, and s is a
+scaling factor, usually less than or equal to 1, chosen so that the
+components of x will be less than the overflow threshold. If the
+unscaled problem will not cause overflow, the Level 2 BLAS routine
+ZTRSV is called. If the matrix A is singular (A(j,j) = 0 for some j),
+then s is set to 0 and a non-trivial solution to A*x = 0 is returned.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of latrs
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SLATRS] ]
+[ [`double`][DLATRS] ]
+[ [`complex<float>`][CLATRS] ]
+[ [`complex<double>`][ZLATRS] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/latrs.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/latrs.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::latrs( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/slatrs.f.html slatrs.f], [@http://www.netlib.org/lapack/explore-html/dlatrs.f.html dlatrs.f], [@http://www.netlib.org/lapack/explore-html/clatrs.f.html clatrs.f], and [@http://www.netlib.org/lapack/explore-html/zlatrs.f.html zlatrs.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/latrz.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/latrz.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,81 @@
+
+[section latrz]
+
+[heading Prototype]
+There is one prototype of `latrz` available, please see below.
+``
+latrz( MatrixA& a, VectorTAU& tau );
+``
+
+
+[heading Description]
+
+`latrz` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SLATRZ, DLATRZ, CLATRZ, and ZLATRZ.
+`latrz` factors the M-by-(M+L) complex upper trapezoidal matrix
+[ A1 A2 ] = [ A(1:M,1:M) A(1:M,N-L+1:N) ] as ( R 0 ) * Z by means
+of unitary transformations, where Z is an (M+L)-by-(M+L) unitary
+matrix and, R and A1 are M-by-M upper triangular matrices.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of latrz
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SLATRZ] ]
+[ [`double`][DLATRZ] ]
+[ [`complex<float>`][CLATRZ] ]
+[ [`complex<double>`][ZLATRZ] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/latrz.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/latrz.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::latrz( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/slatrz.f.html slatrz.f], [@http://www.netlib.org/lapack/explore-html/dlatrz.f.html dlatrz.f], [@http://www.netlib.org/lapack/explore-html/clatrz.f.html clatrz.f], and [@http://www.netlib.org/lapack/explore-html/zlatrz.f.html zlatrz.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/opgtr.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/opgtr.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,83 @@
+
+[section opgtr]
+
+[heading Prototype]
+There is one prototype of `opgtr` available, please see below.
+``
+opgtr( const char uplo, const VectorAP& ap, const VectorTAU& tau,
+ MatrixQ& q );
+``
+
+
+[heading Description]
+
+`opgtr` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SOPGTR and DOPGTR.
+`opgtr` generates a real orthogonal matrix Q which is defined as the
+product of n-1 elementary reflectors H(i) of order n, as returned by
+DSPTRD using packed storage:
+
+if UPLO = 'U', Q = H(n-1) . . . H(2) H(1),
+
+if UPLO = 'L', Q = H(1) H(2) . . . H(n-1).
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of opgtr
+[ [ Value type of VectorAP ] [LAPACK routine] ]
+[ [`float`][SOPGTR] ]
+[ [`double`][DOPGTR] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/opgtr.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/opgtr.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::opgtr( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sopgtr.f.html sopgtr.f] and [@http://www.netlib.org/lapack/explore-html/dopgtr.f.html dopgtr.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/opmtr.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/opmtr.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,90 @@
+
+[section opmtr]
+
+[heading Prototype]
+There is one prototype of `opmtr` available, please see below.
+``
+opmtr( const Side side, const char uplo, const VectorAP& ap,
+ const VectorTAU& tau, MatrixC& c );
+``
+
+
+[heading Description]
+
+`opmtr` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SOPMTR and DOPMTR.
+`opmtr` overwrites the general real M-by-N matrix C with
+
+SIDE = 'L' SIDE = 'R'
+TRANS = 'N': Q * C C * Q
+TRANS = 'T': Q**T * C C * Q**T
+
+where Q is a real orthogonal matrix of order nq, with nq = m if
+SIDE = 'L' and nq = n if SIDE = 'R'. Q is defined as the product of
+nq-1 elementary reflectors, as returned by DSPTRD using packed
+storage:
+
+if UPLO = 'U', Q = H(nq-1) . . . H(2) H(1);
+
+if UPLO = 'L', Q = H(1) H(2) . . . H(nq-1).
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of opmtr
+[ [ Value type of VectorAP ] [LAPACK routine] ]
+[ [`float`][SOPMTR] ]
+[ [`double`][DOPMTR] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/opmtr.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/opmtr.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::opmtr( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sopmtr.f.html sopmtr.f] and [@http://www.netlib.org/lapack/explore-html/dopmtr.f.html dopmtr.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/orgbr.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/orgbr.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,95 @@
+
+[section orgbr]
+
+[heading Prototype]
+There is one prototype of `orgbr` available, please see below.
+``
+orgbr( const char vect, const int_t m,
+ const int_t n, const int_t k, MatrixA& a,
+ const VectorTAU& tau );
+``
+
+
+[heading Description]
+
+`orgbr` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SORGBR and DORGBR.
+`orgbr` generates one of the real orthogonal matrices Q or P**T
+determined by DGEBRD when reducing a real matrix A to bidiagonal
+form: A = Q * B * P**T. Q and P**T are defined as products of
+elementary reflectors H(i) or G(i) respectively.
+
+If VECT = 'Q', A is assumed to have been an M-by-K matrix, and Q
+is of order M:
+if m >= k, Q = H(1) H(2) . . . H(k) and `orgbr` returns the first n
+columns of Q, where m >= n >= k;
+if m < k, Q = H(1) H(2) . . . H(m-1) and `orgbr` returns Q as an
+M-by-M matrix.
+
+If VECT = 'P', A is assumed to have been a K-by-N matrix, and P**T
+is of order N:
+if k < n, P**T = G(k) . . . G(2) G(1) and `orgbr` returns the first m
+rows of P**T, where n >= m >= k;
+if k >= n, P**T = G(n-1) . . . G(2) G(1) and `orgbr` returns P**T as
+an N-by-N matrix.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of orgbr
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SORGBR] ]
+[ [`double`][DORGBR] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/orgbr.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/orgbr.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::orgbr( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sorgbr.f.html sorgbr.f] and [@http://www.netlib.org/lapack/explore-html/dorgbr.f.html dorgbr.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/orghr.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/orghr.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,81 @@
+
+[section orghr]
+
+[heading Prototype]
+There is one prototype of `orghr` available, please see below.
+``
+orghr( const int_t n, const int_t ilo,
+ const int_t ihi, MatrixA& a, const VectorTAU& tau );
+``
+
+
+[heading Description]
+
+`orghr` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SORGHR and DORGHR.
+`orghr` generates a real orthogonal matrix Q which is defined as the
+product of IHI-ILO elementary reflectors of order N, as returned by
+DGEHRD:
+
+Q = H(ilo) H(ilo+1) . . . H(ihi-1).
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of orghr
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SORGHR] ]
+[ [`double`][DORGHR] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/orghr.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/orghr.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::orghr( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sorghr.f.html sorghr.f] and [@http://www.netlib.org/lapack/explore-html/dorghr.f.html dorghr.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/orglq.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/orglq.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,83 @@
+
+[section orglq]
+
+[heading Prototype]
+There is one prototype of `orglq` available, please see below.
+``
+orglq( const int_t m, const int_t n,
+ const int_t k, MatrixA& a, const VectorTAU& tau );
+``
+
+
+[heading Description]
+
+`orglq` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SORGLQ and DORGLQ.
+`orglq` generates an M-by-N real matrix Q with orthonormal rows,
+which is defined as the first M rows of a product of K elementary
+reflectors of order N
+
+Q = H(k) . . . H(2) H(1)
+
+as returned by DGELQF.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of orglq
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SORGLQ] ]
+[ [`double`][DORGLQ] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/orglq.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/orglq.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::orglq( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sorglq.f.html sorglq.f] and [@http://www.netlib.org/lapack/explore-html/dorglq.f.html dorglq.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/orgql.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/orgql.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,83 @@
+
+[section orgql]
+
+[heading Prototype]
+There is one prototype of `orgql` available, please see below.
+``
+orgql( const int_t m, const int_t n,
+ const int_t k, MatrixA& a, const VectorTAU& tau );
+``
+
+
+[heading Description]
+
+`orgql` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SORGQL and DORGQL.
+`orgql` generates an M-by-N real matrix Q with orthonormal columns,
+which is defined as the last N columns of a product of K elementary
+reflectors of order M
+
+Q = H(k) . . . H(2) H(1)
+
+as returned by DGEQLF.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of orgql
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SORGQL] ]
+[ [`double`][DORGQL] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/orgql.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/orgql.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::orgql( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sorgql.f.html sorgql.f] and [@http://www.netlib.org/lapack/explore-html/dorgql.f.html dorgql.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/orgqr.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/orgqr.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,82 @@
+
+[section orgqr]
+
+[heading Prototype]
+There is one prototype of `orgqr` available, please see below.
+``
+orgqr( MatrixA& a, const VectorTAU& tau );
+``
+
+
+[heading Description]
+
+`orgqr` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SORGQR and DORGQR.
+`orgqr` generates an M-by-N real matrix Q with orthonormal columns,
+which is defined as the first N columns of a product of K elementary
+reflectors of order M
+
+Q = H(1) H(2) . . . H(k)
+
+as returned by DGEQRF.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of orgqr
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SORGQR] ]
+[ [`double`][DORGQR] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/orgqr.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/orgqr.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::orgqr( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sorgqr.f.html sorgqr.f] and [@http://www.netlib.org/lapack/explore-html/dorgqr.f.html dorgqr.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/orgrq.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/orgrq.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,83 @@
+
+[section orgrq]
+
+[heading Prototype]
+There is one prototype of `orgrq` available, please see below.
+``
+orgrq( const int_t m, const int_t n,
+ const int_t k, MatrixA& a, const VectorTAU& tau );
+``
+
+
+[heading Description]
+
+`orgrq` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SORGRQ and DORGRQ.
+`orgrq` generates an M-by-N real matrix Q with orthonormal rows,
+which is defined as the last M rows of a product of K elementary
+reflectors of order N
+
+Q = H(1) H(2) . . . H(k)
+
+as returned by DGERQF.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of orgrq
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SORGRQ] ]
+[ [`double`][DORGRQ] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/orgrq.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/orgrq.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::orgrq( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sorgrq.f.html sorgrq.f] and [@http://www.netlib.org/lapack/explore-html/dorgrq.f.html dorgrq.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/orgtr.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/orgtr.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,82 @@
+
+[section orgtr]
+
+[heading Prototype]
+There is one prototype of `orgtr` available, please see below.
+``
+orgtr( const int_t n, MatrixA& a, const VectorTAU& tau );
+``
+
+
+[heading Description]
+
+`orgtr` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SORGTR and DORGTR.
+`orgtr` generates a real orthogonal matrix Q which is defined as the
+product of n-1 elementary reflectors of order N, as returned by
+DSYTRD:
+
+if UPLO = 'U', Q = H(n-1) . . . H(2) H(1),
+
+if UPLO = 'L', Q = H(1) H(2) . . . H(n-1).
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of orgtr
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SORGTR] ]
+[ [`double`][DORGTR] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/orgtr.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/orgtr.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::orgtr( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sorgtr.f.html sorgtr.f] and [@http://www.netlib.org/lapack/explore-html/dorgtr.f.html dorgtr.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ormbr.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ormbr.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,103 @@
+
+[section ormbr]
+
+[heading Prototype]
+There is one prototype of `ormbr` available, please see below.
+``
+ormbr( const char vect, const Side side, const int_t k,
+ const MatrixA& a, const VectorTAU& tau, MatrixC& c );
+``
+
+
+[heading Description]
+
+`ormbr` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SORMBR and DORMBR.
+If VECT = 'Q', `ormbr` overwrites the general real M-by-N matrix C
+with
+SIDE = 'L' SIDE = 'R'
+TRANS = 'N': Q * C C * Q
+TRANS = 'T': Q**T * C C * Q**T
+
+If VECT = 'P', `ormbr` overwrites the general real M-by-N matrix C
+with
+SIDE = 'L' SIDE = 'R'
+TRANS = 'N': P * C C * P
+TRANS = 'T': P**T * C C * P**T
+
+Here Q and P**T are the orthogonal matrices determined by DGEBRD when
+reducing a real matrix A to bidiagonal form: A = Q * B * P**T. Q and
+P**T are defined as products of elementary reflectors H(i) and G(i)
+respectively.
+
+Let nq = m if SIDE = 'L' and nq = n if SIDE = 'R'. Thus nq is the
+order of the orthogonal matrix Q or P**T that is applied.
+
+If VECT = 'Q', A is assumed to have been an NQ-by-K matrix:
+if nq >= k, Q = H(1) H(2) . . . H(k);
+if nq < k, Q = H(1) H(2) . . . H(nq-1).
+
+If VECT = 'P', A is assumed to have been a K-by-NQ matrix:
+if k < nq, P = G(1) G(2) . . . G(k);
+if k >= nq, P = G(1) G(2) . . . G(nq-1).
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of ormbr
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SORMBR] ]
+[ [`double`][DORMBR] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/ormbr.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/ormbr.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::ormbr( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sormbr.f.html sormbr.f] and [@http://www.netlib.org/lapack/explore-html/dormbr.f.html dormbr.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ormhr.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ormhr.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,88 @@
+
+[section ormhr]
+
+[heading Prototype]
+There is one prototype of `ormhr` available, please see below.
+``
+ormhr( const Side side, const int_t ilo,
+ const int_t ihi, const MatrixA& a, const VectorTAU& tau,
+ MatrixC& c );
+``
+
+
+[heading Description]
+
+`ormhr` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SORMHR and DORMHR.
+`ormhr` overwrites the general real M-by-N matrix C with
+
+SIDE = 'L' SIDE = 'R'
+TRANS = 'N': Q * C C * Q
+TRANS = 'T': Q**T * C C * Q**T
+
+where Q is a real orthogonal matrix of order nq, with nq = m if
+SIDE = 'L' and nq = n if SIDE = 'R'. Q is defined as the product of
+IHI-ILO elementary reflectors, as returned by DGEHRD:
+
+Q = H(ilo) H(ilo+1) . . . H(ihi-1).
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of ormhr
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SORMHR] ]
+[ [`double`][DORMHR] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/ormhr.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/ormhr.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::ormhr( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sormhr.f.html sormhr.f] and [@http://www.netlib.org/lapack/explore-html/dormhr.f.html dormhr.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ormlq.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ormlq.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,89 @@
+
+[section ormlq]
+
+[heading Prototype]
+There is one prototype of `ormlq` available, please see below.
+``
+ormlq( const Side side, const int_t k, const MatrixA& a,
+ const VectorTAU& tau, MatrixC& c );
+``
+
+
+[heading Description]
+
+`ormlq` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SORMLQ and DORMLQ.
+`ormlq` overwrites the general real M-by-N matrix C with
+
+SIDE = 'L' SIDE = 'R'
+TRANS = 'N': Q * C C * Q
+TRANS = 'T': Q**T * C C * Q**T
+
+where Q is a real orthogonal matrix defined as the product of k
+elementary reflectors
+
+Q = H(k) . . . H(2) H(1)
+
+as returned by DGELQF. Q is of order M if SIDE = 'L' and of order N
+if SIDE = 'R'.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of ormlq
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SORMLQ] ]
+[ [`double`][DORMLQ] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/ormlq.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/ormlq.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::ormlq( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sormlq.f.html sormlq.f] and [@http://www.netlib.org/lapack/explore-html/dormlq.f.html dormlq.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ormql.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ormql.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,89 @@
+
+[section ormql]
+
+[heading Prototype]
+There is one prototype of `ormql` available, please see below.
+``
+ormql( const Side side, const int_t k, const MatrixA& a,
+ const VectorTAU& tau, MatrixC& c );
+``
+
+
+[heading Description]
+
+`ormql` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SORMQL and DORMQL.
+`ormql` overwrites the general real M-by-N matrix C with
+
+SIDE = 'L' SIDE = 'R'
+TRANS = 'N': Q * C C * Q
+TRANS = 'T': Q**T * C C * Q**T
+
+where Q is a real orthogonal matrix defined as the product of k
+elementary reflectors
+
+Q = H(k) . . . H(2) H(1)
+
+as returned by DGEQLF. Q is of order M if SIDE = 'L' and of order N
+if SIDE = 'R'.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of ormql
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SORMQL] ]
+[ [`double`][DORMQL] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/ormql.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/ormql.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::ormql( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sormql.f.html sormql.f] and [@http://www.netlib.org/lapack/explore-html/dormql.f.html dormql.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ormqr.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ormqr.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,89 @@
+
+[section ormqr]
+
+[heading Prototype]
+There is one prototype of `ormqr` available, please see below.
+``
+ormqr( const Side side, const MatrixA& a, const VectorTAU& tau,
+ MatrixC& c );
+``
+
+
+[heading Description]
+
+`ormqr` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SORMQR and DORMQR.
+`ormqr` overwrites the general real M-by-N matrix C with
+
+SIDE = 'L' SIDE = 'R'
+TRANS = 'N': Q * C C * Q
+TRANS = 'T': Q**T * C C * Q**T
+
+where Q is a real orthogonal matrix defined as the product of k
+elementary reflectors
+
+Q = H(1) H(2) . . . H(k)
+
+as returned by DGEQRF. Q is of order M if SIDE = 'L' and of order N
+if SIDE = 'R'.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of ormqr
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SORMQR] ]
+[ [`double`][DORMQR] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/ormqr.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/ormqr.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::ormqr( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sormqr.f.html sormqr.f] and [@http://www.netlib.org/lapack/explore-html/dormqr.f.html dormqr.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ormrq.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ormrq.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,89 @@
+
+[section ormrq]
+
+[heading Prototype]
+There is one prototype of `ormrq` available, please see below.
+``
+ormrq( const Side side, const int_t k, const MatrixA& a,
+ const VectorTAU& tau, MatrixC& c );
+``
+
+
+[heading Description]
+
+`ormrq` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SORMRQ and DORMRQ.
+`ormrq` overwrites the general real M-by-N matrix C with
+
+SIDE = 'L' SIDE = 'R'
+TRANS = 'N': Q * C C * Q
+TRANS = 'T': Q**T * C C * Q**T
+
+where Q is a real orthogonal matrix defined as the product of k
+elementary reflectors
+
+Q = H(1) H(2) . . . H(k)
+
+as returned by DGERQF. Q is of order M if SIDE = 'L' and of order N
+if SIDE = 'R'.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of ormrq
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SORMRQ] ]
+[ [`double`][DORMRQ] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/ormrq.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/ormrq.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::ormrq( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sormrq.f.html sormrq.f] and [@http://www.netlib.org/lapack/explore-html/dormrq.f.html dormrq.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ormrz.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ormrz.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,89 @@
+
+[section ormrz]
+
+[heading Prototype]
+There is one prototype of `ormrz` available, please see below.
+``
+ormrz( const Side side, const int_t k, const MatrixA& a,
+ const VectorTAU& tau, MatrixC& c );
+``
+
+
+[heading Description]
+
+`ormrz` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SORMRZ and DORMRZ.
+`ormrz` overwrites the general real M-by-N matrix C with
+
+SIDE = 'L' SIDE = 'R'
+TRANS = 'N': Q * C C * Q
+TRANS = 'T': Q**T * C C * Q**T
+
+where Q is a real orthogonal matrix defined as the product of k
+elementary reflectors
+
+Q = H(1) H(2) . . . H(k)
+
+as returned by DTZRZF. Q is of order M if SIDE = 'L' and of order N
+if SIDE = 'R'.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of ormrz
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SORMRZ] ]
+[ [`double`][DORMRZ] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/ormrz.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/ormrz.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::ormrz( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sormrz.f.html sormrz.f] and [@http://www.netlib.org/lapack/explore-html/dormrz.f.html dormrz.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ormtr.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ormtr.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,89 @@
+
+[section ormtr]
+
+[heading Prototype]
+There is one prototype of `ormtr` available, please see below.
+``
+ormtr( const Side side, const MatrixA& a, const VectorTAU& tau,
+ MatrixC& c );
+``
+
+
+[heading Description]
+
+`ormtr` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SORMTR and DORMTR.
+`ormtr` overwrites the general real M-by-N matrix C with
+
+SIDE = 'L' SIDE = 'R'
+TRANS = 'N': Q * C C * Q
+TRANS = 'T': Q**T * C C * Q**T
+
+where Q is a real orthogonal matrix of order nq, with nq = m if
+SIDE = 'L' and nq = n if SIDE = 'R'. Q is defined as the product of
+nq-1 elementary reflectors, as returned by DSYTRD:
+
+if UPLO = 'U', Q = H(nq-1) . . . H(2) H(1);
+
+if UPLO = 'L', Q = H(1) H(2) . . . H(nq-1).
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of ormtr
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SORMTR] ]
+[ [`double`][DORMTR] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/ormtr.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/ormtr.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::ormtr( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sormtr.f.html sormtr.f] and [@http://www.netlib.org/lapack/explore-html/dormtr.f.html dormtr.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pbcon.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pbcon.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,84 @@
+
+[section pbcon]
+
+[heading Prototype]
+There is one prototype of `pbcon` available, please see below.
+``
+pbcon( const char uplo, const MatrixAB& ab, const Scalar >, Scalar > );
+``
+
+
+[heading Description]
+
+`pbcon` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SPBCON, DPBCON, CPBCON, and ZPBCON.
+`pbcon` estimates the reciprocal of the condition number (in the
+1-norm) of a complex Hermitian positive definite band matrix using
+the Cholesky factorization A = U**H*U or A = L*L**H computed by
+ZPBTRF.
+
+An estimate is obtained for norm(inv(A)), and the reciprocal of the
+condition number is computed as RCOND = 1 / (ANORM * norm(inv(A))).
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAB`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAB>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of pbcon
+[ [ Value type of MatrixAB ] [LAPACK routine] ]
+[ [`float`][SPBCON] ]
+[ [`double`][DPBCON] ]
+[ [`complex<float>`][CPBCON] ]
+[ [`complex<double>`][ZPBCON] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/pbcon.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/pbcon.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::pbcon( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/spbcon.f.html spbcon.f], [@http://www.netlib.org/lapack/explore-html/dpbcon.f.html dpbcon.f], [@http://www.netlib.org/lapack/explore-html/cpbcon.f.html cpbcon.f], and [@http://www.netlib.org/lapack/explore-html/zpbcon.f.html zpbcon.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pbequ.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pbequ.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,85 @@
+
+[section pbequ]
+
+[heading Prototype]
+There is one prototype of `pbequ` available, please see below.
+``
+pbequ( const MatrixAB& ab, VectorS& s, Scalar >, Scalar > );
+``
+
+
+[heading Description]
+
+`pbequ` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SPBEQU, DPBEQU, CPBEQU, and ZPBEQU.
+`pbequ` computes row and column scalings intended to equilibrate a
+Hermitian positive definite band matrix A and reduce its condition
+number (with respect to the two-norm). S contains the scale factors,
+S(i) = 1/sqrt(A(i,i)), chosen so that the scaled matrix B with
+elements B(i,j) = S(i)*A(i,j)*S(j) has ones on the diagonal. This
+choice of S puts the condition number of B within a factor N of the
+smallest possible condition number over all possible diagonal
+scalings.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAB`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAB>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of pbequ
+[ [ Value type of MatrixAB ] [LAPACK routine] ]
+[ [`float`][SPBEQU] ]
+[ [`double`][DPBEQU] ]
+[ [`complex<float>`][CPBEQU] ]
+[ [`complex<double>`][ZPBEQU] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/pbequ.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/pbequ.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::pbequ( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/spbequ.f.html spbequ.f], [@http://www.netlib.org/lapack/explore-html/dpbequ.f.html dpbequ.f], [@http://www.netlib.org/lapack/explore-html/cpbequ.f.html cpbequ.f], and [@http://www.netlib.org/lapack/explore-html/zpbequ.f.html zpbequ.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pbrfs.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pbrfs.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,82 @@
+
+[section pbrfs]
+
+[heading Prototype]
+There is one prototype of `pbrfs` available, please see below.
+``
+pbrfs( const MatrixAB& ab, const MatrixAFB& afb, const MatrixB& b,
+ MatrixX& x, VectorFERR& ferr, VectorBERR& berr );
+``
+
+
+[heading Description]
+
+`pbrfs` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SPBRFS, DPBRFS, CPBRFS, and ZPBRFS.
+`pbrfs` improves the computed solution to a system of linear
+equations when the coefficient matrix is Hermitian positive definite
+and banded, and provides error bounds and backward error estimates
+for the solution.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAB`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAB>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of pbrfs
+[ [ Value type of MatrixAB ] [LAPACK routine] ]
+[ [`float`][SPBRFS] ]
+[ [`double`][DPBRFS] ]
+[ [`complex<float>`][CPBRFS] ]
+[ [`complex<double>`][ZPBRFS] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/pbrfs.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/pbrfs.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::pbrfs( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/spbrfs.f.html spbrfs.f], [@http://www.netlib.org/lapack/explore-html/dpbrfs.f.html dpbrfs.f], [@http://www.netlib.org/lapack/explore-html/cpbrfs.f.html cpbrfs.f], and [@http://www.netlib.org/lapack/explore-html/zpbrfs.f.html zpbrfs.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pbstf.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pbstf.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,90 @@
+
+[section pbstf]
+
+[heading Prototype]
+There is one prototype of `pbstf` available, please see below.
+``
+pbstf( MatrixAB& ab );
+``
+
+
+[heading Description]
+
+`pbstf` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SPBSTF, DPBSTF, CPBSTF, and ZPBSTF.
+`pbstf` computes a split Cholesky factorization of a complex
+Hermitian positive definite band matrix A.
+
+This routine is designed to be used in conjunction with ZHBGST.
+
+The factorization has the form A = S**H*S where S is a band matrix
+of the same bandwidth as A and the following structure:
+
+S = ( U )
+( M L )
+
+where U is upper triangular of order m = (n+kd)/2, and L is lower
+triangular of order n-m.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAB`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAB>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of pbstf
+[ [ Value type of MatrixAB ] [LAPACK routine] ]
+[ [`float`][SPBSTF] ]
+[ [`double`][DPBSTF] ]
+[ [`complex<float>`][CPBSTF] ]
+[ [`complex<double>`][ZPBSTF] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/pbstf.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/pbstf.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::pbstf( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/spbstf.f.html spbstf.f], [@http://www.netlib.org/lapack/explore-html/dpbstf.f.html dpbstf.f], [@http://www.netlib.org/lapack/explore-html/cpbstf.f.html cpbstf.f], and [@http://www.netlib.org/lapack/explore-html/zpbstf.f.html zpbstf.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pbtrf.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pbtrf.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,84 @@
+
+[section pbtrf]
+
+[heading Prototype]
+There is one prototype of `pbtrf` available, please see below.
+``
+pbtrf( MatrixAB& ab );
+``
+
+
+[heading Description]
+
+`pbtrf` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SPBTRF, DPBTRF, CPBTRF, and ZPBTRF.
+`pbtrf` computes the Cholesky factorization of a complex Hermitian
+positive definite band matrix A.
+
+The factorization has the form
+A = U**H * U, if UPLO = 'U', or
+A = L * L**H, if UPLO = 'L',
+where U is an upper triangular matrix and L is lower triangular.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAB`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAB>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of pbtrf
+[ [ Value type of MatrixAB ] [LAPACK routine] ]
+[ [`float`][SPBTRF] ]
+[ [`double`][DPBTRF] ]
+[ [`complex<float>`][CPBTRF] ]
+[ [`complex<double>`][ZPBTRF] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/pbtrf.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/pbtrf.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::pbtrf( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/spbtrf.f.html spbtrf.f], [@http://www.netlib.org/lapack/explore-html/dpbtrf.f.html dpbtrf.f], [@http://www.netlib.org/lapack/explore-html/cpbtrf.f.html cpbtrf.f], and [@http://www.netlib.org/lapack/explore-html/zpbtrf.f.html zpbtrf.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pbtrs.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pbtrs.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,80 @@
+
+[section pbtrs]
+
+[heading Prototype]
+There is one prototype of `pbtrs` available, please see below.
+``
+pbtrs( const char uplo, const MatrixAB& ab, MatrixB& b );
+``
+
+
+[heading Description]
+
+`pbtrs` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SPBTRS, DPBTRS, CPBTRS, and ZPBTRS.
+`pbtrs` solves a system of linear equations A*X = B with a Hermitian
+positive definite band matrix A using the Cholesky factorization
+A = U**H*U or A = L*L**H computed by ZPBTRF.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAB`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAB>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of pbtrs
+[ [ Value type of MatrixAB ] [LAPACK routine] ]
+[ [`float`][SPBTRS] ]
+[ [`double`][DPBTRS] ]
+[ [`complex<float>`][CPBTRS] ]
+[ [`complex<double>`][ZPBTRS] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/pbtrs.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/pbtrs.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::pbtrs( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/spbtrs.f.html spbtrs.f], [@http://www.netlib.org/lapack/explore-html/dpbtrs.f.html dpbtrs.f], [@http://www.netlib.org/lapack/explore-html/cpbtrs.f.html cpbtrs.f], and [@http://www.netlib.org/lapack/explore-html/zpbtrs.f.html zpbtrs.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pftrs.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pftrs.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,81 @@
+
+[section pftrs]
+
+[heading Prototype]
+There is one prototype of `pftrs` available, please see below.
+``
+pftrs( const char uplo, const int_t n, const VectorA& a,
+ MatrixB& b );
+``
+
+
+[heading Description]
+
+`pftrs` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SPFTRS, DPFTRS, CPFTRS, and ZPFTRS.
+`pftrs` solves a system of linear equations A*X = B with a Hermitian
+positive definite matrix A using the Cholesky factorization
+A = U**H*U or A = L*L**H computed by ZPFTRF.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of pftrs
+[ [ Value type of VectorA ] [LAPACK routine] ]
+[ [`float`][SPFTRS] ]
+[ [`double`][DPFTRS] ]
+[ [`complex<float>`][CPFTRS] ]
+[ [`complex<double>`][ZPFTRS] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/pftrs.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/pftrs.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::pftrs( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/spftrs.f.html spftrs.f], [@http://www.netlib.org/lapack/explore-html/dpftrs.f.html dpftrs.f], [@http://www.netlib.org/lapack/explore-html/cpftrs.f.html cpftrs.f], and [@http://www.netlib.org/lapack/explore-html/zpftrs.f.html zpftrs.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pocon.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pocon.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,83 @@
+
+[section pocon]
+
+[heading Prototype]
+There is one prototype of `pocon` available, please see below.
+``
+pocon( const MatrixA& a, const Scalar >, Scalar > );
+``
+
+
+[heading Description]
+
+`pocon` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SPOCON, DPOCON, CPOCON, and ZPOCON.
+`pocon` estimates the reciprocal of the condition number (in the
+1-norm) of a complex Hermitian positive definite matrix using the
+Cholesky factorization A = U**H*U or A = L*L**H computed by ZPOTRF.
+
+An estimate is obtained for norm(inv(A)), and the reciprocal of the
+condition number is computed as RCOND = 1 / (ANORM * norm(inv(A))).
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of pocon
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SPOCON] ]
+[ [`double`][DPOCON] ]
+[ [`complex<float>`][CPOCON] ]
+[ [`complex<double>`][ZPOCON] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/pocon.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/pocon.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::pocon( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/spocon.f.html spocon.f], [@http://www.netlib.org/lapack/explore-html/dpocon.f.html dpocon.f], [@http://www.netlib.org/lapack/explore-html/cpocon.f.html cpocon.f], and [@http://www.netlib.org/lapack/explore-html/zpocon.f.html zpocon.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/poequ.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/poequ.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,85 @@
+
+[section poequ]
+
+[heading Prototype]
+There is one prototype of `poequ` available, please see below.
+``
+poequ( const MatrixA& a, VectorS& s, Scalar >, Scalar > );
+``
+
+
+[heading Description]
+
+`poequ` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SPOEQU, DPOEQU, CPOEQU, and ZPOEQU.
+`poequ` computes row and column scalings intended to equilibrate a
+Hermitian positive definite matrix A and reduce its condition number
+(with respect to the two-norm). S contains the scale factors,
+S(i) = 1/sqrt(A(i,i)), chosen so that the scaled matrix B with
+elements B(i,j) = S(i)*A(i,j)*S(j) has ones on the diagonal. This
+choice of S puts the condition number of B within a factor N of the
+smallest possible condition number over all possible diagonal
+scalings.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of poequ
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SPOEQU] ]
+[ [`double`][DPOEQU] ]
+[ [`complex<float>`][CPOEQU] ]
+[ [`complex<double>`][ZPOEQU] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/poequ.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/poequ.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::poequ( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/spoequ.f.html spoequ.f], [@http://www.netlib.org/lapack/explore-html/dpoequ.f.html dpoequ.f], [@http://www.netlib.org/lapack/explore-html/cpoequ.f.html cpoequ.f], and [@http://www.netlib.org/lapack/explore-html/zpoequ.f.html zpoequ.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/porfs.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/porfs.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,82 @@
+
+[section porfs]
+
+[heading Prototype]
+There is one prototype of `porfs` available, please see below.
+``
+porfs( const MatrixA& a, const MatrixAF& af, const MatrixB& b,
+ MatrixX& x, VectorFERR& ferr, VectorBERR& berr );
+``
+
+
+[heading Description]
+
+`porfs` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SPORFS, DPORFS, CPORFS, and ZPORFS.
+`porfs` improves the computed solution to a system of linear
+equations when the coefficient matrix is Hermitian positive definite,
+and provides error bounds and backward error estimates for the
+solution.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of porfs
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SPORFS] ]
+[ [`double`][DPORFS] ]
+[ [`complex<float>`][CPORFS] ]
+[ [`complex<double>`][ZPORFS] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/porfs.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/porfs.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::porfs( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sporfs.f.html sporfs.f], [@http://www.netlib.org/lapack/explore-html/dporfs.f.html dporfs.f], [@http://www.netlib.org/lapack/explore-html/cporfs.f.html cporfs.f], and [@http://www.netlib.org/lapack/explore-html/zporfs.f.html zporfs.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/potrf.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/potrf.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,86 @@
+
+[section potrf]
+
+[heading Prototype]
+There is one prototype of `potrf` available, please see below.
+``
+potrf( MatrixA& a );
+``
+
+
+[heading Description]
+
+`potrf` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SPOTRF, DPOTRF, CPOTRF, and ZPOTRF.
+`potrf` computes the Cholesky factorization of a complex Hermitian
+positive definite matrix A.
+
+The factorization has the form
+A = U**H * U, if UPLO = 'U', or
+A = L * L**H, if UPLO = 'L',
+where U is an upper triangular matrix and L is lower triangular.
+
+This is the block version of the algorithm, calling Level 3 BLAS.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of potrf
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SPOTRF] ]
+[ [`double`][DPOTRF] ]
+[ [`complex<float>`][CPOTRF] ]
+[ [`complex<double>`][ZPOTRF] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/potrf.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/potrf.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::potrf( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/spotrf.f.html spotrf.f], [@http://www.netlib.org/lapack/explore-html/dpotrf.f.html dpotrf.f], [@http://www.netlib.org/lapack/explore-html/cpotrf.f.html cpotrf.f], and [@http://www.netlib.org/lapack/explore-html/zpotrf.f.html zpotrf.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/potri.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/potri.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,80 @@
+
+[section potri]
+
+[heading Prototype]
+There is one prototype of `potri` available, please see below.
+``
+potri( MatrixA& a );
+``
+
+
+[heading Description]
+
+`potri` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SPOTRI, DPOTRI, CPOTRI, and ZPOTRI.
+`potri` computes the inverse of a complex Hermitian positive definite
+matrix A using the Cholesky factorization A = U**H*U or A = L*L**H
+computed by ZPOTRF.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of potri
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SPOTRI] ]
+[ [`double`][DPOTRI] ]
+[ [`complex<float>`][CPOTRI] ]
+[ [`complex<double>`][ZPOTRI] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/potri.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/potri.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::potri( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/spotri.f.html spotri.f], [@http://www.netlib.org/lapack/explore-html/dpotri.f.html dpotri.f], [@http://www.netlib.org/lapack/explore-html/cpotri.f.html cpotri.f], and [@http://www.netlib.org/lapack/explore-html/zpotri.f.html zpotri.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/potrs.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/potrs.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,80 @@
+
+[section potrs]
+
+[heading Prototype]
+There is one prototype of `potrs` available, please see below.
+``
+potrs( const MatrixA& a, MatrixB& b );
+``
+
+
+[heading Description]
+
+`potrs` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SPOTRS, DPOTRS, CPOTRS, and ZPOTRS.
+`potrs` solves a system of linear equations A*X = B with a Hermitian
+positive definite matrix A using the Cholesky factorization
+A = U**H*U or A = L*L**H computed by ZPOTRF.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of potrs
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SPOTRS] ]
+[ [`double`][DPOTRS] ]
+[ [`complex<float>`][CPOTRS] ]
+[ [`complex<double>`][ZPOTRS] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/potrs.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/potrs.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::potrs( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/spotrs.f.html spotrs.f], [@http://www.netlib.org/lapack/explore-html/dpotrs.f.html dpotrs.f], [@http://www.netlib.org/lapack/explore-html/cpotrs.f.html cpotrs.f], and [@http://www.netlib.org/lapack/explore-html/zpotrs.f.html zpotrs.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ppcon.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ppcon.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,84 @@
+
+[section ppcon]
+
+[heading Prototype]
+There is one prototype of `ppcon` available, please see below.
+``
+ppcon( const MatrixAP& ap, const Scalar >, Scalar > );
+``
+
+
+[heading Description]
+
+`ppcon` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SPPCON, DPPCON, CPPCON, and ZPPCON.
+`ppcon` estimates the reciprocal of the condition number (in the
+1-norm) of a complex Hermitian positive definite packed matrix using
+the Cholesky factorization A = U**H*U or A = L*L**H computed by
+ZPPTRF.
+
+An estimate is obtained for norm(inv(A)), and the reciprocal of the
+condition number is computed as RCOND = 1 / (ANORM * norm(inv(A))).
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of ppcon
+[ [ Value type of MatrixAP ] [LAPACK routine] ]
+[ [`float`][SPPCON] ]
+[ [`double`][DPPCON] ]
+[ [`complex<float>`][CPPCON] ]
+[ [`complex<double>`][ZPPCON] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/ppcon.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/ppcon.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::ppcon( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sppcon.f.html sppcon.f], [@http://www.netlib.org/lapack/explore-html/dppcon.f.html dppcon.f], [@http://www.netlib.org/lapack/explore-html/cppcon.f.html cppcon.f], and [@http://www.netlib.org/lapack/explore-html/zppcon.f.html zppcon.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ppequ.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ppequ.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,85 @@
+
+[section ppequ]
+
+[heading Prototype]
+There is one prototype of `ppequ` available, please see below.
+``
+ppequ( const MatrixAP& ap, VectorS& s, Scalar >, Scalar > );
+``
+
+
+[heading Description]
+
+`ppequ` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SPPEQU, DPPEQU, CPPEQU, and ZPPEQU.
+`ppequ` computes row and column scalings intended to equilibrate a
+Hermitian positive definite matrix A in packed storage and reduce
+its condition number (with respect to the two-norm). S contains the
+scale factors, S(i)=1/sqrt(A(i,i)), chosen so that the scaled matrix
+B with elements B(i,j)=S(i)*A(i,j)*S(j) has ones on the diagonal.
+This choice of S puts the condition number of B within a factor N of
+the smallest possible condition number over all possible diagonal
+scalings.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of ppequ
+[ [ Value type of MatrixAP ] [LAPACK routine] ]
+[ [`float`][SPPEQU] ]
+[ [`double`][DPPEQU] ]
+[ [`complex<float>`][CPPEQU] ]
+[ [`complex<double>`][ZPPEQU] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/ppequ.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/ppequ.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::ppequ( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sppequ.f.html sppequ.f], [@http://www.netlib.org/lapack/explore-html/dppequ.f.html dppequ.f], [@http://www.netlib.org/lapack/explore-html/cppequ.f.html cppequ.f], and [@http://www.netlib.org/lapack/explore-html/zppequ.f.html zppequ.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pprfs.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pprfs.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,82 @@
+
+[section pprfs]
+
+[heading Prototype]
+There is one prototype of `pprfs` available, please see below.
+``
+pprfs( const MatrixAP& ap, const MatrixAFP& afp, const MatrixB& b,
+ MatrixX& x, VectorFERR& ferr, VectorBERR& berr );
+``
+
+
+[heading Description]
+
+`pprfs` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SPPRFS, DPPRFS, CPPRFS, and ZPPRFS.
+`pprfs` improves the computed solution to a system of linear
+equations when the coefficient matrix is Hermitian positive definite
+and packed, and provides error bounds and backward error estimates
+for the solution.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of pprfs
+[ [ Value type of MatrixAP ] [LAPACK routine] ]
+[ [`float`][SPPRFS] ]
+[ [`double`][DPPRFS] ]
+[ [`complex<float>`][CPPRFS] ]
+[ [`complex<double>`][ZPPRFS] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/pprfs.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/pprfs.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::pprfs( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/spprfs.f.html spprfs.f], [@http://www.netlib.org/lapack/explore-html/dpprfs.f.html dpprfs.f], [@http://www.netlib.org/lapack/explore-html/cpprfs.f.html cpprfs.f], and [@http://www.netlib.org/lapack/explore-html/zpprfs.f.html zpprfs.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pptrf.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pptrf.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,84 @@
+
+[section pptrf]
+
+[heading Prototype]
+There is one prototype of `pptrf` available, please see below.
+``
+pptrf( MatrixAP& ap );
+``
+
+
+[heading Description]
+
+`pptrf` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SPPTRF, DPPTRF, CPPTRF, and ZPPTRF.
+`pptrf` computes the Cholesky factorization of a complex Hermitian
+positive definite matrix A stored in packed format.
+
+The factorization has the form
+A = U**H * U, if UPLO = 'U', or
+A = L * L**H, if UPLO = 'L',
+where U is an upper triangular matrix and L is lower triangular.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of pptrf
+[ [ Value type of MatrixAP ] [LAPACK routine] ]
+[ [`float`][SPPTRF] ]
+[ [`double`][DPPTRF] ]
+[ [`complex<float>`][CPPTRF] ]
+[ [`complex<double>`][ZPPTRF] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/pptrf.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/pptrf.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::pptrf( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/spptrf.f.html spptrf.f], [@http://www.netlib.org/lapack/explore-html/dpptrf.f.html dpptrf.f], [@http://www.netlib.org/lapack/explore-html/cpptrf.f.html cpptrf.f], and [@http://www.netlib.org/lapack/explore-html/zpptrf.f.html zpptrf.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pptri.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pptri.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,80 @@
+
+[section pptri]
+
+[heading Prototype]
+There is one prototype of `pptri` available, please see below.
+``
+pptri( MatrixAP& ap );
+``
+
+
+[heading Description]
+
+`pptri` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SPPTRI, DPPTRI, CPPTRI, and ZPPTRI.
+`pptri` computes the inverse of a complex Hermitian positive definite
+matrix A using the Cholesky factorization A = U**H*U or A = L*L**H
+computed by ZPPTRF.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of pptri
+[ [ Value type of MatrixAP ] [LAPACK routine] ]
+[ [`float`][SPPTRI] ]
+[ [`double`][DPPTRI] ]
+[ [`complex<float>`][CPPTRI] ]
+[ [`complex<double>`][ZPPTRI] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/pptri.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/pptri.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::pptri( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/spptri.f.html spptri.f], [@http://www.netlib.org/lapack/explore-html/dpptri.f.html dpptri.f], [@http://www.netlib.org/lapack/explore-html/cpptri.f.html cpptri.f], and [@http://www.netlib.org/lapack/explore-html/zpptri.f.html zpptri.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pptrs.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pptrs.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,80 @@
+
+[section pptrs]
+
+[heading Prototype]
+There is one prototype of `pptrs` available, please see below.
+``
+pptrs( const MatrixAP& ap, MatrixB& b );
+``
+
+
+[heading Description]
+
+`pptrs` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SPPTRS, DPPTRS, CPPTRS, and ZPPTRS.
+`pptrs` solves a system of linear equations A*X = B with a Hermitian
+positive definite matrix A in packed storage using the Cholesky
+factorization A = U**H*U or A = L*L**H computed by ZPPTRF.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of pptrs
+[ [ Value type of MatrixAP ] [LAPACK routine] ]
+[ [`float`][SPPTRS] ]
+[ [`double`][DPPTRS] ]
+[ [`complex<float>`][CPPTRS] ]
+[ [`complex<double>`][ZPPTRS] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/pptrs.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/pptrs.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::pptrs( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/spptrs.f.html spptrs.f], [@http://www.netlib.org/lapack/explore-html/dpptrs.f.html dpptrs.f], [@http://www.netlib.org/lapack/explore-html/cpptrs.f.html cpptrs.f], and [@http://www.netlib.org/lapack/explore-html/zpptrs.f.html zpptrs.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ptcon.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ptcon.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,85 @@
+
+[section ptcon]
+
+[heading Prototype]
+There is one prototype of `ptcon` available, please see below.
+``
+ptcon( const VectorD& d, const VectorE& e, const Scalar >, Scalar > );
+``
+
+
+[heading Description]
+
+`ptcon` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SPTCON, DPTCON, CPTCON, and ZPTCON.
+`ptcon` computes the reciprocal of the condition number (in the
+1-norm) of a complex Hermitian positive definite tridiagonal matrix
+using the factorization A = L*D*L**H or A = U**H*D*U computed by
+ZPTTRF.
+
+Norm(inv(A)) is computed by a direct method, and the reciprocal of
+the condition number is computed as
+RCOND = 1 / (ANORM * norm(inv(A))).
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorD`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorD>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of ptcon
+[ [ Value type of VectorD ] [LAPACK routine] ]
+[ [`float`][SPTCON] ]
+[ [`double`][DPTCON] ]
+[ [`complex<float>`][CPTCON] ]
+[ [`complex<double>`][ZPTCON] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/ptcon.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/ptcon.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::ptcon( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sptcon.f.html sptcon.f], [@http://www.netlib.org/lapack/explore-html/dptcon.f.html dptcon.f], [@http://www.netlib.org/lapack/explore-html/cptcon.f.html cptcon.f], and [@http://www.netlib.org/lapack/explore-html/zptcon.f.html zptcon.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pteqr.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pteqr.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,94 @@
+
+[section pteqr]
+
+[heading Prototype]
+There is one prototype of `pteqr` available, please see below.
+``
+pteqr( const char compz, VectorD& d, VectorE& e, MatrixZ& z );
+``
+
+
+[heading Description]
+
+`pteqr` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SPTEQR, DPTEQR, CPTEQR, and ZPTEQR.
+`pteqr` computes all eigenvalues and, optionally, eigenvectors of a
+symmetric positive definite tridiagonal matrix by first factoring the
+matrix using DPTTRF and then calling ZBDSQR to compute the singular
+values of the bidiagonal factor.
+
+This routine computes the eigenvalues of the positive definite
+tridiagonal matrix to high relative accuracy. This means that if the
+eigenvalues range over many orders of magnitude in size, then the
+small eigenvalues and corresponding eigenvectors will be computed
+more accurately than, for example, with the standard QR method.
+
+The eigenvectors of a full or band positive definite Hermitian matrix
+can also be found if ZHETRD, ZHPTRD, or ZHBTRD has been used to
+reduce this matrix to tridiagonal form. (The reduction to
+tridiagonal form, however, may preclude the possibility of obtaining
+high relative accuracy in the small eigenvalues of the original
+matrix, if these eigenvalues range over many orders of magnitude.)
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorD`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorD>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of pteqr
+[ [ Value type of VectorD ] [LAPACK routine] ]
+[ [`float`][SPTEQR] ]
+[ [`double`][DPTEQR] ]
+[ [`complex<float>`][CPTEQR] ]
+[ [`complex<double>`][ZPTEQR] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/pteqr.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/pteqr.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::pteqr( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/spteqr.f.html spteqr.f], [@http://www.netlib.org/lapack/explore-html/dpteqr.f.html dpteqr.f], [@http://www.netlib.org/lapack/explore-html/cpteqr.f.html cpteqr.f], and [@http://www.netlib.org/lapack/explore-html/zpteqr.f.html zpteqr.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ptrfs.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ptrfs.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,89 @@
+
+[section ptrfs]
+
+[heading Prototype]
+There are two prototypes of `ptrfs` available, please see below.
+``
+ptrfs( const VectorD& d, const VectorE& e, const VectorDF& df,
+ const VectorEF& ef, const MatrixB& b, MatrixX& x, VectorFERR& ferr,
+ VectorBERR& berr );
+``
+
+``
+ptrfs( const char uplo, const VectorD& d, const VectorE& e,
+ const VectorDF& df, const VectorEF& ef, const MatrixB& b, MatrixX& x,
+ VectorFERR& ferr, VectorBERR& berr );
+``
+
+
+[heading Description]
+
+`ptrfs` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SPTRFS, DPTRFS, CPTRFS, and ZPTRFS.
+`ptrfs` improves the computed solution to a system of linear
+equations when the coefficient matrix is Hermitian positive definite
+and tridiagonal, and provides error bounds and backward error
+estimates for the solution.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorD`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorD>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of ptrfs
+[ [ Value type of VectorD ] [LAPACK routine] ]
+[ [`float`][SPTRFS] ]
+[ [`double`][DPTRFS] ]
+[ [`complex<float>`][CPTRFS] ]
+[ [`complex<double>`][ZPTRFS] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/ptrfs.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/ptrfs.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::ptrfs( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sptrfs.f.html sptrfs.f], [@http://www.netlib.org/lapack/explore-html/dptrfs.f.html dptrfs.f], [@http://www.netlib.org/lapack/explore-html/cptrfs.f.html cptrfs.f], and [@http://www.netlib.org/lapack/explore-html/zptrfs.f.html zptrfs.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pttrf.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pttrf.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,80 @@
+
+[section pttrf]
+
+[heading Prototype]
+There is one prototype of `pttrf` available, please see below.
+``
+pttrf( VectorD& d, VectorE& e );
+``
+
+
+[heading Description]
+
+`pttrf` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SPTTRF, DPTTRF, CPTTRF, and ZPTTRF.
+`pttrf` computes the L*D*L' factorization of a complex Hermitian
+positive definite tridiagonal matrix A. The factorization may also
+be regarded as having the form A = U'*D*U.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorD`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorD>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of pttrf
+[ [ Value type of VectorD ] [LAPACK routine] ]
+[ [`float`][SPTTRF] ]
+[ [`double`][DPTTRF] ]
+[ [`complex<float>`][CPTTRF] ]
+[ [`complex<double>`][ZPTTRF] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/pttrf.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/pttrf.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::pttrf( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/spttrf.f.html spttrf.f], [@http://www.netlib.org/lapack/explore-html/dpttrf.f.html dpttrf.f], [@http://www.netlib.org/lapack/explore-html/cpttrf.f.html cpttrf.f], and [@http://www.netlib.org/lapack/explore-html/zpttrf.f.html zpttrf.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pttrs.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/pttrs.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,87 @@
+
+[section pttrs]
+
+[heading Prototype]
+There are two prototypes of `pttrs` available, please see below.
+``
+pttrs( const VectorD& d, const VectorE& e, MatrixB& b );
+``
+
+``
+pttrs( const char uplo, const VectorD& d, const VectorE& e, MatrixB& b );
+``
+
+
+[heading Description]
+
+`pttrs` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SPTTRS, DPTTRS, CPTTRS, and ZPTTRS.
+`pttrs` solves a tridiagonal system of the form
+A * X = B
+using the factorization A = U'*D*U or A = L*D*L' computed by ZPTTRF.
+D is a diagonal matrix specified in the vector D, U (or L) is a unit
+bidiagonal matrix whose superdiagonal (subdiagonal) is specified in
+the vector E, and X and B are N by NRHS matrices.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorD`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorD>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of pttrs
+[ [ Value type of VectorD ] [LAPACK routine] ]
+[ [`float`][SPTTRS] ]
+[ [`double`][DPTTRS] ]
+[ [`complex<float>`][CPTTRS] ]
+[ [`complex<double>`][ZPTTRS] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/pttrs.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/pttrs.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::pttrs( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/spttrs.f.html spttrs.f], [@http://www.netlib.org/lapack/explore-html/dpttrs.f.html dpttrs.f], [@http://www.netlib.org/lapack/explore-html/cpttrs.f.html cpttrs.f], and [@http://www.netlib.org/lapack/explore-html/zpttrs.f.html zpttrs.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/sbgst.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/sbgst.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,83 @@
+
+[section sbgst]
+
+[heading Prototype]
+There is one prototype of `sbgst` available, please see below.
+``
+sbgst( const char vect, MatrixAB& ab, const MatrixBB& bb, MatrixX& x );
+``
+
+
+[heading Description]
+
+`sbgst` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSBGST and DSBGST.
+`sbgst` reduces a real symmetric-definite banded generalized
+eigenproblem A*x = lambda*B*x to standard form C*y = lambda*y,
+such that C has the same bandwidth as A.
+
+B must have been previously factorized as S**T*S by DPBSTF, using a
+split Cholesky factorization. A is overwritten by C = X**T*A*X, where
+X = S**(-1)*Q and Q is an orthogonal matrix chosen to preserve the
+bandwidth of A.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAB`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAB>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of sbgst
+[ [ Value type of MatrixAB ] [LAPACK routine] ]
+[ [`float`][SSBGST] ]
+[ [`double`][DSBGST] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/sbgst.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/sbgst.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::sbgst( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/ssbgst.f.html ssbgst.f] and [@http://www.netlib.org/lapack/explore-html/dsbgst.f.html dsbgst.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/sbtrd.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/sbtrd.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,79 @@
+
+[section sbtrd]
+
+[heading Prototype]
+There is one prototype of `sbtrd` available, please see below.
+``
+sbtrd( const char vect, MatrixAB& ab, VectorD& d, VectorE& e,
+ MatrixQ& q );
+``
+
+
+[heading Description]
+
+`sbtrd` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSBTRD and DSBTRD.
+`sbtrd` reduces a real symmetric band matrix A to symmetric
+tridiagonal form T by an orthogonal similarity transformation:
+Q**T * A * Q = T.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAB`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAB>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of sbtrd
+[ [ Value type of MatrixAB ] [LAPACK routine] ]
+[ [`float`][SSBTRD] ]
+[ [`double`][DSBTRD] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/sbtrd.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/sbtrd.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::sbtrd( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/ssbtrd.f.html ssbtrd.f] and [@http://www.netlib.org/lapack/explore-html/dsbtrd.f.html dsbtrd.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/spcon.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/spcon.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,84 @@
+
+[section spcon]
+
+[heading Prototype]
+There is one prototype of `spcon` available, please see below.
+``
+spcon( const MatrixAP& ap, const VectorIPIV& ipiv, const Scalar >,
+ Scalar > );
+``
+
+
+[heading Description]
+
+`spcon` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSPCON, DSPCON, CSPCON, and ZSPCON.
+`spcon` estimates the reciprocal of the condition number (in the
+1-norm) of a complex symmetric packed matrix A using the
+factorization A = U*D*U**T or A = L*D*L**T computed by ZSPTRF.
+
+An estimate is obtained for norm(inv(A)), and the reciprocal of the
+condition number is computed as RCOND = 1 / (ANORM * norm(inv(A))).
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of spcon
+[ [ Value type of MatrixAP ] [LAPACK routine] ]
+[ [`float`][SSPCON] ]
+[ [`double`][DSPCON] ]
+[ [`complex<float>`][CSPCON] ]
+[ [`complex<double>`][ZSPCON] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/spcon.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/spcon.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::spcon( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sspcon.f.html sspcon.f], [@http://www.netlib.org/lapack/explore-html/dspcon.f.html dspcon.f], [@http://www.netlib.org/lapack/explore-html/cspcon.f.html cspcon.f], and [@http://www.netlib.org/lapack/explore-html/zspcon.f.html zspcon.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/sprfs.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/sprfs.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,82 @@
+
+[section sprfs]
+
+[heading Prototype]
+There is one prototype of `sprfs` available, please see below.
+``
+sprfs( const MatrixAP& ap, const MatrixAFP& afp, const VectorIPIV& ipiv,
+ const MatrixB& b, MatrixX& x, VectorFERR& ferr, VectorBERR& berr );
+``
+
+
+[heading Description]
+
+`sprfs` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSPRFS, DSPRFS, CSPRFS, and ZSPRFS.
+`sprfs` improves the computed solution to a system of linear
+equations when the coefficient matrix is symmetric indefinite
+and packed, and provides error bounds and backward error estimates
+for the solution.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of sprfs
+[ [ Value type of MatrixAP ] [LAPACK routine] ]
+[ [`float`][SSPRFS] ]
+[ [`double`][DSPRFS] ]
+[ [`complex<float>`][CSPRFS] ]
+[ [`complex<double>`][ZSPRFS] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/sprfs.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/sprfs.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::sprfs( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/ssprfs.f.html ssprfs.f], [@http://www.netlib.org/lapack/explore-html/dsprfs.f.html dsprfs.f], [@http://www.netlib.org/lapack/explore-html/csprfs.f.html csprfs.f], and [@http://www.netlib.org/lapack/explore-html/zsprfs.f.html zsprfs.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/sptrd.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/sptrd.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,78 @@
+
+[section sptrd]
+
+[heading Prototype]
+There is one prototype of `sptrd` available, please see below.
+``
+sptrd( MatrixAP& ap, VectorD& d, VectorE& e, VectorTAU& tau );
+``
+
+
+[heading Description]
+
+`sptrd` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSPTRD and DSPTRD.
+`sptrd` reduces a real symmetric matrix A stored in packed form to
+symmetric tridiagonal form T by an orthogonal similarity
+transformation: Q**T * A * Q = T.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of sptrd
+[ [ Value type of MatrixAP ] [LAPACK routine] ]
+[ [`float`][SSPTRD] ]
+[ [`double`][DSPTRD] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/sptrd.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/sptrd.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::sptrd( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/ssptrd.f.html ssptrd.f] and [@http://www.netlib.org/lapack/explore-html/dsptrd.f.html dsptrd.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/sptrf.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/sptrf.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,86 @@
+
+[section sptrf]
+
+[heading Prototype]
+There is one prototype of `sptrf` available, please see below.
+``
+sptrf( MatrixAP& ap, VectorIPIV& ipiv );
+``
+
+
+[heading Description]
+
+`sptrf` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSPTRF, DSPTRF, CSPTRF, and ZSPTRF.
+`sptrf` computes the factorization of a complex symmetric matrix A
+stored in packed format using the Bunch-Kaufman diagonal pivoting
+method:
+
+A = U*D*U**T or A = L*D*L**T
+
+where U (or L) is a product of permutation and unit upper (lower)
+triangular matrices, and D is symmetric and block diagonal with
+1-by-1 and 2-by-2 diagonal blocks.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of sptrf
+[ [ Value type of MatrixAP ] [LAPACK routine] ]
+[ [`float`][SSPTRF] ]
+[ [`double`][DSPTRF] ]
+[ [`complex<float>`][CSPTRF] ]
+[ [`complex<double>`][ZSPTRF] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/sptrf.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/sptrf.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::sptrf( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/ssptrf.f.html ssptrf.f], [@http://www.netlib.org/lapack/explore-html/dsptrf.f.html dsptrf.f], [@http://www.netlib.org/lapack/explore-html/csptrf.f.html csptrf.f], and [@http://www.netlib.org/lapack/explore-html/zsptrf.f.html zsptrf.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/sptri.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/sptri.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,80 @@
+
+[section sptri]
+
+[heading Prototype]
+There is one prototype of `sptri` available, please see below.
+``
+sptri( MatrixAP& ap, const VectorIPIV& ipiv );
+``
+
+
+[heading Description]
+
+`sptri` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSPTRI, DSPTRI, CSPTRI, and ZSPTRI.
+`sptri` computes the inverse of a complex symmetric indefinite matrix
+A in packed storage using the factorization A = U*D*U**T or
+A = L*D*L**T computed by ZSPTRF.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of sptri
+[ [ Value type of MatrixAP ] [LAPACK routine] ]
+[ [`float`][SSPTRI] ]
+[ [`double`][DSPTRI] ]
+[ [`complex<float>`][CSPTRI] ]
+[ [`complex<double>`][ZSPTRI] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/sptri.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/sptri.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::sptri( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/ssptri.f.html ssptri.f], [@http://www.netlib.org/lapack/explore-html/dsptri.f.html dsptri.f], [@http://www.netlib.org/lapack/explore-html/csptri.f.html csptri.f], and [@http://www.netlib.org/lapack/explore-html/zsptri.f.html zsptri.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/sptrs.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/sptrs.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,80 @@
+
+[section sptrs]
+
+[heading Prototype]
+There is one prototype of `sptrs` available, please see below.
+``
+sptrs( const MatrixAP& ap, const VectorIPIV& ipiv, MatrixB& b );
+``
+
+
+[heading Description]
+
+`sptrs` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSPTRS, DSPTRS, CSPTRS, and ZSPTRS.
+`sptrs` solves a system of linear equations A*X = B with a complex
+symmetric matrix A stored in packed format using the factorization
+A = U*D*U**T or A = L*D*L**T computed by ZSPTRF.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of sptrs
+[ [ Value type of MatrixAP ] [LAPACK routine] ]
+[ [`float`][SSPTRS] ]
+[ [`double`][DSPTRS] ]
+[ [`complex<float>`][CSPTRS] ]
+[ [`complex<double>`][ZSPTRS] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/sptrs.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/sptrs.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::sptrs( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/ssptrs.f.html ssptrs.f], [@http://www.netlib.org/lapack/explore-html/dsptrs.f.html dsptrs.f], [@http://www.netlib.org/lapack/explore-html/csptrs.f.html csptrs.f], and [@http://www.netlib.org/lapack/explore-html/zsptrs.f.html zsptrs.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/stebz.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/stebz.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,92 @@
+
+[section stebz]
+
+[heading Prototype]
+There is one prototype of `stebz` available, please see below.
+``
+stebz( const char range, const char order, const int_t n,
+ const Scalar >, const Scalar >, const int_t il,
+ const int_t iu, const Scalar >, const VectorD& d,
+ const VectorE& e, int_t& m, int_t& nsplit,
+ VectorW& w, VectorIBLOCK& iblock, VectorISPLIT& isplit );
+``
+
+
+[heading Description]
+
+`stebz` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSTEBZ and DSTEBZ.
+`stebz` computes the eigenvalues of a symmetric tridiagonal
+matrix T. The user may ask for all eigenvalues, all eigenvalues
+in the half-open interval (VL, VU], or the IL-th through IU-th
+eigenvalues.
+
+To avoid overflow, the matrix must be scaled so that its
+largest element is no greater than overflow**(1/2) *
+underflow**(1/4) in absolute value, and for greatest
+accuracy, it should not be much smaller than that.
+
+See W. Kahan "Accurate Eigenvalues of a Symmetric Tridiagonal
+Matrix", Report CS41, Computer Science Dept., Stanford
+University, July 21, 1966.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorD`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorD>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of stebz
+[ [ Value type of VectorD ] [LAPACK routine] ]
+[ [`float`][SSTEBZ] ]
+[ [`double`][DSTEBZ] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/stebz.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/stebz.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::stebz( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sstebz.f.html sstebz.f] and [@http://www.netlib.org/lapack/explore-html/dstebz.f.html dstebz.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/stedc.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/stedc.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,90 @@
+
+[section stedc]
+
+[heading Prototype]
+There is one prototype of `stedc` available, please see below.
+``
+stedc( const char compz, const int_t n, VectorD& d,
+ VectorE& e, MatrixZ& z );
+``
+
+
+[heading Description]
+
+`stedc` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSTEDC, DSTEDC, CSTEDC, and ZSTEDC.
+`stedc` computes all eigenvalues and, optionally, eigenvectors of a
+symmetric tridiagonal matrix using the divide and conquer method.
+The eigenvectors of a full or band complex Hermitian matrix can also
+be found if ZHETRD or ZHPTRD or ZHBTRD has been used to reduce this
+matrix to tridiagonal form.
+
+This code makes very mild assumptions about floating point
+arithmetic. It will work on machines with a guard digit in
+add/subtract, or on those binary machines without guard digits
+which subtract like the Cray X-MP, Cray Y-MP, Cray C-90, or Cray-2.
+It could conceivably fail on hexadecimal or decimal machines
+without guard digits, but we know of none. See DLAED3 for details.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorD`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorD>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of stedc
+[ [ Value type of VectorD ] [LAPACK routine] ]
+[ [`float`][SSTEDC] ]
+[ [`double`][DSTEDC] ]
+[ [`complex<float>`][CSTEDC] ]
+[ [`complex<double>`][ZSTEDC] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/stedc.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/stedc.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::stedc( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sstedc.f.html sstedc.f], [@http://www.netlib.org/lapack/explore-html/dstedc.f.html dstedc.f], [@http://www.netlib.org/lapack/explore-html/cstedc.f.html cstedc.f], and [@http://www.netlib.org/lapack/explore-html/zstedc.f.html zstedc.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/stegr.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/stegr.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,101 @@
+
+[section stegr]
+
+[heading Prototype]
+There is one prototype of `stegr` available, please see below.
+``
+stegr( const char jobz, const char range, const int_t n,
+ VectorD& d, VectorE& e, const Scalar >, const Scalar >,
+ const int_t il, const int_t iu,
+ const Scalar >, int_t& m, VectorW& w, MatrixZ& z,
+ VectorISUPPZ& isuppz );
+``
+
+
+[heading Description]
+
+`stegr` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSTEGR, DSTEGR, CSTEGR, and ZSTEGR.
+`stegr` computes selected eigenvalues and, optionally, eigenvectors
+of a real symmetric tridiagonal matrix T. Any such unreduced matrix has
+a well defined set of pairwise different real eigenvalues, the corresponding
+real eigenvectors are pairwise orthogonal.
+
+The spectrum may be computed either completely or partially by specifying
+either an interval (VL,VU] or a range of indices IL:IU for the desired
+eigenvalues.
+
+`stegr` is a compatability wrapper around the improved ZSTEMR routine.
+See DSTEMR for further details.
+
+One important change is that the ABSTOL parameter no longer provides any
+benefit and hence is no longer used.
+
+Note : `stegr` and ZSTEMR work only on machines which follow
+IEEE-754 floating-point standard in their handling of infinities and
+NaNs. Normal execution may create these exceptiona values and hence
+may abort due to a floating point exception in environments which
+do not conform to the IEEE-754 standard.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorD`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorD>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of stegr
+[ [ Value type of VectorD ] [LAPACK routine] ]
+[ [`float`][SSTEGR] ]
+[ [`double`][DSTEGR] ]
+[ [`complex<float>`][CSTEGR] ]
+[ [`complex<double>`][ZSTEGR] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/stegr.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/stegr.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::stegr( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sstegr.f.html sstegr.f], [@http://www.netlib.org/lapack/explore-html/dstegr.f.html dstegr.f], [@http://www.netlib.org/lapack/explore-html/cstegr.f.html cstegr.f], and [@http://www.netlib.org/lapack/explore-html/zstegr.f.html zstegr.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/stein.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/stein.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,91 @@
+
+[section stein]
+
+[heading Prototype]
+There is one prototype of `stein` available, please see below.
+``
+stein( const int_t n, const VectorD& d, const VectorE& e,
+ const int_t m, const VectorW& w,
+ const VectorIBLOCK& iblock, const VectorISPLIT& isplit, MatrixZ& z,
+ VectorIFAIL& ifail );
+``
+
+
+[heading Description]
+
+`stein` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSTEIN, DSTEIN, CSTEIN, and ZSTEIN.
+`stein` computes the eigenvectors of a real symmetric tridiagonal
+matrix T corresponding to specified eigenvalues, using inverse
+iteration.
+
+The maximum number of iterations allowed for each eigenvector is
+specified by an internal parameter MAXITS (currently set to 5).
+
+Although the eigenvectors are real, they are stored in a complex
+array, which may be passed to ZUNMTR or ZUPMTR for back
+transformation to the eigenvectors of a complex Hermitian matrix
+which was reduced to tridiagonal form.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorD`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorD>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of stein
+[ [ Value type of VectorD ] [LAPACK routine] ]
+[ [`float`][SSTEIN] ]
+[ [`double`][DSTEIN] ]
+[ [`complex<float>`][CSTEIN] ]
+[ [`complex<double>`][ZSTEIN] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/stein.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/stein.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::stein( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sstein.f.html sstein.f], [@http://www.netlib.org/lapack/explore-html/dstein.f.html dstein.f], [@http://www.netlib.org/lapack/explore-html/cstein.f.html cstein.f], and [@http://www.netlib.org/lapack/explore-html/zstein.f.html zstein.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/stemr.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/stemr.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,148 @@
+
+[section stemr]
+
+[heading Prototype]
+There is one prototype of `stemr` available, please see below.
+``
+stemr( const char jobz, const char range, const int_t n,
+ VectorD& d, VectorE& e, const Scalar >, const Scalar >,
+ const int_t il, const int_t iu,
+ int_t& m, VectorW& w, MatrixZ& z,
+ const int_t nzc, VectorISUPPZ& isuppz, logical_t& tryrac );
+``
+
+
+[heading Description]
+
+`stemr` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSTEMR, DSTEMR, CSTEMR, and ZSTEMR.
+`stemr` computes selected eigenvalues and, optionally, eigenvectors
+of a real symmetric tridiagonal matrix T. Any such unreduced matrix has
+a well defined set of pairwise different real eigenvalues, the corresponding
+real eigenvectors are pairwise orthogonal.
+
+The spectrum may be computed either completely or partially by specifying
+either an interval (VL,VU] or a range of indices IL:IU for the desired
+eigenvalues.
+
+Depending on the number of desired eigenvalues, these are computed either
+by bisection or the dqds algorithm. Numerically orthogonal eigenvectors are
+computed by the use of various suitable L D L^T factorizations near clusters
+of close eigenvalues (referred to as RRRs, Relatively Robust
+Representations). An informal sketch of the algorithm follows.
+
+For each unreduced block (submatrix) of T,
+(a) Compute T - sigma I = L D L^T, so that L and D
+define all the wanted eigenvalues to high relative accuracy.
+This means that small relative changes in the entries of D and L
+cause only small relative changes in the eigenvalues and
+eigenvectors. The standard (unfactored) representation of the
+tridiagonal matrix T does not have this property in general.
+(b) Compute the eigenvalues to suitable accuracy.
+If the eigenvectors are desired, the algorithm attains full
+accuracy of the computed eigenvalues only right before
+the corresponding vectors have to be computed, see steps c) and d).
+(c) For each cluster of close eigenvalues, select a new
+shift close to the cluster, find a new factorization, and refine
+the shifted eigenvalues to suitable accuracy.
+(d) For each eigenvalue with a large enough relative separation compute
+the corresponding eigenvector by forming a rank revealing twisted
+factorization. Go back to (c) for any clusters that remain.
+
+For more details, see:
+- Inderjit S. Dhillon and Beresford N. Parlett: "Multiple representations
+to compute orthogonal eigenvectors of symmetric tridiagonal matrices,"
+Linear Algebra and its Applications, 387(1), pp. 1-28, August 2004.
+- Inderjit Dhillon and Beresford Parlett: "Orthogonal Eigenvectors and
+Relative Gaps," SIAM Journal on Matrix Analysis and Applications, Vol. 25,
+2004. Also LAPACK Working Note 154.
+- Inderjit Dhillon: "A new O(n^2) algorithm for the symmetric
+tridiagonal eigenvalue/eigenvector problem",
+Computer Science Division Technical Report No. UCB/CSD-97-971,
+UC Berkeley, May 1997.
+
+Notes:
+1.`stemr` works only on machines which follow IEEE-754
+floating-point standard in their handling of infinities and NaNs.
+This permits the use of efficient inner loops avoiding a check for
+zero divisors.
+
+2. LAPACK routines can be used to reduce a complex Hermitean matrix to
+real symmetric tridiagonal form.
+
+(Any complex Hermitean tridiagonal matrix has real values on its diagonal
+and potentially complex numbers on its off-diagonals. By applying a
+similarity transform with an appropriate diagonal matrix
+diag(1,e^{i \phy_1}, ... , e^{i \phy_{n-1}}), the complex Hermitean
+matrix can be transformed into a real symmetric matrix and complex
+arithmetic can be entirely avoided.)
+
+While the eigenvectors of the real symmetric tridiagonal matrix are real,
+the eigenvectors of original complex Hermitean matrix have complex entries
+in general.
+Since LAPACK drivers overwrite the matrix data with the eigenvectors,
+`stemr` accepts complex workspace to facilitate interoperability
+with ZUNMTR or ZUPMTR.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorD`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorD>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of stemr
+[ [ Value type of VectorD ] [LAPACK routine] ]
+[ [`float`][SSTEMR] ]
+[ [`double`][DSTEMR] ]
+[ [`complex<float>`][CSTEMR] ]
+[ [`complex<double>`][ZSTEMR] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/stemr.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/stemr.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::stemr( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sstemr.f.html sstemr.f], [@http://www.netlib.org/lapack/explore-html/dstemr.f.html dstemr.f], [@http://www.netlib.org/lapack/explore-html/cstemr.f.html cstemr.f], and [@http://www.netlib.org/lapack/explore-html/zstemr.f.html zstemr.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/steqr.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/steqr.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,82 @@
+
+[section steqr]
+
+[heading Prototype]
+There is one prototype of `steqr` available, please see below.
+``
+steqr( const char compz, VectorD& d, VectorE& e, MatrixZ& z );
+``
+
+
+[heading Description]
+
+`steqr` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSTEQR, DSTEQR, CSTEQR, and ZSTEQR.
+`steqr` computes all eigenvalues and, optionally, eigenvectors of a
+symmetric tridiagonal matrix using the implicit QL or QR method.
+The eigenvectors of a full or band complex Hermitian matrix can also
+be found if ZHETRD or ZHPTRD or ZHBTRD has been used to reduce this
+matrix to tridiagonal form.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorD`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorD>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of steqr
+[ [ Value type of VectorD ] [LAPACK routine] ]
+[ [`float`][SSTEQR] ]
+[ [`double`][DSTEQR] ]
+[ [`complex<float>`][CSTEQR] ]
+[ [`complex<double>`][ZSTEQR] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/steqr.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/steqr.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::steqr( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/ssteqr.f.html ssteqr.f], [@http://www.netlib.org/lapack/explore-html/dsteqr.f.html dsteqr.f], [@http://www.netlib.org/lapack/explore-html/csteqr.f.html csteqr.f], and [@http://www.netlib.org/lapack/explore-html/zsteqr.f.html zsteqr.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/sterf.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/sterf.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,77 @@
+
+[section sterf]
+
+[heading Prototype]
+There is one prototype of `sterf` available, please see below.
+``
+sterf( const int_t n, VectorD& d, VectorE& e );
+``
+
+
+[heading Description]
+
+`sterf` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSTERF and DSTERF.
+`sterf` computes all eigenvalues of a symmetric tridiagonal matrix
+using the Pal-Walker-Kahan variant of the QL or QR algorithm.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorD`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorD>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of sterf
+[ [ Value type of VectorD ] [LAPACK routine] ]
+[ [`float`][SSTERF] ]
+[ [`double`][DSTERF] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/sterf.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/sterf.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::sterf( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/ssterf.f.html ssterf.f] and [@http://www.netlib.org/lapack/explore-html/dsterf.f.html dsterf.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/sycon.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/sycon.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,84 @@
+
+[section sycon]
+
+[heading Prototype]
+There is one prototype of `sycon` available, please see below.
+``
+sycon( const MatrixA& a, const VectorIPIV& ipiv, const Scalar >,
+ Scalar > );
+``
+
+
+[heading Description]
+
+`sycon` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSYCON, DSYCON, CSYCON, and ZSYCON.
+`sycon` estimates the reciprocal of the condition number (in the
+1-norm) of a complex symmetric matrix A using the factorization
+A = U*D*U**T or A = L*D*L**T computed by ZSYTRF.
+
+An estimate is obtained for norm(inv(A)), and the reciprocal of the
+condition number is computed as RCOND = 1 / (ANORM * norm(inv(A))).
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of sycon
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SSYCON] ]
+[ [`double`][DSYCON] ]
+[ [`complex<float>`][CSYCON] ]
+[ [`complex<double>`][ZSYCON] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/sycon.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/sycon.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::sycon( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/ssycon.f.html ssycon.f], [@http://www.netlib.org/lapack/explore-html/dsycon.f.html dsycon.f], [@http://www.netlib.org/lapack/explore-html/csycon.f.html csycon.f], and [@http://www.netlib.org/lapack/explore-html/zsycon.f.html zsycon.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/sygst.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/sygst.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,85 @@
+
+[section sygst]
+
+[heading Prototype]
+There is one prototype of `sygst` available, please see below.
+``
+sygst( const int_t itype, MatrixA& a, const MatrixB& b );
+``
+
+
+[heading Description]
+
+`sygst` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSYGST and DSYGST.
+`sygst` reduces a real symmetric-definite generalized eigenproblem
+to standard form.
+
+If ITYPE = 1, the problem is A*x = lambda*B*x,
+and A is overwritten by inv(U**T)*A*inv(U) or inv(L)*A*inv(L**T)
+
+If ITYPE = 2 or 3, the problem is A*B*x = lambda*x or
+B*A*x = lambda*x, and A is overwritten by U*A*U**T or L**T*A*L.
+
+B must have been previously factorized as U**T*U or L*L**T by DPOTRF.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of sygst
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SSYGST] ]
+[ [`double`][DSYGST] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/sygst.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/sygst.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::sygst( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/ssygst.f.html ssygst.f] and [@http://www.netlib.org/lapack/explore-html/dsygst.f.html dsygst.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/syrfs.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/syrfs.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,81 @@
+
+[section syrfs]
+
+[heading Prototype]
+There is one prototype of `syrfs` available, please see below.
+``
+syrfs( const MatrixA& a, const MatrixAF& af, const VectorIPIV& ipiv,
+ const MatrixB& b, MatrixX& x, VectorFERR& ferr, VectorBERR& berr );
+``
+
+
+[heading Description]
+
+`syrfs` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSYRFS, DSYRFS, CSYRFS, and ZSYRFS.
+`syrfs` improves the computed solution to a system of linear
+equations when the coefficient matrix is symmetric indefinite, and
+provides error bounds and backward error estimates for the solution.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of syrfs
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SSYRFS] ]
+[ [`double`][DSYRFS] ]
+[ [`complex<float>`][CSYRFS] ]
+[ [`complex<double>`][ZSYRFS] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/syrfs.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/syrfs.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::syrfs( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/ssyrfs.f.html ssyrfs.f], [@http://www.netlib.org/lapack/explore-html/dsyrfs.f.html dsyrfs.f], [@http://www.netlib.org/lapack/explore-html/csyrfs.f.html csyrfs.f], and [@http://www.netlib.org/lapack/explore-html/zsyrfs.f.html zsyrfs.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/sytrd.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/sytrd.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,78 @@
+
+[section sytrd]
+
+[heading Prototype]
+There is one prototype of `sytrd` available, please see below.
+``
+sytrd( MatrixA& a, VectorD& d, VectorE& e, VectorTAU& tau );
+``
+
+
+[heading Description]
+
+`sytrd` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSYTRD and DSYTRD.
+`sytrd` reduces a real symmetric matrix A to real symmetric
+tridiagonal form T by an orthogonal similarity transformation:
+Q**T * A * Q = T.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of sytrd
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SSYTRD] ]
+[ [`double`][DSYTRD] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/sytrd.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/sytrd.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::sytrd( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/ssytrd.f.html ssytrd.f] and [@http://www.netlib.org/lapack/explore-html/dsytrd.f.html dsytrd.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/sytrf.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/sytrf.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,88 @@
+
+[section sytrf]
+
+[heading Prototype]
+There is one prototype of `sytrf` available, please see below.
+``
+sytrf( MatrixA& a, VectorIPIV& ipiv );
+``
+
+
+[heading Description]
+
+`sytrf` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSYTRF, DSYTRF, CSYTRF, and ZSYTRF.
+`sytrf` computes the factorization of a complex symmetric matrix A
+using the Bunch-Kaufman diagonal pivoting method. The form of the
+factorization is
+
+A = U*D*U**T or A = L*D*L**T
+
+where U (or L) is a product of permutation and unit upper (lower)
+triangular matrices, and D is symmetric and block diagonal with
+with 1-by-1 and 2-by-2 diagonal blocks.
+
+This is the blocked version of the algorithm, calling Level 3 BLAS.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of sytrf
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SSYTRF] ]
+[ [`double`][DSYTRF] ]
+[ [`complex<float>`][CSYTRF] ]
+[ [`complex<double>`][ZSYTRF] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/sytrf.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/sytrf.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::sytrf( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/ssytrf.f.html ssytrf.f], [@http://www.netlib.org/lapack/explore-html/dsytrf.f.html dsytrf.f], [@http://www.netlib.org/lapack/explore-html/csytrf.f.html csytrf.f], and [@http://www.netlib.org/lapack/explore-html/zsytrf.f.html zsytrf.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/sytri.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/sytri.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,80 @@
+
+[section sytri]
+
+[heading Prototype]
+There is one prototype of `sytri` available, please see below.
+``
+sytri( MatrixA& a, const VectorIPIV& ipiv );
+``
+
+
+[heading Description]
+
+`sytri` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSYTRI, DSYTRI, CSYTRI, and ZSYTRI.
+`sytri` computes the inverse of a complex symmetric indefinite matrix
+A using the factorization A = U*D*U**T or A = L*D*L**T computed by
+ZSYTRF.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of sytri
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SSYTRI] ]
+[ [`double`][DSYTRI] ]
+[ [`complex<float>`][CSYTRI] ]
+[ [`complex<double>`][ZSYTRI] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/sytri.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/sytri.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::sytri( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/ssytri.f.html ssytri.f], [@http://www.netlib.org/lapack/explore-html/dsytri.f.html dsytri.f], [@http://www.netlib.org/lapack/explore-html/csytri.f.html csytri.f], and [@http://www.netlib.org/lapack/explore-html/zsytri.f.html zsytri.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/sytrs.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/sytrs.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,80 @@
+
+[section sytrs]
+
+[heading Prototype]
+There is one prototype of `sytrs` available, please see below.
+``
+sytrs( const MatrixA& a, const VectorIPIV& ipiv, MatrixB& b );
+``
+
+
+[heading Description]
+
+`sytrs` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSYTRS, DSYTRS, CSYTRS, and ZSYTRS.
+`sytrs` solves a system of linear equations A*X = B with a complex
+symmetric matrix A using the factorization A = U*D*U**T or
+A = L*D*L**T computed by ZSYTRF.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of sytrs
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SSYTRS] ]
+[ [`double`][DSYTRS] ]
+[ [`complex<float>`][CSYTRS] ]
+[ [`complex<double>`][ZSYTRS] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/sytrs.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/sytrs.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::sytrs( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/ssytrs.f.html ssytrs.f], [@http://www.netlib.org/lapack/explore-html/dsytrs.f.html dsytrs.f], [@http://www.netlib.org/lapack/explore-html/csytrs.f.html csytrs.f], and [@http://www.netlib.org/lapack/explore-html/zsytrs.f.html zsytrs.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/tbcon.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/tbcon.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,85 @@
+
+[section tbcon]
+
+[heading Prototype]
+There is one prototype of `tbcon` available, please see below.
+``
+tbcon( const char norm, const int_t kd, const MatrixAB& ab,
+ Scalar > );
+``
+
+
+[heading Description]
+
+`tbcon` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines STBCON, DTBCON, CTBCON, and ZTBCON.
+`tbcon` estimates the reciprocal of the condition number of a
+triangular band matrix A, in either the 1-norm or the infinity-norm.
+
+The norm of A is computed and an estimate is obtained for
+norm(inv(A)), then the reciprocal of the condition number is
+computed as
+RCOND = 1 / ( norm(A) * norm(inv(A)) ).
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAB`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAB>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of tbcon
+[ [ Value type of MatrixAB ] [LAPACK routine] ]
+[ [`float`][STBCON] ]
+[ [`double`][DTBCON] ]
+[ [`complex<float>`][CTBCON] ]
+[ [`complex<double>`][ZTBCON] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/tbcon.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/tbcon.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::tbcon( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/stbcon.f.html stbcon.f], [@http://www.netlib.org/lapack/explore-html/dtbcon.f.html dtbcon.f], [@http://www.netlib.org/lapack/explore-html/ctbcon.f.html ctbcon.f], and [@http://www.netlib.org/lapack/explore-html/ztbcon.f.html ztbcon.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/tbrfs.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/tbrfs.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,85 @@
+
+[section tbrfs]
+
+[heading Prototype]
+There is one prototype of `tbrfs` available, please see below.
+``
+tbrfs( const int_t kd, const MatrixAB& ab, const MatrixB& b,
+ const MatrixX& x, VectorFERR& ferr, VectorBERR& berr );
+``
+
+
+[heading Description]
+
+`tbrfs` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines STBRFS, DTBRFS, CTBRFS, and ZTBRFS.
+`tbrfs` provides error bounds and backward error estimates for the
+solution to a system of linear equations with a triangular band
+coefficient matrix.
+
+The solution matrix X must be computed by ZTBTRS or some other
+means before entering this routine. `tbrfs` does not do iterative
+refinement because doing so cannot improve the backward error.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAB`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAB>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of tbrfs
+[ [ Value type of MatrixAB ] [LAPACK routine] ]
+[ [`float`][STBRFS] ]
+[ [`double`][DTBRFS] ]
+[ [`complex<float>`][CTBRFS] ]
+[ [`complex<double>`][ZTBRFS] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/tbrfs.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/tbrfs.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::tbrfs( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/stbrfs.f.html stbrfs.f], [@http://www.netlib.org/lapack/explore-html/dtbrfs.f.html dtbrfs.f], [@http://www.netlib.org/lapack/explore-html/ctbrfs.f.html ctbrfs.f], and [@http://www.netlib.org/lapack/explore-html/ztbrfs.f.html ztbrfs.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/tbtrs.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/tbtrs.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,83 @@
+
+[section tbtrs]
+
+[heading Prototype]
+There is one prototype of `tbtrs` available, please see below.
+``
+tbtrs( const int_t kd, const MatrixAB& ab, MatrixB& b );
+``
+
+
+[heading Description]
+
+`tbtrs` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines STBTRS, DTBTRS, CTBTRS, and ZTBTRS.
+`tbtrs` solves a triangular system of the form
+
+A * X = B, A**T * X = B, or A**H * X = B,
+
+where A is a triangular band matrix of order N, and B is an
+N-by-NRHS matrix. A check is made to verify that A is nonsingular.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAB`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAB>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of tbtrs
+[ [ Value type of MatrixAB ] [LAPACK routine] ]
+[ [`float`][STBTRS] ]
+[ [`double`][DTBTRS] ]
+[ [`complex<float>`][CTBTRS] ]
+[ [`complex<double>`][ZTBTRS] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/tbtrs.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/tbtrs.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::tbtrs( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/stbtrs.f.html stbtrs.f], [@http://www.netlib.org/lapack/explore-html/dtbtrs.f.html dtbtrs.f], [@http://www.netlib.org/lapack/explore-html/ctbtrs.f.html ctbtrs.f], and [@http://www.netlib.org/lapack/explore-html/ztbtrs.f.html ztbtrs.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/tgevc.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/tgevc.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,103 @@
+
+[section tgevc]
+
+[heading Prototype]
+There is one prototype of `tgevc` available, please see below.
+``
+tgevc( const Side side, const char howmny, const VectorSELECT& select,
+ const MatrixS& s, const MatrixP& p, MatrixVL& vl, MatrixVR& vr,
+ const int_t mm, int_t& m );
+``
+
+
+[heading Description]
+
+`tgevc` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines STGEVC, DTGEVC, CTGEVC, and ZTGEVC.
+`tgevc` computes some or all of the right and/or left eigenvectors of
+a pair of complex matrices (S,P), where S and P are upper triangular.
+Matrix pairs of this type are produced by the generalized Schur
+factorization of a complex matrix pair (A,B):
+
+A = Q*S*Z**H, B = Q*P*Z**H
+
+as computed by ZGGHRD + ZHGEQZ.
+
+The right eigenvector x and the left eigenvector y of (S,P)
+corresponding to an eigenvalue w are defined by:
+
+S*x = w*P*x, (y**H)*S = w*(y**H)*P,
+
+where y**H denotes the conjugate tranpose of y.
+The eigenvalues are not input to this routine, but are computed
+directly from the diagonal elements of S and P.
+
+This routine returns the matrices X and/or Y of right and left
+eigenvectors of (S,P), or the products Z*X and/or Q*Y,
+where Z and Q are input matrices.
+If Q and Z are the unitary factors from the generalized Schur
+factorization of a matrix pair (A,B), then Z*X and Q*Y
+are the matrices of right and left eigenvectors of (A,B).
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorSELECT`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorSELECT>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of tgevc
+[ [ Value type of VectorSELECT ] [LAPACK routine] ]
+[ [`float`][STGEVC] ]
+[ [`double`][DTGEVC] ]
+[ [`complex<float>`][CTGEVC] ]
+[ [`complex<double>`][ZTGEVC] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/tgevc.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/tgevc.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::tgevc( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/stgevc.f.html stgevc.f], [@http://www.netlib.org/lapack/explore-html/dtgevc.f.html dtgevc.f], [@http://www.netlib.org/lapack/explore-html/ctgevc.f.html ctgevc.f], and [@http://www.netlib.org/lapack/explore-html/ztgevc.f.html ztgevc.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/tgexc.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/tgexc.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,98 @@
+
+[section tgexc]
+
+[heading Prototype]
+There are two prototypes of `tgexc` available, please see below.
+``
+tgexc( const logical_t wantq, const logical_t wantz, MatrixA& a,
+ MatrixB& b, MatrixQ& q, MatrixZ& z, int_t& ifst,
+ int_t& ilst );
+``
+
+``
+tgexc( const logical_t wantq, const logical_t wantz, MatrixA& a,
+ MatrixB& b, MatrixQ& q, MatrixZ& z, const int_t ifst,
+ int_t& ilst );
+``
+
+
+[heading Description]
+
+`tgexc` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines STGEXC, DTGEXC, CTGEXC, and ZTGEXC.
+`tgexc` reorders the generalized Schur decomposition of a complex
+matrix pair (A,B), using an unitary equivalence transformation
+(A, B) := Q * (A, B) * Z', so that the diagonal block of (A, B) with
+row index IFST is moved to row ILST.
+
+(A, B) must be in generalized Schur canonical form, that is, A and
+B are both upper triangular.
+
+Optionally, the matrices Q and Z of generalized Schur vectors are
+updated.
+
+Q(in) * A(in) * Z(in)' = Q(out) * A(out) * Z(out)'
+Q(in) * B(in) * Z(in)' = Q(out) * B(out) * Z(out)'
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of tgexc
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][STGEXC] ]
+[ [`double`][DTGEXC] ]
+[ [`complex<float>`][CTGEXC] ]
+[ [`complex<double>`][ZTGEXC] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/tgexc.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/tgexc.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::tgexc( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/stgexc.f.html stgexc.f], [@http://www.netlib.org/lapack/explore-html/dtgexc.f.html dtgexc.f], [@http://www.netlib.org/lapack/explore-html/ctgexc.f.html ctgexc.f], and [@http://www.netlib.org/lapack/explore-html/ztgexc.f.html ztgexc.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/tgsen.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/tgsen.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,110 @@
+
+[section tgsen]
+
+[heading Prototype]
+There are two prototypes of `tgsen` available, please see below.
+``
+tgsen( const int_t ijob, const logical_t wantq,
+ const logical_t wantz, const VectorSELECT& select, MatrixA& a,
+ MatrixB& b, VectorALPHAR& alphar, VectorALPHAI& alphai,
+ VectorBETA& beta, MatrixQ& q, MatrixZ& z, int_t& m,
+ Scalar >, Scalar >, VectorDIF& dif );
+``
+
+``
+tgsen( const int_t ijob, const logical_t wantq,
+ const logical_t wantz, const VectorSELECT& select, MatrixA& a,
+ MatrixB& b, VectorALPHA& alpha, VectorBETA& beta, MatrixQ& q,
+ MatrixZ& z, int_t& m, Scalar >, Scalar >, VectorDIF& dif );
+``
+
+
+[heading Description]
+
+`tgsen` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines STGSEN, DTGSEN, CTGSEN, and ZTGSEN.
+`tgsen` reorders the generalized Schur decomposition of a complex
+matrix pair (A, B) (in terms of an unitary equivalence trans-
+formation Q' * (A, B) * Z), so that a selected cluster of eigenvalues
+appears in the leading diagonal blocks of the pair (A,B). The leading
+columns of Q and Z form unitary bases of the corresponding left and
+right eigenspaces (deflating subspaces). (A, B) must be in
+generalized Schur canonical form, that is, A and B are both upper
+triangular.
+
+`tgsen` also computes the generalized eigenvalues
+
+w(j)= ALPHA(j) / BETA(j)
+
+of the reordered matrix pair (A, B).
+
+Optionally, the routine computes estimates of reciprocal condition
+numbers for eigenvalues and eigenspaces. These are Difu[(A11,B11),
+(A22,B22)] and Difl[(A11,B11), (A22,B22)], i.e. the separation(s)
+between the matrix pairs (A11, B11) and (A22,B22) that correspond to
+the selected cluster and the eigenvalues outside the cluster, resp.,
+and norms of "projections" onto left and right eigenspaces w.r.t.
+the selected cluster in the (1,1)-block.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorSELECT`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorSELECT>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of tgsen
+[ [ Value type of VectorSELECT ] [LAPACK routine] ]
+[ [`float`][STGSEN] ]
+[ [`double`][DTGSEN] ]
+[ [`complex<float>`][CTGSEN] ]
+[ [`complex<double>`][ZTGSEN] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/tgsen.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/tgsen.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::tgsen( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/stgsen.f.html stgsen.f], [@http://www.netlib.org/lapack/explore-html/dtgsen.f.html dtgsen.f], [@http://www.netlib.org/lapack/explore-html/ctgsen.f.html ctgsen.f], and [@http://www.netlib.org/lapack/explore-html/ztgsen.f.html ztgsen.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/tgsja.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/tgsja.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,165 @@
+
+[section tgsja]
+
+[heading Prototype]
+There is one prototype of `tgsja` available, please see below.
+``
+tgsja( const char jobu, const char jobv, const char jobq,
+ const int_t k, const int_t l, MatrixA& a,
+ MatrixB& b, const Scalar >, const Scalar >, VectorALPHA& alpha,
+ VectorBETA& beta, MatrixU& u, MatrixV& v, MatrixQ& q,
+ int_t& ncycle );
+``
+
+
+[heading Description]
+
+`tgsja` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines STGSJA, DTGSJA, CTGSJA, and ZTGSJA.
+`tgsja` computes the generalized singular value decomposition (GSVD)
+of two complex upper triangular (or trapezoidal) matrices A and B.
+
+On entry, it is assumed that matrices A and B have the following
+forms, which may be obtained by the preprocessing subroutine ZGGSVP
+from a general M-by-N matrix A and P-by-N matrix B:
+
+N-K-L K L
+A = K ( 0 A12 A13 ) if M-K-L >= 0;
+L ( 0 0 A23 )
+M-K-L ( 0 0 0 )
+
+N-K-L K L
+A = K ( 0 A12 A13 ) if M-K-L < 0;
+M-K ( 0 0 A23 )
+
+N-K-L K L
+B = L ( 0 0 B13 )
+P-L ( 0 0 0 )
+
+where the K-by-K matrix A12 and L-by-L matrix B13 are nonsingular
+upper triangular; A23 is L-by-L upper triangular if M-K-L >= 0,
+otherwise A23 is (M-K)-by-L upper trapezoidal.
+
+On exit,
+
+U'*A*Q = D1*( 0 R ), V'*B*Q = D2*( 0 R ),
+
+where U, V and Q are unitary matrices, Z' denotes the conjugate
+transpose of Z, R is a nonsingular upper triangular matrix, and D1
+and D2 are ``diagonal'' matrices, which are of the following
+structures:
+
+If M-K-L >= 0,
+
+K L
+D1 = K ( I 0 )
+L ( 0 C )
+M-K-L ( 0 0 )
+
+K L
+D2 = L ( 0 S )
+P-L ( 0 0 )
+
+N-K-L K L
+( 0 R ) = K ( 0 R11 R12 ) K
+L ( 0 0 R22 ) L
+
+where
+
+C = diag( ALPHA(K+1), ... , ALPHA(K+L) ),
+S = diag( BETA(K+1), ... , BETA(K+L) ),
+C**2 + S**2 = I.
+
+R is stored in A(1:K+L,N-K-L+1:N) on exit.
+
+If M-K-L < 0,
+
+K M-K K+L-M
+D1 = K ( I 0 0 )
+M-K ( 0 C 0 )
+
+K M-K K+L-M
+D2 = M-K ( 0 S 0 )
+K+L-M ( 0 0 I )
+P-L ( 0 0 0 )
+
+N-K-L K M-K K+L-M
+( 0 R ) = K ( 0 R11 R12 R13 )
+M-K ( 0 0 R22 R23 )
+K+L-M ( 0 0 0 R33 )
+
+where
+C = diag( ALPHA(K+1), ... , ALPHA(M) ),
+S = diag( BETA(K+1), ... , BETA(M) ),
+C**2 + S**2 = I.
+
+R = ( R11 R12 R13 ) is stored in A(1:M, N-K-L+1:N) and R33 is stored
+( 0 R22 R23 )
+in B(M-K+1:L,N+M-K-L+1:N) on exit.
+
+The computation of the unitary transformation matrices U, V or Q
+is optional. These matrices may either be formed explicitly, or they
+may be postmultiplied into input matrices U1, V1, or Q1.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of tgsja
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][STGSJA] ]
+[ [`double`][DTGSJA] ]
+[ [`complex<float>`][CTGSJA] ]
+[ [`complex<double>`][ZTGSJA] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/tgsja.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/tgsja.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::tgsja( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/stgsja.f.html stgsja.f], [@http://www.netlib.org/lapack/explore-html/dtgsja.f.html dtgsja.f], [@http://www.netlib.org/lapack/explore-html/ctgsja.f.html ctgsja.f], and [@http://www.netlib.org/lapack/explore-html/ztgsja.f.html ztgsja.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/tgsna.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/tgsna.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,85 @@
+
+[section tgsna]
+
+[heading Prototype]
+There is one prototype of `tgsna` available, please see below.
+``
+tgsna( const char job, const char howmny, const VectorSELECT& select,
+ const int_t n, const MatrixA& a, const MatrixB& b,
+ const MatrixVL& vl, const MatrixVR& vr, VectorS& s, VectorDIF& dif,
+ const int_t mm, int_t& m );
+``
+
+
+[heading Description]
+
+`tgsna` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines STGSNA, DTGSNA, CTGSNA, and ZTGSNA.
+`tgsna` estimates reciprocal condition numbers for specified
+eigenvalues and/or eigenvectors of a matrix pair (A, B).
+
+(A, B) must be in generalized Schur canonical form, that is, A and
+B are both upper triangular.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorSELECT`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorSELECT>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of tgsna
+[ [ Value type of VectorSELECT ] [LAPACK routine] ]
+[ [`float`][STGSNA] ]
+[ [`double`][DTGSNA] ]
+[ [`complex<float>`][CTGSNA] ]
+[ [`complex<double>`][ZTGSNA] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/tgsna.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/tgsna.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::tgsna( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/stgsna.f.html stgsna.f], [@http://www.netlib.org/lapack/explore-html/dtgsna.f.html dtgsna.f], [@http://www.netlib.org/lapack/explore-html/ctgsna.f.html ctgsna.f], and [@http://www.netlib.org/lapack/explore-html/ztgsna.f.html ztgsna.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/tgsyl.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/tgsyl.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,117 @@
+
+[section tgsyl]
+
+[heading Prototype]
+There is one prototype of `tgsyl` available, please see below.
+``
+tgsyl( const int_t ijob, const MatrixA& a, const MatrixB& b,
+ MatrixC& c, const MatrixD& d, const MatrixE& e, MatrixF& f, Scalar >,
+ Scalar > );
+``
+
+
+[heading Description]
+
+`tgsyl` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines STGSYL, DTGSYL, CTGSYL, and ZTGSYL.
+`tgsyl` solves the generalized Sylvester equation:
+
+A * R - L * B = scale * C (1)
+D * R - L * E = scale * F
+
+where R and L are unknown m-by-n matrices, (A, D), (B, E) and
+(C, F) are given matrix pairs of size m-by-m, n-by-n and m-by-n,
+respectively, with complex entries. A, B, D and E are upper
+triangular (i.e., (A,D) and (B,E) in generalized Schur form).
+
+The solution (R, L) overwrites (C, F). 0 <= SCALE <= 1
+is an output scaling factor chosen to avoid overflow.
+
+In matrix notation (1) is equivalent to solve Zx = scale*b, where Z
+is defined as
+
+Z = [ kron(In, A) -kron(B', Im) ] (2)
+[ kron(In, D) -kron(E', Im) ],
+
+Here Ix is the identity matrix of size x and X' is the conjugate
+transpose of X. Kron(X, Y) is the Kronecker product between the
+matrices X and Y.
+
+If TRANS = 'C', y in the conjugate transposed system Z'*y = scale*b
+is solved for, which is equivalent to solve for R and L in
+
+A' * R + D' * L = scale * C (3)
+R * B' + L * E' = scale * -F
+
+This case (TRANS = 'C') is used to compute an one-norm-based estimate
+of Dif[(A,D), (B,E)], the separation between the matrix pairs (A,D)
+and (B,E), using ZLACON.
+
+If IJOB >= 1, `tgsyl` computes a Frobenius norm-based estimate of
+Dif[(A,D),(B,E)]. That is, the reciprocal of a lower bound on the
+reciprocal of the smallest singular value of Z.
+
+This is a level-3 BLAS algorithm.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of tgsyl
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][STGSYL] ]
+[ [`double`][DTGSYL] ]
+[ [`complex<float>`][CTGSYL] ]
+[ [`complex<double>`][ZTGSYL] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/tgsyl.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/tgsyl.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::tgsyl( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/stgsyl.f.html stgsyl.f], [@http://www.netlib.org/lapack/explore-html/dtgsyl.f.html dtgsyl.f], [@http://www.netlib.org/lapack/explore-html/ctgsyl.f.html ctgsyl.f], and [@http://www.netlib.org/lapack/explore-html/ztgsyl.f.html ztgsyl.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/tpcon.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/tpcon.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,84 @@
+
+[section tpcon]
+
+[heading Prototype]
+There is one prototype of `tpcon` available, please see below.
+``
+tpcon( const char norm, const MatrixAP& ap, Scalar > );
+``
+
+
+[heading Description]
+
+`tpcon` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines STPCON, DTPCON, CTPCON, and ZTPCON.
+`tpcon` estimates the reciprocal of the condition number of a packed
+triangular matrix A, in either the 1-norm or the infinity-norm.
+
+The norm of A is computed and an estimate is obtained for
+norm(inv(A)), then the reciprocal of the condition number is
+computed as
+RCOND = 1 / ( norm(A) * norm(inv(A)) ).
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of tpcon
+[ [ Value type of MatrixAP ] [LAPACK routine] ]
+[ [`float`][STPCON] ]
+[ [`double`][DTPCON] ]
+[ [`complex<float>`][CTPCON] ]
+[ [`complex<double>`][ZTPCON] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/tpcon.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/tpcon.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::tpcon( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/stpcon.f.html stpcon.f], [@http://www.netlib.org/lapack/explore-html/dtpcon.f.html dtpcon.f], [@http://www.netlib.org/lapack/explore-html/ctpcon.f.html ctpcon.f], and [@http://www.netlib.org/lapack/explore-html/ztpcon.f.html ztpcon.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/tprfs.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/tprfs.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,85 @@
+
+[section tprfs]
+
+[heading Prototype]
+There is one prototype of `tprfs` available, please see below.
+``
+tprfs( const MatrixAP& ap, const MatrixB& b, const MatrixX& x,
+ VectorFERR& ferr, VectorBERR& berr );
+``
+
+
+[heading Description]
+
+`tprfs` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines STPRFS, DTPRFS, CTPRFS, and ZTPRFS.
+`tprfs` provides error bounds and backward error estimates for the
+solution to a system of linear equations with a triangular packed
+coefficient matrix.
+
+The solution matrix X must be computed by ZTPTRS or some other
+means before entering this routine. `tprfs` does not do iterative
+refinement because doing so cannot improve the backward error.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of tprfs
+[ [ Value type of MatrixAP ] [LAPACK routine] ]
+[ [`float`][STPRFS] ]
+[ [`double`][DTPRFS] ]
+[ [`complex<float>`][CTPRFS] ]
+[ [`complex<double>`][ZTPRFS] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/tprfs.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/tprfs.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::tprfs( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/stprfs.f.html stprfs.f], [@http://www.netlib.org/lapack/explore-html/dtprfs.f.html dtprfs.f], [@http://www.netlib.org/lapack/explore-html/ctprfs.f.html ctprfs.f], and [@http://www.netlib.org/lapack/explore-html/ztprfs.f.html ztprfs.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/tptri.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/tptri.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,79 @@
+
+[section tptri]
+
+[heading Prototype]
+There is one prototype of `tptri` available, please see below.
+``
+tptri( MatrixAP& ap );
+``
+
+
+[heading Description]
+
+`tptri` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines STPTRI, DTPTRI, CTPTRI, and ZTPTRI.
+`tptri` computes the inverse of a complex upper or lower triangular
+matrix A stored in packed format.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of tptri
+[ [ Value type of MatrixAP ] [LAPACK routine] ]
+[ [`float`][STPTRI] ]
+[ [`double`][DTPTRI] ]
+[ [`complex<float>`][CTPTRI] ]
+[ [`complex<double>`][ZTPTRI] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/tptri.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/tptri.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::tptri( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/stptri.f.html stptri.f], [@http://www.netlib.org/lapack/explore-html/dtptri.f.html dtptri.f], [@http://www.netlib.org/lapack/explore-html/ctptri.f.html ctptri.f], and [@http://www.netlib.org/lapack/explore-html/ztptri.f.html ztptri.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/tptrs.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/tptrs.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,84 @@
+
+[section tptrs]
+
+[heading Prototype]
+There is one prototype of `tptrs` available, please see below.
+``
+tptrs( const MatrixAP& ap, MatrixB& b );
+``
+
+
+[heading Description]
+
+`tptrs` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines STPTRS, DTPTRS, CTPTRS, and ZTPTRS.
+`tptrs` solves a triangular system of the form
+
+A * X = B, A**T * X = B, or A**H * X = B,
+
+where A is a triangular matrix of order N stored in packed format,
+and B is an N-by-NRHS matrix. A check is made to verify that A is
+nonsingular.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of tptrs
+[ [ Value type of MatrixAP ] [LAPACK routine] ]
+[ [`float`][STPTRS] ]
+[ [`double`][DTPTRS] ]
+[ [`complex<float>`][CTPTRS] ]
+[ [`complex<double>`][ZTPTRS] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/tptrs.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/tptrs.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::tptrs( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/stptrs.f.html stptrs.f], [@http://www.netlib.org/lapack/explore-html/dtptrs.f.html dtptrs.f], [@http://www.netlib.org/lapack/explore-html/ctptrs.f.html ctptrs.f], and [@http://www.netlib.org/lapack/explore-html/ztptrs.f.html ztptrs.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/trcon.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/trcon.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,84 @@
+
+[section trcon]
+
+[heading Prototype]
+There is one prototype of `trcon` available, please see below.
+``
+trcon( const char norm, const MatrixA& a, Scalar > );
+``
+
+
+[heading Description]
+
+`trcon` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines STRCON, DTRCON, CTRCON, and ZTRCON.
+`trcon` estimates the reciprocal of the condition number of a
+triangular matrix A, in either the 1-norm or the infinity-norm.
+
+The norm of A is computed and an estimate is obtained for
+norm(inv(A)), then the reciprocal of the condition number is
+computed as
+RCOND = 1 / ( norm(A) * norm(inv(A)) ).
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of trcon
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][STRCON] ]
+[ [`double`][DTRCON] ]
+[ [`complex<float>`][CTRCON] ]
+[ [`complex<double>`][ZTRCON] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/trcon.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/trcon.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::trcon( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/strcon.f.html strcon.f], [@http://www.netlib.org/lapack/explore-html/dtrcon.f.html dtrcon.f], [@http://www.netlib.org/lapack/explore-html/ctrcon.f.html ctrcon.f], and [@http://www.netlib.org/lapack/explore-html/ztrcon.f.html ztrcon.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/trevc.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/trevc.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,104 @@
+
+[section trevc]
+
+[heading Prototype]
+There are two prototypes of `trevc` available, please see below.
+``
+trevc( const Side side, const char howmny, VectorSELECT& select,
+ const MatrixT& t, MatrixVL& vl, MatrixVR& vr,
+ const int_t mm, int_t& m );
+``
+
+``
+trevc( const Side side, const char howmny, const VectorSELECT& select,
+ MatrixT& t, MatrixVL& vl, MatrixVR& vr, const int_t mm,
+ int_t& m );
+``
+
+
+[heading Description]
+
+`trevc` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines STREVC, DTREVC, CTREVC, and ZTREVC.
+`trevc` computes some or all of the right and/or left eigenvectors of
+a complex upper triangular matrix T.
+Matrices of this type are produced by the Schur factorization of
+a complex general matrix: A = Q*T*Q**H, as computed by ZHSEQR.
+
+The right eigenvector x and the left eigenvector y of T corresponding
+to an eigenvalue w are defined by:
+
+T*x = w*x, (y**H)*T = w*(y**H)
+
+where y**H denotes the conjugate transpose of the vector y.
+The eigenvalues are not input to this routine, but are read directly
+from the diagonal of T.
+
+This routine returns the matrices X and/or Y of right and left
+eigenvectors of T, or the products Q*X and/or Q*Y, where Q is an
+input matrix. If Q is the unitary factor that reduces a matrix A to
+Schur form T, then Q*X and Q*Y are the matrices of right and left
+eigenvectors of A.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorSELECT`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorSELECT>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of trevc
+[ [ Value type of VectorSELECT ] [LAPACK routine] ]
+[ [`float`][STREVC] ]
+[ [`double`][DTREVC] ]
+[ [`complex<float>`][CTREVC] ]
+[ [`complex<double>`][ZTREVC] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/trevc.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/trevc.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::trevc( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/strevc.f.html strevc.f], [@http://www.netlib.org/lapack/explore-html/dtrevc.f.html dtrevc.f], [@http://www.netlib.org/lapack/explore-html/ctrevc.f.html ctrevc.f], and [@http://www.netlib.org/lapack/explore-html/ztrevc.f.html ztrevc.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/trexc.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/trexc.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,90 @@
+
+[section trexc]
+
+[heading Prototype]
+There are two prototypes of `trexc` available, please see below.
+``
+trexc( const char compq, MatrixT& t, MatrixQ& q, int_t& ifst,
+ int_t& ilst );
+``
+
+``
+trexc( const char compq, MatrixT& t, MatrixQ& q,
+ const int_t ifst, const int_t ilst );
+``
+
+
+[heading Description]
+
+`trexc` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines STREXC, DTREXC, CTREXC, and ZTREXC.
+`trexc` reorders the Schur factorization of a complex matrix
+A = Q*T*Q**H, so that the diagonal element of T with row index IFST
+is moved to row ILST.
+
+The Schur form T is reordered by a unitary similarity transformation
+Z**H*T*Z, and optionally the matrix Q of Schur vectors is updated by
+postmultplying it with Z.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixT`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixT>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of trexc
+[ [ Value type of MatrixT ] [LAPACK routine] ]
+[ [`float`][STREXC] ]
+[ [`double`][DTREXC] ]
+[ [`complex<float>`][CTREXC] ]
+[ [`complex<double>`][ZTREXC] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/trexc.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/trexc.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::trexc( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/strexc.f.html strexc.f], [@http://www.netlib.org/lapack/explore-html/dtrexc.f.html dtrexc.f], [@http://www.netlib.org/lapack/explore-html/ctrexc.f.html ctrexc.f], and [@http://www.netlib.org/lapack/explore-html/ztrexc.f.html ztrexc.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/trrfs.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/trrfs.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,85 @@
+
+[section trrfs]
+
+[heading Prototype]
+There is one prototype of `trrfs` available, please see below.
+``
+trrfs( const MatrixA& a, const MatrixB& b, const MatrixX& x,
+ VectorFERR& ferr, VectorBERR& berr );
+``
+
+
+[heading Description]
+
+`trrfs` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines STRRFS, DTRRFS, CTRRFS, and ZTRRFS.
+`trrfs` provides error bounds and backward error estimates for the
+solution to a system of linear equations with a triangular
+coefficient matrix.
+
+The solution matrix X must be computed by ZTRTRS or some other
+means before entering this routine. `trrfs` does not do iterative
+refinement because doing so cannot improve the backward error.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of trrfs
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][STRRFS] ]
+[ [`double`][DTRRFS] ]
+[ [`complex<float>`][CTRRFS] ]
+[ [`complex<double>`][ZTRRFS] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/trrfs.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/trrfs.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::trrfs( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/strrfs.f.html strrfs.f], [@http://www.netlib.org/lapack/explore-html/dtrrfs.f.html dtrrfs.f], [@http://www.netlib.org/lapack/explore-html/ctrrfs.f.html ctrrfs.f], and [@http://www.netlib.org/lapack/explore-html/ztrrfs.f.html ztrrfs.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/trsen.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/trsen.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,85 @@
+
+[section trsen]
+
+[heading Prototype]
+There is one prototype of `trsen` available, please see below.
+``
+trsen( const char job, const char compq, const VectorSELECT& select,
+ MatrixT& t, MatrixQ& q, VectorW& w, int_t& m, Scalar >,
+ Scalar > );
+``
+
+
+[heading Description]
+
+`trsen` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CTRSEN and ZTRSEN.
+`trsen` reorders the Schur factorization of a complex matrix
+A = Q*T*Q**H, so that a selected cluster of eigenvalues appears in
+the leading positions on the diagonal of the upper triangular matrix
+T, and the leading columns of Q form an orthonormal basis of the
+corresponding right invariant subspace.
+
+Optionally the routine computes the reciprocal condition numbers of
+the cluster of eigenvalues and/or the invariant subspace.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorSELECT`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorSELECT>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of trsen
+[ [ Value type of VectorSELECT ] [LAPACK routine] ]
+[ [`complex<float>`][CTRSEN] ]
+[ [`complex<double>`][ZTRSEN] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/trsen.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/trsen.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::trsen( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/ctrsen.f.html ctrsen.f] and [@http://www.netlib.org/lapack/explore-html/ztrsen.f.html ztrsen.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/trsna.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/trsna.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,82 @@
+
+[section trsna]
+
+[heading Prototype]
+There is one prototype of `trsna` available, please see below.
+``
+trsna( const char job, const char howmny, const VectorSELECT& select,
+ const MatrixT& t, const MatrixVL& vl, const MatrixVR& vr, VectorS& s,
+ VectorSEP& sep, const int_t mm, int_t& m );
+``
+
+
+[heading Description]
+
+`trsna` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines STRSNA, DTRSNA, CTRSNA, and ZTRSNA.
+`trsna` estimates reciprocal condition numbers for specified
+eigenvalues and/or right eigenvectors of a complex upper triangular
+matrix T (or of any matrix Q*T*Q**H with Q unitary).
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorSELECT`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorSELECT>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of trsna
+[ [ Value type of VectorSELECT ] [LAPACK routine] ]
+[ [`float`][STRSNA] ]
+[ [`double`][DTRSNA] ]
+[ [`complex<float>`][CTRSNA] ]
+[ [`complex<double>`][ZTRSNA] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/trsna.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/trsna.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::trsna( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/strsna.f.html strsna.f], [@http://www.netlib.org/lapack/explore-html/dtrsna.f.html dtrsna.f], [@http://www.netlib.org/lapack/explore-html/ctrsna.f.html ctrsna.f], and [@http://www.netlib.org/lapack/explore-html/ztrsna.f.html ztrsna.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/trsyl.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/trsyl.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,88 @@
+
+[section trsyl]
+
+[heading Prototype]
+There is one prototype of `trsyl` available, please see below.
+``
+trsyl( const char trana, const char tranb, const int_t isgn,
+ const int_t m, const int_t n,
+ const MatrixA& a, const MatrixB& b, MatrixC& c, Scalar > );
+``
+
+
+[heading Description]
+
+`trsyl` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines STRSYL, DTRSYL, CTRSYL, and ZTRSYL.
+`trsyl` solves the complex Sylvester matrix equation:
+
+op(A)*X + X*op(B) = scale*C or
+op(A)*X - X*op(B) = scale*C,
+
+where op(A) = A or A**H, and A and B are both upper triangular. A is
+M-by-M and B is N-by-N; the right hand side C and the solution X are
+M-by-N; and scale is an output scale factor, set <= 1 to avoid
+overflow in X.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of trsyl
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][STRSYL] ]
+[ [`double`][DTRSYL] ]
+[ [`complex<float>`][CTRSYL] ]
+[ [`complex<double>`][ZTRSYL] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/trsyl.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/trsyl.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::trsyl( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/strsyl.f.html strsyl.f], [@http://www.netlib.org/lapack/explore-html/dtrsyl.f.html dtrsyl.f], [@http://www.netlib.org/lapack/explore-html/ctrsyl.f.html ctrsyl.f], and [@http://www.netlib.org/lapack/explore-html/ztrsyl.f.html ztrsyl.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/trtri.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/trtri.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,81 @@
+
+[section trtri]
+
+[heading Prototype]
+There is one prototype of `trtri` available, please see below.
+``
+trtri( MatrixA& a );
+``
+
+
+[heading Description]
+
+`trtri` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines STRTRI, DTRTRI, CTRTRI, and ZTRTRI.
+`trtri` computes the inverse of a complex upper or lower triangular
+matrix A.
+
+This is the Level 3 BLAS version of the algorithm.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of trtri
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][STRTRI] ]
+[ [`double`][DTRTRI] ]
+[ [`complex<float>`][CTRTRI] ]
+[ [`complex<double>`][ZTRTRI] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/trtri.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/trtri.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::trtri( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/strtri.f.html strtri.f], [@http://www.netlib.org/lapack/explore-html/dtrtri.f.html dtrtri.f], [@http://www.netlib.org/lapack/explore-html/ctrtri.f.html ctrtri.f], and [@http://www.netlib.org/lapack/explore-html/ztrtri.f.html ztrtri.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/trtrs.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/trtrs.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,83 @@
+
+[section trtrs]
+
+[heading Prototype]
+There is one prototype of `trtrs` available, please see below.
+``
+trtrs( const MatrixA& a, MatrixB& b );
+``
+
+
+[heading Description]
+
+`trtrs` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines STRTRS, DTRTRS, CTRTRS, and ZTRTRS.
+`trtrs` solves a triangular system of the form
+
+A * X = B, A**T * X = B, or A**H * X = B,
+
+where A is a triangular matrix of order N, and B is an N-by-NRHS
+matrix. A check is made to verify that A is nonsingular.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of trtrs
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][STRTRS] ]
+[ [`double`][DTRTRS] ]
+[ [`complex<float>`][CTRTRS] ]
+[ [`complex<double>`][ZTRTRS] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/trtrs.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/trtrs.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::trtrs( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/strtrs.f.html strtrs.f], [@http://www.netlib.org/lapack/explore-html/dtrtrs.f.html dtrtrs.f], [@http://www.netlib.org/lapack/explore-html/ctrtrs.f.html ctrtrs.f], and [@http://www.netlib.org/lapack/explore-html/ztrtrs.f.html ztrtrs.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/tzrzf.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/tzrzf.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,86 @@
+
+[section tzrzf]
+
+[heading Prototype]
+There is one prototype of `tzrzf` available, please see below.
+``
+tzrzf( MatrixA& a, VectorTAU& tau );
+``
+
+
+[heading Description]
+
+`tzrzf` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines STZRZF, DTZRZF, CTZRZF, and ZTZRZF.
+`tzrzf` reduces the M-by-N ( M<=N ) complex upper trapezoidal matrix A
+to upper triangular form by means of unitary transformations.
+
+The upper trapezoidal matrix A is factored as
+
+A = ( R 0 ) * Z,
+
+where Z is an N-by-N unitary matrix and R is an M-by-M upper
+triangular matrix.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of tzrzf
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][STZRZF] ]
+[ [`double`][DTZRZF] ]
+[ [`complex<float>`][CTZRZF] ]
+[ [`complex<double>`][ZTZRZF] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/tzrzf.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/tzrzf.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::tzrzf( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/stzrzf.f.html stzrzf.f], [@http://www.netlib.org/lapack/explore-html/dtzrzf.f.html dtzrzf.f], [@http://www.netlib.org/lapack/explore-html/ctzrzf.f.html ctzrzf.f], and [@http://www.netlib.org/lapack/explore-html/ztzrzf.f.html ztzrzf.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ungbr.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ungbr.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,95 @@
+
+[section ungbr]
+
+[heading Prototype]
+There is one prototype of `ungbr` available, please see below.
+``
+ungbr( const char vect, const int_t m,
+ const int_t n, const int_t k, MatrixA& a,
+ const VectorTAU& tau );
+``
+
+
+[heading Description]
+
+`ungbr` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CUNGBR and ZUNGBR.
+`ungbr` generates one of the complex unitary matrices Q or P**H
+determined by ZGEBRD when reducing a complex matrix A to bidiagonal
+form: A = Q * B * P**H. Q and P**H are defined as products of
+elementary reflectors H(i) or G(i) respectively.
+
+If VECT = 'Q', A is assumed to have been an M-by-K matrix, and Q
+is of order M:
+if m >= k, Q = H(1) H(2) . . . H(k) and `ungbr` returns the first n
+columns of Q, where m >= n >= k;
+if m < k, Q = H(1) H(2) . . . H(m-1) and `ungbr` returns Q as an
+M-by-M matrix.
+
+If VECT = 'P', A is assumed to have been a K-by-N matrix, and P**H
+is of order N:
+if k < n, P**H = G(k) . . . G(2) G(1) and `ungbr` returns the first m
+rows of P**H, where n >= m >= k;
+if k >= n, P**H = G(n-1) . . . G(2) G(1) and `ungbr` returns P**H as
+an N-by-N matrix.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of ungbr
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`complex<float>`][CUNGBR] ]
+[ [`complex<double>`][ZUNGBR] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/ungbr.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/ungbr.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::ungbr( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/cungbr.f.html cungbr.f] and [@http://www.netlib.org/lapack/explore-html/zungbr.f.html zungbr.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/unghr.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/unghr.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,81 @@
+
+[section unghr]
+
+[heading Prototype]
+There is one prototype of `unghr` available, please see below.
+``
+unghr( const int_t n, const int_t ilo,
+ const int_t ihi, MatrixA& a, const VectorTAU& tau );
+``
+
+
+[heading Description]
+
+`unghr` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CUNGHR and ZUNGHR.
+`unghr` generates a complex unitary matrix Q which is defined as the
+product of IHI-ILO elementary reflectors of order N, as returned by
+ZGEHRD:
+
+Q = H(ilo) H(ilo+1) . . . H(ihi-1).
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of unghr
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`complex<float>`][CUNGHR] ]
+[ [`complex<double>`][ZUNGHR] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/unghr.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/unghr.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::unghr( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/cunghr.f.html cunghr.f] and [@http://www.netlib.org/lapack/explore-html/zunghr.f.html zunghr.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/unglq.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/unglq.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,83 @@
+
+[section unglq]
+
+[heading Prototype]
+There is one prototype of `unglq` available, please see below.
+``
+unglq( const int_t m, const int_t n,
+ const int_t k, MatrixA& a, const VectorTAU& tau );
+``
+
+
+[heading Description]
+
+`unglq` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CUNGLQ and ZUNGLQ.
+`unglq` generates an M-by-N complex matrix Q with orthonormal rows,
+which is defined as the first M rows of a product of K elementary
+reflectors of order N
+
+Q = H(k)' . . . H(2)' H(1)'
+
+as returned by ZGELQF.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of unglq
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`complex<float>`][CUNGLQ] ]
+[ [`complex<double>`][ZUNGLQ] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/unglq.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/unglq.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::unglq( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/cunglq.f.html cunglq.f] and [@http://www.netlib.org/lapack/explore-html/zunglq.f.html zunglq.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ungql.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ungql.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,83 @@
+
+[section ungql]
+
+[heading Prototype]
+There is one prototype of `ungql` available, please see below.
+``
+ungql( const int_t m, const int_t n,
+ const int_t k, MatrixA& a, const VectorTAU& tau );
+``
+
+
+[heading Description]
+
+`ungql` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CUNGQL and ZUNGQL.
+`ungql` generates an M-by-N complex matrix Q with orthonormal columns,
+which is defined as the last N columns of a product of K elementary
+reflectors of order M
+
+Q = H(k) . . . H(2) H(1)
+
+as returned by ZGEQLF.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of ungql
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`complex<float>`][CUNGQL] ]
+[ [`complex<double>`][ZUNGQL] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/ungql.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/ungql.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::ungql( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/cungql.f.html cungql.f] and [@http://www.netlib.org/lapack/explore-html/zungql.f.html zungql.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ungqr.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ungqr.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,82 @@
+
+[section ungqr]
+
+[heading Prototype]
+There is one prototype of `ungqr` available, please see below.
+``
+ungqr( MatrixA& a, const VectorTAU& tau );
+``
+
+
+[heading Description]
+
+`ungqr` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CUNGQR and ZUNGQR.
+`ungqr` generates an M-by-N complex matrix Q with orthonormal columns,
+which is defined as the first N columns of a product of K elementary
+reflectors of order M
+
+Q = H(1) H(2) . . . H(k)
+
+as returned by ZGEQRF.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of ungqr
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`complex<float>`][CUNGQR] ]
+[ [`complex<double>`][ZUNGQR] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/ungqr.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/ungqr.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::ungqr( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/cungqr.f.html cungqr.f] and [@http://www.netlib.org/lapack/explore-html/zungqr.f.html zungqr.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ungrq.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ungrq.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,83 @@
+
+[section ungrq]
+
+[heading Prototype]
+There is one prototype of `ungrq` available, please see below.
+``
+ungrq( const int_t m, const int_t n,
+ const int_t k, MatrixA& a, const VectorTAU& tau );
+``
+
+
+[heading Description]
+
+`ungrq` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CUNGRQ and ZUNGRQ.
+`ungrq` generates an M-by-N complex matrix Q with orthonormal rows,
+which is defined as the last M rows of a product of K elementary
+reflectors of order N
+
+Q = H(1)' H(2)' . . . H(k)'
+
+as returned by ZGERQF.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of ungrq
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`complex<float>`][CUNGRQ] ]
+[ [`complex<double>`][ZUNGRQ] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/ungrq.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/ungrq.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::ungrq( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/cungrq.f.html cungrq.f] and [@http://www.netlib.org/lapack/explore-html/zungrq.f.html zungrq.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ungtr.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/ungtr.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,82 @@
+
+[section ungtr]
+
+[heading Prototype]
+There is one prototype of `ungtr` available, please see below.
+``
+ungtr( const int_t n, MatrixA& a, const VectorTAU& tau );
+``
+
+
+[heading Description]
+
+`ungtr` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CUNGTR and ZUNGTR.
+`ungtr` generates a complex unitary matrix Q which is defined as the
+product of n-1 elementary reflectors of order N, as returned by
+ZHETRD:
+
+if UPLO = 'U', Q = H(n-1) . . . H(2) H(1),
+
+if UPLO = 'L', Q = H(1) H(2) . . . H(n-1).
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of ungtr
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`complex<float>`][CUNGTR] ]
+[ [`complex<double>`][ZUNGTR] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/ungtr.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/ungtr.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::ungtr( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/cungtr.f.html cungtr.f] and [@http://www.netlib.org/lapack/explore-html/zungtr.f.html zungtr.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/unmbr.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/unmbr.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,103 @@
+
+[section unmbr]
+
+[heading Prototype]
+There is one prototype of `unmbr` available, please see below.
+``
+unmbr( const char vect, const Side side, const int_t k,
+ const MatrixA& a, const VectorTAU& tau, MatrixC& c );
+``
+
+
+[heading Description]
+
+`unmbr` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CUNMBR and ZUNMBR.
+If VECT = 'Q', `unmbr` overwrites the general complex M-by-N matrix C
+with
+SIDE = 'L' SIDE = 'R'
+TRANS = 'N': Q * C C * Q
+TRANS = 'C': Q**H * C C * Q**H
+
+If VECT = 'P', `unmbr` overwrites the general complex M-by-N matrix C
+with
+SIDE = 'L' SIDE = 'R'
+TRANS = 'N': P * C C * P
+TRANS = 'C': P**H * C C * P**H
+
+Here Q and P**H are the unitary matrices determined by ZGEBRD when
+reducing a complex matrix A to bidiagonal form: A = Q * B * P**H. Q
+and P**H are defined as products of elementary reflectors H(i) and
+G(i) respectively.
+
+Let nq = m if SIDE = 'L' and nq = n if SIDE = 'R'. Thus nq is the
+order of the unitary matrix Q or P**H that is applied.
+
+If VECT = 'Q', A is assumed to have been an NQ-by-K matrix:
+if nq >= k, Q = H(1) H(2) . . . H(k);
+if nq < k, Q = H(1) H(2) . . . H(nq-1).
+
+If VECT = 'P', A is assumed to have been a K-by-NQ matrix:
+if k < nq, P = G(1) G(2) . . . G(k);
+if k >= nq, P = G(1) G(2) . . . G(nq-1).
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of unmbr
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`complex<float>`][CUNMBR] ]
+[ [`complex<double>`][ZUNMBR] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/unmbr.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/unmbr.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::unmbr( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/cunmbr.f.html cunmbr.f] and [@http://www.netlib.org/lapack/explore-html/zunmbr.f.html zunmbr.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/unmhr.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/unmhr.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,88 @@
+
+[section unmhr]
+
+[heading Prototype]
+There is one prototype of `unmhr` available, please see below.
+``
+unmhr( const Side side, const int_t ilo,
+ const int_t ihi, const MatrixA& a, const VectorTAU& tau,
+ MatrixC& c );
+``
+
+
+[heading Description]
+
+`unmhr` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CUNMHR and ZUNMHR.
+`unmhr` overwrites the general complex M-by-N matrix C with
+
+SIDE = 'L' SIDE = 'R'
+TRANS = 'N': Q * C C * Q
+TRANS = 'C': Q**H * C C * Q**H
+
+where Q is a complex unitary matrix of order nq, with nq = m if
+SIDE = 'L' and nq = n if SIDE = 'R'. Q is defined as the product of
+IHI-ILO elementary reflectors, as returned by ZGEHRD:
+
+Q = H(ilo) H(ilo+1) . . . H(ihi-1).
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of unmhr
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`complex<float>`][CUNMHR] ]
+[ [`complex<double>`][ZUNMHR] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/unmhr.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/unmhr.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::unmhr( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/cunmhr.f.html cunmhr.f] and [@http://www.netlib.org/lapack/explore-html/zunmhr.f.html zunmhr.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/unmlq.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/unmlq.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,89 @@
+
+[section unmlq]
+
+[heading Prototype]
+There is one prototype of `unmlq` available, please see below.
+``
+unmlq( const Side side, const int_t k, const MatrixA& a,
+ const VectorTAU& tau, MatrixC& c );
+``
+
+
+[heading Description]
+
+`unmlq` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CUNMLQ and ZUNMLQ.
+`unmlq` overwrites the general complex M-by-N matrix C with
+
+SIDE = 'L' SIDE = 'R'
+TRANS = 'N': Q * C C * Q
+TRANS = 'C': Q**H * C C * Q**H
+
+where Q is a complex unitary matrix defined as the product of k
+elementary reflectors
+
+Q = H(k)' . . . H(2)' H(1)'
+
+as returned by ZGELQF. Q is of order M if SIDE = 'L' and of order N
+if SIDE = 'R'.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of unmlq
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`complex<float>`][CUNMLQ] ]
+[ [`complex<double>`][ZUNMLQ] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/unmlq.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/unmlq.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::unmlq( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/cunmlq.f.html cunmlq.f] and [@http://www.netlib.org/lapack/explore-html/zunmlq.f.html zunmlq.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/unmql.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/unmql.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,89 @@
+
+[section unmql]
+
+[heading Prototype]
+There is one prototype of `unmql` available, please see below.
+``
+unmql( const Side side, const int_t k, const MatrixA& a,
+ const VectorTAU& tau, MatrixC& c );
+``
+
+
+[heading Description]
+
+`unmql` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CUNMQL and ZUNMQL.
+`unmql` overwrites the general complex M-by-N matrix C with
+
+SIDE = 'L' SIDE = 'R'
+TRANS = 'N': Q * C C * Q
+TRANS = 'C': Q**H * C C * Q**H
+
+where Q is a complex unitary matrix defined as the product of k
+elementary reflectors
+
+Q = H(k) . . . H(2) H(1)
+
+as returned by ZGEQLF. Q is of order M if SIDE = 'L' and of order N
+if SIDE = 'R'.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of unmql
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`complex<float>`][CUNMQL] ]
+[ [`complex<double>`][ZUNMQL] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/unmql.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/unmql.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::unmql( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/cunmql.f.html cunmql.f] and [@http://www.netlib.org/lapack/explore-html/zunmql.f.html zunmql.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/unmqr.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/unmqr.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,89 @@
+
+[section unmqr]
+
+[heading Prototype]
+There is one prototype of `unmqr` available, please see below.
+``
+unmqr( const Side side, const MatrixA& a, const VectorTAU& tau,
+ MatrixC& c );
+``
+
+
+[heading Description]
+
+`unmqr` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CUNMQR and ZUNMQR.
+`unmqr` overwrites the general complex M-by-N matrix C with
+
+SIDE = 'L' SIDE = 'R'
+TRANS = 'N': Q * C C * Q
+TRANS = 'C': Q**H * C C * Q**H
+
+where Q is a complex unitary matrix defined as the product of k
+elementary reflectors
+
+Q = H(1) H(2) . . . H(k)
+
+as returned by ZGEQRF. Q is of order M if SIDE = 'L' and of order N
+if SIDE = 'R'.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of unmqr
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`complex<float>`][CUNMQR] ]
+[ [`complex<double>`][ZUNMQR] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/unmqr.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/unmqr.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::unmqr( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/cunmqr.f.html cunmqr.f] and [@http://www.netlib.org/lapack/explore-html/zunmqr.f.html zunmqr.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/unmrq.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/unmrq.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,89 @@
+
+[section unmrq]
+
+[heading Prototype]
+There is one prototype of `unmrq` available, please see below.
+``
+unmrq( const Side side, const int_t k, const MatrixA& a,
+ const VectorTAU& tau, MatrixC& c );
+``
+
+
+[heading Description]
+
+`unmrq` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CUNMRQ and ZUNMRQ.
+`unmrq` overwrites the general complex M-by-N matrix C with
+
+SIDE = 'L' SIDE = 'R'
+TRANS = 'N': Q * C C * Q
+TRANS = 'C': Q**H * C C * Q**H
+
+where Q is a complex unitary matrix defined as the product of k
+elementary reflectors
+
+Q = H(1)' H(2)' . . . H(k)'
+
+as returned by ZGERQF. Q is of order M if SIDE = 'L' and of order N
+if SIDE = 'R'.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of unmrq
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`complex<float>`][CUNMRQ] ]
+[ [`complex<double>`][ZUNMRQ] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/unmrq.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/unmrq.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::unmrq( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/cunmrq.f.html cunmrq.f] and [@http://www.netlib.org/lapack/explore-html/zunmrq.f.html zunmrq.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/unmrz.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/unmrz.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,89 @@
+
+[section unmrz]
+
+[heading Prototype]
+There is one prototype of `unmrz` available, please see below.
+``
+unmrz( const Side side, const int_t k, const MatrixA& a,
+ const VectorTAU& tau, MatrixC& c );
+``
+
+
+[heading Description]
+
+`unmrz` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CUNMRZ and ZUNMRZ.
+`unmrz` overwrites the general complex M-by-N matrix C with
+
+SIDE = 'L' SIDE = 'R'
+TRANS = 'N': Q * C C * Q
+TRANS = 'C': Q**H * C C * Q**H
+
+where Q is a complex unitary matrix defined as the product of k
+elementary reflectors
+
+Q = H(1) H(2) . . . H(k)
+
+as returned by ZTZRZF. Q is of order M if SIDE = 'L' and of order N
+if SIDE = 'R'.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of unmrz
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`complex<float>`][CUNMRZ] ]
+[ [`complex<double>`][ZUNMRZ] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/unmrz.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/unmrz.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::unmrz( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/cunmrz.f.html cunmrz.f] and [@http://www.netlib.org/lapack/explore-html/zunmrz.f.html zunmrz.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/unmtr.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/unmtr.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,89 @@
+
+[section unmtr]
+
+[heading Prototype]
+There is one prototype of `unmtr` available, please see below.
+``
+unmtr( const Side side, const MatrixA& a, const VectorTAU& tau,
+ MatrixC& c );
+``
+
+
+[heading Description]
+
+`unmtr` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CUNMTR and ZUNMTR.
+`unmtr` overwrites the general complex M-by-N matrix C with
+
+SIDE = 'L' SIDE = 'R'
+TRANS = 'N': Q * C C * Q
+TRANS = 'C': Q**H * C C * Q**H
+
+where Q is a complex unitary matrix of order nq, with nq = m if
+SIDE = 'L' and nq = n if SIDE = 'R'. Q is defined as the product of
+nq-1 elementary reflectors, as returned by ZHETRD:
+
+if UPLO = 'U', Q = H(nq-1) . . . H(2) H(1);
+
+if UPLO = 'L', Q = H(1) H(2) . . . H(nq-1).
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of unmtr
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`complex<float>`][CUNMTR] ]
+[ [`complex<double>`][ZUNMTR] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/unmtr.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/unmtr.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::unmtr( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/cunmtr.f.html cunmtr.f] and [@http://www.netlib.org/lapack/explore-html/zunmtr.f.html zunmtr.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/upgtr.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/upgtr.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,83 @@
+
+[section upgtr]
+
+[heading Prototype]
+There is one prototype of `upgtr` available, please see below.
+``
+upgtr( const char uplo, const VectorAP& ap, const VectorTAU& tau,
+ MatrixQ& q );
+``
+
+
+[heading Description]
+
+`upgtr` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CUPGTR and ZUPGTR.
+`upgtr` generates a complex unitary matrix Q which is defined as the
+product of n-1 elementary reflectors H(i) of order n, as returned by
+ZHPTRD using packed storage:
+
+if UPLO = 'U', Q = H(n-1) . . . H(2) H(1),
+
+if UPLO = 'L', Q = H(1) H(2) . . . H(n-1).
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of upgtr
+[ [ Value type of VectorAP ] [LAPACK routine] ]
+[ [`complex<float>`][CUPGTR] ]
+[ [`complex<double>`][ZUPGTR] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/upgtr.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/upgtr.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::upgtr( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/cupgtr.f.html cupgtr.f] and [@http://www.netlib.org/lapack/explore-html/zupgtr.f.html zupgtr.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/upmtr.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/computational/upmtr.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,90 @@
+
+[section upmtr]
+
+[heading Prototype]
+There is one prototype of `upmtr` available, please see below.
+``
+upmtr( const Side side, const char uplo, const VectorAP& ap,
+ const VectorTAU& tau, MatrixC& c );
+``
+
+
+[heading Description]
+
+`upmtr` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CUPMTR and ZUPMTR.
+`upmtr` overwrites the general complex M-by-N matrix C with
+
+SIDE = 'L' SIDE = 'R'
+TRANS = 'N': Q * C C * Q
+TRANS = 'C': Q**H * C C * Q**H
+
+where Q is a complex unitary matrix of order nq, with nq = m if
+SIDE = 'L' and nq = n if SIDE = 'R'. Q is defined as the product of
+nq-1 elementary reflectors, as returned by ZHPTRD using packed
+storage:
+
+if UPLO = 'U', Q = H(nq-1) . . . H(2) H(1);
+
+if UPLO = 'L', Q = H(1) H(2) . . . H(nq-1).
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of upmtr
+[ [ Value type of VectorAP ] [LAPACK routine] ]
+[ [`complex<float>`][CUPMTR] ]
+[ [`complex<double>`][ZUPMTR] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/upmtr.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/upmtr.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::upmtr( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/cupmtr.f.html cupmtr.f] and [@http://www.netlib.org/lapack/explore-html/zupmtr.f.html zupmtr.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,93 @@
+
+[include driver/gegv.qbk]
+[include driver/gges.qbk]
+[include driver/ggesx.qbk]
+[include driver/ggev.qbk]
+[include driver/ggevx.qbk]
+[include driver/ggsvd.qbk]
+[include driver/hbgv.qbk]
+[include driver/hbgvd.qbk]
+[include driver/hbgvx.qbk]
+[include driver/hegv.qbk]
+[include driver/hegvd.qbk]
+[include driver/hegvx.qbk]
+[include driver/hpgv.qbk]
+[include driver/hpgvd.qbk]
+[include driver/hpgvx.qbk]
+[include driver/lacgv.qbk]
+[include driver/largv.qbk]
+[include driver/sbgv.qbk]
+[include driver/sbgvd.qbk]
+[include driver/sbgvx.qbk]
+[include driver/spgv.qbk]
+[include driver/spgvd.qbk]
+[include driver/spgvx.qbk]
+[include driver/sygv.qbk]
+[include driver/sygvd.qbk]
+[include driver/sygvx.qbk]
+[include driver/ggglm.qbk]
+[include driver/gglse.qbk]
+[include driver/cgesv.qbk]
+[include driver/cposv.qbk]
+[include driver/gbsv.qbk]
+[include driver/gbsvx.qbk]
+[include driver/gejsv.qbk]
+[include driver/gesv.qbk]
+[include driver/gesvx.qbk]
+[include driver/gtsv.qbk]
+[include driver/gtsvx.qbk]
+[include driver/hesv.qbk]
+[include driver/hesvx.qbk]
+[include driver/hpsv.qbk]
+[include driver/hpsvx.qbk]
+[include driver/pbsv.qbk]
+[include driver/pbsvx.qbk]
+[include driver/posv.qbk]
+[include driver/posvx.qbk]
+[include driver/ppsv.qbk]
+[include driver/ppsvx.qbk]
+[include driver/ptsv.qbk]
+[include driver/ptsvx.qbk]
+[include driver/sgesv.qbk]
+[include driver/sposv.qbk]
+[include driver/spsv.qbk]
+[include driver/spsvx.qbk]
+[include driver/sysv.qbk]
+[include driver/sysvx.qbk]
+[include driver/gees.qbk]
+[include driver/geesx.qbk]
+[include driver/geev.qbk]
+[include driver/geevx.qbk]
+[include driver/gesdd.qbk]
+[include driver/gesvd.qbk]
+[include driver/hbev.qbk]
+[include driver/hbevd.qbk]
+[include driver/hbevx.qbk]
+[include driver/heev.qbk]
+[include driver/heevd.qbk]
+[include driver/heevr.qbk]
+[include driver/heevx.qbk]
+[include driver/hpev.qbk]
+[include driver/hpevd.qbk]
+[include driver/hpevx.qbk]
+[include driver/sbev.qbk]
+[include driver/sbevd.qbk]
+[include driver/sbevx.qbk]
+[include driver/spev.qbk]
+[include driver/spevd.qbk]
+[include driver/spevx.qbk]
+[include driver/stev.qbk]
+[include driver/stevd.qbk]
+[include driver/stevr.qbk]
+[include driver/stevx.qbk]
+[include driver/syev.qbk]
+[include driver/syevd.qbk]
+[include driver/syevr.qbk]
+[include driver/syevx.qbk]
+[include driver/gels.qbk]
+[include driver/gelsd.qbk]
+[include driver/gelss.qbk]
+[include driver/gelsy.qbk]
+[include driver/lalsd.qbk]
+
+

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/cgesv.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/cgesv.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,105 @@
+
+[section cgesv]
+
+[heading Prototype]
+There is one prototype of `cgesv` available, please see below.
+``
+cgesv( MatrixA& a, VectorIPIV& ipiv, const MatrixB& b, MatrixX& x,
+ int_t& iter );
+``
+
+
+[heading Description]
+
+`cgesv` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines ZCGESV.
+`cgesv` computes the solution to a complex system of linear equations
+A * X = B,
+where A is an N-by-N matrix and X and B are N-by-NRHS matrices.
+
+`cgesv` first attempts to factorize the matrix in COMPLEX and use this
+factorization within an iterative refinement procedure to produce a
+solution with COMPLEX*16 normwise backward error quality (see below).
+If the approach fails the method switches to a COMPLEX*16
+factorization and solve.
+
+The iterative refinement is not going to be a winning strategy if
+the ratio COMPLEX performance over COMPLEX*16 performance is too
+small. A reasonable strategy should take the number of right-hand
+sides and the size of the matrix into account. This might be done
+with a call to ILAENV in the future. Up to now, we always try
+iterative refinement.
+
+The iterative refinement process is stopped if
+ITER > ITERMAX
+or for all the RHS we have:
+RNRM < SQRT(N)*XNRM*ANRM*EPS*BWDMAX
+where
+o ITER is the number of the current iteration in the iterative
+refinement process
+o RNRM is the infinity-norm of the residual
+o XNRM is the infinity-norm of the solution
+o ANRM is the infinity-operator-norm of the matrix A
+o EPS is the machine epsilon returned by DLAMCH('Epsilon')
+The value ITERMAX and BWDMAX are fixed to 30 and 1.0D+00
+respectively.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of cgesv
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`complex<double>`][ZCGESV] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/cgesv.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/cgesv.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::cgesv( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/zcgesv.f.html zcgesv.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/cposv.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/cposv.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,106 @@
+
+[section cposv]
+
+[heading Prototype]
+There is one prototype of `cposv` available, please see below.
+``
+cposv( MatrixA& a, const MatrixB& b, MatrixX& x,
+ int_t& iter );
+``
+
+
+[heading Description]
+
+`cposv` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines ZCPOSV.
+`cposv` computes the solution to a complex system of linear equations
+A * X = B,
+where A is an N-by-N Hermitian positive definite matrix and X and B
+are N-by-NRHS matrices.
+
+`cposv` first attempts to factorize the matrix in COMPLEX and use this
+factorization within an iterative refinement procedure to produce a
+solution with COMPLEX*16 normwise backward error quality (see below).
+If the approach fails the method switches to a COMPLEX*16
+factorization and solve.
+
+The iterative refinement is not going to be a winning strategy if
+the ratio COMPLEX performance over COMPLEX*16 performance is too
+small. A reasonable strategy should take the number of right-hand
+sides and the size of the matrix into account. This might be done
+with a call to ILAENV in the future. Up to now, we always try
+iterative refinement.
+
+The iterative refinement process is stopped if
+ITER > ITERMAX
+or for all the RHS we have:
+RNRM < SQRT(N)*XNRM*ANRM*EPS*BWDMAX
+where
+o ITER is the number of the current iteration in the iterative
+refinement process
+o RNRM is the infinity-norm of the residual
+o XNRM is the infinity-norm of the solution
+o ANRM is the infinity-operator-norm of the matrix A
+o EPS is the machine epsilon returned by DLAMCH('Epsilon')
+The value ITERMAX and BWDMAX are fixed to 30 and 1.0D+00
+respectively.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of cposv
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`complex<double>`][ZCPOSV] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/cposv.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/cposv.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::cposv( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/zcposv.f.html zcposv.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gbsv.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gbsv.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,86 @@
+
+[section gbsv]
+
+[heading Prototype]
+There is one prototype of `gbsv` available, please see below.
+``
+gbsv( MatrixAB& ab, VectorIPIV& ipiv, MatrixB& b );
+``
+
+
+[heading Description]
+
+`gbsv` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGBSV, DGBSV, CGBSV, and ZGBSV.
+`gbsv` computes the solution to a complex system of linear equations
+A * X = B, where A is a band matrix of order N with KL subdiagonals
+and KU superdiagonals, and X and B are N-by-NRHS matrices.
+
+The LU decomposition with partial pivoting and row interchanges is
+used to factor A as A = L * U, where L is a product of permutation
+and unit lower triangular matrices with KL subdiagonals, and U is
+upper triangular with KL+KU superdiagonals. The factored form of A
+is then used to solve the system of equations A * X = B.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAB`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAB>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of gbsv
+[ [ Value type of MatrixAB ] [LAPACK routine] ]
+[ [`float`][SGBSV] ]
+[ [`double`][DGBSV] ]
+[ [`complex<float>`][CGBSV] ]
+[ [`complex<double>`][ZGBSV] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/gbsv.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/gbsv.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::gbsv( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgbsv.f.html sgbsv.f], [@http://www.netlib.org/lapack/explore-html/dgbsv.f.html dgbsv.f], [@http://www.netlib.org/lapack/explore-html/cgbsv.f.html cgbsv.f], and [@http://www.netlib.org/lapack/explore-html/zgbsv.f.html zgbsv.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gbsvx.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gbsvx.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,126 @@
+
+[section gbsvx]
+
+[heading Prototype]
+There is one prototype of `gbsvx` available, please see below.
+``
+gbsvx( const char fact, MatrixAB& ab, MatrixAFB& afb, VectorIPIV& ipiv,
+ char& equed, VectorR& r, VectorC& c, MatrixB& b, MatrixX& x, Scalar >,
+ VectorFERR& ferr, VectorBERR& berr );
+``
+
+
+[heading Description]
+
+`gbsvx` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGBSVX, DGBSVX, CGBSVX, and ZGBSVX.
+`gbsvx` uses the LU factorization to compute the solution to a complex
+system of linear equations A * X = B, A**T * X = B, or A**H * X = B,
+where A is a band matrix of order N with KL subdiagonals and KU
+superdiagonals, and X and B are N-by-NRHS matrices.
+
+Error bounds on the solution and a condition estimate are also
+provided.
+
+Description
+===========
+
+The following steps are performed by this subroutine:
+
+1. If FACT = 'E', real scaling factors are computed to equilibrate
+the system:
+TRANS = 'N': diag(R)*A*diag(C) *inv(diag(C))*X = diag(R)*B
+TRANS = 'T': (diag(R)*A*diag(C))**T *inv(diag(R))*X = diag(C)*B
+TRANS = 'C': (diag(R)*A*diag(C))**H *inv(diag(R))*X = diag(C)*B
+Whether or not the system will be equilibrated depends on the
+scaling of the matrix A, but if equilibration is used, A is
+overwritten by diag(R)*A*diag(C) and B by diag(R)*B (if TRANS='N')
+or diag(C)*B (if TRANS = 'T' or 'C').
+
+2. If FACT = 'N' or 'E', the LU decomposition is used to factor the
+matrix A (after equilibration if FACT = 'E') as
+A = L * U,
+where L is a product of permutation and unit lower triangular
+matrices with KL subdiagonals, and U is upper triangular with
+KL+KU superdiagonals.
+
+3. If some U(i,i)=0, so that U is exactly singular, then the routine
+returns with INFO = i. Otherwise, the factored form of A is used
+to estimate the condition number of the matrix A. If the
+reciprocal of the condition number is less than machine precision,
+INFO = N+1 is returned as a warning, but the routine still goes on
+to solve for X and compute error bounds as described below.
+
+4. The system of equations is solved for X using the factored form
+of A.
+
+5. Iterative refinement is applied to improve the computed solution
+matrix and calculate error bounds and backward error estimates
+for it.
+
+6. If equilibration was used, the matrix X is premultiplied by
+diag(C) (if TRANS = 'N') or diag(R) (if TRANS = 'T' or 'C') so
+that it solves the original system before equilibration.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAB`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAB>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of gbsvx
+[ [ Value type of MatrixAB ] [LAPACK routine] ]
+[ [`float`][SGBSVX] ]
+[ [`double`][DGBSVX] ]
+[ [`complex<float>`][CGBSVX] ]
+[ [`complex<double>`][ZGBSVX] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/gbsvx.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/gbsvx.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::gbsvx( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgbsvx.f.html sgbsvx.f], [@http://www.netlib.org/lapack/explore-html/dgbsvx.f.html dgbsvx.f], [@http://www.netlib.org/lapack/explore-html/cgbsvx.f.html cgbsvx.f], and [@http://www.netlib.org/lapack/explore-html/zgbsvx.f.html zgbsvx.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gees.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gees.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,93 @@
+
+[section gees]
+
+[heading Prototype]
+There are two prototypes of `gees` available, please see below.
+``
+gees( const char jobvs, const char sort, logical_t* select, MatrixA& a,
+ int_t& sdim, VectorWR& wr, VectorWI& wi, MatrixVS& vs );
+``
+
+``
+gees( const char jobvs, const char sort, logical_t* select, MatrixA& a,
+ int_t& sdim, VectorW& w, MatrixVS& vs );
+``
+
+
+[heading Description]
+
+`gees` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGEES, DGEES, CGEES, and ZGEES.
+`gees` computes for an N-by-N complex nonsymmetric matrix A, the
+eigenvalues, the Schur form T, and, optionally, the matrix of Schur
+vectors Z. This gives the Schur factorization A = Z*T*(Z**H).
+
+Optionally, it also orders the eigenvalues on the diagonal of the
+Schur form so that selected eigenvalues are at the top left.
+The leading columns of Z then form an orthonormal basis for the
+invariant subspace corresponding to the selected eigenvalues.
+
+A complex matrix is in Schur form if it is upper triangular.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of gees
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SGEES] ]
+[ [`double`][DGEES] ]
+[ [`complex<float>`][CGEES] ]
+[ [`complex<double>`][ZGEES] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/gees.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/gees.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::gees( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgees.f.html sgees.f], [@http://www.netlib.org/lapack/explore-html/dgees.f.html dgees.f], [@http://www.netlib.org/lapack/explore-html/cgees.f.html cgees.f], and [@http://www.netlib.org/lapack/explore-html/zgees.f.html zgees.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/geesx.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/geesx.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,102 @@
+
+[section geesx]
+
+[heading Prototype]
+There are two prototypes of `geesx` available, please see below.
+``
+geesx( const char jobvs, const char sort, logical_t* select,
+ const char sense, MatrixA& a, int_t& sdim, VectorWR& wr,
+ VectorWI& wi, MatrixVS& vs, Scalar >, Scalar > );
+``
+
+``
+geesx( const char jobvs, const char sort, logical_t* select,
+ const char sense, MatrixA& a, int_t& sdim, VectorW& w,
+ MatrixVS& vs, Scalar >, Scalar > );
+``
+
+
+[heading Description]
+
+`geesx` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGEESX, DGEESX, CGEESX, and ZGEESX.
+`geesx` computes for an N-by-N complex nonsymmetric matrix A, the
+eigenvalues, the Schur form T, and, optionally, the matrix of Schur
+vectors Z. This gives the Schur factorization A = Z*T*(Z**H).
+
+Optionally, it also orders the eigenvalues on the diagonal of the
+Schur form so that selected eigenvalues are at the top left;
+computes a reciprocal condition number for the average of the
+selected eigenvalues (RCONDE); and computes a reciprocal condition
+number for the right invariant subspace corresponding to the
+selected eigenvalues (RCONDV). The leading columns of Z form an
+orthonormal basis for this invariant subspace.
+
+For further explanation of the reciprocal condition numbers RCONDE
+and RCONDV, see Section 4.10 of the LAPACK Users' Guide (where
+these quantities are called s and sep respectively).
+
+A complex matrix is in Schur form if it is upper triangular.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of geesx
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SGEESX] ]
+[ [`double`][DGEESX] ]
+[ [`complex<float>`][CGEESX] ]
+[ [`complex<double>`][ZGEESX] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/geesx.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/geesx.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::geesx( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgeesx.f.html sgeesx.f], [@http://www.netlib.org/lapack/explore-html/dgeesx.f.html dgeesx.f], [@http://www.netlib.org/lapack/explore-html/cgeesx.f.html cgeesx.f], and [@http://www.netlib.org/lapack/explore-html/zgeesx.f.html zgeesx.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/geev.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/geev.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,95 @@
+
+[section geev]
+
+[heading Prototype]
+There are two prototypes of `geev` available, please see below.
+``
+geev( const char jobvl, const char jobvr, MatrixA& a, VectorWR& wr,
+ VectorWI& wi, MatrixVL& vl, MatrixVR& vr );
+``
+
+``
+geev( const char jobvl, const char jobvr, MatrixA& a, VectorW& w,
+ MatrixVL& vl, MatrixVR& vr );
+``
+
+
+[heading Description]
+
+`geev` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGEEV, DGEEV, CGEEV, and ZGEEV.
+`geev` computes for an N-by-N complex nonsymmetric matrix A, the
+eigenvalues and, optionally, the left and/or right eigenvectors.
+
+The right eigenvector v(j) of A satisfies
+A * v(j) = lambda(j) * v(j)
+where lambda(j) is its eigenvalue.
+The left eigenvector u(j) of A satisfies
+u(j)**H * A = lambda(j) * u(j)**H
+where u(j)**H denotes the conjugate transpose of u(j).
+
+The computed eigenvectors are normalized to have Euclidean norm
+equal to 1 and largest component real.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of geev
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SGEEV] ]
+[ [`double`][DGEEV] ]
+[ [`complex<float>`][CGEEV] ]
+[ [`complex<double>`][ZGEEV] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/geev.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/geev.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::geev( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgeev.f.html sgeev.f], [@http://www.netlib.org/lapack/explore-html/dgeev.f.html dgeev.f], [@http://www.netlib.org/lapack/explore-html/cgeev.f.html cgeev.f], and [@http://www.netlib.org/lapack/explore-html/zgeev.f.html zgeev.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/geevx.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/geevx.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,117 @@
+
+[section geevx]
+
+[heading Prototype]
+There are two prototypes of `geevx` available, please see below.
+``
+geevx( const char balanc, const char jobvl, const char jobvr,
+ const char sense, MatrixA& a, VectorWR& wr, VectorWI& wi,
+ MatrixVL& vl, MatrixVR& vr, int_t& ilo,
+ int_t& ihi, VectorSCALE& scale, Scalar >,
+ VectorRCONDE& rconde, VectorRCONDV& rcondv );
+``
+
+``
+geevx( const char balanc, const char jobvl, const char jobvr,
+ const char sense, MatrixA& a, VectorW& w, MatrixVL& vl, MatrixVR& vr,
+ int_t& ilo, int_t& ihi, VectorSCALE& scale,
+ Scalar >, VectorRCONDE& rconde, VectorRCONDV& rcondv );
+``
+
+
+[heading Description]
+
+`geevx` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGEEVX, DGEEVX, CGEEVX, and ZGEEVX.
+`geevx` computes for an N-by-N complex nonsymmetric matrix A, the
+eigenvalues and, optionally, the left and/or right eigenvectors.
+
+Optionally also, it computes a balancing transformation to improve
+the conditioning of the eigenvalues and eigenvectors (ILO, IHI,
+SCALE, and ABNRM), reciprocal condition numbers for the eigenvalues
+(RCONDE), and reciprocal condition numbers for the right
+eigenvectors (RCONDV).
+
+The right eigenvector v(j) of A satisfies
+A * v(j) = lambda(j) * v(j)
+where lambda(j) is its eigenvalue.
+The left eigenvector u(j) of A satisfies
+u(j)**H * A = lambda(j) * u(j)**H
+where u(j)**H denotes the conjugate transpose of u(j).
+
+The computed eigenvectors are normalized to have Euclidean norm
+equal to 1 and largest component real.
+
+Balancing a matrix means permuting the rows and columns to make it
+more nearly upper triangular, and applying a diagonal similarity
+transformation D * A * D**(-1), where D is a diagonal matrix, to
+make its rows and columns closer in norm and the condition numbers
+of its eigenvalues and eigenvectors smaller. The computed
+reciprocal condition numbers correspond to the balanced matrix.
+Permuting rows and columns will not change the condition numbers
+(in exact arithmetic) but diagonal scaling will. For further
+explanation of balancing, see section 4.10.2 of the LAPACK
+Users' Guide.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of geevx
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SGEEVX] ]
+[ [`double`][DGEEVX] ]
+[ [`complex<float>`][CGEEVX] ]
+[ [`complex<double>`][ZGEEVX] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/geevx.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/geevx.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::geevx( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgeevx.f.html sgeevx.f], [@http://www.netlib.org/lapack/explore-html/dgeevx.f.html dgeevx.f], [@http://www.netlib.org/lapack/explore-html/cgeevx.f.html cgeevx.f], and [@http://www.netlib.org/lapack/explore-html/zgeevx.f.html zgeevx.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gegv.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gegv.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,111 @@
+
+[section gegv]
+
+[heading Prototype]
+There are two prototypes of `gegv` available, please see below.
+``
+gegv( const char jobvl, const char jobvr, MatrixA& a, MatrixB& b,
+ VectorALPHAR& alphar, VectorALPHAI& alphai, VectorBETA& beta,
+ MatrixVL& vl, MatrixVR& vr );
+``
+
+``
+gegv( const char jobvl, const char jobvr, MatrixA& a, MatrixB& b,
+ VectorALPHA& alpha, VectorBETA& beta, MatrixVL& vl, MatrixVR& vr );
+``
+
+
+[heading Description]
+
+`gegv` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGEGV, DGEGV, CGEGV, and ZGEGV.
+This routine is deprecated and has been replaced by routine ZGGEV.
+
+`gegv` computes the eigenvalues and, optionally, the left and/or right
+eigenvectors of a complex matrix pair (A,B).
+Given two square matrices A and B,
+the generalized nonsymmetric eigenvalue problem (GNEP) is to find the
+eigenvalues lambda and corresponding (non-zero) eigenvectors x such
+that
+A*x = lambda*B*x.
+
+An alternate form is to find the eigenvalues mu and corresponding
+eigenvectors y such that
+mu*A*y = B*y.
+
+These two forms are equivalent with mu = 1/lambda and x = y if
+neither lambda nor mu is zero. In order to deal with the case that
+lambda or mu is zero or small, two values alpha and beta are returned
+for each eigenvalue, such that lambda = alpha/beta and
+mu = beta/alpha.
+
+The vectors x and y in the above equations are right eigenvectors of
+the matrix pair (A,B). Vectors u and v satisfying
+u**H*A = lambda*u**H*B or mu*v**H*A = v**H*B
+are left eigenvectors of (A,B).
+
+Note: this routine performs "full balancing" on A and B -- see
+"Further Details", below.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of gegv
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SGEGV] ]
+[ [`double`][DGEGV] ]
+[ [`complex<float>`][CGEGV] ]
+[ [`complex<double>`][ZGEGV] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/gegv.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/gegv.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::gegv( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgegv.f.html sgegv.f], [@http://www.netlib.org/lapack/explore-html/dgegv.f.html dgegv.f], [@http://www.netlib.org/lapack/explore-html/cgegv.f.html cgegv.f], and [@http://www.netlib.org/lapack/explore-html/zgegv.f.html zgegv.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gejsv.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gejsv.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,154 @@
+
+[section gejsv]
+
+[heading Prototype]
+There is one prototype of `gejsv` available, please see below.
+``
+gejsv( const char joba, const char jobu, const char jobv,
+ const char jobr, const char jobt, const char jobp, MatrixA& a,
+ const int_t lwork );
+``
+
+
+[heading Description]
+
+`gejsv` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGEJSV and DGEJSV.
+matrix [A], where M >= N. The SVD of [A] is written as
+
+[A] = [U] * [SIGMA] * [V]^t,
+
+where [SIGMA] is an N-by-N (M-by-N) matrix which is zero except for its N
+diagonal elements, [U] is an M-by-N (or M-by-M) orthonormal matrix, and
+[V] is an N-by-N orthogonal matrix. The diagonal elements of [SIGMA] are
+the singular values of [A]. The columns of [U] and [V] are the left and
+the right singular vectors of [A], respectively. The matrices [U] and [V]
+are computed and stored in the arrays U and V, respectively. The diagonal
+of [SIGMA] is computed and stored in the array SVA.
+
+Further details
+~~~~~~~~~~~~~~~
+`gejsv` implements a preconditioned Jacobi SVD algorithm. It uses SGEQP3,
+SGEQRF, and SGELQF as preprocessors and preconditioners. Optionally, an
+additional row pivoting can be used as a preprocessor, which in some
+cases results in much higher accuracy. An example is matrix A with the
+structure A = D1 * C * D2, where D1, D2 are arbitrarily ill-conditioned
+diagonal matrices and C is well-conditioned matrix. In that case, complete
+pivoting in the first QR factorizations provides accuracy dependent on the
+condition number of C, and independent of D1, D2. Such higher accuracy is
+not completely understood theoretically, but it works well in practice.
+Further, if A can be written as A = B*D, with well-conditioned B and some
+diagonal D, then the high accuracy is guaranteed, both theoretically and
+in software, independent of D. For more details see [1], [2].
+The computational range for the singular values can be the full range
+( UNDERFLOW,OVERFLOW ), provided that the machine arithmetic and the BLAS
+& LAPACK routines called by `gejsv` are implemented to work in that range.
+If that is not the case, then the restriction for safe computation with
+the singular values in the range of normalized IEEE numbers is that the
+spectral condition number kappa(A)=sigma_max(A)/sigma_min(A) does not
+overflow. This code (`gejsv`) is best used in this restricted range,
+meaning that singular values of magnitude below ||A||_2 / SLAMCH('O') are
+returned as zeros. See JOBR for details on this.
+Further, this implementation is somewhat slower than the one described
+in [1,2] due to replacement of some non-LAPACK components, and because
+the choice of some tuning parameters in the iterative part (DGESVJ) is
+left to the implementer on a particular machine.
+The rank revealing QR factorization (in this code: SGEQP3) should be
+implemented as in [3]. We have a new version of SGEQP3 under development
+that is more robust than the current one in LAPACK, with a cleaner cut in
+rank defficient cases. It will be available in the SIGMA library [4].
+If M is much larger than N, it is obvious that the inital QRF with
+column pivoting can be preprocessed by the QRF without pivoting. That
+well known trick is not used in `gejsv` because in some cases heavy row
+weighting can be treated with complete pivoting. The overhead in cases
+M much larger than N is then only due to pivoting, but the benefits in
+terms of accuracy have prevailed. The implementer/user can incorporate
+this extra QRF step easily. The implementer can also improve data movement
+(matrix transpose, matrix copy, matrix transposed copy) - this
+implementation of `gejsv` uses only the simplest, naive data movement.
+
+Contributors
+~~~~~~~~~~~~
+Zlatko Drmac (Zagreb, Croatia) and Kresimir Veselic (Hagen, Germany)
+
+References
+~~~~~~~~~~
+[1] Z. Drmac and K. Veselic: New fast and accurate Jacobi SVD algorithm I.
+SIAM J. Matrix Anal. Appl. Vol. 35, No. 2 (2008), pp. 1322-1342.
+LAPACK Working note 169.
+[2] Z. Drmac and K. Veselic: New fast and accurate Jacobi SVD algorithm II.
+SIAM J. Matrix Anal. Appl. Vol. 35, No. 2 (2008), pp. 1343-1362.
+LAPACK Working note 170.
+[3] Z. Drmac and Z. Bujanovic: On the failure of rank-revealing QR
+factorization software - a case study.
+ACM Trans. Math. Softw. Vol. 35, No 2 (2008), pp. 1-28.
+LAPACK Working note 176.
+[4] Z. Drmac: SIGMA - mathematical software library for accurate SVD, PSV,
+QSVD, (H,K)-SVD computations.
+Department of Mathematics, University of Zagreb, 2008.
+
+Bugs, examples and comments
+~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Please report all bugs and send interesting examples and/or comments to
+drmac_at_math.hr. Thank you.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of gejsv
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SGEJSV] ]
+[ [`double`][DGEJSV] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/gejsv.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/gejsv.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::gejsv( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgejsv.f.html sgejsv.f] and [@http://www.netlib.org/lapack/explore-html/dgejsv.f.html dgejsv.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gels.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gels.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,101 @@
+
+[section gels]
+
+[heading Prototype]
+There is one prototype of `gels` available, please see below.
+``
+gels( MatrixA& a, MatrixB& b );
+``
+
+
+[heading Description]
+
+`gels` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGELS, DGELS, CGELS, and ZGELS.
+`gels` solves overdetermined or underdetermined complex linear systems
+involving an M-by-N matrix A, or its conjugate-transpose, using a QR
+or LQ factorization of A. It is assumed that A has full rank.
+
+The following options are provided:
+
+1. If TRANS = 'N' and m >= n: find the least squares solution of
+an overdetermined system, i.e., solve the least squares problem
+minimize || B - A*X ||.
+
+2. If TRANS = 'N' and m < n: find the minimum norm solution of
+an underdetermined system A * X = B.
+
+3. If TRANS = 'C' and m >= n: find the minimum norm solution of
+an undetermined system A**H * X = B.
+
+4. If TRANS = 'C' and m < n: find the least squares solution of
+an overdetermined system, i.e., solve the least squares problem
+minimize || B - A**H * X ||.
+
+Several right hand side vectors b and solution vectors x can be
+handled in a single call; they are stored as the columns of the
+M-by-NRHS right hand side matrix B and the N-by-NRHS solution
+matrix X.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of gels
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SGELS] ]
+[ [`double`][DGELS] ]
+[ [`complex<float>`][CGELS] ]
+[ [`complex<double>`][ZGELS] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/gels.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/gels.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::gels( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgels.f.html sgels.f], [@http://www.netlib.org/lapack/explore-html/dgels.f.html dgels.f], [@http://www.netlib.org/lapack/explore-html/cgels.f.html cgels.f], and [@http://www.netlib.org/lapack/explore-html/zgels.f.html zgels.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gelsd.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gelsd.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,112 @@
+
+[section gelsd]
+
+[heading Prototype]
+There are two prototypes of `gelsd` available, please see below.
+``
+gelsd( MatrixA& a, MatrixB& b, VectorS& s, const Scalar >,
+ int_t& rank );
+``
+
+``
+gelsd( const MatrixA& a, MatrixB& b, VectorS& s, const Scalar >,
+ int_t& rank );
+``
+
+
+[heading Description]
+
+`gelsd` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGELSD, DGELSD, CGELSD, and ZGELSD.
+`gelsd` computes the minimum-norm solution to a real linear least
+squares problem:
+minimize 2-norm(| b - A*x |)
+using the singular value decomposition (SVD) of A. A is an M-by-N
+matrix which may be rank-deficient.
+
+Several right hand side vectors b and solution vectors x can be
+handled in a single call; they are stored as the columns of the
+M-by-NRHS right hand side matrix B and the N-by-NRHS solution
+matrix X.
+
+The problem is solved in three steps:
+(1) Reduce the coefficient matrix A to bidiagonal form with
+Householder tranformations, reducing the original problem
+into a "bidiagonal least squares problem" (BLS)
+(2) Solve the BLS using a divide and conquer approach.
+(3) Apply back all the Householder tranformations to solve
+the original least squares problem.
+
+The effective rank of A is determined by treating as zero those
+singular values which are less than RCOND times the largest singular
+value.
+
+The divide and conquer algorithm makes very mild assumptions about
+floating point arithmetic. It will work on machines with a guard
+digit in add/subtract, or on those binary machines without guard
+digits which subtract like the Cray X-MP, Cray Y-MP, Cray C-90, or
+Cray-2. It could conceivably fail on hexadecimal or decimal machines
+without guard digits, but we know of none.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of gelsd
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SGELSD] ]
+[ [`double`][DGELSD] ]
+[ [`complex<float>`][CGELSD] ]
+[ [`complex<double>`][ZGELSD] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/gelsd.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/gelsd.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::gelsd( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgelsd.f.html sgelsd.f], [@http://www.netlib.org/lapack/explore-html/dgelsd.f.html dgelsd.f], [@http://www.netlib.org/lapack/explore-html/cgelsd.f.html cgelsd.f], and [@http://www.netlib.org/lapack/explore-html/zgelsd.f.html zgelsd.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gelss.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gelss.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,94 @@
+
+[section gelss]
+
+[heading Prototype]
+There is one prototype of `gelss` available, please see below.
+``
+gelss( MatrixA& a, MatrixB& b, VectorS& s, const Scalar >,
+ int_t& rank );
+``
+
+
+[heading Description]
+
+`gelss` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGELSS, DGELSS, CGELSS, and ZGELSS.
+`gelss` computes the minimum norm solution to a complex linear
+least squares problem:
+
+Minimize 2-norm(| b - A*x |).
+
+using the singular value decomposition (SVD) of A. A is an M-by-N
+matrix which may be rank-deficient.
+
+Several right hand side vectors b and solution vectors x can be
+handled in a single call; they are stored as the columns of the
+M-by-NRHS right hand side matrix B and the N-by-NRHS solution matrix
+X.
+
+The effective rank of A is determined by treating as zero those
+singular values which are less than RCOND times the largest singular
+value.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of gelss
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SGELSS] ]
+[ [`double`][DGELSS] ]
+[ [`complex<float>`][CGELSS] ]
+[ [`complex<double>`][ZGELSS] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/gelss.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/gelss.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::gelss( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgelss.f.html sgelss.f], [@http://www.netlib.org/lapack/explore-html/dgelss.f.html dgelss.f], [@http://www.netlib.org/lapack/explore-html/cgelss.f.html cgelss.f], and [@http://www.netlib.org/lapack/explore-html/zgelss.f.html zgelss.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gelsy.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gelsy.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,114 @@
+
+[section gelsy]
+
+[heading Prototype]
+There is one prototype of `gelsy` available, please see below.
+``
+gelsy( MatrixA& a, MatrixB& b, VectorJPVT& jpvt, const Scalar >,
+ int_t& rank );
+``
+
+
+[heading Description]
+
+`gelsy` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGELSY, DGELSY, CGELSY, and ZGELSY.
+`gelsy` computes the minimum-norm solution to a complex linear least
+squares problem:
+minimize || A * X - B ||
+using a complete orthogonal factorization of A. A is an M-by-N
+matrix which may be rank-deficient.
+
+Several right hand side vectors b and solution vectors x can be
+handled in a single call; they are stored as the columns of the
+M-by-NRHS right hand side matrix B and the N-by-NRHS solution
+matrix X.
+
+The routine first computes a QR factorization with column pivoting:
+A * P = Q * [ R11 R12 ]
+[ 0 R22 ]
+with R11 defined as the largest leading submatrix whose estimated
+condition number is less than 1/RCOND. The order of R11, RANK,
+is the effective rank of A.
+
+Then, R22 is considered to be negligible, and R12 is annihilated
+by unitary transformations from the right, arriving at the
+complete orthogonal factorization:
+A * P = Q * [ T11 0 ] * Z
+[ 0 0 ]
+The minimum-norm solution is then
+X = P * Z' [ inv(T11)*Q1'*B ]
+[ 0 ]
+where Q1 consists of the first RANK columns of Q.
+
+This routine is basically identical to the original xGELSX except
+three differences:
+o The permutation of matrix B (the right hand side) is faster and
+more simple.
+o The call to the subroutine xGEQPF has been substituted by the
+the call to the subroutine xGEQP3. This subroutine is a Blas-3
+version of the QR factorization with column pivoting.
+o Matrix B (the right hand side) is updated with Blas-3.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of gelsy
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SGELSY] ]
+[ [`double`][DGELSY] ]
+[ [`complex<float>`][CGELSY] ]
+[ [`complex<double>`][ZGELSY] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/gelsy.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/gelsy.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::gelsy( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgelsy.f.html sgelsy.f], [@http://www.netlib.org/lapack/explore-html/dgelsy.f.html dgelsy.f], [@http://www.netlib.org/lapack/explore-html/cgelsy.f.html cgelsy.f], and [@http://www.netlib.org/lapack/explore-html/zgelsy.f.html zgelsy.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gesdd.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gesdd.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,99 @@
+
+[section gesdd]
+
+[heading Prototype]
+There is one prototype of `gesdd` available, please see below.
+``
+gesdd( const char jobz, MatrixA& a, VectorS& s, MatrixU& u,
+ MatrixVT& vt );
+``
+
+
+[heading Description]
+
+`gesdd` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGESDD, DGESDD, CGESDD, and ZGESDD.
+`gesdd` computes the singular value decomposition (SVD) of a complex
+M-by-N matrix A, optionally computing the left and/or right singular
+vectors, by using divide-and-conquer method. The SVD is written
+
+A = U * SIGMA * conjugate-transpose(V)
+
+where SIGMA is an M-by-N matrix which is zero except for its
+min(m,n) diagonal elements, U is an M-by-M unitary matrix, and
+V is an N-by-N unitary matrix. The diagonal elements of SIGMA
+are the singular values of A; they are real and non-negative, and
+are returned in descending order. The first min(m,n) columns of
+U and V are the left and right singular vectors of A.
+
+Note that the routine returns VT = V**H, not V.
+
+The divide and conquer algorithm makes very mild assumptions about
+floating point arithmetic. It will work on machines with a guard
+digit in add/subtract, or on those binary machines without guard
+digits which subtract like the Cray X-MP, Cray Y-MP, Cray C-90, or
+Cray-2. It could conceivably fail on hexadecimal or decimal machines
+without guard digits, but we know of none.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of gesdd
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SGESDD] ]
+[ [`double`][DGESDD] ]
+[ [`complex<float>`][CGESDD] ]
+[ [`complex<double>`][ZGESDD] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/gesdd.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/gesdd.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::gesdd( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgesdd.f.html sgesdd.f], [@http://www.netlib.org/lapack/explore-html/dgesdd.f.html dgesdd.f], [@http://www.netlib.org/lapack/explore-html/cgesdd.f.html cgesdd.f], and [@http://www.netlib.org/lapack/explore-html/zgesdd.f.html zgesdd.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gesv.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gesv.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,87 @@
+
+[section gesv]
+
+[heading Prototype]
+There is one prototype of `gesv` available, please see below.
+``
+gesv( MatrixA& a, VectorIPIV& ipiv, MatrixB& b );
+``
+
+
+[heading Description]
+
+`gesv` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGESV, DGESV, CGESV, and ZGESV.
+`gesv` computes the solution to a complex system of linear equations
+A * X = B,
+where A is an N-by-N matrix and X and B are N-by-NRHS matrices.
+
+The LU decomposition with partial pivoting and row interchanges is
+used to factor A as
+A = P * L * U,
+where P is a permutation matrix, L is unit lower triangular, and U is
+upper triangular. The factored form of A is then used to solve the
+system of equations A * X = B.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of gesv
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SGESV] ]
+[ [`double`][DGESV] ]
+[ [`complex<float>`][CGESV] ]
+[ [`complex<double>`][ZGESV] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/gesv.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/gesv.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::gesv( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgesv.f.html sgesv.f], [@http://www.netlib.org/lapack/explore-html/dgesv.f.html dgesv.f], [@http://www.netlib.org/lapack/explore-html/cgesv.f.html cgesv.f], and [@http://www.netlib.org/lapack/explore-html/zgesv.f.html zgesv.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gesvd.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gesvd.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,92 @@
+
+[section gesvd]
+
+[heading Prototype]
+There is one prototype of `gesvd` available, please see below.
+``
+gesvd( const char jobu, const char jobvt, MatrixA& a, VectorS& s,
+ MatrixU& u, MatrixVT& vt );
+``
+
+
+[heading Description]
+
+`gesvd` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGESVD, DGESVD, CGESVD, and ZGESVD.
+`gesvd` computes the singular value decomposition (SVD) of a complex
+M-by-N matrix A, optionally computing the left and/or right singular
+vectors. The SVD is written
+
+A = U * SIGMA * conjugate-transpose(V)
+
+where SIGMA is an M-by-N matrix which is zero except for its
+min(m,n) diagonal elements, U is an M-by-M unitary matrix, and
+V is an N-by-N unitary matrix. The diagonal elements of SIGMA
+are the singular values of A; they are real and non-negative, and
+are returned in descending order. The first min(m,n) columns of
+U and V are the left and right singular vectors of A.
+
+Note that the routine returns V**H, not V.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of gesvd
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SGESVD] ]
+[ [`double`][DGESVD] ]
+[ [`complex<float>`][CGESVD] ]
+[ [`complex<double>`][ZGESVD] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/gesvd.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/gesvd.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::gesvd( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgesvd.f.html sgesvd.f], [@http://www.netlib.org/lapack/explore-html/dgesvd.f.html dgesvd.f], [@http://www.netlib.org/lapack/explore-html/cgesvd.f.html cgesvd.f], and [@http://www.netlib.org/lapack/explore-html/zgesvd.f.html zgesvd.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gesvx.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gesvx.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,125 @@
+
+[section gesvx]
+
+[heading Prototype]
+There is one prototype of `gesvx` available, please see below.
+``
+gesvx( const char fact, MatrixA& a, MatrixAF& af, VectorIPIV& ipiv,
+ char& equed, VectorR& r, VectorC& c, MatrixB& b, MatrixX& x, Scalar >,
+ VectorFERR& ferr, VectorBERR& berr );
+``
+
+
+[heading Description]
+
+`gesvx` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGESVX, DGESVX, CGESVX, and ZGESVX.
+`gesvx` uses the LU factorization to compute the solution to a complex
+system of linear equations
+A * X = B,
+where A is an N-by-N matrix and X and B are N-by-NRHS matrices.
+
+Error bounds on the solution and a condition estimate are also
+provided.
+
+Description
+===========
+
+The following steps are performed:
+
+1. If FACT = 'E', real scaling factors are computed to equilibrate
+the system:
+TRANS = 'N': diag(R)*A*diag(C) *inv(diag(C))*X = diag(R)*B
+TRANS = 'T': (diag(R)*A*diag(C))**T *inv(diag(R))*X = diag(C)*B
+TRANS = 'C': (diag(R)*A*diag(C))**H *inv(diag(R))*X = diag(C)*B
+Whether or not the system will be equilibrated depends on the
+scaling of the matrix A, but if equilibration is used, A is
+overwritten by diag(R)*A*diag(C) and B by diag(R)*B (if TRANS='N')
+or diag(C)*B (if TRANS = 'T' or 'C').
+
+2. If FACT = 'N' or 'E', the LU decomposition is used to factor the
+matrix A (after equilibration if FACT = 'E') as
+A = P * L * U,
+where P is a permutation matrix, L is a unit lower triangular
+matrix, and U is upper triangular.
+
+3. If some U(i,i)=0, so that U is exactly singular, then the routine
+returns with INFO = i. Otherwise, the factored form of A is used
+to estimate the condition number of the matrix A. If the
+reciprocal of the condition number is less than machine precision,
+INFO = N+1 is returned as a warning, but the routine still goes on
+to solve for X and compute error bounds as described below.
+
+4. The system of equations is solved for X using the factored form
+of A.
+
+5. Iterative refinement is applied to improve the computed solution
+matrix and calculate error bounds and backward error estimates
+for it.
+
+6. If equilibration was used, the matrix X is premultiplied by
+diag(C) (if TRANS = 'N') or diag(R) (if TRANS = 'T' or 'C') so
+that it solves the original system before equilibration.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of gesvx
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SGESVX] ]
+[ [`double`][DGESVX] ]
+[ [`complex<float>`][CGESVX] ]
+[ [`complex<double>`][ZGESVX] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/gesvx.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/gesvx.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::gesvx( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgesvx.f.html sgesvx.f], [@http://www.netlib.org/lapack/explore-html/dgesvx.f.html dgesvx.f], [@http://www.netlib.org/lapack/explore-html/cgesvx.f.html cgesvx.f], and [@http://www.netlib.org/lapack/explore-html/zgesvx.f.html zgesvx.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gges.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gges.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,112 @@
+
+[section gges]
+
+[heading Prototype]
+There are two prototypes of `gges` available, please see below.
+``
+gges( const char jobvsl, const char jobvsr, const char sort,
+ logical_t* selctg, MatrixA& a, MatrixB& b, int_t& sdim,
+ VectorALPHAR& alphar, VectorALPHAI& alphai, VectorBETA& beta,
+ MatrixVSL& vsl, MatrixVSR& vsr );
+``
+
+``
+gges( const char jobvsl, const char jobvsr, const char sort,
+ logical_t* selctg, MatrixA& a, MatrixB& b, int_t& sdim,
+ VectorALPHA& alpha, VectorBETA& beta, MatrixVSL& vsl, MatrixVSR& vsr );
+``
+
+
+[heading Description]
+
+`gges` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGGES, DGGES, CGGES, and ZGGES.
+`gges` computes for a pair of N-by-N complex nonsymmetric matrices
+(A,B), the generalized eigenvalues, the generalized complex Schur
+form (S, T), and optionally left and/or right Schur vectors (VSL
+and VSR). This gives the generalized Schur factorization
+
+(A,B) = ( (VSL)*S*(VSR)**H, (VSL)*T*(VSR)**H )
+
+where (VSR)**H is the conjugate-transpose of VSR.
+
+Optionally, it also orders the eigenvalues so that a selected cluster
+of eigenvalues appears in the leading diagonal blocks of the upper
+triangular matrix S and the upper triangular matrix T. The leading
+columns of VSL and VSR then form an unitary basis for the
+corresponding left and right eigenspaces (deflating subspaces).
+
+(If only the generalized eigenvalues are needed, use the driver
+ZGGEV instead, which is faster.)
+
+A generalized eigenvalue for a pair of matrices (A,B) is a scalar w
+or a ratio alpha/beta = w, such that A - w*B is singular. It is
+usually represented as the pair (alpha,beta), as there is a
+reasonable interpretation for beta=0, and even for both being zero.
+
+A pair of matrices (S,T) is in generalized complex Schur form if S
+and T are upper triangular and, in addition, the diagonal elements
+of T are non-negative real numbers.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of gges
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SGGES] ]
+[ [`double`][DGGES] ]
+[ [`complex<float>`][CGGES] ]
+[ [`complex<double>`][ZGGES] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/gges.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/gges.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::gges( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgges.f.html sgges.f], [@http://www.netlib.org/lapack/explore-html/dgges.f.html dgges.f], [@http://www.netlib.org/lapack/explore-html/cgges.f.html cgges.f], and [@http://www.netlib.org/lapack/explore-html/zgges.f.html zgges.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/ggesx.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/ggesx.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,116 @@
+
+[section ggesx]
+
+[heading Prototype]
+There are two prototypes of `ggesx` available, please see below.
+``
+ggesx( const char jobvsl, const char jobvsr, const char sort,
+ logical_t* selctg, const char sense, MatrixA& a, MatrixB& b,
+ int_t& sdim, VectorALPHAR& alphar, VectorALPHAI& alphai,
+ VectorBETA& beta, MatrixVSL& vsl, MatrixVSR& vsr,
+ VectorRCONDE& rconde, VectorRCONDV& rcondv );
+``
+
+``
+ggesx( const char jobvsl, const char jobvsr, const char sort,
+ logical_t* selctg, const char sense, MatrixA& a, MatrixB& b,
+ int_t& sdim, VectorALPHA& alpha, VectorBETA& beta,
+ MatrixVSL& vsl, MatrixVSR& vsr, VectorRCONDE& rconde,
+ VectorRCONDV& rcondv );
+``
+
+
+[heading Description]
+
+`ggesx` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGGESX, DGGESX, CGGESX, and ZGGESX.
+`ggesx` computes for a pair of N-by-N complex nonsymmetric matrices
+(A,B), the generalized eigenvalues, the complex Schur form (S,T),
+and, optionally, the left and/or right matrices of Schur vectors (VSL
+and VSR). This gives the generalized Schur factorization
+
+(A,B) = ( (VSL) S (VSR)**H, (VSL) T (VSR)**H )
+
+where (VSR)**H is the conjugate-transpose of VSR.
+
+Optionally, it also orders the eigenvalues so that a selected cluster
+of eigenvalues appears in the leading diagonal blocks of the upper
+triangular matrix S and the upper triangular matrix T; computes
+a reciprocal condition number for the average of the selected
+eigenvalues (RCONDE); and computes a reciprocal condition number for
+the right and left deflating subspaces corresponding to the selected
+eigenvalues (RCONDV). The leading columns of VSL and VSR then form
+an orthonormal basis for the corresponding left and right eigenspaces
+(deflating subspaces).
+
+A generalized eigenvalue for a pair of matrices (A,B) is a scalar w
+or a ratio alpha/beta = w, such that A - w*B is singular. It is
+usually represented as the pair (alpha,beta), as there is a
+reasonable interpretation for beta=0 or for both being zero.
+
+A pair of matrices (S,T) is in generalized complex Schur form if T is
+upper triangular with non-negative diagonal and S is upper
+triangular.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of ggesx
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SGGESX] ]
+[ [`double`][DGGESX] ]
+[ [`complex<float>`][CGGESX] ]
+[ [`complex<double>`][ZGGESX] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/ggesx.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/ggesx.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::ggesx( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sggesx.f.html sggesx.f], [@http://www.netlib.org/lapack/explore-html/dggesx.f.html dggesx.f], [@http://www.netlib.org/lapack/explore-html/cggesx.f.html cggesx.f], and [@http://www.netlib.org/lapack/explore-html/zggesx.f.html zggesx.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/ggev.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/ggev.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,105 @@
+
+[section ggev]
+
+[heading Prototype]
+There are two prototypes of `ggev` available, please see below.
+``
+ggev( const char jobvl, const char jobvr, MatrixA& a, MatrixB& b,
+ VectorALPHAR& alphar, VectorALPHAI& alphai, VectorBETA& beta,
+ MatrixVL& vl, MatrixVR& vr );
+``
+
+``
+ggev( const char jobvl, const char jobvr, MatrixA& a, MatrixB& b,
+ VectorALPHA& alpha, VectorBETA& beta, MatrixVL& vl, MatrixVR& vr );
+``
+
+
+[heading Description]
+
+`ggev` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGGEV, DGGEV, CGGEV, and ZGGEV.
+`ggev` computes for a pair of N-by-N complex nonsymmetric matrices
+(A,B), the generalized eigenvalues, and optionally, the left and/or
+right generalized eigenvectors.
+
+A generalized eigenvalue for a pair of matrices (A,B) is a scalar
+lambda or a ratio alpha/beta = lambda, such that A - lambda*B is
+singular. It is usually represented as the pair (alpha,beta), as
+there is a reasonable interpretation for beta=0, and even for both
+being zero.
+
+The right generalized eigenvector v(j) corresponding to the
+generalized eigenvalue lambda(j) of (A,B) satisfies
+
+A * v(j) = lambda(j) * B * v(j).
+
+The left generalized eigenvector u(j) corresponding to the
+generalized eigenvalues lambda(j) of (A,B) satisfies
+
+u(j)**H * A = lambda(j) * u(j)**H * B
+
+where u(j)**H is the conjugate-transpose of u(j).
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of ggev
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SGGEV] ]
+[ [`double`][DGGEV] ]
+[ [`complex<float>`][CGGEV] ]
+[ [`complex<double>`][ZGGEV] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/ggev.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/ggev.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::ggev( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sggev.f.html sggev.f], [@http://www.netlib.org/lapack/explore-html/dggev.f.html dggev.f], [@http://www.netlib.org/lapack/explore-html/cggev.f.html cggev.f], and [@http://www.netlib.org/lapack/explore-html/zggev.f.html zggev.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/ggevx.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/ggevx.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,113 @@
+
+[section ggevx]
+
+[heading Prototype]
+There are two prototypes of `ggevx` available, please see below.
+``
+ggevx( const char balanc, const char jobvl, const char jobvr,
+ const char sense, MatrixA& a, MatrixB& b, VectorALPHAR& alphar,
+ VectorALPHAI& alphai, VectorBETA& beta, MatrixVL& vl, MatrixVR& vr,
+ int_t& ilo, int_t& ihi, VectorLSCALE& lscale,
+ VectorRSCALE& rscale, Scalar >, Scalar >, VectorRCONDE& rconde,
+ VectorRCONDV& rcondv );
+``
+
+``
+ggevx( const char balanc, const char jobvl, const char jobvr,
+ const char sense, MatrixA& a, MatrixB& b, VectorALPHA& alpha,
+ VectorBETA& beta, MatrixVL& vl, MatrixVR& vr, int_t& ilo,
+ int_t& ihi, VectorLSCALE& lscale, VectorRSCALE& rscale,
+ Scalar >, Scalar >, VectorRCONDE& rconde, VectorRCONDV& rcondv );
+``
+
+
+[heading Description]
+
+`ggevx` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGGEVX, DGGEVX, CGGEVX, and ZGGEVX.
+`ggevx` computes for a pair of N-by-N complex nonsymmetric matrices
+(A,B) the generalized eigenvalues, and optionally, the left and/or
+right generalized eigenvectors.
+
+Optionally, it also computes a balancing transformation to improve
+the conditioning of the eigenvalues and eigenvectors (ILO, IHI,
+LSCALE, RSCALE, ABNRM, and BBNRM), reciprocal condition numbers for
+the eigenvalues (RCONDE), and reciprocal condition numbers for the
+right eigenvectors (RCONDV).
+
+A generalized eigenvalue for a pair of matrices (A,B) is a scalar
+lambda or a ratio alpha/beta = lambda, such that A - lambda*B is
+singular. It is usually represented as the pair (alpha,beta), as
+there is a reasonable interpretation for beta=0, and even for both
+being zero.
+
+The right eigenvector v(j) corresponding to the eigenvalue lambda(j)
+of (A,B) satisfies
+A * v(j) = lambda(j) * B * v(j) .
+The left eigenvector u(j) corresponding to the eigenvalue lambda(j)
+of (A,B) satisfies
+u(j)**H * A = lambda(j) * u(j)**H * B.
+where u(j)**H is the conjugate-transpose of u(j).
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of ggevx
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SGGEVX] ]
+[ [`double`][DGGEVX] ]
+[ [`complex<float>`][CGGEVX] ]
+[ [`complex<double>`][ZGGEVX] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/ggevx.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/ggevx.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::ggevx( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sggevx.f.html sggevx.f], [@http://www.netlib.org/lapack/explore-html/dggevx.f.html dggevx.f], [@http://www.netlib.org/lapack/explore-html/cggevx.f.html cggevx.f], and [@http://www.netlib.org/lapack/explore-html/zggevx.f.html zggevx.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/ggglm.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/ggglm.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,103 @@
+
+[section ggglm]
+
+[heading Prototype]
+There is one prototype of `ggglm` available, please see below.
+``
+ggglm( MatrixA& a, MatrixB& b, VectorD& d, VectorX& x, VectorY& y );
+``
+
+
+[heading Description]
+
+`ggglm` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGGGLM, DGGGLM, CGGGLM, and ZGGGLM.
+`ggglm` solves a general Gauss-Markov linear model (GLM) problem:
+
+minimize || y ||_2 subject to d = A*x + B*y
+x
+
+where A is an N-by-M matrix, B is an N-by-P matrix, and d is a
+given N-vector. It is assumed that M <= N <= M+P, and
+
+rank(A) = M and rank( A B ) = N.
+
+Under these assumptions, the constrained equation is always
+consistent, and there is a unique solution x and a minimal 2-norm
+solution y, which is obtained using a generalized QR factorization
+of the matrices (A, B) given by
+
+A = Q*(R), B = Q*T*Z.
+(0)
+
+In particular, if matrix B is square nonsingular, then the problem
+GLM is equivalent to the following weighted linear least squares
+problem
+
+minimize || inv(B)*(d-A*x) ||_2
+x
+
+where inv(B) denotes the inverse of B.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of ggglm
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SGGGLM] ]
+[ [`double`][DGGGLM] ]
+[ [`complex<float>`][CGGGLM] ]
+[ [`complex<double>`][ZGGGLM] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/ggglm.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/ggglm.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::ggglm( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sggglm.f.html sggglm.f], [@http://www.netlib.org/lapack/explore-html/dggglm.f.html dggglm.f], [@http://www.netlib.org/lapack/explore-html/cggglm.f.html cggglm.f], and [@http://www.netlib.org/lapack/explore-html/zggglm.f.html zggglm.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gglse.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gglse.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,94 @@
+
+[section gglse]
+
+[heading Prototype]
+There is one prototype of `gglse` available, please see below.
+``
+gglse( MatrixA& a, MatrixB& b, VectorC& c, VectorD& d, VectorX& x );
+``
+
+
+[heading Description]
+
+`gglse` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGGLSE, DGGLSE, CGGLSE, and ZGGLSE.
+`gglse` solves the linear equality-constrained least squares (LSE)
+problem:
+
+minimize || c - A*x ||_2 subject to B*x = d
+
+where A is an M-by-N matrix, B is a P-by-N matrix, c is a given
+M-vector, and d is a given P-vector. It is assumed that
+P <= N <= M+P, and
+
+rank(B) = P and rank( ( A ) ) = N.
+( ( B ) )
+
+These conditions ensure that the LSE problem has a unique solution,
+which is obtained using a generalized RQ factorization of the
+matrices (B, A) given by
+
+B = (0 R)*Q, A = Z*T*Q.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of gglse
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SGGLSE] ]
+[ [`double`][DGGLSE] ]
+[ [`complex<float>`][CGGLSE] ]
+[ [`complex<double>`][ZGGLSE] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/gglse.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/gglse.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::gglse( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgglse.f.html sgglse.f], [@http://www.netlib.org/lapack/explore-html/dgglse.f.html dgglse.f], [@http://www.netlib.org/lapack/explore-html/cgglse.f.html cgglse.f], and [@http://www.netlib.org/lapack/explore-html/zgglse.f.html zgglse.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/ggsvd.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/ggsvd.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,157 @@
+
+[section ggsvd]
+
+[heading Prototype]
+There is one prototype of `ggsvd` available, please see below.
+``
+ggsvd( const char jobu, const char jobv, const char jobq,
+ int_t& k, int_t& l, MatrixA& a, MatrixB& b,
+ VectorALPHA& alpha, VectorBETA& beta, MatrixU& u, MatrixV& v,
+ MatrixQ& q );
+``
+
+
+[heading Description]
+
+`ggsvd` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGGSVD, DGGSVD, CGGSVD, and ZGGSVD.
+`ggsvd` computes the generalized singular value decomposition (GSVD)
+of an M-by-N complex matrix A and P-by-N complex matrix B:
+
+U'*A*Q = D1*( 0 R ), V'*B*Q = D2*( 0 R )
+
+where U, V and Q are unitary matrices, and Z' means the conjugate
+transpose of Z. Let K+L = the effective numerical rank of the
+matrix (A',B')', then R is a (K+L)-by-(K+L) nonsingular upper
+triangular matrix, D1 and D2 are M-by-(K+L) and P-by-(K+L) "diagonal"
+matrices and of the following structures, respectively:
+
+If M-K-L >= 0,
+
+K L
+D1 = K ( I 0 )
+L ( 0 C )
+M-K-L ( 0 0 )
+
+K L
+D2 = L ( 0 S )
+P-L ( 0 0 )
+
+N-K-L K L
+( 0 R ) = K ( 0 R11 R12 )
+L ( 0 0 R22 )
+where
+
+C = diag( ALPHA(K+1), ... , ALPHA(K+L) ),
+S = diag( BETA(K+1), ... , BETA(K+L) ),
+C**2 + S**2 = I.
+
+R is stored in A(1:K+L,N-K-L+1:N) on exit.
+
+If M-K-L < 0,
+
+K M-K K+L-M
+D1 = K ( I 0 0 )
+M-K ( 0 C 0 )
+
+K M-K K+L-M
+D2 = M-K ( 0 S 0 )
+K+L-M ( 0 0 I )
+P-L ( 0 0 0 )
+
+N-K-L K M-K K+L-M
+( 0 R ) = K ( 0 R11 R12 R13 )
+M-K ( 0 0 R22 R23 )
+K+L-M ( 0 0 0 R33 )
+
+where
+
+C = diag( ALPHA(K+1), ... , ALPHA(M) ),
+S = diag( BETA(K+1), ... , BETA(M) ),
+C**2 + S**2 = I.
+
+(R11 R12 R13 ) is stored in A(1:M, N-K-L+1:N), and R33 is stored
+( 0 R22 R23 )
+in B(M-K+1:L,N+M-K-L+1:N) on exit.
+
+The routine computes C, S, R, and optionally the unitary
+transformation matrices U, V and Q.
+
+In particular, if B is an N-by-N nonsingular matrix, then the GSVD of
+A and B implicitly gives the SVD of A*inv(B):
+A*inv(B) = U*(D1*inv(D2))*V'.
+If ( A',B')' has orthnormal columns, then the GSVD of A and B is also
+equal to the CS decomposition of A and B. Furthermore, the GSVD can
+be used to derive the solution of the eigenvalue problem:
+A'*A x = lambda* B'*B x.
+In some literature, the GSVD of A and B is presented in the form
+U'*A*X = ( 0 D1 ), V'*B*X = ( 0 D2 )
+where U and V are orthogonal and X is nonsingular, and D1 and D2 are
+``diagonal''. The former GSVD form can be converted to the latter
+form by taking the nonsingular matrix X as
+
+X = Q*( I 0 )
+( 0 inv(R) )
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of ggsvd
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SGGSVD] ]
+[ [`double`][DGGSVD] ]
+[ [`complex<float>`][CGGSVD] ]
+[ [`complex<double>`][ZGGSVD] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/ggsvd.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/ggsvd.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::ggsvd( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sggsvd.f.html sggsvd.f], [@http://www.netlib.org/lapack/explore-html/dggsvd.f.html dggsvd.f], [@http://www.netlib.org/lapack/explore-html/cggsvd.f.html cggsvd.f], and [@http://www.netlib.org/lapack/explore-html/zggsvd.f.html zggsvd.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gtsv.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gtsv.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,87 @@
+
+[section gtsv]
+
+[heading Prototype]
+There is one prototype of `gtsv` available, please see below.
+``
+gtsv( const int_t n, VectorDL& dl, VectorD& d, VectorDU& du,
+ MatrixB& b );
+``
+
+
+[heading Description]
+
+`gtsv` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGTSV, DGTSV, CGTSV, and ZGTSV.
+`gtsv` solves the equation
+
+A*X = B,
+
+where A is an N-by-N tridiagonal matrix, by Gaussian elimination with
+partial pivoting.
+
+Note that the equation A'*X = B may be solved by interchanging the
+order of the arguments DU and DL.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorDL`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorDL>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of gtsv
+[ [ Value type of VectorDL ] [LAPACK routine] ]
+[ [`float`][SGTSV] ]
+[ [`double`][DGTSV] ]
+[ [`complex<float>`][CGTSV] ]
+[ [`complex<double>`][ZGTSV] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/gtsv.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/gtsv.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::gtsv( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgtsv.f.html sgtsv.f], [@http://www.netlib.org/lapack/explore-html/dgtsv.f.html dgtsv.f], [@http://www.netlib.org/lapack/explore-html/cgtsv.f.html cgtsv.f], and [@http://www.netlib.org/lapack/explore-html/zgtsv.f.html zgtsv.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gtsvx.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/gtsvx.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,111 @@
+
+[section gtsvx]
+
+[heading Prototype]
+There is one prototype of `gtsvx` available, please see below.
+``
+gtsvx( const char fact, const int_t n, const VectorDL& dl,
+ const VectorD& d, const VectorDU& du, VectorDLF& dlf, VectorDF& df,
+ VectorDUF& duf, VectorDU2& du2, VectorIPIV& ipiv, const MatrixB& b,
+ MatrixX& x, Scalar >, VectorFERR& ferr, VectorBERR& berr );
+``
+
+
+[heading Description]
+
+`gtsvx` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SGTSVX, DGTSVX, CGTSVX, and ZGTSVX.
+`gtsvx` uses the LU factorization to compute the solution to a complex
+system of linear equations A * X = B, A**T * X = B, or A**H * X = B,
+where A is a tridiagonal matrix of order N and X and B are N-by-NRHS
+matrices.
+
+Error bounds on the solution and a condition estimate are also
+provided.
+
+Description
+===========
+
+The following steps are performed:
+
+1. If FACT = 'N', the LU decomposition is used to factor the matrix A
+as A = L * U, where L is a product of permutation and unit lower
+bidiagonal matrices and U is upper triangular with nonzeros in
+only the main diagonal and first two superdiagonals.
+
+2. If some U(i,i)=0, so that U is exactly singular, then the routine
+returns with INFO = i. Otherwise, the factored form of A is used
+to estimate the condition number of the matrix A. If the
+reciprocal of the condition number is less than machine precision,
+INFO = N+1 is returned as a warning, but the routine still goes on
+to solve for X and compute error bounds as described below.
+
+3. The system of equations is solved for X using the factored form
+of A.
+
+4. Iterative refinement is applied to improve the computed solution
+matrix and calculate error bounds and backward error estimates
+for it.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorDL`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorDL>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of gtsvx
+[ [ Value type of VectorDL ] [LAPACK routine] ]
+[ [`float`][SGTSVX] ]
+[ [`double`][DGTSVX] ]
+[ [`complex<float>`][CGTSVX] ]
+[ [`complex<double>`][ZGTSVX] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/gtsvx.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/gtsvx.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::gtsvx( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sgtsvx.f.html sgtsvx.f], [@http://www.netlib.org/lapack/explore-html/dgtsvx.f.html dgtsvx.f], [@http://www.netlib.org/lapack/explore-html/cgtsvx.f.html cgtsvx.f], and [@http://www.netlib.org/lapack/explore-html/zgtsvx.f.html zgtsvx.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hbev.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hbev.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,77 @@
+
+[section hbev]
+
+[heading Prototype]
+There is one prototype of `hbev` available, please see below.
+``
+hbev( const char jobz, MatrixAB& ab, VectorW& w, MatrixZ& z );
+``
+
+
+[heading Description]
+
+`hbev` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CHBEV and ZHBEV.
+`hbev` computes all the eigenvalues and, optionally, eigenvectors of
+a complex Hermitian band matrix A.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAB`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAB>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of hbev
+[ [ Value type of MatrixAB ] [LAPACK routine] ]
+[ [`complex<float>`][CHBEV] ]
+[ [`complex<double>`][ZHBEV] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/hbev.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/hbev.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::hbev( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/chbev.f.html chbev.f] and [@http://www.netlib.org/lapack/explore-html/zhbev.f.html zhbev.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hbevd.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hbevd.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,85 @@
+
+[section hbevd]
+
+[heading Prototype]
+There is one prototype of `hbevd` available, please see below.
+``
+hbevd( const char jobz, MatrixAB& ab, VectorW& w, MatrixZ& z );
+``
+
+
+[heading Description]
+
+`hbevd` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CHBEVD and ZHBEVD.
+`hbevd` computes all the eigenvalues and, optionally, eigenvectors of
+a complex Hermitian band matrix A. If eigenvectors are desired, it
+uses a divide and conquer algorithm.
+
+The divide and conquer algorithm makes very mild assumptions about
+floating point arithmetic. It will work on machines with a guard
+digit in add/subtract, or on those binary machines without guard
+digits which subtract like the Cray X-MP, Cray Y-MP, Cray C-90, or
+Cray-2. It could conceivably fail on hexadecimal or decimal machines
+without guard digits, but we know of none.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAB`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAB>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of hbevd
+[ [ Value type of MatrixAB ] [LAPACK routine] ]
+[ [`complex<float>`][CHBEVD] ]
+[ [`complex<double>`][ZHBEVD] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/hbevd.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/hbevd.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::hbevd( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/chbevd.f.html chbevd.f] and [@http://www.netlib.org/lapack/explore-html/zhbevd.f.html zhbevd.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hbevx.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hbevx.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,82 @@
+
+[section hbevx]
+
+[heading Prototype]
+There is one prototype of `hbevx` available, please see below.
+``
+hbevx( const char jobz, const char range, MatrixAB& ab, MatrixQ& q,
+ const Scalar >, const Scalar >, const int_t il,
+ const int_t iu, const Scalar >, int_t& m,
+ VectorW& w, MatrixZ& z, VectorIFAIL& ifail );
+``
+
+
+[heading Description]
+
+`hbevx` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CHBEVX and ZHBEVX.
+`hbevx` computes selected eigenvalues and, optionally, eigenvectors
+of a complex Hermitian band matrix A. Eigenvalues and eigenvectors
+can be selected by specifying either a range of values or a range of
+indices for the desired eigenvalues.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAB`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAB>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of hbevx
+[ [ Value type of MatrixAB ] [LAPACK routine] ]
+[ [`complex<float>`][CHBEVX] ]
+[ [`complex<double>`][ZHBEVX] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/hbevx.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/hbevx.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::hbevx( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/chbevx.f.html chbevx.f] and [@http://www.netlib.org/lapack/explore-html/zhbevx.f.html zhbevx.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hbgv.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hbgv.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,80 @@
+
+[section hbgv]
+
+[heading Prototype]
+There is one prototype of `hbgv` available, please see below.
+``
+hbgv( const char jobz, MatrixAB& ab, MatrixBB& bb, VectorW& w,
+ MatrixZ& z );
+``
+
+
+[heading Description]
+
+`hbgv` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CHBGV and ZHBGV.
+`hbgv` computes all the eigenvalues, and optionally, the eigenvectors
+of a complex generalized Hermitian-definite banded eigenproblem, of
+the form A*x=(lambda)*B*x. Here A and B are assumed to be Hermitian
+and banded, and B is also positive definite.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAB`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAB>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of hbgv
+[ [ Value type of MatrixAB ] [LAPACK routine] ]
+[ [`complex<float>`][CHBGV] ]
+[ [`complex<double>`][ZHBGV] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/hbgv.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/hbgv.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::hbgv( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/chbgv.f.html chbgv.f] and [@http://www.netlib.org/lapack/explore-html/zhbgv.f.html zhbgv.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hbgvd.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hbgvd.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,88 @@
+
+[section hbgvd]
+
+[heading Prototype]
+There is one prototype of `hbgvd` available, please see below.
+``
+hbgvd( const char jobz, MatrixAB& ab, MatrixBB& bb, VectorW& w,
+ MatrixZ& z );
+``
+
+
+[heading Description]
+
+`hbgvd` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CHBGVD and ZHBGVD.
+`hbgvd` computes all the eigenvalues, and optionally, the eigenvectors
+of a complex generalized Hermitian-definite banded eigenproblem, of
+the form A*x=(lambda)*B*x. Here A and B are assumed to be Hermitian
+and banded, and B is also positive definite. If eigenvectors are
+desired, it uses a divide and conquer algorithm.
+
+The divide and conquer algorithm makes very mild assumptions about
+floating point arithmetic. It will work on machines with a guard
+digit in add/subtract, or on those binary machines without guard
+digits which subtract like the Cray X-MP, Cray Y-MP, Cray C-90, or
+Cray-2. It could conceivably fail on hexadecimal or decimal machines
+without guard digits, but we know of none.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAB`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAB>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of hbgvd
+[ [ Value type of MatrixAB ] [LAPACK routine] ]
+[ [`complex<float>`][CHBGVD] ]
+[ [`complex<double>`][ZHBGVD] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/hbgvd.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/hbgvd.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::hbgvd( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/chbgvd.f.html chbgvd.f] and [@http://www.netlib.org/lapack/explore-html/zhbgvd.f.html zhbgvd.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hbgvx.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hbgvx.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,85 @@
+
+[section hbgvx]
+
+[heading Prototype]
+There is one prototype of `hbgvx` available, please see below.
+``
+hbgvx( const char jobz, const char range, MatrixAB& ab, MatrixBB& bb,
+ MatrixQ& q, const Scalar >, const Scalar >,
+ const int_t il, const int_t iu,
+ const Scalar >, int_t& m, VectorW& w, MatrixZ& z,
+ VectorIFAIL& ifail );
+``
+
+
+[heading Description]
+
+`hbgvx` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CHBGVX and ZHBGVX.
+`hbgvx` computes all the eigenvalues, and optionally, the eigenvectors
+of a complex generalized Hermitian-definite banded eigenproblem, of
+the form A*x=(lambda)*B*x. Here A and B are assumed to be Hermitian
+and banded, and B is also positive definite. Eigenvalues and
+eigenvectors can be selected by specifying either all eigenvalues,
+a range of values or a range of indices for the desired eigenvalues.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAB`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAB>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of hbgvx
+[ [ Value type of MatrixAB ] [LAPACK routine] ]
+[ [`complex<float>`][CHBGVX] ]
+[ [`complex<double>`][ZHBGVX] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/hbgvx.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/hbgvx.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::hbgvx( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/chbgvx.f.html chbgvx.f] and [@http://www.netlib.org/lapack/explore-html/zhbgvx.f.html zhbgvx.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/heev.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/heev.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,77 @@
+
+[section heev]
+
+[heading Prototype]
+There is one prototype of `heev` available, please see below.
+``
+heev( const char jobz, MatrixA& a, VectorW& w );
+``
+
+
+[heading Description]
+
+`heev` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CHEEV and ZHEEV.
+`heev` computes all eigenvalues and, optionally, eigenvectors of a
+complex Hermitian matrix A.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of heev
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`complex<float>`][CHEEV] ]
+[ [`complex<double>`][ZHEEV] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/heev.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/heev.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::heev( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/cheev.f.html cheev.f] and [@http://www.netlib.org/lapack/explore-html/zheev.f.html zheev.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/heevd.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/heevd.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,85 @@
+
+[section heevd]
+
+[heading Prototype]
+There is one prototype of `heevd` available, please see below.
+``
+heevd( const char jobz, MatrixA& a, VectorW& w );
+``
+
+
+[heading Description]
+
+`heevd` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CHEEVD and ZHEEVD.
+`heevd` computes all eigenvalues and, optionally, eigenvectors of a
+complex Hermitian matrix A. If eigenvectors are desired, it uses a
+divide and conquer algorithm.
+
+The divide and conquer algorithm makes very mild assumptions about
+floating point arithmetic. It will work on machines with a guard
+digit in add/subtract, or on those binary machines without guard
+digits which subtract like the Cray X-MP, Cray Y-MP, Cray C-90, or
+Cray-2. It could conceivably fail on hexadecimal or decimal machines
+without guard digits, but we know of none.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of heevd
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`complex<float>`][CHEEVD] ]
+[ [`complex<double>`][ZHEEVD] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/heevd.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/heevd.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::heevd( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/cheevd.f.html cheevd.f] and [@http://www.netlib.org/lapack/explore-html/zheevd.f.html zheevd.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/heevr.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/heevr.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,135 @@
+
+[section heevr]
+
+[heading Prototype]
+There is one prototype of `heevr` available, please see below.
+``
+heevr( const char jobz, const char range, MatrixA& a, const Scalar >,
+ const Scalar >, const int_t il,
+ const int_t iu, const Scalar >, int_t& m,
+ VectorW& w, MatrixZ& z, VectorISUPPZ& isuppz );
+``
+
+
+[heading Description]
+
+`heevr` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CHEEVR and ZHEEVR.
+`heevr` computes selected eigenvalues and, optionally, eigenvectors
+of a complex Hermitian matrix A. Eigenvalues and eigenvectors can
+be selected by specifying either a range of values or a range of
+indices for the desired eigenvalues.
+
+`heevr` first reduces the matrix A to tridiagonal form T with a call
+to ZHETRD. Then, whenever possible, `heevr` calls ZSTEMR to compute
+eigenspectrum using Relatively Robust Representations. ZSTEMR
+computes eigenvalues by the dqds algorithm, while orthogonal
+eigenvectors are computed from various "good" L D L^T representations
+(also known as Relatively Robust Representations). Gram-Schmidt
+orthogonalization is avoided as far as possible. More specifically,
+the various steps of the algorithm are as follows.
+
+For each unreduced block (submatrix) of T,
+(a) Compute T - sigma I = L D L^T, so that L and D
+define all the wanted eigenvalues to high relative accuracy.
+This means that small relative changes in the entries of D and L
+cause only small relative changes in the eigenvalues and
+eigenvectors. The standard (unfactored) representation of the
+tridiagonal matrix T does not have this property in general.
+(b) Compute the eigenvalues to suitable accuracy.
+If the eigenvectors are desired, the algorithm attains full
+accuracy of the computed eigenvalues only right before
+the corresponding vectors have to be computed, see steps c) and d).
+(c) For each cluster of close eigenvalues, select a new
+shift close to the cluster, find a new factorization, and refine
+the shifted eigenvalues to suitable accuracy.
+(d) For each eigenvalue with a large enough relative separation compute
+the corresponding eigenvector by forming a rank revealing twisted
+factorization. Go back to (c) for any clusters that remain.
+
+The desired accuracy of the output can be specified by the input
+parameter ABSTOL.
+
+For more details, see DSTEMR's documentation and:
+- Inderjit S. Dhillon and Beresford N. Parlett: "Multiple representations
+to compute orthogonal eigenvectors of symmetric tridiagonal matrices,"
+Linear Algebra and its Applications, 387(1), pp. 1-28, August 2004.
+- Inderjit Dhillon and Beresford Parlett: "Orthogonal Eigenvectors and
+Relative Gaps," SIAM Journal on Matrix Analysis and Applications, Vol. 25,
+2004. Also LAPACK Working Note 154.
+- Inderjit Dhillon: "A new O(n^2) algorithm for the symmetric
+tridiagonal eigenvalue/eigenvector problem",
+Computer Science Division Technical Report No. UCB/CSD-97-971,
+UC Berkeley, May 1997.
+
+
+Note 1 : `heevr` calls ZSTEMR when the full spectrum is requested
+on machines which conform to the ieee-754 floating point standard.
+`heevr` calls DSTEBZ and ZSTEIN on non-ieee machines and
+when partial spectrum requests are made.
+
+Normal execution of ZSTEMR may create NaNs and infinities and
+hence may abort due to a floating point exception in environments
+which do not handle NaNs and infinities in the ieee standard default
+manner.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of heevr
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`complex<float>`][CHEEVR] ]
+[ [`complex<double>`][ZHEEVR] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/heevr.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/heevr.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::heevr( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/cheevr.f.html cheevr.f] and [@http://www.netlib.org/lapack/explore-html/zheevr.f.html zheevr.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/heevx.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/heevx.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,82 @@
+
+[section heevx]
+
+[heading Prototype]
+There is one prototype of `heevx` available, please see below.
+``
+heevx( const char jobz, const char range, MatrixA& a, const Scalar >,
+ const Scalar >, const int_t il,
+ const int_t iu, const Scalar >, int_t& m,
+ VectorW& w, MatrixZ& z, VectorIFAIL& ifail );
+``
+
+
+[heading Description]
+
+`heevx` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CHEEVX and ZHEEVX.
+`heevx` computes selected eigenvalues and, optionally, eigenvectors
+of a complex Hermitian matrix A. Eigenvalues and eigenvectors can
+be selected by specifying either a range of values or a range of
+indices for the desired eigenvalues.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of heevx
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`complex<float>`][CHEEVX] ]
+[ [`complex<double>`][ZHEEVX] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/heevx.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/heevx.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::heevx( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/cheevx.f.html cheevx.f] and [@http://www.netlib.org/lapack/explore-html/zheevx.f.html zheevx.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hegv.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hegv.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,81 @@
+
+[section hegv]
+
+[heading Prototype]
+There is one prototype of `hegv` available, please see below.
+``
+hegv( const int_t itype, const char jobz, MatrixA& a,
+ MatrixB& b, VectorW& w );
+``
+
+
+[heading Description]
+
+`hegv` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CHEGV and ZHEGV.
+`hegv` computes all the eigenvalues, and optionally, the eigenvectors
+of a complex generalized Hermitian-definite eigenproblem, of the form
+A*x=(lambda)*B*x, A*Bx=(lambda)*x, or B*A*x=(lambda)*x.
+Here A and B are assumed to be Hermitian and B is also
+positive definite.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of hegv
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`complex<float>`][CHEGV] ]
+[ [`complex<double>`][ZHEGV] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/hegv.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/hegv.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::hegv( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/chegv.f.html chegv.f] and [@http://www.netlib.org/lapack/explore-html/zhegv.f.html zhegv.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hegvd.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hegvd.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,88 @@
+
+[section hegvd]
+
+[heading Prototype]
+There is one prototype of `hegvd` available, please see below.
+``
+hegvd( const int_t itype, const char jobz, MatrixA& a,
+ MatrixB& b, VectorW& w );
+``
+
+
+[heading Description]
+
+`hegvd` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CHEGVD and ZHEGVD.
+`hegvd` computes all the eigenvalues, and optionally, the eigenvectors
+of a complex generalized Hermitian-definite eigenproblem, of the form
+A*x=(lambda)*B*x, A*Bx=(lambda)*x, or B*A*x=(lambda)*x. Here A and
+B are assumed to be Hermitian and B is also positive definite.
+If eigenvectors are desired, it uses a divide and conquer algorithm.
+
+The divide and conquer algorithm makes very mild assumptions about
+floating point arithmetic. It will work on machines with a guard
+digit in add/subtract, or on those binary machines without guard
+digits which subtract like the Cray X-MP, Cray Y-MP, Cray C-90, or
+Cray-2. It could conceivably fail on hexadecimal or decimal machines
+without guard digits, but we know of none.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of hegvd
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`complex<float>`][CHEGVD] ]
+[ [`complex<double>`][ZHEGVD] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/hegvd.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/hegvd.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::hegvd( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/chegvd.f.html chegvd.f] and [@http://www.netlib.org/lapack/explore-html/zhegvd.f.html zhegvd.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hegvx.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hegvx.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,85 @@
+
+[section hegvx]
+
+[heading Prototype]
+There is one prototype of `hegvx` available, please see below.
+``
+hegvx( const int_t itype, const char jobz, const char range,
+ MatrixA& a, MatrixB& b, const Scalar >, const Scalar >,
+ const int_t il, const int_t iu,
+ const Scalar >, int_t& m, VectorW& w, MatrixZ& z,
+ VectorIFAIL& ifail );
+``
+
+
+[heading Description]
+
+`hegvx` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CHEGVX and ZHEGVX.
+`hegvx` computes selected eigenvalues, and optionally, eigenvectors
+of a complex generalized Hermitian-definite eigenproblem, of the form
+A*x=(lambda)*B*x, A*Bx=(lambda)*x, or B*A*x=(lambda)*x. Here A and
+B are assumed to be Hermitian and B is also positive definite.
+Eigenvalues and eigenvectors can be selected by specifying either a
+range of values or a range of indices for the desired eigenvalues.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of hegvx
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`complex<float>`][CHEGVX] ]
+[ [`complex<double>`][ZHEGVX] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/hegvx.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/hegvx.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::hegvx( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/chegvx.f.html chegvx.f] and [@http://www.netlib.org/lapack/explore-html/zhegvx.f.html zhegvx.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hesv.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hesv.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,87 @@
+
+[section hesv]
+
+[heading Prototype]
+There is one prototype of `hesv` available, please see below.
+``
+hesv( MatrixA& a, VectorIPIV& ipiv, MatrixB& b );
+``
+
+
+[heading Description]
+
+`hesv` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CHESV and ZHESV.
+`hesv` computes the solution to a complex system of linear equations
+A * X = B,
+where A is an N-by-N Hermitian matrix and X and B are N-by-NRHS
+matrices.
+
+The diagonal pivoting method is used to factor A as
+A = U * D * U**H, if UPLO = 'U', or
+A = L * D * L**H, if UPLO = 'L',
+where U (or L) is a product of permutation and unit upper (lower)
+triangular matrices, and D is Hermitian and block diagonal with
+1-by-1 and 2-by-2 diagonal blocks. The factored form of A is then
+used to solve the system of equations A * X = B.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of hesv
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`complex<float>`][CHESV] ]
+[ [`complex<double>`][ZHESV] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/hesv.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/hesv.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::hesv( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/chesv.f.html chesv.f] and [@http://www.netlib.org/lapack/explore-html/zhesv.f.html zhesv.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hesvx.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hesvx.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,111 @@
+
+[section hesvx]
+
+[heading Prototype]
+There is one prototype of `hesvx` available, please see below.
+``
+hesvx( const char fact, const MatrixA& a, MatrixAF& af, VectorIPIV& ipiv,
+ const MatrixB& b, MatrixX& x, Scalar >, VectorFERR& ferr,
+ VectorBERR& berr );
+``
+
+
+[heading Description]
+
+`hesvx` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CHESVX and ZHESVX.
+`hesvx` uses the diagonal pivoting factorization to compute the
+solution to a complex system of linear equations A * X = B,
+where A is an N-by-N Hermitian matrix and X and B are N-by-NRHS
+matrices.
+
+Error bounds on the solution and a condition estimate are also
+provided.
+
+Description
+===========
+
+The following steps are performed:
+
+1. If FACT = 'N', the diagonal pivoting method is used to factor A.
+The form of the factorization is
+A = U * D * U**H, if UPLO = 'U', or
+A = L * D * L**H, if UPLO = 'L',
+where U (or L) is a product of permutation and unit upper (lower)
+triangular matrices, and D is Hermitian and block diagonal with
+1-by-1 and 2-by-2 diagonal blocks.
+
+2. If some D(i,i)=0, so that D is exactly singular, then the routine
+returns with INFO = i. Otherwise, the factored form of A is used
+to estimate the condition number of the matrix A. If the
+reciprocal of the condition number is less than machine precision,
+INFO = N+1 is returned as a warning, but the routine still goes on
+to solve for X and compute error bounds as described below.
+
+3. The system of equations is solved for X using the factored form
+of A.
+
+4. Iterative refinement is applied to improve the computed solution
+matrix and calculate error bounds and backward error estimates
+for it.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of hesvx
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`complex<float>`][CHESVX] ]
+[ [`complex<double>`][ZHESVX] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/hesvx.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/hesvx.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::hesvx( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/chesvx.f.html chesvx.f] and [@http://www.netlib.org/lapack/explore-html/zhesvx.f.html zhesvx.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hpev.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hpev.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,77 @@
+
+[section hpev]
+
+[heading Prototype]
+There is one prototype of `hpev` available, please see below.
+``
+hpev( const char jobz, MatrixAP& ap, VectorW& w, MatrixZ& z );
+``
+
+
+[heading Description]
+
+`hpev` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CHPEV and ZHPEV.
+`hpev` computes all the eigenvalues and, optionally, eigenvectors of a
+complex Hermitian matrix in packed storage.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of hpev
+[ [ Value type of MatrixAP ] [LAPACK routine] ]
+[ [`complex<float>`][CHPEV] ]
+[ [`complex<double>`][ZHPEV] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/hpev.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/hpev.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::hpev( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/chpev.f.html chpev.f] and [@http://www.netlib.org/lapack/explore-html/zhpev.f.html zhpev.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hpevd.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hpevd.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,85 @@
+
+[section hpevd]
+
+[heading Prototype]
+There is one prototype of `hpevd` available, please see below.
+``
+hpevd( const char jobz, MatrixAP& ap, VectorW& w, MatrixZ& z );
+``
+
+
+[heading Description]
+
+`hpevd` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CHPEVD and ZHPEVD.
+`hpevd` computes all the eigenvalues and, optionally, eigenvectors of
+a complex Hermitian matrix A in packed storage. If eigenvectors are
+desired, it uses a divide and conquer algorithm.
+
+The divide and conquer algorithm makes very mild assumptions about
+floating point arithmetic. It will work on machines with a guard
+digit in add/subtract, or on those binary machines without guard
+digits which subtract like the Cray X-MP, Cray Y-MP, Cray C-90, or
+Cray-2. It could conceivably fail on hexadecimal or decimal machines
+without guard digits, but we know of none.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of hpevd
+[ [ Value type of MatrixAP ] [LAPACK routine] ]
+[ [`complex<float>`][CHPEVD] ]
+[ [`complex<double>`][ZHPEVD] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/hpevd.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/hpevd.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::hpevd( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/chpevd.f.html chpevd.f] and [@http://www.netlib.org/lapack/explore-html/zhpevd.f.html zhpevd.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hpevx.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hpevx.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,82 @@
+
+[section hpevx]
+
+[heading Prototype]
+There is one prototype of `hpevx` available, please see below.
+``
+hpevx( const char jobz, const char range, MatrixAP& ap, const Scalar >,
+ const Scalar >, const int_t il,
+ const int_t iu, const Scalar >, int_t& m,
+ VectorW& w, MatrixZ& z, VectorIFAIL& ifail );
+``
+
+
+[heading Description]
+
+`hpevx` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CHPEVX and ZHPEVX.
+`hpevx` computes selected eigenvalues and, optionally, eigenvectors
+of a complex Hermitian matrix A in packed storage.
+Eigenvalues/vectors can be selected by specifying either a range of
+values or a range of indices for the desired eigenvalues.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of hpevx
+[ [ Value type of MatrixAP ] [LAPACK routine] ]
+[ [`complex<float>`][CHPEVX] ]
+[ [`complex<double>`][ZHPEVX] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/hpevx.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/hpevx.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::hpevx( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/chpevx.f.html chpevx.f] and [@http://www.netlib.org/lapack/explore-html/zhpevx.f.html zhpevx.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hpgv.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hpgv.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,81 @@
+
+[section hpgv]
+
+[heading Prototype]
+There is one prototype of `hpgv` available, please see below.
+``
+hpgv( const int_t itype, const char jobz, MatrixAP& ap,
+ MatrixBP& bp, VectorW& w, MatrixZ& z );
+``
+
+
+[heading Description]
+
+`hpgv` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CHPGV and ZHPGV.
+`hpgv` computes all the eigenvalues and, optionally, the eigenvectors
+of a complex generalized Hermitian-definite eigenproblem, of the form
+A*x=(lambda)*B*x, A*Bx=(lambda)*x, or B*A*x=(lambda)*x.
+Here A and B are assumed to be Hermitian, stored in packed format,
+and B is also positive definite.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of hpgv
+[ [ Value type of MatrixAP ] [LAPACK routine] ]
+[ [`complex<float>`][CHPGV] ]
+[ [`complex<double>`][ZHPGV] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/hpgv.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/hpgv.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::hpgv( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/chpgv.f.html chpgv.f] and [@http://www.netlib.org/lapack/explore-html/zhpgv.f.html zhpgv.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hpgvd.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hpgvd.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,89 @@
+
+[section hpgvd]
+
+[heading Prototype]
+There is one prototype of `hpgvd` available, please see below.
+``
+hpgvd( const int_t itype, const char jobz, MatrixAP& ap,
+ MatrixBP& bp, VectorW& w, MatrixZ& z );
+``
+
+
+[heading Description]
+
+`hpgvd` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CHPGVD and ZHPGVD.
+`hpgvd` computes all the eigenvalues and, optionally, the eigenvectors
+of a complex generalized Hermitian-definite eigenproblem, of the form
+A*x=(lambda)*B*x, A*Bx=(lambda)*x, or B*A*x=(lambda)*x. Here A and
+B are assumed to be Hermitian, stored in packed format, and B is also
+positive definite.
+If eigenvectors are desired, it uses a divide and conquer algorithm.
+
+The divide and conquer algorithm makes very mild assumptions about
+floating point arithmetic. It will work on machines with a guard
+digit in add/subtract, or on those binary machines without guard
+digits which subtract like the Cray X-MP, Cray Y-MP, Cray C-90, or
+Cray-2. It could conceivably fail on hexadecimal or decimal machines
+without guard digits, but we know of none.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of hpgvd
+[ [ Value type of MatrixAP ] [LAPACK routine] ]
+[ [`complex<float>`][CHPGVD] ]
+[ [`complex<double>`][ZHPGVD] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/hpgvd.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/hpgvd.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::hpgvd( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/chpgvd.f.html chpgvd.f] and [@http://www.netlib.org/lapack/explore-html/zhpgvd.f.html zhpgvd.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hpgvx.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hpgvx.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,86 @@
+
+[section hpgvx]
+
+[heading Prototype]
+There is one prototype of `hpgvx` available, please see below.
+``
+hpgvx( const int_t itype, const char jobz, const char range,
+ MatrixAP& ap, MatrixBP& bp, const Scalar >, const Scalar >,
+ const int_t il, const int_t iu,
+ const Scalar >, int_t& m, VectorW& w, MatrixZ& z,
+ VectorIFAIL& ifail );
+``
+
+
+[heading Description]
+
+`hpgvx` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CHPGVX and ZHPGVX.
+`hpgvx` computes selected eigenvalues and, optionally, eigenvectors
+of a complex generalized Hermitian-definite eigenproblem, of the form
+A*x=(lambda)*B*x, A*Bx=(lambda)*x, or B*A*x=(lambda)*x. Here A and
+B are assumed to be Hermitian, stored in packed format, and B is also
+positive definite. Eigenvalues and eigenvectors can be selected by
+specifying either a range of values or a range of indices for the
+desired eigenvalues.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of hpgvx
+[ [ Value type of MatrixAP ] [LAPACK routine] ]
+[ [`complex<float>`][CHPGVX] ]
+[ [`complex<double>`][ZHPGVX] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/hpgvx.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/hpgvx.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::hpgvx( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/chpgvx.f.html chpgvx.f] and [@http://www.netlib.org/lapack/explore-html/zhpgvx.f.html zhpgvx.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hpsv.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hpsv.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,87 @@
+
+[section hpsv]
+
+[heading Prototype]
+There is one prototype of `hpsv` available, please see below.
+``
+hpsv( MatrixAP& ap, VectorIPIV& ipiv, MatrixB& b );
+``
+
+
+[heading Description]
+
+`hpsv` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CHPSV and ZHPSV.
+`hpsv` computes the solution to a complex system of linear equations
+A * X = B,
+where A is an N-by-N Hermitian matrix stored in packed format and X
+and B are N-by-NRHS matrices.
+
+The diagonal pivoting method is used to factor A as
+A = U * D * U**H, if UPLO = 'U', or
+A = L * D * L**H, if UPLO = 'L',
+where U (or L) is a product of permutation and unit upper (lower)
+triangular matrices, D is Hermitian and block diagonal with 1-by-1
+and 2-by-2 diagonal blocks. The factored form of A is then used to
+solve the system of equations A * X = B.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of hpsv
+[ [ Value type of MatrixAP ] [LAPACK routine] ]
+[ [`complex<float>`][CHPSV] ]
+[ [`complex<double>`][ZHPSV] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/hpsv.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/hpsv.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::hpsv( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/chpsv.f.html chpsv.f] and [@http://www.netlib.org/lapack/explore-html/zhpsv.f.html zhpsv.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hpsvx.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/hpsvx.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,110 @@
+
+[section hpsvx]
+
+[heading Prototype]
+There is one prototype of `hpsvx` available, please see below.
+``
+hpsvx( const char fact, const MatrixAP& ap, MatrixAFP& afp,
+ VectorIPIV& ipiv, const MatrixB& b, MatrixX& x, Scalar >,
+ VectorFERR& ferr, VectorBERR& berr );
+``
+
+
+[heading Description]
+
+`hpsvx` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CHPSVX and ZHPSVX.
+`hpsvx` uses the diagonal pivoting factorization A = U*D*U**H or
+A = L*D*L**H to compute the solution to a complex system of linear
+equations A * X = B, where A is an N-by-N Hermitian matrix stored
+in packed format and X and B are N-by-NRHS matrices.
+
+Error bounds on the solution and a condition estimate are also
+provided.
+
+Description
+===========
+
+The following steps are performed:
+
+1. If FACT = 'N', the diagonal pivoting method is used to factor A as
+A = U * D * U**H, if UPLO = 'U', or
+A = L * D * L**H, if UPLO = 'L',
+where U (or L) is a product of permutation and unit upper (lower)
+triangular matrices and D is Hermitian and block diagonal with
+1-by-1 and 2-by-2 diagonal blocks.
+
+2. If some D(i,i)=0, so that D is exactly singular, then the routine
+returns with INFO = i. Otherwise, the factored form of A is used
+to estimate the condition number of the matrix A. If the
+reciprocal of the condition number is less than machine precision,
+INFO = N+1 is returned as a warning, but the routine still goes on
+to solve for X and compute error bounds as described below.
+
+3. The system of equations is solved for X using the factored form
+of A.
+
+4. Iterative refinement is applied to improve the computed solution
+matrix and calculate error bounds and backward error estimates
+for it.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of hpsvx
+[ [ Value type of MatrixAP ] [LAPACK routine] ]
+[ [`complex<float>`][CHPSVX] ]
+[ [`complex<double>`][ZHPSVX] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/hpsvx.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/hpsvx.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::hpsvx( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/chpsvx.f.html chpsvx.f] and [@http://www.netlib.org/lapack/explore-html/zhpsvx.f.html zhpsvx.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/lacgv.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/lacgv.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,77 @@
+
+[section lacgv]
+
+[heading Prototype]
+There is one prototype of `lacgv` available, please see below.
+``
+lacgv( const int_t n, VectorX& x,
+ const int_t incx );
+``
+
+
+[heading Description]
+
+`lacgv` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines CLACGV and ZLACGV.
+`lacgv` conjugates a complex vector of length N.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorX`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorX>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of lacgv
+[ [ Value type of VectorX ] [LAPACK routine] ]
+[ [`complex<float>`][CLACGV] ]
+[ [`complex<double>`][ZLACGV] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/lacgv.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/lacgv.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::lacgv( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/clacgv.f.html clacgv.f] and [@http://www.netlib.org/lapack/explore-html/zlacgv.f.html zlacgv.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/lalsd.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/lalsd.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,95 @@
+
+[section lalsd]
+
+[heading Prototype]
+There is one prototype of `lalsd` available, please see below.
+``
+lalsd( const char uplo, const int_t smlsiz,
+ const int_t n, VectorD& d, VectorE& e, MatrixB& b,
+ const Scalar >, int_t& rank );
+``
+
+
+[heading Description]
+
+`lalsd` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SLALSD, DLALSD, CLALSD, and ZLALSD.
+`lalsd` uses the singular value decomposition of A to solve the least
+squares problem of finding X to minimize the Euclidean norm of each
+column of A*X-B, where A is N-by-N upper bidiagonal, and X and B
+are N-by-NRHS. The solution X overwrites B.
+
+The singular values of A smaller than RCOND times the largest
+singular value are treated as zero in solving the least squares
+problem; in this case a minimum norm solution is returned.
+The actual singular values are returned in D in ascending order.
+
+This code makes very mild assumptions about floating point
+arithmetic. It will work on machines with a guard digit in
+add/subtract, or on those binary machines without guard digits
+which subtract like the Cray XMP, Cray YMP, Cray C 90, or Cray 2.
+It could conceivably fail on hexadecimal or decimal machines
+without guard digits, but we know of none.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorD`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorD>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of lalsd
+[ [ Value type of VectorD ] [LAPACK routine] ]
+[ [`float`][SLALSD] ]
+[ [`double`][DLALSD] ]
+[ [`complex<float>`][CLALSD] ]
+[ [`complex<double>`][ZLALSD] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/lalsd.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/lalsd.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::lalsd( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/slalsd.f.html slalsd.f], [@http://www.netlib.org/lapack/explore-html/dlalsd.f.html dlalsd.f], [@http://www.netlib.org/lapack/explore-html/clalsd.f.html clalsd.f], and [@http://www.netlib.org/lapack/explore-html/zlalsd.f.html zlalsd.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/largv.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/largv.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,90 @@
+
+[section largv]
+
+[heading Prototype]
+There is one prototype of `largv` available, please see below.
+``
+largv( const int_t n, VectorX& x, VectorY& y, VectorC& c );
+``
+
+
+[heading Description]
+
+`largv` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SLARGV, DLARGV, CLARGV, and ZLARGV.
+`largv` generates a vector of complex plane rotations with real
+cosines, determined by elements of the complex vectors x and y.
+For i = 1,2,...,n
+
+( c(i) s(i) ) ( x(i) ) = ( r(i) )
+( -conjg(s(i)) c(i) ) ( y(i) ) = ( 0 )
+
+where c(i)**2 + ABS(s(i))**2 = 1
+
+The following conventions are used (these are the same as in ZLARTG,
+but differ from the BLAS1 routine ZROTG):
+If y(i)=0, then c(i)=1 and s(i)=0.
+If x(i)=0, then c(i)=0 and s(i) is chosen so that r(i) is real.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorX`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorX>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of largv
+[ [ Value type of VectorX ] [LAPACK routine] ]
+[ [`float`][SLARGV] ]
+[ [`double`][DLARGV] ]
+[ [`complex<float>`][CLARGV] ]
+[ [`complex<double>`][ZLARGV] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/largv.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/largv.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::largv( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/slargv.f.html slargv.f], [@http://www.netlib.org/lapack/explore-html/dlargv.f.html dlargv.f], [@http://www.netlib.org/lapack/explore-html/clargv.f.html clargv.f], and [@http://www.netlib.org/lapack/explore-html/zlargv.f.html zlargv.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/pbsv.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/pbsv.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,89 @@
+
+[section pbsv]
+
+[heading Prototype]
+There is one prototype of `pbsv` available, please see below.
+``
+pbsv( MatrixAB& ab, MatrixB& b );
+``
+
+
+[heading Description]
+
+`pbsv` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SPBSV, DPBSV, CPBSV, and ZPBSV.
+`pbsv` computes the solution to a complex system of linear equations
+A * X = B,
+where A is an N-by-N Hermitian positive definite band matrix and X
+and B are N-by-NRHS matrices.
+
+The Cholesky decomposition is used to factor A as
+A = U**H * U, if UPLO = 'U', or
+A = L * L**H, if UPLO = 'L',
+where U is an upper triangular band matrix, and L is a lower
+triangular band matrix, with the same number of superdiagonals or
+subdiagonals as A. The factored form of A is then used to solve the
+system of equations A * X = B.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAB`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAB>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of pbsv
+[ [ Value type of MatrixAB ] [LAPACK routine] ]
+[ [`float`][SPBSV] ]
+[ [`double`][DPBSV] ]
+[ [`complex<float>`][CPBSV] ]
+[ [`complex<double>`][ZPBSV] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/pbsv.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/pbsv.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::pbsv( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/spbsv.f.html spbsv.f], [@http://www.netlib.org/lapack/explore-html/dpbsv.f.html dpbsv.f], [@http://www.netlib.org/lapack/explore-html/cpbsv.f.html cpbsv.f], and [@http://www.netlib.org/lapack/explore-html/zpbsv.f.html zpbsv.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/pbsvx.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/pbsvx.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,125 @@
+
+[section pbsvx]
+
+[heading Prototype]
+There is one prototype of `pbsvx` available, please see below.
+``
+pbsvx( const char fact, MatrixAB& ab, MatrixAFB& afb, char& equed,
+ VectorS& s, MatrixB& b, MatrixX& x, Scalar >, VectorFERR& ferr,
+ VectorBERR& berr );
+``
+
+
+[heading Description]
+
+`pbsvx` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SPBSVX, DPBSVX, CPBSVX, and ZPBSVX.
+`pbsvx` uses the Cholesky factorization A = U**H*U or A = L*L**H to
+compute the solution to a complex system of linear equations
+A * X = B,
+where A is an N-by-N Hermitian positive definite band matrix and X
+and B are N-by-NRHS matrices.
+
+Error bounds on the solution and a condition estimate are also
+provided.
+
+Description
+===========
+
+The following steps are performed:
+
+1. If FACT = 'E', real scaling factors are computed to equilibrate
+the system:
+diag(S) * A * diag(S) * inv(diag(S)) * X = diag(S) * B
+Whether or not the system will be equilibrated depends on the
+scaling of the matrix A, but if equilibration is used, A is
+overwritten by diag(S)*A*diag(S) and B by diag(S)*B.
+
+2. If FACT = 'N' or 'E', the Cholesky decomposition is used to
+factor the matrix A (after equilibration if FACT = 'E') as
+A = U**H * U, if UPLO = 'U', or
+A = L * L**H, if UPLO = 'L',
+where U is an upper triangular band matrix, and L is a lower
+triangular band matrix.
+
+3. If the leading i-by-i principal minor is not positive definite,
+then the routine returns with INFO = i. Otherwise, the factored
+form of A is used to estimate the condition number of the matrix
+A. If the reciprocal of the condition number is less than machine
+precision, INFO = N+1 is returned as a warning, but the routine
+still goes on to solve for X and compute error bounds as
+described below.
+
+4. The system of equations is solved for X using the factored form
+of A.
+
+5. Iterative refinement is applied to improve the computed solution
+matrix and calculate error bounds and backward error estimates
+for it.
+
+6. If equilibration was used, the matrix X is premultiplied by
+diag(S) so that it solves the original system before
+equilibration.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAB`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAB>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of pbsvx
+[ [ Value type of MatrixAB ] [LAPACK routine] ]
+[ [`float`][SPBSVX] ]
+[ [`double`][DPBSVX] ]
+[ [`complex<float>`][CPBSVX] ]
+[ [`complex<double>`][ZPBSVX] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/pbsvx.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/pbsvx.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::pbsvx( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/spbsvx.f.html spbsvx.f], [@http://www.netlib.org/lapack/explore-html/dpbsvx.f.html dpbsvx.f], [@http://www.netlib.org/lapack/explore-html/cpbsvx.f.html cpbsvx.f], and [@http://www.netlib.org/lapack/explore-html/zpbsvx.f.html zpbsvx.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/posv.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/posv.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,88 @@
+
+[section posv]
+
+[heading Prototype]
+There is one prototype of `posv` available, please see below.
+``
+posv( MatrixA& a, MatrixB& b );
+``
+
+
+[heading Description]
+
+`posv` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SPOSV, DPOSV, CPOSV, and ZPOSV.
+`posv` computes the solution to a complex system of linear equations
+A * X = B,
+where A is an N-by-N Hermitian positive definite matrix and X and B
+are N-by-NRHS matrices.
+
+The Cholesky decomposition is used to factor A as
+A = U**H* U, if UPLO = 'U', or
+A = L * L**H, if UPLO = 'L',
+where U is an upper triangular matrix and L is a lower triangular
+matrix. The factored form of A is then used to solve the system of
+equations A * X = B.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of posv
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SPOSV] ]
+[ [`double`][DPOSV] ]
+[ [`complex<float>`][CPOSV] ]
+[ [`complex<double>`][ZPOSV] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/posv.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/posv.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::posv( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sposv.f.html sposv.f], [@http://www.netlib.org/lapack/explore-html/dposv.f.html dposv.f], [@http://www.netlib.org/lapack/explore-html/cposv.f.html cposv.f], and [@http://www.netlib.org/lapack/explore-html/zposv.f.html zposv.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/posvx.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/posvx.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,125 @@
+
+[section posvx]
+
+[heading Prototype]
+There is one prototype of `posvx` available, please see below.
+``
+posvx( const char fact, MatrixA& a, MatrixAF& af, char& equed,
+ VectorS& s, MatrixB& b, MatrixX& x, Scalar >, VectorFERR& ferr,
+ VectorBERR& berr );
+``
+
+
+[heading Description]
+
+`posvx` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SPOSVX, DPOSVX, CPOSVX, and ZPOSVX.
+`posvx` uses the Cholesky factorization A = U**H*U or A = L*L**H to
+compute the solution to a complex system of linear equations
+A * X = B,
+where A is an N-by-N Hermitian positive definite matrix and X and B
+are N-by-NRHS matrices.
+
+Error bounds on the solution and a condition estimate are also
+provided.
+
+Description
+===========
+
+The following steps are performed:
+
+1. If FACT = 'E', real scaling factors are computed to equilibrate
+the system:
+diag(S) * A * diag(S) * inv(diag(S)) * X = diag(S) * B
+Whether or not the system will be equilibrated depends on the
+scaling of the matrix A, but if equilibration is used, A is
+overwritten by diag(S)*A*diag(S) and B by diag(S)*B.
+
+2. If FACT = 'N' or 'E', the Cholesky decomposition is used to
+factor the matrix A (after equilibration if FACT = 'E') as
+A = U**H* U, if UPLO = 'U', or
+A = L * L**H, if UPLO = 'L',
+where U is an upper triangular matrix and L is a lower triangular
+matrix.
+
+3. If the leading i-by-i principal minor is not positive definite,
+then the routine returns with INFO = i. Otherwise, the factored
+form of A is used to estimate the condition number of the matrix
+A. If the reciprocal of the condition number is less than machine
+precision, INFO = N+1 is returned as a warning, but the routine
+still goes on to solve for X and compute error bounds as
+described below.
+
+4. The system of equations is solved for X using the factored form
+of A.
+
+5. Iterative refinement is applied to improve the computed solution
+matrix and calculate error bounds and backward error estimates
+for it.
+
+6. If equilibration was used, the matrix X is premultiplied by
+diag(S) so that it solves the original system before
+equilibration.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of posvx
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SPOSVX] ]
+[ [`double`][DPOSVX] ]
+[ [`complex<float>`][CPOSVX] ]
+[ [`complex<double>`][ZPOSVX] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/posvx.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/posvx.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::posvx( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sposvx.f.html sposvx.f], [@http://www.netlib.org/lapack/explore-html/dposvx.f.html dposvx.f], [@http://www.netlib.org/lapack/explore-html/cposvx.f.html cposvx.f], and [@http://www.netlib.org/lapack/explore-html/zposvx.f.html zposvx.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/ppsv.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/ppsv.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,88 @@
+
+[section ppsv]
+
+[heading Prototype]
+There is one prototype of `ppsv` available, please see below.
+``
+ppsv( MatrixAP& ap, MatrixB& b );
+``
+
+
+[heading Description]
+
+`ppsv` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SPPSV, DPPSV, CPPSV, and ZPPSV.
+`ppsv` computes the solution to a complex system of linear equations
+A * X = B,
+where A is an N-by-N Hermitian positive definite matrix stored in
+packed format and X and B are N-by-NRHS matrices.
+
+The Cholesky decomposition is used to factor A as
+A = U**H* U, if UPLO = 'U', or
+A = L * L**H, if UPLO = 'L',
+where U is an upper triangular matrix and L is a lower triangular
+matrix. The factored form of A is then used to solve the system of
+equations A * X = B.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of ppsv
+[ [ Value type of MatrixAP ] [LAPACK routine] ]
+[ [`float`][SPPSV] ]
+[ [`double`][DPPSV] ]
+[ [`complex<float>`][CPPSV] ]
+[ [`complex<double>`][ZPPSV] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/ppsv.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/ppsv.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::ppsv( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sppsv.f.html sppsv.f], [@http://www.netlib.org/lapack/explore-html/dppsv.f.html dppsv.f], [@http://www.netlib.org/lapack/explore-html/cppsv.f.html cppsv.f], and [@http://www.netlib.org/lapack/explore-html/zppsv.f.html zppsv.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/ppsvx.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/ppsvx.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,125 @@
+
+[section ppsvx]
+
+[heading Prototype]
+There is one prototype of `ppsvx` available, please see below.
+``
+ppsvx( const char fact, MatrixAP& ap, VectorAFP& afp, char& equed,
+ VectorS& s, MatrixB& b, MatrixX& x, Scalar >, VectorFERR& ferr,
+ VectorBERR& berr );
+``
+
+
+[heading Description]
+
+`ppsvx` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SPPSVX, DPPSVX, CPPSVX, and ZPPSVX.
+`ppsvx` uses the Cholesky factorization A = U**H*U or A = L*L**H to
+compute the solution to a complex system of linear equations
+A * X = B,
+where A is an N-by-N Hermitian positive definite matrix stored in
+packed format and X and B are N-by-NRHS matrices.
+
+Error bounds on the solution and a condition estimate are also
+provided.
+
+Description
+===========
+
+The following steps are performed:
+
+1. If FACT = 'E', real scaling factors are computed to equilibrate
+the system:
+diag(S) * A * diag(S) * inv(diag(S)) * X = diag(S) * B
+Whether or not the system will be equilibrated depends on the
+scaling of the matrix A, but if equilibration is used, A is
+overwritten by diag(S)*A*diag(S) and B by diag(S)*B.
+
+2. If FACT = 'N' or 'E', the Cholesky decomposition is used to
+factor the matrix A (after equilibration if FACT = 'E') as
+A = U'* U , if UPLO = 'U', or
+A = L * L', if UPLO = 'L',
+where U is an upper triangular matrix, L is a lower triangular
+matrix, and ' indicates conjugate transpose.
+
+3. If the leading i-by-i principal minor is not positive definite,
+then the routine returns with INFO = i. Otherwise, the factored
+form of A is used to estimate the condition number of the matrix
+A. If the reciprocal of the condition number is less than machine
+precision, INFO = N+1 is returned as a warning, but the routine
+still goes on to solve for X and compute error bounds as
+described below.
+
+4. The system of equations is solved for X using the factored form
+of A.
+
+5. Iterative refinement is applied to improve the computed solution
+matrix and calculate error bounds and backward error estimates
+for it.
+
+6. If equilibration was used, the matrix X is premultiplied by
+diag(S) so that it solves the original system before
+equilibration.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of ppsvx
+[ [ Value type of MatrixAP ] [LAPACK routine] ]
+[ [`float`][SPPSVX] ]
+[ [`double`][DPPSVX] ]
+[ [`complex<float>`][CPPSVX] ]
+[ [`complex<double>`][ZPPSVX] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/ppsvx.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/ppsvx.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::ppsvx( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sppsvx.f.html sppsvx.f], [@http://www.netlib.org/lapack/explore-html/dppsvx.f.html dppsvx.f], [@http://www.netlib.org/lapack/explore-html/cppsvx.f.html cppsvx.f], and [@http://www.netlib.org/lapack/explore-html/zppsvx.f.html zppsvx.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/ptsv.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/ptsv.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,83 @@
+
+[section ptsv]
+
+[heading Prototype]
+There is one prototype of `ptsv` available, please see below.
+``
+ptsv( VectorD& d, VectorE& e, MatrixB& b );
+``
+
+
+[heading Description]
+
+`ptsv` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SPTSV, DPTSV, CPTSV, and ZPTSV.
+`ptsv` computes the solution to a complex system of linear equations
+A*X = B, where A is an N-by-N Hermitian positive definite tridiagonal
+matrix, and X and B are N-by-NRHS matrices.
+
+A is factored as A = L*D*L**H, and the factored form of A is then
+used to solve the system of equations.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorD`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorD>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of ptsv
+[ [ Value type of VectorD ] [LAPACK routine] ]
+[ [`float`][SPTSV] ]
+[ [`double`][DPTSV] ]
+[ [`complex<float>`][CPTSV] ]
+[ [`complex<double>`][ZPTSV] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/ptsv.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/ptsv.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::ptsv( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sptsv.f.html sptsv.f], [@http://www.netlib.org/lapack/explore-html/dptsv.f.html dptsv.f], [@http://www.netlib.org/lapack/explore-html/cptsv.f.html cptsv.f], and [@http://www.netlib.org/lapack/explore-html/zptsv.f.html zptsv.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/ptsvx.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/ptsvx.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,111 @@
+
+[section ptsvx]
+
+[heading Prototype]
+There is one prototype of `ptsvx` available, please see below.
+``
+ptsvx( const char fact, const VectorD& d, const VectorE& e, VectorDF& df,
+ VectorEF& ef, const MatrixB& b, MatrixX& x, Scalar >,
+ VectorFERR& ferr, VectorBERR& berr );
+``
+
+
+[heading Description]
+
+`ptsvx` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SPTSVX, DPTSVX, CPTSVX, and ZPTSVX.
+`ptsvx` uses the factorization A = L*D*L**H to compute the solution
+to a complex system of linear equations A*X = B, where A is an
+N-by-N Hermitian positive definite tridiagonal matrix and X and B
+are N-by-NRHS matrices.
+
+Error bounds on the solution and a condition estimate are also
+provided.
+
+Description
+===========
+
+The following steps are performed:
+
+1. If FACT = 'N', the matrix A is factored as A = L*D*L**H, where L
+is a unit lower bidiagonal matrix and D is diagonal. The
+factorization can also be regarded as having the form
+A = U**H*D*U.
+
+2. If the leading i-by-i principal minor is not positive definite,
+then the routine returns with INFO = i. Otherwise, the factored
+form of A is used to estimate the condition number of the matrix
+A. If the reciprocal of the condition number is less than machine
+precision, INFO = N+1 is returned as a warning, but the routine
+still goes on to solve for X and compute error bounds as
+described below.
+
+3. The system of equations is solved for X using the factored form
+of A.
+
+4. Iterative refinement is applied to improve the computed solution
+matrix and calculate error bounds and backward error estimates
+for it.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorD`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorD>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of ptsvx
+[ [ Value type of VectorD ] [LAPACK routine] ]
+[ [`float`][SPTSVX] ]
+[ [`double`][DPTSVX] ]
+[ [`complex<float>`][CPTSVX] ]
+[ [`complex<double>`][ZPTSVX] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/ptsvx.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/ptsvx.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::ptsvx( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sptsvx.f.html sptsvx.f], [@http://www.netlib.org/lapack/explore-html/dptsvx.f.html dptsvx.f], [@http://www.netlib.org/lapack/explore-html/cptsvx.f.html cptsvx.f], and [@http://www.netlib.org/lapack/explore-html/zptsvx.f.html zptsvx.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/sbev.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/sbev.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,77 @@
+
+[section sbev]
+
+[heading Prototype]
+There is one prototype of `sbev` available, please see below.
+``
+sbev( const char jobz, MatrixAB& ab, VectorW& w, MatrixZ& z );
+``
+
+
+[heading Description]
+
+`sbev` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSBEV and DSBEV.
+`sbev` computes all the eigenvalues and, optionally, eigenvectors of
+a real symmetric band matrix A.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAB`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAB>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of sbev
+[ [ Value type of MatrixAB ] [LAPACK routine] ]
+[ [`float`][SSBEV] ]
+[ [`double`][DSBEV] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/sbev.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/sbev.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::sbev( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/ssbev.f.html ssbev.f] and [@http://www.netlib.org/lapack/explore-html/dsbev.f.html dsbev.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/sbevd.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/sbevd.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,86 @@
+
+[section sbevd]
+
+[heading Prototype]
+There is one prototype of `sbevd` available, please see below.
+``
+sbevd( const char jobz, MatrixAB& ab, VectorW& w, MatrixZ& z,
+ const int_t liwork );
+``
+
+
+[heading Description]
+
+`sbevd` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSBEVD and DSBEVD.
+`sbevd` computes all the eigenvalues and, optionally, eigenvectors of
+a real symmetric band matrix A. If eigenvectors are desired, it uses
+a divide and conquer algorithm.
+
+The divide and conquer algorithm makes very mild assumptions about
+floating point arithmetic. It will work on machines with a guard
+digit in add/subtract, or on those binary machines without guard
+digits which subtract like the Cray X-MP, Cray Y-MP, Cray C-90, or
+Cray-2. It could conceivably fail on hexadecimal or decimal machines
+without guard digits, but we know of none.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAB`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAB>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of sbevd
+[ [ Value type of MatrixAB ] [LAPACK routine] ]
+[ [`float`][SSBEVD] ]
+[ [`double`][DSBEVD] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/sbevd.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/sbevd.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::sbevd( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/ssbevd.f.html ssbevd.f] and [@http://www.netlib.org/lapack/explore-html/dsbevd.f.html dsbevd.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/sbevx.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/sbevx.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,82 @@
+
+[section sbevx]
+
+[heading Prototype]
+There is one prototype of `sbevx` available, please see below.
+``
+sbevx( const char jobz, const char range, MatrixAB& ab, MatrixQ& q,
+ const Scalar >, const Scalar >, const int_t il,
+ const int_t iu, const Scalar >, int_t& m,
+ VectorW& w, MatrixZ& z, VectorIFAIL& ifail );
+``
+
+
+[heading Description]
+
+`sbevx` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSBEVX and DSBEVX.
+`sbevx` computes selected eigenvalues and, optionally, eigenvectors
+of a real symmetric band matrix A. Eigenvalues and eigenvectors can
+be selected by specifying either a range of values or a range of
+indices for the desired eigenvalues.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAB`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAB>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of sbevx
+[ [ Value type of MatrixAB ] [LAPACK routine] ]
+[ [`float`][SSBEVX] ]
+[ [`double`][DSBEVX] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/sbevx.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/sbevx.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::sbevx( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/ssbevx.f.html ssbevx.f] and [@http://www.netlib.org/lapack/explore-html/dsbevx.f.html dsbevx.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/sbgv.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/sbgv.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,80 @@
+
+[section sbgv]
+
+[heading Prototype]
+There is one prototype of `sbgv` available, please see below.
+``
+sbgv( const char jobz, MatrixAB& ab, MatrixBB& bb, VectorW& w,
+ MatrixZ& z );
+``
+
+
+[heading Description]
+
+`sbgv` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSBGV and DSBGV.
+`sbgv` computes all the eigenvalues, and optionally, the eigenvectors
+of a real generalized symmetric-definite banded eigenproblem, of
+the form A*x=(lambda)*B*x. Here A and B are assumed to be symmetric
+and banded, and B is also positive definite.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAB`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAB>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of sbgv
+[ [ Value type of MatrixAB ] [LAPACK routine] ]
+[ [`float`][SSBGV] ]
+[ [`double`][DSBGV] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/sbgv.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/sbgv.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::sbgv( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/ssbgv.f.html ssbgv.f] and [@http://www.netlib.org/lapack/explore-html/dsbgv.f.html dsbgv.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/sbgvd.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/sbgvd.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,88 @@
+
+[section sbgvd]
+
+[heading Prototype]
+There is one prototype of `sbgvd` available, please see below.
+``
+sbgvd( const char jobz, MatrixAB& ab, MatrixBB& bb, VectorW& w,
+ MatrixZ& z );
+``
+
+
+[heading Description]
+
+`sbgvd` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSBGVD and DSBGVD.
+`sbgvd` computes all the eigenvalues, and optionally, the eigenvectors
+of a real generalized symmetric-definite banded eigenproblem, of the
+form A*x=(lambda)*B*x. Here A and B are assumed to be symmetric and
+banded, and B is also positive definite. If eigenvectors are
+desired, it uses a divide and conquer algorithm.
+
+The divide and conquer algorithm makes very mild assumptions about
+floating point arithmetic. It will work on machines with a guard
+digit in add/subtract, or on those binary machines without guard
+digits which subtract like the Cray X-MP, Cray Y-MP, Cray C-90, or
+Cray-2. It could conceivably fail on hexadecimal or decimal machines
+without guard digits, but we know of none.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAB`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAB>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of sbgvd
+[ [ Value type of MatrixAB ] [LAPACK routine] ]
+[ [`float`][SSBGVD] ]
+[ [`double`][DSBGVD] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/sbgvd.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/sbgvd.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::sbgvd( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/ssbgvd.f.html ssbgvd.f] and [@http://www.netlib.org/lapack/explore-html/dsbgvd.f.html dsbgvd.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/sbgvx.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/sbgvx.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,85 @@
+
+[section sbgvx]
+
+[heading Prototype]
+There is one prototype of `sbgvx` available, please see below.
+``
+sbgvx( const char jobz, const char range, MatrixAB& ab, MatrixBB& bb,
+ MatrixQ& q, const Scalar >, const Scalar >,
+ const int_t il, const int_t iu,
+ const Scalar >, int_t& m, VectorW& w, MatrixZ& z,
+ VectorIFAIL& ifail );
+``
+
+
+[heading Description]
+
+`sbgvx` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSBGVX and DSBGVX.
+`sbgvx` computes selected eigenvalues, and optionally, eigenvectors
+of a real generalized symmetric-definite banded eigenproblem, of
+the form A*x=(lambda)*B*x. Here A and B are assumed to be symmetric
+and banded, and B is also positive definite. Eigenvalues and
+eigenvectors can be selected by specifying either all eigenvalues,
+a range of values or a range of indices for the desired eigenvalues.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAB`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAB>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of sbgvx
+[ [ Value type of MatrixAB ] [LAPACK routine] ]
+[ [`float`][SSBGVX] ]
+[ [`double`][DSBGVX] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/sbgvx.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/sbgvx.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::sbgvx( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/ssbgvx.f.html ssbgvx.f] and [@http://www.netlib.org/lapack/explore-html/dsbgvx.f.html dsbgvx.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/sgesv.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/sgesv.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,105 @@
+
+[section sgesv]
+
+[heading Prototype]
+There is one prototype of `sgesv` available, please see below.
+``
+sgesv( MatrixA& a, VectorIPIV& ipiv, const MatrixB& b, MatrixX& x,
+ int_t& iter );
+``
+
+
+[heading Description]
+
+`sgesv` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines DSGESV.
+`sgesv` computes the solution to a real system of linear equations
+A * X = B,
+where A is an N-by-N matrix and X and B are N-by-NRHS matrices.
+
+`sgesv` first attempts to factorize the matrix in SINGLE PRECISION
+and use this factorization within an iterative refinement procedure
+to produce a solution with DOUBLE PRECISION normwise backward error
+quality (see below). If the approach fails the method switches to a
+DOUBLE PRECISION factorization and solve.
+
+The iterative refinement is not going to be a winning strategy if
+the ratio SINGLE PRECISION performance over DOUBLE PRECISION
+performance is too small. A reasonable strategy should take the
+number of right-hand sides and the size of the matrix into account.
+This might be done with a call to ILAENV in the future. Up to now, we
+always try iterative refinement.
+
+The iterative refinement process is stopped if
+ITER > ITERMAX
+or for all the RHS we have:
+RNRM < SQRT(N)*XNRM*ANRM*EPS*BWDMAX
+where
+o ITER is the number of the current iteration in the iterative
+refinement process
+o RNRM is the infinity-norm of the residual
+o XNRM is the infinity-norm of the solution
+o ANRM is the infinity-operator-norm of the matrix A
+o EPS is the machine epsilon returned by DLAMCH('Epsilon')
+The value ITERMAX and BWDMAX are fixed to 30 and 1.0D+00
+respectively.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of sgesv
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`double`][DSGESV] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/sgesv.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/sgesv.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::sgesv( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/dsgesv.f.html dsgesv.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/spev.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/spev.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,77 @@
+
+[section spev]
+
+[heading Prototype]
+There is one prototype of `spev` available, please see below.
+``
+spev( const char jobz, MatrixAP& ap, VectorW& w, MatrixZ& z );
+``
+
+
+[heading Description]
+
+`spev` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSPEV and DSPEV.
+`spev` computes all the eigenvalues and, optionally, eigenvectors of a
+real symmetric matrix A in packed storage.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of spev
+[ [ Value type of MatrixAP ] [LAPACK routine] ]
+[ [`float`][SSPEV] ]
+[ [`double`][DSPEV] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/spev.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/spev.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::spev( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sspev.f.html sspev.f] and [@http://www.netlib.org/lapack/explore-html/dspev.f.html dspev.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/spevd.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/spevd.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,85 @@
+
+[section spevd]
+
+[heading Prototype]
+There is one prototype of `spevd` available, please see below.
+``
+spevd( const char jobz, MatrixAP& ap, VectorW& w, MatrixZ& z );
+``
+
+
+[heading Description]
+
+`spevd` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSPEVD and DSPEVD.
+`spevd` computes all the eigenvalues and, optionally, eigenvectors
+of a real symmetric matrix A in packed storage. If eigenvectors are
+desired, it uses a divide and conquer algorithm.
+
+The divide and conquer algorithm makes very mild assumptions about
+floating point arithmetic. It will work on machines with a guard
+digit in add/subtract, or on those binary machines without guard
+digits which subtract like the Cray X-MP, Cray Y-MP, Cray C-90, or
+Cray-2. It could conceivably fail on hexadecimal or decimal machines
+without guard digits, but we know of none.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of spevd
+[ [ Value type of MatrixAP ] [LAPACK routine] ]
+[ [`float`][SSPEVD] ]
+[ [`double`][DSPEVD] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/spevd.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/spevd.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::spevd( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sspevd.f.html sspevd.f] and [@http://www.netlib.org/lapack/explore-html/dspevd.f.html dspevd.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/spevx.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/spevx.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,82 @@
+
+[section spevx]
+
+[heading Prototype]
+There is one prototype of `spevx` available, please see below.
+``
+spevx( const char jobz, const char range, MatrixAP& ap, const Scalar >,
+ const Scalar >, const int_t il,
+ const int_t iu, const Scalar >, int_t& m,
+ VectorW& w, MatrixZ& z, VectorIFAIL& ifail );
+``
+
+
+[heading Description]
+
+`spevx` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSPEVX and DSPEVX.
+`spevx` computes selected eigenvalues and, optionally, eigenvectors
+of a real symmetric matrix A in packed storage. Eigenvalues/vectors
+can be selected by specifying either a range of values or a range of
+indices for the desired eigenvalues.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of spevx
+[ [ Value type of MatrixAP ] [LAPACK routine] ]
+[ [`float`][SSPEVX] ]
+[ [`double`][DSPEVX] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/spevx.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/spevx.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::spevx( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sspevx.f.html sspevx.f] and [@http://www.netlib.org/lapack/explore-html/dspevx.f.html dspevx.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/spgv.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/spgv.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,81 @@
+
+[section spgv]
+
+[heading Prototype]
+There is one prototype of `spgv` available, please see below.
+``
+spgv( const int_t itype, const char jobz, MatrixAP& ap,
+ MatrixBP& bp, VectorW& w, MatrixZ& z );
+``
+
+
+[heading Description]
+
+`spgv` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSPGV and DSPGV.
+`spgv` computes all the eigenvalues and, optionally, the eigenvectors
+of a real generalized symmetric-definite eigenproblem, of the form
+A*x=(lambda)*B*x, A*Bx=(lambda)*x, or B*A*x=(lambda)*x.
+Here A and B are assumed to be symmetric, stored in packed format,
+and B is also positive definite.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of spgv
+[ [ Value type of MatrixAP ] [LAPACK routine] ]
+[ [`float`][SSPGV] ]
+[ [`double`][DSPGV] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/spgv.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/spgv.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::spgv( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sspgv.f.html sspgv.f] and [@http://www.netlib.org/lapack/explore-html/dspgv.f.html dspgv.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/spgvd.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/spgvd.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,89 @@
+
+[section spgvd]
+
+[heading Prototype]
+There is one prototype of `spgvd` available, please see below.
+``
+spgvd( const int_t itype, const char jobz, MatrixAP& ap,
+ MatrixBP& bp, VectorW& w, MatrixZ& z );
+``
+
+
+[heading Description]
+
+`spgvd` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSPGVD and DSPGVD.
+`spgvd` computes all the eigenvalues, and optionally, the eigenvectors
+of a real generalized symmetric-definite eigenproblem, of the form
+A*x=(lambda)*B*x, A*Bx=(lambda)*x, or B*A*x=(lambda)*x. Here A and
+B are assumed to be symmetric, stored in packed format, and B is also
+positive definite.
+If eigenvectors are desired, it uses a divide and conquer algorithm.
+
+The divide and conquer algorithm makes very mild assumptions about
+floating point arithmetic. It will work on machines with a guard
+digit in add/subtract, or on those binary machines without guard
+digits which subtract like the Cray X-MP, Cray Y-MP, Cray C-90, or
+Cray-2. It could conceivably fail on hexadecimal or decimal machines
+without guard digits, but we know of none.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of spgvd
+[ [ Value type of MatrixAP ] [LAPACK routine] ]
+[ [`float`][SSPGVD] ]
+[ [`double`][DSPGVD] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/spgvd.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/spgvd.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::spgvd( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sspgvd.f.html sspgvd.f] and [@http://www.netlib.org/lapack/explore-html/dspgvd.f.html dspgvd.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/spgvx.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/spgvx.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,86 @@
+
+[section spgvx]
+
+[heading Prototype]
+There is one prototype of `spgvx` available, please see below.
+``
+spgvx( const int_t itype, const char jobz, const char range,
+ const int_t n, MatrixAP& ap, MatrixBP& bp, const Scalar >,
+ const Scalar >, const int_t il,
+ const int_t iu, const Scalar >, int_t& m,
+ VectorW& w, MatrixZ& z, VectorIFAIL& ifail );
+``
+
+
+[heading Description]
+
+`spgvx` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSPGVX and DSPGVX.
+`spgvx` computes selected eigenvalues, and optionally, eigenvectors
+of a real generalized symmetric-definite eigenproblem, of the form
+A*x=(lambda)*B*x, A*Bx=(lambda)*x, or B*A*x=(lambda)*x. Here A
+and B are assumed to be symmetric, stored in packed storage, and B
+is also positive definite. Eigenvalues and eigenvectors can be
+selected by specifying either a range of values or a range of indices
+for the desired eigenvalues.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of spgvx
+[ [ Value type of MatrixAP ] [LAPACK routine] ]
+[ [`float`][SSPGVX] ]
+[ [`double`][DSPGVX] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/spgvx.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/spgvx.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::spgvx( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sspgvx.f.html sspgvx.f] and [@http://www.netlib.org/lapack/explore-html/dspgvx.f.html dspgvx.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/sposv.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/sposv.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,106 @@
+
+[section sposv]
+
+[heading Prototype]
+There is one prototype of `sposv` available, please see below.
+``
+sposv( MatrixA& a, const MatrixB& b, MatrixX& x,
+ int_t& iter );
+``
+
+
+[heading Description]
+
+`sposv` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines DSPOSV.
+`sposv` computes the solution to a real system of linear equations
+A * X = B,
+where A is an N-by-N symmetric positive definite matrix and X and B
+are N-by-NRHS matrices.
+
+`sposv` first attempts to factorize the matrix in SINGLE PRECISION
+and use this factorization within an iterative refinement procedure
+to produce a solution with DOUBLE PRECISION normwise backward error
+quality (see below). If the approach fails the method switches to a
+DOUBLE PRECISION factorization and solve.
+
+The iterative refinement is not going to be a winning strategy if
+the ratio SINGLE PRECISION performance over DOUBLE PRECISION
+performance is too small. A reasonable strategy should take the
+number of right-hand sides and the size of the matrix into account.
+This might be done with a call to ILAENV in the future. Up to now, we
+always try iterative refinement.
+
+The iterative refinement process is stopped if
+ITER > ITERMAX
+or for all the RHS we have:
+RNRM < SQRT(N)*XNRM*ANRM*EPS*BWDMAX
+where
+o ITER is the number of the current iteration in the iterative
+refinement process
+o RNRM is the infinity-norm of the residual
+o XNRM is the infinity-norm of the solution
+o ANRM is the infinity-operator-norm of the matrix A
+o EPS is the machine epsilon returned by DLAMCH('Epsilon')
+The value ITERMAX and BWDMAX are fixed to 30 and 1.0D+00
+respectively.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of sposv
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`double`][DSPOSV] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/sposv.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/sposv.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::sposv( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/dsposv.f.html dsposv.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/spsv.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/spsv.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,89 @@
+
+[section spsv]
+
+[heading Prototype]
+There is one prototype of `spsv` available, please see below.
+``
+spsv( MatrixAP& ap, VectorIPIV& ipiv, MatrixB& b );
+``
+
+
+[heading Description]
+
+`spsv` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSPSV, DSPSV, CSPSV, and ZSPSV.
+`spsv` computes the solution to a complex system of linear equations
+A * X = B,
+where A is an N-by-N symmetric matrix stored in packed format and X
+and B are N-by-NRHS matrices.
+
+The diagonal pivoting method is used to factor A as
+A = U * D * U**T, if UPLO = 'U', or
+A = L * D * L**T, if UPLO = 'L',
+where U (or L) is a product of permutation and unit upper (lower)
+triangular matrices, D is symmetric and block diagonal with 1-by-1
+and 2-by-2 diagonal blocks. The factored form of A is then used to
+solve the system of equations A * X = B.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of spsv
+[ [ Value type of MatrixAP ] [LAPACK routine] ]
+[ [`float`][SSPSV] ]
+[ [`double`][DSPSV] ]
+[ [`complex<float>`][CSPSV] ]
+[ [`complex<double>`][ZSPSV] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/spsv.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/spsv.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::spsv( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sspsv.f.html sspsv.f], [@http://www.netlib.org/lapack/explore-html/dspsv.f.html dspsv.f], [@http://www.netlib.org/lapack/explore-html/cspsv.f.html cspsv.f], and [@http://www.netlib.org/lapack/explore-html/zspsv.f.html zspsv.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/spsvx.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/spsvx.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,112 @@
+
+[section spsvx]
+
+[heading Prototype]
+There is one prototype of `spsvx` available, please see below.
+``
+spsvx( const char fact, const MatrixAP& ap, MatrixAFP& afp,
+ VectorIPIV& ipiv, const MatrixB& b, MatrixX& x, Scalar >,
+ VectorFERR& ferr, VectorBERR& berr );
+``
+
+
+[heading Description]
+
+`spsvx` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSPSVX, DSPSVX, CSPSVX, and ZSPSVX.
+`spsvx` uses the diagonal pivoting factorization A = U*D*U**T or
+A = L*D*L**T to compute the solution to a complex system of linear
+equations A * X = B, where A is an N-by-N symmetric matrix stored
+in packed format and X and B are N-by-NRHS matrices.
+
+Error bounds on the solution and a condition estimate are also
+provided.
+
+Description
+===========
+
+The following steps are performed:
+
+1. If FACT = 'N', the diagonal pivoting method is used to factor A as
+A = U * D * U**T, if UPLO = 'U', or
+A = L * D * L**T, if UPLO = 'L',
+where U (or L) is a product of permutation and unit upper (lower)
+triangular matrices and D is symmetric and block diagonal with
+1-by-1 and 2-by-2 diagonal blocks.
+
+2. If some D(i,i)=0, so that D is exactly singular, then the routine
+returns with INFO = i. Otherwise, the factored form of A is used
+to estimate the condition number of the matrix A. If the
+reciprocal of the condition number is less than machine precision,
+INFO = N+1 is returned as a warning, but the routine still goes on
+to solve for X and compute error bounds as described below.
+
+3. The system of equations is solved for X using the factored form
+of A.
+
+4. Iterative refinement is applied to improve the computed solution
+matrix and calculate error bounds and backward error estimates
+for it.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixAP`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixAP>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of spsvx
+[ [ Value type of MatrixAP ] [LAPACK routine] ]
+[ [`float`][SSPSVX] ]
+[ [`double`][DSPSVX] ]
+[ [`complex<float>`][CSPSVX] ]
+[ [`complex<double>`][ZSPSVX] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/spsvx.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/spsvx.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::spsvx( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sspsvx.f.html sspsvx.f], [@http://www.netlib.org/lapack/explore-html/dspsvx.f.html dspsvx.f], [@http://www.netlib.org/lapack/explore-html/cspsvx.f.html cspsvx.f], and [@http://www.netlib.org/lapack/explore-html/zspsvx.f.html zspsvx.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/stev.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/stev.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,78 @@
+
+[section stev]
+
+[heading Prototype]
+There is one prototype of `stev` available, please see below.
+``
+stev( const char jobz, const int_t n, VectorD& d,
+ VectorE& e, MatrixZ& z );
+``
+
+
+[heading Description]
+
+`stev` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSTEV and DSTEV.
+`stev` computes all eigenvalues and, optionally, eigenvectors of a
+real symmetric tridiagonal matrix A.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorD`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorD>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of stev
+[ [ Value type of VectorD ] [LAPACK routine] ]
+[ [`float`][SSTEV] ]
+[ [`double`][DSTEV] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/stev.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/stev.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::stev( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sstev.f.html sstev.f] and [@http://www.netlib.org/lapack/explore-html/dstev.f.html dstev.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/stevd.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/stevd.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,86 @@
+
+[section stevd]
+
+[heading Prototype]
+There is one prototype of `stevd` available, please see below.
+``
+stevd( const char jobz, const int_t n, VectorD& d,
+ VectorE& e, MatrixZ& z );
+``
+
+
+[heading Description]
+
+`stevd` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSTEVD and DSTEVD.
+`stevd` computes all eigenvalues and, optionally, eigenvectors of a
+real symmetric tridiagonal matrix. If eigenvectors are desired, it
+uses a divide and conquer algorithm.
+
+The divide and conquer algorithm makes very mild assumptions about
+floating point arithmetic. It will work on machines with a guard
+digit in add/subtract, or on those binary machines without guard
+digits which subtract like the Cray X-MP, Cray Y-MP, Cray C-90, or
+Cray-2. It could conceivably fail on hexadecimal or decimal machines
+without guard digits, but we know of none.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorD`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorD>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of stevd
+[ [ Value type of VectorD ] [LAPACK routine] ]
+[ [`float`][SSTEVD] ]
+[ [`double`][DSTEVD] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/stevd.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/stevd.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::stevd( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sstevd.f.html sstevd.f] and [@http://www.netlib.org/lapack/explore-html/dstevd.f.html dstevd.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/stevr.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/stevr.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,119 @@
+
+[section stevr]
+
+[heading Prototype]
+There is one prototype of `stevr` available, please see below.
+``
+stevr( const char jobz, const char range, const int_t n,
+ VectorD& d, VectorE& e, const Scalar >, const Scalar >,
+ const int_t il, const int_t iu,
+ const Scalar >, int_t& m, VectorW& w, MatrixZ& z,
+ VectorISUPPZ& isuppz );
+``
+
+
+[heading Description]
+
+`stevr` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSTEVR and DSTEVR.
+`stevr` computes selected eigenvalues and, optionally, eigenvectors
+of a real symmetric tridiagonal matrix T. Eigenvalues and
+eigenvectors can be selected by specifying either a range of values
+or a range of indices for the desired eigenvalues.
+
+Whenever possible, `stevr` calls DSTEMR to compute the
+eigenspectrum using Relatively Robust Representations. DSTEMR
+computes eigenvalues by the dqds algorithm, while orthogonal
+eigenvectors are computed from various "good" L D L^T representations
+(also known as Relatively Robust Representations). Gram-Schmidt
+orthogonalization is avoided as far as possible. More specifically,
+the various steps of the algorithm are as follows. For the i-th
+unreduced block of T,
+(a) Compute T - sigma_i = L_i D_i L_i^T, such that L_i D_i L_i^T
+is a relatively robust representation,
+(b) Compute the eigenvalues, lambda_j, of L_i D_i L_i^T to high
+relative accuracy by the dqds algorithm,
+(c) If there is a cluster of close eigenvalues, "choose" sigma_i
+close to the cluster, and go to step (a),
+(d) Given the approximate eigenvalue lambda_j of L_i D_i L_i^T,
+compute the corresponding eigenvector by forming a
+rank-revealing twisted factorization.
+The desired accuracy of the output can be specified by the input
+parameter ABSTOL.
+
+For more details, see "A new O(n^2) algorithm for the symmetric
+tridiagonal eigenvalue/eigenvector problem", by Inderjit Dhillon,
+Computer Science Division Technical Report No. UCB//CSD-97-971,
+UC Berkeley, May 1997.
+
+
+Note 1 : `stevr` calls DSTEMR when the full spectrum is requested
+on machines which conform to the ieee-754 floating point standard.
+`stevr` calls DSTEBZ and DSTEIN on non-ieee machines and
+when partial spectrum requests are made.
+
+Normal execution of DSTEMR may create NaNs and infinities and
+hence may abort due to a floating point exception in environments
+which do not handle NaNs and infinities in the ieee standard default
+manner.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorD`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorD>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of stevr
+[ [ Value type of VectorD ] [LAPACK routine] ]
+[ [`float`][SSTEVR] ]
+[ [`double`][DSTEVR] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/stevr.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/stevr.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::stevr( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sstevr.f.html sstevr.f] and [@http://www.netlib.org/lapack/explore-html/dstevr.f.html dstevr.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/stevx.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/stevx.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,83 @@
+
+[section stevx]
+
+[heading Prototype]
+There is one prototype of `stevx` available, please see below.
+``
+stevx( const char jobz, const char range, const int_t n,
+ VectorD& d, VectorE& e, const Scalar >, const Scalar >,
+ const int_t il, const int_t iu,
+ const Scalar >, int_t& m, VectorW& w, MatrixZ& z,
+ VectorIFAIL& ifail );
+``
+
+
+[heading Description]
+
+`stevx` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSTEVX and DSTEVX.
+`stevx` computes selected eigenvalues and, optionally, eigenvectors
+of a real symmetric tridiagonal matrix A. Eigenvalues and
+eigenvectors can be selected by specifying either a range of values
+or a range of indices for the desired eigenvalues.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `VectorD`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<VectorD>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of stevx
+[ [ Value type of VectorD ] [LAPACK routine] ]
+[ [`float`][SSTEVX] ]
+[ [`double`][DSTEVX] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/stevx.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/stevx.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::stevx( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/sstevx.f.html sstevx.f] and [@http://www.netlib.org/lapack/explore-html/dstevx.f.html dstevx.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/syev.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/syev.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,77 @@
+
+[section syev]
+
+[heading Prototype]
+There is one prototype of `syev` available, please see below.
+``
+syev( const char jobz, MatrixA& a, VectorW& w );
+``
+
+
+[heading Description]
+
+`syev` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSYEV and DSYEV.
+`syev` computes all eigenvalues and, optionally, eigenvectors of a
+real symmetric matrix A.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of syev
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SSYEV] ]
+[ [`double`][DSYEV] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/syev.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/syev.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::syev( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/ssyev.f.html ssyev.f] and [@http://www.netlib.org/lapack/explore-html/dsyev.f.html dsyev.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/syevd.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/syevd.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,88 @@
+
+[section syevd]
+
+[heading Prototype]
+There is one prototype of `syevd` available, please see below.
+``
+syevd( const char jobz, MatrixA& a, VectorW& w );
+``
+
+
+[heading Description]
+
+`syevd` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSYEVD and DSYEVD.
+`syevd` computes all eigenvalues and, optionally, eigenvectors of a
+real symmetric matrix A. If eigenvectors are desired, it uses a
+divide and conquer algorithm.
+
+The divide and conquer algorithm makes very mild assumptions about
+floating point arithmetic. It will work on machines with a guard
+digit in add/subtract, or on those binary machines without guard
+digits which subtract like the Cray X-MP, Cray Y-MP, Cray C-90, or
+Cray-2. It could conceivably fail on hexadecimal or decimal machines
+without guard digits, but we know of none.
+
+Because of large use of BLAS of level 3, `syevd` needs N**2 more
+workspace than DSYEVX.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of syevd
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SSYEVD] ]
+[ [`double`][DSYEVD] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/syevd.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/syevd.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::syevd( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/ssyevd.f.html ssyevd.f] and [@http://www.netlib.org/lapack/explore-html/dsyevd.f.html dsyevd.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/syevr.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/syevr.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,135 @@
+
+[section syevr]
+
+[heading Prototype]
+There is one prototype of `syevr` available, please see below.
+``
+syevr( const char jobz, const char range, MatrixA& a, const Scalar >,
+ const Scalar >, const int_t il,
+ const int_t iu, const Scalar >, int_t& m,
+ VectorW& w, MatrixZ& z, VectorISUPPZ& isuppz );
+``
+
+
+[heading Description]
+
+`syevr` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSYEVR and DSYEVR.
+`syevr` computes selected eigenvalues and, optionally, eigenvectors
+of a real symmetric matrix A. Eigenvalues and eigenvectors can be
+selected by specifying either a range of values or a range of
+indices for the desired eigenvalues.
+
+`syevr` first reduces the matrix A to tridiagonal form T with a call
+to DSYTRD. Then, whenever possible, `syevr` calls DSTEMR to compute
+the eigenspectrum using Relatively Robust Representations. DSTEMR
+computes eigenvalues by the dqds algorithm, while orthogonal
+eigenvectors are computed from various "good" L D L^T representations
+(also known as Relatively Robust Representations). Gram-Schmidt
+orthogonalization is avoided as far as possible. More specifically,
+the various steps of the algorithm are as follows.
+
+For each unreduced block (submatrix) of T,
+(a) Compute T - sigma I = L D L^T, so that L and D
+define all the wanted eigenvalues to high relative accuracy.
+This means that small relative changes in the entries of D and L
+cause only small relative changes in the eigenvalues and
+eigenvectors. The standard (unfactored) representation of the
+tridiagonal matrix T does not have this property in general.
+(b) Compute the eigenvalues to suitable accuracy.
+If the eigenvectors are desired, the algorithm attains full
+accuracy of the computed eigenvalues only right before
+the corresponding vectors have to be computed, see steps c) and d).
+(c) For each cluster of close eigenvalues, select a new
+shift close to the cluster, find a new factorization, and refine
+the shifted eigenvalues to suitable accuracy.
+(d) For each eigenvalue with a large enough relative separation compute
+the corresponding eigenvector by forming a rank revealing twisted
+factorization. Go back to (c) for any clusters that remain.
+
+The desired accuracy of the output can be specified by the input
+parameter ABSTOL.
+
+For more details, see DSTEMR's documentation and:
+- Inderjit S. Dhillon and Beresford N. Parlett: "Multiple representations
+to compute orthogonal eigenvectors of symmetric tridiagonal matrices,"
+Linear Algebra and its Applications, 387(1), pp. 1-28, August 2004.
+- Inderjit Dhillon and Beresford Parlett: "Orthogonal Eigenvectors and
+Relative Gaps," SIAM Journal on Matrix Analysis and Applications, Vol. 25,
+2004. Also LAPACK Working Note 154.
+- Inderjit Dhillon: "A new O(n^2) algorithm for the symmetric
+tridiagonal eigenvalue/eigenvector problem",
+Computer Science Division Technical Report No. UCB/CSD-97-971,
+UC Berkeley, May 1997.
+
+
+Note 1 : `syevr` calls DSTEMR when the full spectrum is requested
+on machines which conform to the ieee-754 floating point standard.
+`syevr` calls DSTEBZ and SSTEIN on non-ieee machines and
+when partial spectrum requests are made.
+
+Normal execution of DSTEMR may create NaNs and infinities and
+hence may abort due to a floating point exception in environments
+which do not handle NaNs and infinities in the ieee standard default
+manner.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of syevr
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SSYEVR] ]
+[ [`double`][DSYEVR] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/syevr.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/syevr.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::syevr( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/ssyevr.f.html ssyevr.f] and [@http://www.netlib.org/lapack/explore-html/dsyevr.f.html dsyevr.f] at Netlib.
+
+[endsect]

Added: sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/syevx.qbk
==============================================================================
--- (empty file)
+++ sandbox/numeric_bindings/libs/numeric/bindings/doc/lapack/driver/syevx.qbk 2010-04-19 03:37:05 EDT (Mon, 19 Apr 2010)
@@ -0,0 +1,82 @@
+
+[section syevx]
+
+[heading Prototype]
+There is one prototype of `syevx` available, please see below.
+``
+syevx( const char jobz, const char range, MatrixA& a, const Scalar >,
+ const Scalar >, const int_t il,
+ const int_t iu, const Scalar >, int_t& m,
+ VectorW& w, MatrixZ& z, VectorIFAIL& ifail );
+``
+
+
+[heading Description]
+
+`syevx` (short for $FRIENDLY_NAME) provides a C++
+interface to LAPACK routines SSYEVX and DSYEVX.
+`syevx` computes selected eigenvalues and, optionally, eigenvectors
+of a real symmetric matrix A. Eigenvalues and eigenvectors can be
+selected by specifying either a range of values or a range of indices
+for the desired eigenvalues.
+
+The selection of the LAPACK routine is done during compile-time,
+and is determined by the type of values contained in type `MatrixA`.
+The type of values is obtained through the `value_type` meta-function
+ `typename value_type<MatrixA>::type`.
+The dispatching table below illustrates to which specific routine
+the code path will be generated.
+
+[table Dispatching of syevx
+[ [ Value type of MatrixA ] [LAPACK routine] ]
+[ [`float`][SSYEVX] ]
+[ [`double`][DSYEVX] ]
+
+]
+
+
+[heading Definition]
+Defined in header [headerref boost/numeric/bindings/lapack/syevx.hpp].
+
+
+[heading Parameters or Requirements on Types]
+
+[variablelist Parameters
+ [[MatrixA] [The definition of term 1]]
+ [[MatrixB] [The definition of term 2]]
+ [[MatrixC] [
+ The definition of term 3.
+
+ Definitions may contain paragraphs.
+ ]]
+]
+
+
+[heading Complexity]
+
+
+[heading Example]
+``
+#include <boost/numeric/bindings/lapack/syevx.hpp>
+using namespace boost::numeric::bindings;
+
+lapack::syevx( x, y, z );
+
+``
+
+this will output
+
+``
+[5] 0 1 2 3 4 5
+``
+
+
+
+[heading Notes]
+
+
+[heading See Also]
+
+* Originating Fortran source files [@http://www.netlib.org/lapack/explore-html/ssyevx.f.html ssyevx.f] and [@