<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> <title>MPQC: sc::DiagSCMatrix Class Reference</title> <link href="tabs.css" rel="stylesheet" type="text/css"> <link href="doxygen.css" rel="stylesheet" type="text/css"> </head><body> <!-- Generated by Doxygen 1.5.9 --> <div class="navigation" id="top"> <div class="tabs"> <ul> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li class="current"><a href="annotated.html"><span>Classes</span></a></li> <li><a href="files.html"><span>Files</span></a></li> </ul> </div> <div class="tabs"> <ul> <li><a href="annotated.html"><span>Class List</span></a></li> <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Class Members</span></a></li> </ul> </div> <div class="navpath"><b>sc</b>::<a class="el" href="classsc_1_1DiagSCMatrix.html">DiagSCMatrix</a> </div> </div> <div class="contents"> <h1>sc::DiagSCMatrix Class Reference</h1><!-- doxytag: class="sc::DiagSCMatrix" --><!-- doxytag: inherits="sc::DescribedClass" -->The <a class="el" href="classsc_1_1SymmSCMatrix.html" title="The SymmSCMatrix class is the abstract base class for symmetric double valued matrices...">SymmSCMatrix</a> class is the abstract base class for diagonal double valued matrices. <a href="#_details">More...</a> <p> <code>#include <<a class="el" href="abstract_8h_source.html">abstract.h</a>></code> <p> <div class="dynheader"> Inheritance diagram for sc::DiagSCMatrix:</div> <div class="dynsection"> <p><center><img src="classsc_1_1DiagSCMatrix.png" usemap="#sc::DiagSCMatrix_map" border="0" alt=""></center> <map name="sc::DiagSCMatrix_map"> <area href="classsc_1_1DescribedClass.html" alt="sc::DescribedClass" shape="rect" coords="0,112,120,136"> <area href="classsc_1_1RefCount.html" alt="sc::RefCount" shape="rect" coords="0,56,120,80"> <area href="classsc_1_1Identity.html" alt="sc::Identity" shape="rect" coords="0,0,120,24"> </map> </div> <p> <a href="classsc_1_1DiagSCMatrix-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0"> <tr><td></td></tr> <tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="62e9faf93f32f9934f7121e6cc1c4201"></a><!-- doxytag: member="sc::DiagSCMatrix::DiagSCMatrix" ref="62e9faf93f32f9934f7121e6cc1c4201" args="(const RefSCDimension &, SCMatrixKit *)" --> </td><td class="memItemRight" valign="bottom"><b>DiagSCMatrix</b> (const <a class="el" href="classsc_1_1RefSCDimension.html">RefSCDimension</a> &, <a class="el" href="classsc_1_1SCMatrixKit.html">SCMatrixKit</a> *)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a980000f18334187b849153b0234faa5"></a><!-- doxytag: member="sc::DiagSCMatrix::kit" ref="a980000f18334187b849153b0234faa5" args="() const " --> <a class="el" href="classsc_1_1Ref.html">Ref</a>< <a class="el" href="classsc_1_1SCMatrixKit.html">SCMatrixKit</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1DiagSCMatrix.html#a980000f18334187b849153b0234faa5">kit</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the <a class="el" href="classsc_1_1SCMatrixKit.html" title="The SCMatrixKit abstract class acts as a factory for producing matrices.">SCMatrixKit</a> used to create this object. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="bedd1dce3a282f502fcff34147c625f2"></a><!-- doxytag: member="sc::DiagSCMatrix::save" ref="bedd1dce3a282f502fcff34147c625f2" args="(StateOut &)" --> virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1DiagSCMatrix.html#bedd1dce3a282f502fcff34147c625f2">save</a> (<a class="el" href="classsc_1_1StateOut.html">StateOut</a> &)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Save and restore this in an implementation independent way. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f4d05c925ccf4b66f6d6f4f87d97c318"></a><!-- doxytag: member="sc::DiagSCMatrix::restore" ref="f4d05c925ccf4b66f6d6f4f87d97c318" args="(StateIn &)" --> virtual void </td><td class="memItemRight" valign="bottom"><b>restore</b> (<a class="el" href="classsc_1_1StateIn.html">StateIn</a> &)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5793fce92dfa044653b3bd9944250330"></a><!-- doxytag: member="sc::DiagSCMatrix::maxabs" ref="5793fce92dfa044653b3bd9944250330" args="() const " --> virtual double </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1DiagSCMatrix.html#5793fce92dfa044653b3bd9944250330">maxabs</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the maximum absolute value element of this vector. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3c29c0cce4415ee38fb89ff09ee31e99"></a><!-- doxytag: member="sc::DiagSCMatrix::randomize" ref="3c29c0cce4415ee38fb89ff09ee31e99" args="()" --> virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1DiagSCMatrix.html#3c29c0cce4415ee38fb89ff09ee31e99">randomize</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Assign each element to a random number between -1 and 1. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="81eb2f9b999d03a981bc8465d9656ded"></a><!-- doxytag: member="sc::DiagSCMatrix::assign" ref="81eb2f9b999d03a981bc8465d9656ded" args="(double val)" --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1DiagSCMatrix.html#81eb2f9b999d03a981bc8465d9656ded">assign</a> (double val)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set all elements to val. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b04b01f67fd7c0ffaacacf869dc48bcd"></a><!-- doxytag: member="sc::DiagSCMatrix::assign" ref="b04b01f67fd7c0ffaacacf869dc48bcd" args="(const double *p)" --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1DiagSCMatrix.html#b04b01f67fd7c0ffaacacf869dc48bcd">assign</a> (const double *p)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Assign element i, i to m[i]. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1DiagSCMatrix.html#7c20f51ff3c37aafd7274ef97acbd620">assign</a> (<a class="el" href="classsc_1_1DiagSCMatrix.html">DiagSCMatrix</a> *d_a)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Make this have the same elements as m. <a href="#7c20f51ff3c37aafd7274ef97acbd620"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f1baf4d868f8b536d3a479446295d99c"></a><!-- doxytag: member="sc::DiagSCMatrix::assign_val" ref="f1baf4d868f8b536d3a479446295d99c" args="(double val)" --> virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1DiagSCMatrix.html#f1baf4d868f8b536d3a479446295d99c">assign_val</a> (double val)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Overridden to implement the assign members. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="af683541b586254aaeb6c94295c4ab34"></a><!-- doxytag: member="sc::DiagSCMatrix::assign_p" ref="af683541b586254aaeb6c94295c4ab34" args="(const double *)" --> virtual void </td><td class="memItemRight" valign="bottom"><b>assign_p</b> (const double *)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9c6b9812fee2522a4398535e61a53bdb"></a><!-- doxytag: member="sc::DiagSCMatrix::assign_d" ref="9c6b9812fee2522a4398535e61a53bdb" args="(DiagSCMatrix *)" --> virtual void </td><td class="memItemRight" valign="bottom"><b>assign_d</b> (<a class="el" href="classsc_1_1DiagSCMatrix.html">DiagSCMatrix</a> *)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e0b2ebaba26d35d2a613d7cb7329e378"></a><!-- doxytag: member="sc::DiagSCMatrix::convert" ref="e0b2ebaba26d35d2a613d7cb7329e378" args="(double *) const " --> virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1DiagSCMatrix.html#e0b2ebaba26d35d2a613d7cb7329e378">convert</a> (double *) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Like the assign member, but this writes values to the argument. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1DiagSCMatrix.html#97c0730223fd362f136f934d5b67e16d">convert</a> (<a class="el" href="classsc_1_1DiagSCMatrix.html">DiagSCMatrix</a> *)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Convert an SCDiagSCMatrix of a different specialization to this specialization and possibly accumulate the data. <a href="#97c0730223fd362f136f934d5b67e16d"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a2fc0becb561385d1cfd3d62a2db6d77"></a><!-- doxytag: member="sc::DiagSCMatrix::convert_accumulate" ref="a2fc0becb561385d1cfd3d62a2db6d77" args="(DiagSCMatrix *)" --> virtual void </td><td class="memItemRight" valign="bottom"><b>convert_accumulate</b> (<a class="el" href="classsc_1_1DiagSCMatrix.html">DiagSCMatrix</a> *)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="616893272a4d5ec8b0c9d3729fd31e1f"></a><!-- doxytag: member="sc::DiagSCMatrix::scale" ref="616893272a4d5ec8b0c9d3729fd31e1f" args="(double)" --> virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1DiagSCMatrix.html#616893272a4d5ec8b0c9d3729fd31e1f">scale</a> (double)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Multiply all elements by val. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="dbb5dc632b90ea5fe9f560901c0664ef"></a><!-- doxytag: member="sc::DiagSCMatrix::n" ref="dbb5dc632b90ea5fe9f560901c0664ef" args="() const " --> int </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1DiagSCMatrix.html#dbb5dc632b90ea5fe9f560901c0664ef">n</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the dimension. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5f4e24b521e42582d6e77ca5734058d9"></a><!-- doxytag: member="sc::DiagSCMatrix::copy" ref="5f4e24b521e42582d6e77ca5734058d9" args="()" --> virtual <a class="el" href="classsc_1_1DiagSCMatrix.html">DiagSCMatrix</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1DiagSCMatrix.html#5f4e24b521e42582d6e77ca5734058d9">copy</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return a matrix with the same dimension and same elements. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5295ac5ef594a05c04ba4408b1eab1ac"></a><!-- doxytag: member="sc::DiagSCMatrix::clone" ref="5295ac5ef594a05c04ba4408b1eab1ac" args="()" --> virtual <a class="el" href="classsc_1_1DiagSCMatrix.html">DiagSCMatrix</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1DiagSCMatrix.html#5295ac5ef594a05c04ba4408b1eab1ac">clone</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return a matrix with the same dimension but uninitialized memory. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1ae7b07fd95c34edf316d04406993710"></a><!-- doxytag: member="sc::DiagSCMatrix::dim" ref="1ae7b07fd95c34edf316d04406993710" args="() const " --> <a class="el" href="classsc_1_1RefSCDimension.html">RefSCDimension</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1DiagSCMatrix.html#1ae7b07fd95c34edf316d04406993710">dim</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the dimension. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9efcc909e09390f7899f44901338e159"></a><!-- doxytag: member="sc::DiagSCMatrix::get_element" ref="9efcc909e09390f7899f44901338e159" args="(int) const =0" --> virtual double </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1DiagSCMatrix.html#9efcc909e09390f7899f44901338e159">get_element</a> (int) const =0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return or modify an element. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b3081d6605e47f141d70da063b3744cf"></a><!-- doxytag: member="sc::DiagSCMatrix::set_element" ref="b3081d6605e47f141d70da063b3744cf" args="(int, double)=0" --> virtual void </td><td class="memItemRight" valign="bottom"><b>set_element</b> (int, double)=0</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0c02a38cded7c62c972871c2ea35067b"></a><!-- doxytag: member="sc::DiagSCMatrix::accumulate_element" ref="0c02a38cded7c62c972871c2ea35067b" args="(int, double)=0" --> virtual void </td><td class="memItemRight" valign="bottom"><b>accumulate_element</b> (int, double)=0</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="bf4d5a18ba55b7e23c3e89d358fc77eb"></a><!-- doxytag: member="sc::DiagSCMatrix::accumulate" ref="bf4d5a18ba55b7e23c3e89d358fc77eb" args="(const DiagSCMatrix *m)=0" --> virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1DiagSCMatrix.html#bf4d5a18ba55b7e23c3e89d358fc77eb">accumulate</a> (const <a class="el" href="classsc_1_1DiagSCMatrix.html">DiagSCMatrix</a> *m)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Sum m into this. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="54855446e8e8accb055a9644704729aa"></a><!-- doxytag: member="sc::DiagSCMatrix::trace" ref="54855446e8e8accb055a9644704729aa" args="()=0" --> virtual double </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1DiagSCMatrix.html#54855446e8e8accb055a9644704729aa">trace</a> ()=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the trace. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d25454ab4dfcef086b5b2a5a1b0ed104"></a><!-- doxytag: member="sc::DiagSCMatrix::determ_this" ref="d25454ab4dfcef086b5b2a5a1b0ed104" args="()=0" --> virtual double </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1DiagSCMatrix.html#d25454ab4dfcef086b5b2a5a1b0ed104">determ_this</a> ()=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the determinant of this. this is overwritten. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4506f8fc6495dbb47ccf3c945772bebe"></a><!-- doxytag: member="sc::DiagSCMatrix::invert_this" ref="4506f8fc6495dbb47ccf3c945772bebe" args="()=0" --> virtual double </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1DiagSCMatrix.html#4506f8fc6495dbb47ccf3c945772bebe">invert_this</a> ()=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Invert this. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="742bc1d3719ac31436edcf3f27fb1147"></a><!-- doxytag: member="sc::DiagSCMatrix::gen_invert_this" ref="742bc1d3719ac31436edcf3f27fb1147" args="()=0" --> virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1DiagSCMatrix.html#742bc1d3719ac31436edcf3f27fb1147">gen_invert_this</a> ()=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Do a generalized inversion of this. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f03f569ddf34facbf6bb7640f811490a"></a><!-- doxytag: member="sc::DiagSCMatrix::element_op" ref="f03f569ddf34facbf6bb7640f811490a" args="(const Ref< SCElementOp > &)=0" --> virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1DiagSCMatrix.html#f03f569ddf34facbf6bb7640f811490a">element_op</a> (const <a class="el" href="classsc_1_1Ref.html">Ref</a>< <a class="el" href="classsc_1_1SCElementOp.html">SCElementOp</a> > &)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Perform the element operation op on each element of this. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="dc0e31b437138c79f2d98c120b9943ba"></a><!-- doxytag: member="sc::DiagSCMatrix::element_op" ref="dc0e31b437138c79f2d98c120b9943ba" args="(const Ref< SCElementOp2 > &, DiagSCMatrix *)=0" --> virtual void </td><td class="memItemRight" valign="bottom"><b>element_op</b> (const <a class="el" href="classsc_1_1Ref.html">Ref</a>< <a class="el" href="classsc_1_1SCElementOp2.html">SCElementOp2</a> > &, <a class="el" href="classsc_1_1DiagSCMatrix.html">DiagSCMatrix</a> *)=0</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="583d52a416348563ab48faa9cbff5337"></a><!-- doxytag: member="sc::DiagSCMatrix::element_op" ref="583d52a416348563ab48faa9cbff5337" args="(const Ref< SCElementOp3 > &, DiagSCMatrix *, DiagSCMatrix *)=0" --> virtual void </td><td class="memItemRight" valign="bottom"><b>element_op</b> (const <a class="el" href="classsc_1_1Ref.html">Ref</a>< <a class="el" href="classsc_1_1SCElementOp3.html">SCElementOp3</a> > &, <a class="el" href="classsc_1_1DiagSCMatrix.html">DiagSCMatrix</a> *, <a class="el" href="classsc_1_1DiagSCMatrix.html">DiagSCMatrix</a> *)=0</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d204bff41bd3fa36d469d74965b2553e"></a><!-- doxytag: member="sc::DiagSCMatrix::print" ref="d204bff41bd3fa36d469d74965b2553e" args="(std::ostream &o=ExEnv::out0()) const " --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1DiagSCMatrix.html#d204bff41bd3fa36d469d74965b2553e">print</a> (std::ostream &o=ExEnv::out0()) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Print out the matrix. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="23861cf6f0f1dbf61fcd34e1174931ad"></a><!-- doxytag: member="sc::DiagSCMatrix::print" ref="23861cf6f0f1dbf61fcd34e1174931ad" args="(const char *title=0, std::ostream &out=ExEnv::out0(), int=10) const " --> void </td><td class="memItemRight" valign="bottom"><b>print</b> (const char *title=0, std::ostream &out=ExEnv::out0(), int=10) const </td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d5dcee81739aedabf872767f1cd1da63"></a><!-- doxytag: member="sc::DiagSCMatrix::vprint" ref="d5dcee81739aedabf872767f1cd1da63" args="(const char *title=0, std::ostream &out=ExEnv::out0(), int=10) const " --> virtual void </td><td class="memItemRight" valign="bottom"><b>vprint</b> (const char *title=0, std::ostream &out=ExEnv::out0(), int=10) const </td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="dc2296a29dd4abc891b6895434c720dd"></a><!-- doxytag: member="sc::DiagSCMatrix::messagegrp" ref="dc2296a29dd4abc891b6895434c720dd" args="() const " --> <a class="el" href="classsc_1_1Ref.html">Ref</a>< <a class="el" href="classsc_1_1MessageGrp.html">MessageGrp</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1DiagSCMatrix.html#dc2296a29dd4abc891b6895434c720dd">messagegrp</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Returns the message group used by the matrix kit. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classsc_1_1Ref.html">Ref</a>< <a class="el" href="classsc_1_1SCMatrixSubblockIter.html">SCMatrixSubblockIter</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1DiagSCMatrix.html#fbbad3d573815a74c8d151ca11595b57">local_blocks</a> (SCMatrixSubblockIter::Access)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Returns iterators for the local (rapidly accessible) blocks used in this matrix. <a href="#fbbad3d573815a74c8d151ca11595b57"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="25942645cab05d0582eebe31e26d9ebc"></a><!-- doxytag: member="sc::DiagSCMatrix::all_blocks" ref="25942645cab05d0582eebe31e26d9ebc" args="(SCMatrixSubblockIter::Access)=0" --> virtual <a class="el" href="classsc_1_1Ref.html">Ref</a>< <a class="el" href="classsc_1_1SCMatrixSubblockIter.html">SCMatrixSubblockIter</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1DiagSCMatrix.html#25942645cab05d0582eebe31e26d9ebc">all_blocks</a> (SCMatrixSubblockIter::Access)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Returns iterators for the all blocks used in this matrix. <br></td></tr> <tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7fb2e0612994e1f927f6a0ec6226a71d"></a><!-- doxytag: member="sc::DiagSCMatrix::d" ref="7fb2e0612994e1f927f6a0ec6226a71d" args="" --> <a class="el" href="classsc_1_1RefSCDimension.html">RefSCDimension</a> </td><td class="memItemRight" valign="bottom"><b>d</b></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a7ba157243db19274996b048a002e019"></a><!-- doxytag: member="sc::DiagSCMatrix::kit_" ref="a7ba157243db19274996b048a002e019" args="" --> <a class="el" href="classsc_1_1Ref.html">Ref</a>< <a class="el" href="classsc_1_1SCMatrixKit.html">SCMatrixKit</a> > </td><td class="memItemRight" valign="bottom"><b>kit_</b></td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> The <a class="el" href="classsc_1_1SymmSCMatrix.html" title="The SymmSCMatrix class is the abstract base class for symmetric double valued matrices...">SymmSCMatrix</a> class is the abstract base class for diagonal double valued matrices. <p> <hr><h2>Member Function Documentation</h2> <a class="anchor" name="7c20f51ff3c37aafd7274ef97acbd620"></a><!-- doxytag: member="sc::DiagSCMatrix::assign" ref="7c20f51ff3c37aafd7274ef97acbd620" args="(DiagSCMatrix *d_a)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void sc::DiagSCMatrix::assign </td> <td>(</td> <td class="paramtype"><a class="el" href="classsc_1_1DiagSCMatrix.html">DiagSCMatrix</a> * </td> <td class="paramname"> <em>d_a</em> </td> <td> ) </td> <td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Make this have the same elements as m. <p> The dimensions must match. </div> </div><p> <a class="anchor" name="97c0730223fd362f136f934d5b67e16d"></a><!-- doxytag: member="sc::DiagSCMatrix::convert" ref="97c0730223fd362f136f934d5b67e16d" args="(DiagSCMatrix *)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void sc::DiagSCMatrix::convert </td> <td>(</td> <td class="paramtype"><a class="el" href="classsc_1_1DiagSCMatrix.html">DiagSCMatrix</a> * </td> <td class="paramname"> </td> <td> ) </td> <td><code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Convert an SCDiagSCMatrix of a different specialization to this specialization and possibly accumulate the data. <p> </div> </div><p> <a class="anchor" name="fbbad3d573815a74c8d151ca11595b57"></a><!-- doxytag: member="sc::DiagSCMatrix::local_blocks" ref="fbbad3d573815a74c8d151ca11595b57" args="(SCMatrixSubblockIter::Access)=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="classsc_1_1Ref.html">Ref</a><<a class="el" href="classsc_1_1SCMatrixSubblockIter.html">SCMatrixSubblockIter</a>> sc::DiagSCMatrix::local_blocks </td> <td>(</td> <td class="paramtype">SCMatrixSubblockIter::Access </td> <td class="paramname"> </td> <td> ) </td> <td><code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Returns iterators for the local (rapidly accessible) blocks used in this matrix. <p> </div> </div><p> <hr>The documentation for this class was generated from the following file:<ul> <li><a class="el" href="abstract_8h_source.html">abstract.h</a></ul> </div> <hr> <address> <small> Generated at Wed Oct 14 14:12:16 2009 for <a href="http://www.mpqc.org">MPQC</a> 2.3.1 using the documentation package <a href="http://www.doxygen.org">Doxygen</a> 1.5.9. </small> </address> </body> </html>