Show
Ignore:
Timestamp:
10/12/09 13:49:39 (15 years ago)
Author:
mido
Message:

\doc directory cleaned a bit

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • library/doc/html/classbdm_1_1fsqmat.html

    r641 r651  
    1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
    2 <html xmlns="http://www.w3.org/1999/xhtml"> 
    3 <head> 
    4 <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> 
     1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
     2<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> 
    53<title>mixpp: bdm::fsqmat Class Reference</title> 
    6 <link href="tabs.css" rel="stylesheet" type="text/css"/> 
    7 <link href="doxygen.css" rel="stylesheet" type="text/css"/> 
    8 </head> 
    9 <body> 
    10 <!-- Generated by Doxygen 1.6.1 --> 
     4<link href="tabs.css" rel="stylesheet" type="text/css"> 
     5<link href="doxygen.css" rel="stylesheet" type="text/css"> 
     6</head><body> 
     7<!-- Generated by Doxygen 1.5.9 --> 
    118<script type="text/javascript"> 
    129<!-- 
     
    7168</div> 
    7269<div class="contents"> 
    73 <h1>bdm::fsqmat Class Reference</h1><!-- doxytag: class="bdm::fsqmat" --><!-- doxytag: inherits="bdm::sqmat" --> 
    74 <p>Fake <a class="el" href="classbdm_1_1sqmat.html" title="Abstract class for representation of double symmetric matrices in square-root form...">sqmat</a>. This class maps <a class="el" href="classbdm_1_1sqmat.html" title="Abstract class for representation of double symmetric matrices in square-root form...">sqmat</a> operations to operations on full matrix.   
    75 <a href="#_details">More...</a></p> 
    76 <hr/><a name="_details"></a><h2>Detailed Description</h2> 
    77 <p>Fake <a class="el" href="classbdm_1_1sqmat.html" title="Abstract class for representation of double symmetric matrices in square-root form...">sqmat</a>. This class maps <a class="el" href="classbdm_1_1sqmat.html" title="Abstract class for representation of double symmetric matrices in square-root form...">sqmat</a> operations to operations on full matrix. </p> 
    78 <p>This class can be used to compare performance of algorithms using decomposed matrices with perormance of the same algorithms using full matrices; </p> 
    79  
    80 <p><code>#include &lt;<a class="el" href="square__mat_8h_source.html">square_mat.h</a>&gt;</code></p> 
    81  
    82 <p><a href="classbdm_1_1fsqmat-members.html">List of all members.</a></p> 
    83 <table border="0" cellpadding="0" cellspacing="0"> 
    84 <tr><td colspan="2"><h2>Public Member Functions</h2></td></tr> 
    85 <tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#aa41b3686a77d1f9657b6942b01cfd8be">opupdt</a> (const vec &amp;v, double w)</td></tr> 
    86 <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5c27d47cd0fa7ae686d4519f89a3c9b0"></a><!-- doxytag: member="bdm::fsqmat::to_mat" ref="a5c27d47cd0fa7ae686d4519f89a3c9b0" args="() const " --> 
    87 mat&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#a5c27d47cd0fa7ae686d4519f89a3c9b0">to_mat</a> () const </td></tr> 
    88 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Conversion to full matrix. <br/></td></tr> 
    89 <tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#afca713af3f74677fd7fbafe723590112">mult_sym</a> (const mat &amp;C)</td></tr> 
    90 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Inplace symmetric multiplication by a SQUARE matrix <img class="formulaInl" alt="$C$" src="form_60.png"/>, i.e. <img class="formulaInl" alt="$V = C*V*C'$" src="form_61.png"/>.  <a href="#afca713af3f74677fd7fbafe723590112"></a><br/></td></tr> 
    91 <tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#a0f6b7cf09daf484f29ea99a144a27039">mult_sym_t</a> (const mat &amp;C)</td></tr> 
    92 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Inplace symmetric multiplication by a SQUARE transpose of matrix <img class="formulaInl" alt="$C$" src="form_60.png"/>, i.e. <img class="formulaInl" alt="$V = C'*V*C$" src="form_62.png"/>.  <a href="#a0f6b7cf09daf484f29ea99a144a27039"></a><br/></td></tr> 
    93 <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a75ff12a4d7d7ef50a812529e6e994cd1"></a><!-- doxytag: member="bdm::fsqmat::mult_sym" ref="a75ff12a4d7d7ef50a812529e6e994cd1" args="(const mat &amp;C, fsqmat &amp;U) const " --> 
    94 void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#a75ff12a4d7d7ef50a812529e6e994cd1">mult_sym</a> (const mat &amp;C, <a class="el" href="classbdm_1_1fsqmat.html">fsqmat</a> &amp;U) const </td></tr> 
    95 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">store result of <code>mult_sym</code> in external matrix <img class="formulaInl" alt="$U$" src="form_66.png"/> <br/></td></tr> 
    96 <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a06d0f00ce05ad0349bef754ba94ee6c9"></a><!-- doxytag: member="bdm::fsqmat::mult_sym_t" ref="a06d0f00ce05ad0349bef754ba94ee6c9" args="(const mat &amp;C, fsqmat &amp;U) const " --> 
    97 void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#a06d0f00ce05ad0349bef754ba94ee6c9">mult_sym_t</a> (const mat &amp;C, <a class="el" href="classbdm_1_1fsqmat.html">fsqmat</a> &amp;U) const </td></tr> 
    98 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">store result of <code>mult_sym_t</code> in external matrix <img class="formulaInl" alt="$U$" src="form_66.png"/> <br/></td></tr> 
    99 <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8ba3bc2f92b3fc6cfc90f21b3a5a5ada"></a><!-- doxytag: member="bdm::fsqmat::clear" ref="a8ba3bc2f92b3fc6cfc90f21b3a5a5ada" args="()" --> 
    100 void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#a8ba3bc2f92b3fc6cfc90f21b3a5a5ada">clear</a> ()</td></tr> 
    101 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Clearing matrix so that it corresponds to zeros. <br/></td></tr> 
    102 <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad9461412d5087d685a3213671446f143"></a><!-- doxytag: member="bdm::fsqmat::fsqmat" ref="ad9461412d5087d685a3213671446f143" args="()" --> 
    103 &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#ad9461412d5087d685a3213671446f143">fsqmat</a> ()</td></tr> 
    104 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default initialization. <br/></td></tr> 
    105 <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5c1e23070177ec386ec80ae3ba3f29f5"></a><!-- doxytag: member="bdm::fsqmat::fsqmat" ref="a5c1e23070177ec386ec80ae3ba3f29f5" args="(const int dim0)" --> 
    106 &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#a5c1e23070177ec386ec80ae3ba3f29f5">fsqmat</a> (const int dim0)</td></tr> 
    107 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default initialization with proper size. <br/></td></tr> 
    108 <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab74cf8cabe8ac3b2b232c3de6ad070b0"></a><!-- doxytag: member="bdm::fsqmat::fsqmat" ref="ab74cf8cabe8ac3b2b232c3de6ad070b0" args="(const mat &amp;M)" --> 
    109 &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#ab74cf8cabe8ac3b2b232c3de6ad070b0">fsqmat</a> (const mat &amp;<a class="el" href="classbdm_1_1fsqmat.html#aae9e9d807cd320ec265df81022eb9f03">M</a>)</td></tr> 
    110 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor. <br/></td></tr> 
    111 <tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#a8168a96449b2126dfc117c136fdf39d5">fsqmat</a> (const <a class="el" href="classbdm_1_1fsqmat.html">fsqmat</a> &amp;<a class="el" href="classbdm_1_1fsqmat.html#aae9e9d807cd320ec265df81022eb9f03">M</a>, const ivec &amp;perm)</td></tr> 
    112 <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6203529db9dab639f2c123aac9fb6a6c"></a><!-- doxytag: member="bdm::fsqmat::fsqmat" ref="a6203529db9dab639f2c123aac9fb6a6c" args="(const vec &amp;d)" --> 
    113 &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#a6203529db9dab639f2c123aac9fb6a6c">fsqmat</a> (const vec &amp;d)</td></tr> 
    114 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor. <br/></td></tr> 
    115 <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a26d4037b787aa9cd63742393e6bd334f"></a><!-- doxytag: member="bdm::fsqmat::~fsqmat" ref="a26d4037b787aa9cd63742393e6bd334f" args="()" --> 
    116 virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#a26d4037b787aa9cd63742393e6bd334f">~fsqmat</a> ()</td></tr> 
    117 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Destructor for future use;. <br/></td></tr> 
    118 <tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#ad17495888ab35e09ebb9b4e789f586d5">inv</a> (<a class="el" href="classbdm_1_1fsqmat.html">fsqmat</a> &amp;Inv) const </td></tr> 
    119 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Matrix inversion preserving the chosen form.  <a href="#ad17495888ab35e09ebb9b4e789f586d5"></a><br/></td></tr> 
    120 <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a15de11fa1e280d4caa7cb010711881a0"></a><!-- doxytag: member="bdm::fsqmat::logdet" ref="a15de11fa1e280d4caa7cb010711881a0" args="() const " --> 
    121 double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#a15de11fa1e280d4caa7cb010711881a0">logdet</a> () const </td></tr> 
    122 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Logarithm of a determinant. <br/></td></tr> 
    123 <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a766faafcf138610840a6975f8a28d0b6"></a><!-- doxytag: member="bdm::fsqmat::qform" ref="a766faafcf138610840a6975f8a28d0b6" args="(const vec &amp;v) const " --> 
    124 double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#a766faafcf138610840a6975f8a28d0b6">qform</a> (const vec &amp;v) const </td></tr> 
    125 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Evaluates quadratic form <img class="formulaInl" alt="$x= v'*V*v$" src="form_64.png"/>;. <br/></td></tr> 
    126 <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a967cbb3a58a0a6f7bd974f2c6ff5d520"></a><!-- doxytag: member="bdm::fsqmat::invqform" ref="a967cbb3a58a0a6f7bd974f2c6ff5d520" args="(const vec &amp;v) const " --> 
    127 double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#a967cbb3a58a0a6f7bd974f2c6ff5d520">invqform</a> (const vec &amp;v) const </td></tr> 
    128 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Evaluates quadratic form <img class="formulaInl" alt="$x= v'*inv(V)*v$" src="form_65.png"/>;. <br/></td></tr> 
    129 <tr><td class="memItemLeft" align="right" valign="top">vec&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#aab240f84ea1685bc95df0446f948abfd">sqrt_mult</a> (const vec &amp;v) const </td></tr> 
    130 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Multiplies square <a class="el" href="classbdm_1_1root.html" title="Root class of BDM objects.">root</a> of <img class="formulaInl" alt="$V$" src="form_63.png"/> by vector <img class="formulaInl" alt="$x$" src="form_1.png"/>.  <a href="#aab240f84ea1685bc95df0446f948abfd"></a><br/></td></tr> 
    131 <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1a01433460718f7b8a9fa6ba9a911b8a"></a><!-- doxytag: member="bdm::fsqmat::add" ref="a1a01433460718f7b8a9fa6ba9a911b8a" args="(const fsqmat &amp;fsq2, double w=1.0)" --> 
    132 void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#a1a01433460718f7b8a9fa6ba9a911b8a">add</a> (const <a class="el" href="classbdm_1_1fsqmat.html">fsqmat</a> &amp;fsq2, double w=1.0)</td></tr> 
    133 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Add another matrix in fsq form with weight w. <br/></td></tr> 
    134 <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad36cb40feaa7079d8687d60bd33e50a5"></a><!-- doxytag: member="bdm::fsqmat::setD" ref="ad36cb40feaa7079d8687d60bd33e50a5" args="(const vec &amp;nD)" --> 
    135 void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#ad36cb40feaa7079d8687d60bd33e50a5">setD</a> (const vec &amp;nD)</td></tr> 
    136 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Access functions. <br/></td></tr> 
    137 <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad94e0156c4d15a756b23fa70ab181904"></a><!-- doxytag: member="bdm::fsqmat::getD" ref="ad94e0156c4d15a756b23fa70ab181904" args="()" --> 
    138 vec&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#ad94e0156c4d15a756b23fa70ab181904">getD</a> ()</td></tr> 
    139 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Access functions. <br/></td></tr> 
    140 <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a19f6f73679a09315babba64a95d89085"></a><!-- doxytag: member="bdm::fsqmat::setD" ref="a19f6f73679a09315babba64a95d89085" args="(const vec &amp;nD, int i)" --> 
    141 void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#a19f6f73679a09315babba64a95d89085">setD</a> (const vec &amp;nD, int i)</td></tr> 
    142 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Access functions. <br/></td></tr> 
    143 <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a83db17577372a459433cc56aef712583"></a><!-- doxytag: member="bdm::fsqmat::operator+=" ref="a83db17577372a459433cc56aef712583" args="(const fsqmat &amp;A)" --> 
    144 <a class="el" href="classbdm_1_1fsqmat.html">fsqmat</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#a83db17577372a459433cc56aef712583">operator+=</a> (const <a class="el" href="classbdm_1_1fsqmat.html">fsqmat</a> &amp;A)</td></tr> 
    145 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">add another <a class="el" href="classbdm_1_1fsqmat.html" title="Fake sqmat. This class maps sqmat operations to operations on full matrix.">fsqmat</a> matrix <br/></td></tr> 
    146 <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a019ee2145f7ef263bfb9a72e8e0532d9"></a><!-- doxytag: member="bdm::fsqmat::operator&#45;=" ref="a019ee2145f7ef263bfb9a72e8e0532d9" args="(const fsqmat &amp;A)" --> 
    147 <a class="el" href="classbdm_1_1fsqmat.html">fsqmat</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#a019ee2145f7ef263bfb9a72e8e0532d9">operator-=</a> (const <a class="el" href="classbdm_1_1fsqmat.html">fsqmat</a> &amp;A)</td></tr> 
    148 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">subtrack another <a class="el" href="classbdm_1_1fsqmat.html" title="Fake sqmat. This class maps sqmat operations to operations on full matrix.">fsqmat</a> matrix <br/></td></tr> 
    149 <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a093d62d05f04b97d91084ed97194560b"></a><!-- doxytag: member="bdm::fsqmat::operator*=" ref="a093d62d05f04b97d91084ed97194560b" args="(double x)" --> 
    150 <a class="el" href="classbdm_1_1fsqmat.html">fsqmat</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#a093d62d05f04b97d91084ed97194560b">operator*=</a> (double x)</td></tr> 
    151 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">multiply by a scalar <br/></td></tr> 
    152 <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a296faede93e2143abd3a4f1f7b4974c7"></a><!-- doxytag: member="bdm::fsqmat::operator mat &amp;" ref="a296faede93e2143abd3a4f1f7b4974c7" args="()" --> 
    153 &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#a296faede93e2143abd3a4f1f7b4974c7">operator mat &amp;</a> ()</td></tr> 
    154 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">cast to normal mat <br/></td></tr> 
    155 <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a445ef762cf5d2d6cfdf53c72942363cf"></a><!-- doxytag: member="bdm::fsqmat::cols" ref="a445ef762cf5d2d6cfdf53c72942363cf" args="() const " --> 
    156 int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1sqmat.html#a445ef762cf5d2d6cfdf53c72942363cf">cols</a> () const </td></tr> 
    157 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Reimplementing common functions of mat: <a class="el" href="classbdm_1_1sqmat.html#a445ef762cf5d2d6cfdf53c72942363cf" title="Reimplementing common functions of mat: cols().">cols()</a>. <br/></td></tr> 
    158 <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a73e639221343dcce76c3305524d67590"></a><!-- doxytag: member="bdm::fsqmat::rows" ref="a73e639221343dcce76c3305524d67590" args="() const " --> 
    159 int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1sqmat.html#a73e639221343dcce76c3305524d67590">rows</a> () const </td></tr> 
    160 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Reimplementing common functions of mat: <a class="el" href="classbdm_1_1sqmat.html#a73e639221343dcce76c3305524d67590" title="Reimplementing common functions of mat: rows().">rows()</a>. <br/></td></tr> 
    161 <tr><td colspan="2"><h2>Protected Attributes</h2></td></tr> 
    162 <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aae9e9d807cd320ec265df81022eb9f03"></a><!-- doxytag: member="bdm::fsqmat::M" ref="aae9e9d807cd320ec265df81022eb9f03" args="" --> 
    163 mat&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#aae9e9d807cd320ec265df81022eb9f03">M</a></td></tr> 
    164 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Full matrix on which the operations are performed. <br/></td></tr> 
    165 <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a05111b5744a494880e62cb0f3d42293f"></a><!-- doxytag: member="bdm::fsqmat::dim" ref="a05111b5744a494880e62cb0f3d42293f" args="" --> 
    166 int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1sqmat.html#a05111b5744a494880e62cb0f3d42293f">dim</a></td></tr> 
    167 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">dimension of the square matrix <br/></td></tr> 
    168 <tr><td colspan="2"><h2>Friends</h2></td></tr> 
    169 <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae06aba54d61e807b41bd68b5ee6ac22f"></a><!-- doxytag: member="bdm::fsqmat::operator&lt;&lt;" ref="ae06aba54d61e807b41bd68b5ee6ac22f" args="(std::ostream &amp;os, const fsqmat &amp;sq)" --> 
    170 std::ostream &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#ae06aba54d61e807b41bd68b5ee6ac22f">operator&lt;&lt;</a> (std::ostream &amp;os, const <a class="el" href="classbdm_1_1fsqmat.html">fsqmat</a> &amp;sq)</td></tr> 
    171 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">print full matrix <br/></td></tr> 
     70<h1>bdm::fsqmat Class Reference</h1><!-- doxytag: class="bdm::fsqmat" --><!-- doxytag: inherits="bdm::sqmat" -->Fake <a class="el" href="classbdm_1_1sqmat.html" title="Abstract class for representation of double symmetric matrices in square-root form...">sqmat</a>. This class maps <a class="el" href="classbdm_1_1sqmat.html" title="Abstract class for representation of double symmetric matrices in square-root form...">sqmat</a> operations to operations on full matrix.   
     71<a href="#_details">More...</a> 
     72<p> 
     73<code>#include &lt;<a class="el" href="square__mat_8h_source.html">square_mat.h</a>&gt;</code> 
     74<p> 
     75 
     76<p> 
     77<a href="classbdm_1_1fsqmat-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0"> 
     78<tr><td></td></tr> 
     79<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr> 
     80<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#a41b3686a77d1f9657b6942b01cfd8be">opupdt</a> (const vec &amp;v, double w)</td></tr> 
     81 
     82<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5c27d47cd0fa7ae686d4519f89a3c9b0"></a><!-- doxytag: member="bdm::fsqmat::to_mat" ref="5c27d47cd0fa7ae686d4519f89a3c9b0" args="() const " --> 
     83mat&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#5c27d47cd0fa7ae686d4519f89a3c9b0">to_mat</a> () const </td></tr> 
     84 
     85<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Conversion to full matrix. <br></td></tr> 
     86<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#fca713af3f74677fd7fbafe723590112">mult_sym</a> (const mat &amp;C)</td></tr> 
     87 
     88<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Inplace symmetric multiplication by a SQUARE matrix <img class="formulaInl" alt="$C$" src="form_60.png">, i.e. <img class="formulaInl" alt="$V = C*V*C'$" src="form_61.png">.  <a href="#fca713af3f74677fd7fbafe723590112"></a><br></td></tr> 
     89<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#0f6b7cf09daf484f29ea99a144a27039">mult_sym_t</a> (const mat &amp;C)</td></tr> 
     90 
     91<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Inplace symmetric multiplication by a SQUARE transpose of matrix <img class="formulaInl" alt="$C$" src="form_60.png">, i.e. <img class="formulaInl" alt="$V = C'*V*C$" src="form_62.png">.  <a href="#0f6b7cf09daf484f29ea99a144a27039"></a><br></td></tr> 
     92<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="75ff12a4d7d7ef50a812529e6e994cd1"></a><!-- doxytag: member="bdm::fsqmat::mult_sym" ref="75ff12a4d7d7ef50a812529e6e994cd1" args="(const mat &amp;C, fsqmat &amp;U) const " --> 
     93void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#75ff12a4d7d7ef50a812529e6e994cd1">mult_sym</a> (const mat &amp;C, <a class="el" href="classbdm_1_1fsqmat.html">fsqmat</a> &amp;U) const </td></tr> 
     94 
     95<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">store result of <code>mult_sym</code> in external matrix <img class="formulaInl" alt="$U$" src="form_66.png"> <br></td></tr> 
     96<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="06d0f00ce05ad0349bef754ba94ee6c9"></a><!-- doxytag: member="bdm::fsqmat::mult_sym_t" ref="06d0f00ce05ad0349bef754ba94ee6c9" args="(const mat &amp;C, fsqmat &amp;U) const " --> 
     97void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#06d0f00ce05ad0349bef754ba94ee6c9">mult_sym_t</a> (const mat &amp;C, <a class="el" href="classbdm_1_1fsqmat.html">fsqmat</a> &amp;U) const </td></tr> 
     98 
     99<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">store result of <code>mult_sym_t</code> in external matrix <img class="formulaInl" alt="$U$" src="form_66.png"> <br></td></tr> 
     100<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8ba3bc2f92b3fc6cfc90f21b3a5a5ada"></a><!-- doxytag: member="bdm::fsqmat::clear" ref="8ba3bc2f92b3fc6cfc90f21b3a5a5ada" args="()" --> 
     101void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#8ba3bc2f92b3fc6cfc90f21b3a5a5ada">clear</a> ()</td></tr> 
     102 
     103<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Clearing matrix so that it corresponds to zeros. <br></td></tr> 
     104<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d9461412d5087d685a3213671446f143"></a><!-- doxytag: member="bdm::fsqmat::fsqmat" ref="d9461412d5087d685a3213671446f143" args="()" --> 
     105&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#d9461412d5087d685a3213671446f143">fsqmat</a> ()</td></tr> 
     106 
     107<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default initialization. <br></td></tr> 
     108<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5c1e23070177ec386ec80ae3ba3f29f5"></a><!-- doxytag: member="bdm::fsqmat::fsqmat" ref="5c1e23070177ec386ec80ae3ba3f29f5" args="(const int dim0)" --> 
     109&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#5c1e23070177ec386ec80ae3ba3f29f5">fsqmat</a> (const int dim0)</td></tr> 
     110 
     111<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default initialization with proper size. <br></td></tr> 
     112<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b74cf8cabe8ac3b2b232c3de6ad070b0"></a><!-- doxytag: member="bdm::fsqmat::fsqmat" ref="b74cf8cabe8ac3b2b232c3de6ad070b0" args="(const mat &amp;M)" --> 
     113&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#b74cf8cabe8ac3b2b232c3de6ad070b0">fsqmat</a> (const mat &amp;<a class="el" href="classbdm_1_1fsqmat.html#ae9e9d807cd320ec265df81022eb9f03">M</a>)</td></tr> 
     114 
     115<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor. <br></td></tr> 
     116<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#8168a96449b2126dfc117c136fdf39d5">fsqmat</a> (const <a class="el" href="classbdm_1_1fsqmat.html">fsqmat</a> &amp;<a class="el" href="classbdm_1_1fsqmat.html#ae9e9d807cd320ec265df81022eb9f03">M</a>, const ivec &amp;perm)</td></tr> 
     117 
     118<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6203529db9dab639f2c123aac9fb6a6c"></a><!-- doxytag: member="bdm::fsqmat::fsqmat" ref="6203529db9dab639f2c123aac9fb6a6c" args="(const vec &amp;d)" --> 
     119&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#6203529db9dab639f2c123aac9fb6a6c">fsqmat</a> (const vec &amp;d)</td></tr> 
     120 
     121<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor. <br></td></tr> 
     122<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="26d4037b787aa9cd63742393e6bd334f"></a><!-- doxytag: member="bdm::fsqmat::~fsqmat" ref="26d4037b787aa9cd63742393e6bd334f" args="()" --> 
     123virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#26d4037b787aa9cd63742393e6bd334f">~fsqmat</a> ()</td></tr> 
     124 
     125<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Destructor for future use;. <br></td></tr> 
     126<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#d17495888ab35e09ebb9b4e789f586d5">inv</a> (<a class="el" href="classbdm_1_1fsqmat.html">fsqmat</a> &amp;Inv) const </td></tr> 
     127 
     128<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Matrix inversion preserving the chosen form.  <a href="#d17495888ab35e09ebb9b4e789f586d5"></a><br></td></tr> 
     129<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="15de11fa1e280d4caa7cb010711881a0"></a><!-- doxytag: member="bdm::fsqmat::logdet" ref="15de11fa1e280d4caa7cb010711881a0" args="() const " --> 
     130double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#15de11fa1e280d4caa7cb010711881a0">logdet</a> () const </td></tr> 
     131 
     132<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Logarithm of a determinant. <br></td></tr> 
     133<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="766faafcf138610840a6975f8a28d0b6"></a><!-- doxytag: member="bdm::fsqmat::qform" ref="766faafcf138610840a6975f8a28d0b6" args="(const vec &amp;v) const " --> 
     134double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#766faafcf138610840a6975f8a28d0b6">qform</a> (const vec &amp;v) const </td></tr> 
     135 
     136<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Evaluates quadratic form <img class="formulaInl" alt="$x= v'*V*v$" src="form_64.png">;. <br></td></tr> 
     137<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="967cbb3a58a0a6f7bd974f2c6ff5d520"></a><!-- doxytag: member="bdm::fsqmat::invqform" ref="967cbb3a58a0a6f7bd974f2c6ff5d520" args="(const vec &amp;v) const " --> 
     138double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#967cbb3a58a0a6f7bd974f2c6ff5d520">invqform</a> (const vec &amp;v) const </td></tr> 
     139 
     140<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Evaluates quadratic form <img class="formulaInl" alt="$x= v'*inv(V)*v$" src="form_65.png">;. <br></td></tr> 
     141<tr><td class="memItemLeft" nowrap align="right" valign="top">vec&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#ab240f84ea1685bc95df0446f948abfd">sqrt_mult</a> (const vec &amp;v) const </td></tr> 
     142 
     143<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Multiplies square <a class="el" href="classbdm_1_1root.html" title="Root class of BDM objects.">root</a> of <img class="formulaInl" alt="$V$" src="form_63.png"> by vector <img class="formulaInl" alt="$x$" src="form_1.png">.  <a href="#ab240f84ea1685bc95df0446f948abfd"></a><br></td></tr> 
     144<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1a01433460718f7b8a9fa6ba9a911b8a"></a><!-- doxytag: member="bdm::fsqmat::add" ref="1a01433460718f7b8a9fa6ba9a911b8a" args="(const fsqmat &amp;fsq2, double w=1.0)" --> 
     145void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#1a01433460718f7b8a9fa6ba9a911b8a">add</a> (const <a class="el" href="classbdm_1_1fsqmat.html">fsqmat</a> &amp;fsq2, double w=1.0)</td></tr> 
     146 
     147<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Add another matrix in fsq form with weight w. <br></td></tr> 
     148<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d36cb40feaa7079d8687d60bd33e50a5"></a><!-- doxytag: member="bdm::fsqmat::setD" ref="d36cb40feaa7079d8687d60bd33e50a5" args="(const vec &amp;nD)" --> 
     149void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#d36cb40feaa7079d8687d60bd33e50a5">setD</a> (const vec &amp;nD)</td></tr> 
     150 
     151<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Access functions. <br></td></tr> 
     152<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d94e0156c4d15a756b23fa70ab181904"></a><!-- doxytag: member="bdm::fsqmat::getD" ref="d94e0156c4d15a756b23fa70ab181904" args="()" --> 
     153vec&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#d94e0156c4d15a756b23fa70ab181904">getD</a> ()</td></tr> 
     154 
     155<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Access functions. <br></td></tr> 
     156<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="19f6f73679a09315babba64a95d89085"></a><!-- doxytag: member="bdm::fsqmat::setD" ref="19f6f73679a09315babba64a95d89085" args="(const vec &amp;nD, int i)" --> 
     157void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#19f6f73679a09315babba64a95d89085">setD</a> (const vec &amp;nD, int i)</td></tr> 
     158 
     159<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Access functions. <br></td></tr> 
     160<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="83db17577372a459433cc56aef712583"></a><!-- doxytag: member="bdm::fsqmat::operator+=" ref="83db17577372a459433cc56aef712583" args="(const fsqmat &amp;A)" --> 
     161<a class="el" href="classbdm_1_1fsqmat.html">fsqmat</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#83db17577372a459433cc56aef712583">operator+=</a> (const <a class="el" href="classbdm_1_1fsqmat.html">fsqmat</a> &amp;A)</td></tr> 
     162 
     163<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">add another <a class="el" href="classbdm_1_1fsqmat.html" title="Fake sqmat. This class maps sqmat operations to operations on full matrix.">fsqmat</a> matrix <br></td></tr> 
     164<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="019ee2145f7ef263bfb9a72e8e0532d9"></a><!-- doxytag: member="bdm::fsqmat::operator&#45;=" ref="019ee2145f7ef263bfb9a72e8e0532d9" args="(const fsqmat &amp;A)" --> 
     165<a class="el" href="classbdm_1_1fsqmat.html">fsqmat</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#019ee2145f7ef263bfb9a72e8e0532d9">operator-=</a> (const <a class="el" href="classbdm_1_1fsqmat.html">fsqmat</a> &amp;A)</td></tr> 
     166 
     167<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">subtrack another <a class="el" href="classbdm_1_1fsqmat.html" title="Fake sqmat. This class maps sqmat operations to operations on full matrix.">fsqmat</a> matrix <br></td></tr> 
     168<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="093d62d05f04b97d91084ed97194560b"></a><!-- doxytag: member="bdm::fsqmat::operator*=" ref="093d62d05f04b97d91084ed97194560b" args="(double x)" --> 
     169<a class="el" href="classbdm_1_1fsqmat.html">fsqmat</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#093d62d05f04b97d91084ed97194560b">operator*=</a> (double x)</td></tr> 
     170 
     171<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">multiply by a scalar <br></td></tr> 
     172<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="296faede93e2143abd3a4f1f7b4974c7"></a><!-- doxytag: member="bdm::fsqmat::operator mat &amp;" ref="296faede93e2143abd3a4f1f7b4974c7" args="()" --> 
     173&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#296faede93e2143abd3a4f1f7b4974c7">operator mat &amp;</a> ()</td></tr> 
     174 
     175<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">cast to normal mat <br></td></tr> 
     176<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="445ef762cf5d2d6cfdf53c72942363cf"></a><!-- doxytag: member="bdm::fsqmat::cols" ref="445ef762cf5d2d6cfdf53c72942363cf" args="() const " --> 
     177int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1sqmat.html#445ef762cf5d2d6cfdf53c72942363cf">cols</a> () const </td></tr> 
     178 
     179<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Reimplementing common functions of mat: <a class="el" href="classbdm_1_1sqmat.html#445ef762cf5d2d6cfdf53c72942363cf" title="Reimplementing common functions of mat: cols().">cols()</a>. <br></td></tr> 
     180<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="73e639221343dcce76c3305524d67590"></a><!-- doxytag: member="bdm::fsqmat::rows" ref="73e639221343dcce76c3305524d67590" args="() const " --> 
     181int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1sqmat.html#73e639221343dcce76c3305524d67590">rows</a> () const </td></tr> 
     182 
     183<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Reimplementing common functions of mat: <a class="el" href="classbdm_1_1sqmat.html#73e639221343dcce76c3305524d67590" title="Reimplementing common functions of mat: rows().">rows()</a>. <br></td></tr> 
     184<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr> 
     185<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ae9e9d807cd320ec265df81022eb9f03"></a><!-- doxytag: member="bdm::fsqmat::M" ref="ae9e9d807cd320ec265df81022eb9f03" args="" --> 
     186mat&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#ae9e9d807cd320ec265df81022eb9f03">M</a></td></tr> 
     187 
     188<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Full matrix on which the operations are performed. <br></td></tr> 
     189<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="05111b5744a494880e62cb0f3d42293f"></a><!-- doxytag: member="bdm::fsqmat::dim" ref="05111b5744a494880e62cb0f3d42293f" args="" --> 
     190int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1sqmat.html#05111b5744a494880e62cb0f3d42293f">dim</a></td></tr> 
     191 
     192<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">dimension of the square matrix <br></td></tr> 
     193<tr><td colspan="2"><br><h2>Friends</h2></td></tr> 
     194<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e06aba54d61e807b41bd68b5ee6ac22f"></a><!-- doxytag: member="bdm::fsqmat::operator&lt;&lt;" ref="e06aba54d61e807b41bd68b5ee6ac22f" args="(std::ostream &amp;os, const fsqmat &amp;sq)" --> 
     195std::ostream &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1fsqmat.html#e06aba54d61e807b41bd68b5ee6ac22f">operator&lt;&lt;</a> (std::ostream &amp;os, const <a class="el" href="classbdm_1_1fsqmat.html">fsqmat</a> &amp;sq)</td></tr> 
     196 
     197<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">print full matrix <br></td></tr> 
    172198</table> 
    173 <hr/><h2>Constructor &amp; Destructor Documentation</h2> 
    174 <a class="anchor" id="a8168a96449b2126dfc117c136fdf39d5"></a><!-- doxytag: member="bdm::fsqmat::fsqmat" ref="a8168a96449b2126dfc117c136fdf39d5" args="(const fsqmat &amp;M, const ivec &amp;perm)" --> 
    175 <div class="memitem"> 
    176 <div class="memproto"> 
    177       <table class="memname"> 
    178         <tr> 
    179           <td class="memname">bdm::fsqmat::fsqmat </td> 
     199<hr><a name="_details"></a><h2>Detailed Description</h2> 
     200Fake <a class="el" href="classbdm_1_1sqmat.html" title="Abstract class for representation of double symmetric matrices in square-root form...">sqmat</a>. This class maps <a class="el" href="classbdm_1_1sqmat.html" title="Abstract class for representation of double symmetric matrices in square-root form...">sqmat</a> operations to operations on full matrix.  
     201<p> 
     202This class can be used to compare performance of algorithms using decomposed matrices with perormance of the same algorithms using full matrices; <hr><h2>Constructor &amp; Destructor Documentation</h2> 
     203<a class="anchor" name="8168a96449b2126dfc117c136fdf39d5"></a><!-- doxytag: member="bdm::fsqmat::fsqmat" ref="8168a96449b2126dfc117c136fdf39d5" args="(const fsqmat &amp;M, const ivec &amp;perm)" --> 
     204<div class="memitem"> 
     205<div class="memproto"> 
     206      <table class="memname"> 
     207        <tr> 
     208          <td class="memname">bdm::fsqmat::fsqmat           </td> 
    180209          <td>(</td> 
    181210          <td class="paramtype">const <a class="el" href="classbdm_1_1fsqmat.html">fsqmat</a> &amp;&nbsp;</td> 
     
    196225</div> 
    197226<div class="memdoc"> 
    198 <p>Some templates require this constructor to compile, but it shouldn't actually be called. </p> 
    199  
     227 
     228<p> 
     229Some templates require this constructor to compile, but it shouldn't actually be called.  
    200230<p>References <a class="el" href="bdmerror_8h_source.html#l00051">bdm_error</a>.</p> 
    201231 
    202232</div> 
    203 </div> 
    204 <hr/><h2>Member Function Documentation</h2> 
    205 <a class="anchor" id="ad17495888ab35e09ebb9b4e789f586d5"></a><!-- doxytag: member="bdm::fsqmat::inv" ref="ad17495888ab35e09ebb9b4e789f586d5" args="(fsqmat &amp;Inv) const " --> 
    206 <div class="memitem"> 
    207 <div class="memproto"> 
    208       <table class="memname"> 
    209         <tr> 
    210           <td class="memname">void bdm::fsqmat::inv </td> 
     233</div><p> 
     234<hr><h2>Member Function Documentation</h2> 
     235<a class="anchor" name="d17495888ab35e09ebb9b4e789f586d5"></a><!-- doxytag: member="bdm::fsqmat::inv" ref="d17495888ab35e09ebb9b4e789f586d5" args="(fsqmat &amp;Inv) const " --> 
     236<div class="memitem"> 
     237<div class="memproto"> 
     238      <table class="memname"> 
     239        <tr> 
     240          <td class="memname">void bdm::fsqmat::inv           </td> 
    211241          <td>(</td> 
    212242          <td class="paramtype"><a class="el" href="classbdm_1_1fsqmat.html">fsqmat</a> &amp;&nbsp;</td> 
    213           <td class="paramname"> <em>Inv</em></td> 
     243          <td class="paramname"> <em>Inv</em>          </td> 
    214244          <td>&nbsp;)&nbsp;</td> 
    215245          <td> const</td> 
     
    219249<div class="memdoc"> 
    220250 
    221 <p>Matrix inversion preserving the chosen form. </p> 
    222 <dl><dt><b>Parameters:</b></dt><dd> 
     251<p> 
     252Matrix inversion preserving the chosen form.  
     253<p> 
     254<dl compact><dt><b>Parameters:</b></dt><dd> 
    223255  <table border="0" cellspacing="2" cellpadding="0"> 
    224256    <tr><td valign="top"></td><td valign="top"><em>Inv</em>&nbsp;</td><td>a space where the inverse is stored. </td></tr> 
    225257  </table> 
    226   </dd> 
    227258</dl> 
    228259 
     
    232263 
    233264</div> 
    234 </div> 
    235 <a class="anchor" id="afca713af3f74677fd7fbafe723590112"></a><!-- doxytag: member="bdm::fsqmat::mult_sym" ref="afca713af3f74677fd7fbafe723590112" args="(const mat &amp;C)" --> 
    236 <div class="memitem"> 
    237 <div class="memproto"> 
    238       <table class="memname"> 
    239         <tr> 
    240           <td class="memname">void bdm::fsqmat::mult_sym </td> 
     265</div><p> 
     266<a class="anchor" name="fca713af3f74677fd7fbafe723590112"></a><!-- doxytag: member="bdm::fsqmat::mult_sym" ref="fca713af3f74677fd7fbafe723590112" args="(const mat &amp;C)" --> 
     267<div class="memitem"> 
     268<div class="memproto"> 
     269      <table class="memname"> 
     270        <tr> 
     271          <td class="memname">void bdm::fsqmat::mult_sym           </td> 
    241272          <td>(</td> 
    242273          <td class="paramtype">const mat &amp;&nbsp;</td> 
    243           <td class="paramname"> <em>C</em></td> 
     274          <td class="paramname"> <em>C</em>          </td> 
    244275          <td>&nbsp;)&nbsp;</td> 
    245276          <td><code> [virtual]</code></td> 
     
    249280<div class="memdoc"> 
    250281 
    251 <p>Inplace symmetric multiplication by a SQUARE matrix <img class="formulaInl" alt="$C$" src="form_60.png"/>, i.e. <img class="formulaInl" alt="$V = C*V*C'$" src="form_61.png"/>. </p> 
    252 <dl><dt><b>Parameters:</b></dt><dd> 
     282<p> 
     283Inplace symmetric multiplication by a SQUARE matrix <img class="formulaInl" alt="$C$" src="form_60.png">, i.e. <img class="formulaInl" alt="$V = C*V*C'$" src="form_61.png">.  
     284<p> 
     285<dl compact><dt><b>Parameters:</b></dt><dd> 
    253286  <table border="0" cellspacing="2" cellpadding="0"> 
    254287    <tr><td valign="top"></td><td valign="top"><em>C</em>&nbsp;</td><td>multiplying matrix, </td></tr> 
    255288  </table> 
    256   </dd> 
    257289</dl> 
    258290 
    259 <p>Reimplemented from <a class="el" href="classbdm_1_1sqmat.html#af8b513b6ac0e54d6fe47afda8b254b29">bdm::sqmat</a>.</p> 
     291<p>Reimplemented from <a class="el" href="classbdm_1_1sqmat.html#f8b513b6ac0e54d6fe47afda8b254b29">bdm::sqmat</a>.</p> 
    260292 
    261293<p>References <a class="el" href="square__mat_8h_source.html#l00123">M</a>.</p> 
    262294 
    263295</div> 
    264 </div> 
    265 <a class="anchor" id="a0f6b7cf09daf484f29ea99a144a27039"></a><!-- doxytag: member="bdm::fsqmat::mult_sym_t" ref="a0f6b7cf09daf484f29ea99a144a27039" args="(const mat &amp;C)" --> 
    266 <div class="memitem"> 
    267 <div class="memproto"> 
    268       <table class="memname"> 
    269         <tr> 
    270           <td class="memname">void bdm::fsqmat::mult_sym_t </td> 
     296</div><p> 
     297<a class="anchor" name="0f6b7cf09daf484f29ea99a144a27039"></a><!-- doxytag: member="bdm::fsqmat::mult_sym_t" ref="0f6b7cf09daf484f29ea99a144a27039" args="(const mat &amp;C)" --> 
     298<div class="memitem"> 
     299<div class="memproto"> 
     300      <table class="memname"> 
     301        <tr> 
     302          <td class="memname">void bdm::fsqmat::mult_sym_t           </td> 
    271303          <td>(</td> 
    272304          <td class="paramtype">const mat &amp;&nbsp;</td> 
    273           <td class="paramname"> <em>C</em></td> 
     305          <td class="paramname"> <em>C</em>          </td> 
    274306          <td>&nbsp;)&nbsp;</td> 
    275307          <td><code> [virtual]</code></td> 
     
    279311<div class="memdoc"> 
    280312 
    281 <p>Inplace symmetric multiplication by a SQUARE transpose of matrix <img class="formulaInl" alt="$C$" src="form_60.png"/>, i.e. <img class="formulaInl" alt="$V = C'*V*C$" src="form_62.png"/>. </p> 
    282 <dl><dt><b>Parameters:</b></dt><dd> 
     313<p> 
     314Inplace symmetric multiplication by a SQUARE transpose of matrix <img class="formulaInl" alt="$C$" src="form_60.png">, i.e. <img class="formulaInl" alt="$V = C'*V*C$" src="form_62.png">.  
     315<p> 
     316<dl compact><dt><b>Parameters:</b></dt><dd> 
    283317  <table border="0" cellspacing="2" cellpadding="0"> 
    284318    <tr><td valign="top"></td><td valign="top"><em>C</em>&nbsp;</td><td>multiplying matrix, </td></tr> 
    285319  </table> 
    286   </dd> 
    287320</dl> 
    288321 
    289 <p>Reimplemented from <a class="el" href="classbdm_1_1sqmat.html#aba45b96855264178ab67648bbc7cead5">bdm::sqmat</a>.</p> 
     322<p>Reimplemented from <a class="el" href="classbdm_1_1sqmat.html#ba45b96855264178ab67648bbc7cead5">bdm::sqmat</a>.</p> 
    290323 
    291324<p>References <a class="el" href="square__mat_8h_source.html#l00123">M</a>.</p> 
    292325 
    293326</div> 
    294 </div> 
    295 <a class="anchor" id="aa41b3686a77d1f9657b6942b01cfd8be"></a><!-- doxytag: member="bdm::fsqmat::opupdt" ref="aa41b3686a77d1f9657b6942b01cfd8be" args="(const vec &amp;v, double w)" --> 
    296 <div class="memitem"> 
    297 <div class="memproto"> 
    298       <table class="memname"> 
    299         <tr> 
    300           <td class="memname">void bdm::fsqmat::opupdt </td> 
     327</div><p> 
     328<a class="anchor" name="a41b3686a77d1f9657b6942b01cfd8be"></a><!-- doxytag: member="bdm::fsqmat::opupdt" ref="a41b3686a77d1f9657b6942b01cfd8be" args="(const vec &amp;v, double w)" --> 
     329<div class="memitem"> 
     330<div class="memproto"> 
     331      <table class="memname"> 
     332        <tr> 
     333          <td class="memname">void bdm::fsqmat::opupdt           </td> 
    301334          <td>(</td> 
    302335          <td class="paramtype">const vec &amp;&nbsp;</td> 
     
    317350</div> 
    318351<div class="memdoc"> 
    319 <p>Perfroms a rank-1 update by outer product of vectors: <img class="formulaInl" alt="$V = V + w v v'$" src="form_59.png"/>. </p> 
    320 <dl><dt><b>Parameters:</b></dt><dd> 
     352 
     353<p> 
     354Perfroms a rank-1 update by outer product of vectors: <img class="formulaInl" alt="$V = V + w v v'$" src="form_59.png">. <dl compact><dt><b>Parameters:</b></dt><dd> 
    321355  <table border="0" cellspacing="2" cellpadding="0"> 
    322356    <tr><td valign="top"></td><td valign="top"><em>v</em>&nbsp;</td><td>Vector forming the outer product to be added </td></tr> 
    323357    <tr><td valign="top"></td><td valign="top"><em>w</em>&nbsp;</td><td>weight of updating; can be negative</td></tr> 
    324358  </table> 
    325   </dd> 
    326359</dl> 
    327 <p>BLAS-2b operation. </p> 
    328  
    329 <p>Reimplemented from <a class="el" href="classbdm_1_1sqmat.html#a12298b1cc5a6f35876291e876b0e2993">bdm::sqmat</a>.</p> 
     360BLAS-2b operation.  
     361<p>Reimplemented from <a class="el" href="classbdm_1_1sqmat.html#12298b1cc5a6f35876291e876b0e2993">bdm::sqmat</a>.</p> 
    330362 
    331363<p>References <a class="el" href="square__mat_8h_source.html#l00123">M</a>.</p> 
    332364 
    333365</div> 
    334 </div> 
    335 <a class="anchor" id="aab240f84ea1685bc95df0446f948abfd"></a><!-- doxytag: member="bdm::fsqmat::sqrt_mult" ref="aab240f84ea1685bc95df0446f948abfd" args="(const vec &amp;v) const " --> 
    336 <div class="memitem"> 
    337 <div class="memproto"> 
    338       <table class="memname"> 
    339         <tr> 
    340           <td class="memname">vec bdm::fsqmat::sqrt_mult </td> 
     366</div><p> 
     367<a class="anchor" name="ab240f84ea1685bc95df0446f948abfd"></a><!-- doxytag: member="bdm::fsqmat::sqrt_mult" ref="ab240f84ea1685bc95df0446f948abfd" args="(const vec &amp;v) const " --> 
     368<div class="memitem"> 
     369<div class="memproto"> 
     370      <table class="memname"> 
     371        <tr> 
     372          <td class="memname">vec bdm::fsqmat::sqrt_mult           </td> 
    341373          <td>(</td> 
    342374          <td class="paramtype">const vec &amp;&nbsp;</td> 
    343           <td class="paramname"> <em>v</em></td> 
     375          <td class="paramname"> <em>v</em>          </td> 
    344376          <td>&nbsp;)&nbsp;</td> 
    345377          <td> const<code> [inline, virtual]</code></td> 
     
    349381<div class="memdoc"> 
    350382 
    351 <p>Multiplies square <a class="el" href="classbdm_1_1root.html" title="Root class of BDM objects.">root</a> of <img class="formulaInl" alt="$V$" src="form_63.png"/> by vector <img class="formulaInl" alt="$x$" src="form_1.png"/>. </p> 
    352 <p>Used e.g. in generating normal samples. </p> 
    353  
    354 <p>Reimplemented from <a class="el" href="classbdm_1_1sqmat.html#abcacd85ec5d128ebbb663ae4433c75b3">bdm::sqmat</a>.</p> 
     383<p> 
     384Multiplies square <a class="el" href="classbdm_1_1root.html" title="Root class of BDM objects.">root</a> of <img class="formulaInl" alt="$V$" src="form_63.png"> by vector <img class="formulaInl" alt="$x$" src="form_1.png">.  
     385<p> 
     386Used e.g. in generating normal samples.  
     387<p>Reimplemented from <a class="el" href="classbdm_1_1sqmat.html#bcacd85ec5d128ebbb663ae4433c75b3">bdm::sqmat</a>.</p> 
    355388 
    356389<p>References <a class="el" href="square__mat_8h_source.html#l00123">M</a>.</p> 
    357390 
    358391</div> 
    359 </div> 
    360 <hr/>The documentation for this class was generated from the following files:<ul> 
    361 <li><a class="el" href="square__mat_8h_source.html">square_mat.h</a></li> 
    362 <li>square_mat.cpp</li> 
    363 </ul> 
    364 </div> 
    365 <hr size="1"/><address style="text-align: right;"><small>Generated on Sun Sep 27 00:49:06 2009 for mixpp by&nbsp; 
     392</div><p> 
     393<hr>The documentation for this class was generated from the following files:<ul> 
     394<li><a class="el" href="square__mat_8h_source.html">square_mat.h</a><li>square_mat.cpp</ul> 
     395</div> 
     396<hr size="1"><address style="text-align: right;"><small>Generated on Wed Oct 7 17:34:47 2009 for mixpp by&nbsp; 
    366397<a href="http://www.doxygen.org/index.html"> 
    367 <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address> 
     398<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.9 </small></address> 
    368399</body> 
    369400</html>