<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html><head><meta name="robots" content="noindex"> <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> <title>sc::SCMatrixRectBlock class Reference</title> <link href="doxygen.css" rel="stylesheet" type="text/css"> </head><body bgcolor="#ffffff"> <!-- Generated by Doxygen 1.2.5 on Mon Oct 14 14:17:44 2002 --> <center> <a class="qindex" href="index.html">Main Page</a> <a class="qindex" href="hierarchy.html">Class Hierarchy</a> <a class="qindex" href="annotated.html">Compound List</a> <a class="qindex" href="files.html">File List</a> <a class="qindex" href="functions.html">Compound Members</a> <a class="qindex" href="pages.html">Related Pages</a> </center> <hr><h1>sc::SCMatrixRectBlock Class Reference</h1>The <a class="el" href="class_sc__SCMatrixRectBlock.html">SCMatrixRectBlock</a> describes a rectangular piece of a matrix. <a href="#_details">More...</a> <p> <code>#include <<a class="el" href="block_h-source.html">block.h</a>></code> <p> Inheritance diagram for sc::SCMatrixRectBlock<p><center><img src="class_sc__SCMatrixRectBlock_inherit_graph.gif" border="0" usemap="#sc::SCMatrixRectBlock_inherit_map" alt="Inheritance graph"></center> <map name="sc::SCMatrixRectBlock_inherit_map"> <area href="class_sc__SCMatrixBlock.html" shape="rect" coords="27,280,142,299"> <area href="class_sc__SavableState.html" shape="rect" coords="34,213,135,232"> <area href="class_sc__DescribedClass.html" shape="rect" coords="27,147,142,165"> <area href="class_sc__RefCount.html" shape="rect" coords="43,80,126,99"> <area href="class_sc__Identity.html" shape="rect" coords="49,13,121,32"> </map> <center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for sc::SCMatrixRectBlock:<p><center><img src="class_sc__SCMatrixRectBlock_coll_graph.gif" border="0" usemap="#sc::SCMatrixRectBlock_coll_map" alt="Collaboration graph"></center> <map name="sc::SCMatrixRectBlock_coll_map"> <area href="class_sc__SCMatrixBlock.html" shape="rect" coords="27,280,142,299"> <area href="class_sc__SavableState.html" shape="rect" coords="34,213,135,232"> <area href="class_sc__DescribedClass.html" shape="rect" coords="27,147,142,165"> <area href="class_sc__RefCount.html" shape="rect" coords="43,80,126,99"> <area href="class_sc__Identity.html" shape="rect" coords="49,13,121,32"> </map> <center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center><a href="class_sc__SCMatrixRectBlock-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0> <tr><td colspan=2><br><h2>Public Methods</h2></td></tr> <tr><td nowrap align=right valign=top><a name="a0" doxytag="sc::SCMatrixRectBlock::SCMatrixRectBlock"></a> </td><td valign=bottom><b>SCMatrixRectBlock</b> (int is, int ie, int js, int je)</td></tr> <tr><td nowrap align=right valign=top><a name="a1" doxytag="sc::SCMatrixRectBlock::SCMatrixRectBlock"></a> </td><td valign=bottom><b>SCMatrixRectBlock</b> (<a class="el" href="class_sc__StateIn.html">StateIn</a> &)</td></tr> <tr><td nowrap align=right valign=top><a name="a2" doxytag="sc::SCMatrixRectBlock::~SCMatrixRectBlock"></a> virtual </td><td valign=bottom><b>~SCMatrixRectBlock</b> ()</td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="class_sc__SCMatrixRectBlock.html#a3">save_data_state</a> (<a class="el" href="class_sc__StateOut.html">StateOut</a> &)</td></tr> <tr><td> </td><td><font size=-1><em>Save the base classes (with save_data_state) and the members in the same order that the <a class="el" href="class_sc__StateIn.html">StateIn</a> CTOR initializes them.</em> <a href="#a3">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top><a class="el" href="class_sc__SCMatrixBlock.html">SCMatrixBlock</a>* </td><td valign=bottom><a class="el" href="class_sc__SCMatrixRectBlock.html#a4">deepcopy</a> () const</td></tr> <tr><td> </td><td><font size=-1><em>Return of copy of this.</em> <a href="#a4">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top><a name="a5" doxytag="sc::SCMatrixRectBlock::process"></a> void </td><td valign=bottom><b>process</b> (<a class="el" href="class_sc__SCElementOp.html">SCElementOp</a> *)</td></tr> <tr><td nowrap align=right valign=top><a name="a6" doxytag="sc::SCMatrixRectBlock::process"></a> void </td><td valign=bottom><b>process</b> (<a class="el" href="class_sc__SCElementOp2.html">SCElementOp2</a> *, <a class="el" href="class_sc__SCMatrixBlock.html">SCMatrixBlock</a> *)</td></tr> <tr><td nowrap align=right valign=top><a name="a7" doxytag="sc::SCMatrixRectBlock::process"></a> void </td><td valign=bottom><b>process</b> (<a class="el" href="class_sc__SCElementOp3.html">SCElementOp3</a> *, <a class="el" href="class_sc__SCMatrixBlock.html">SCMatrixBlock</a> *, <a class="el" href="class_sc__SCMatrixBlock.html">SCMatrixBlock</a> *)</td></tr> <tr><td nowrap align=right valign=top>double* </td><td valign=bottom><a class="el" href="class_sc__SCMatrixRectBlock.html#a8">dat</a> ()</td></tr> <tr><td> </td><td><font size=-1><em>Return a pointer to the block's data and the number of elements in the block.</em> <a href="#a8">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top><a name="a9" doxytag="sc::SCMatrixRectBlock::ndat"></a> int </td><td valign=bottom><b>ndat</b> () const</td></tr> <tr><td colspan=2><br><h2>Public Attributes</h2></td></tr> <tr><td nowrap align=right valign=top><a name="m0" doxytag="sc::SCMatrixRectBlock::istart"></a> int </td><td valign=bottom><b>istart</b></td></tr> <tr><td nowrap align=right valign=top><a name="m1" doxytag="sc::SCMatrixRectBlock::jstart"></a> int </td><td valign=bottom><b>jstart</b></td></tr> <tr><td nowrap align=right valign=top><a name="m2" doxytag="sc::SCMatrixRectBlock::iend"></a> int </td><td valign=bottom><b>iend</b></td></tr> <tr><td nowrap align=right valign=top><a name="m3" doxytag="sc::SCMatrixRectBlock::jend"></a> int </td><td valign=bottom><b>jend</b></td></tr> <tr><td nowrap align=right valign=top><a name="m4" doxytag="sc::SCMatrixRectBlock::data"></a> double* </td><td valign=bottom><b>data</b></td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> The <a class="el" href="class_sc__SCMatrixRectBlock.html">SCMatrixRectBlock</a> describes a rectangular piece of a matrix. <p> The following bit of code illustrates the data layout: fill(double **matrix, SCMatrixRectBlock &b) { int offset=0; for (int i=b.istart; i<b.iend; i++) { for (int j=b.jstart; j<b.jend; j++,offset++) { matrix[i][j] = b.data[offset]; } } } <p> <hr><h2>Member Function Documentation</h2> <a name="a8" doxytag="sc::SCMatrixRectBlock::dat"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> double* sc::SCMatrixRectBlock::dat ( </b></td> <td valign="bottom"><b> )<code> [virtual]</code> </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Return a pointer to the block's data and the number of elements in the block. <p> Some blocks cannot provide this information and a runtime error will be generated if these members are called. These routines are only used internally in the matrix library. <p> Reimplemented from <a class="el" href="class_sc__SCMatrixBlock.html#a5">sc::SCMatrixBlock</a>. </td> </tr> </table> <a name="a4" doxytag="sc::SCMatrixRectBlock::deepcopy"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> <a class="el" href="class_sc__SCMatrixBlock.html">SCMatrixBlock</a>* sc::SCMatrixRectBlock::deepcopy ( </b></td> <td valign="bottom"><b> ) const<code> [virtual]</code> </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Return of copy of this. <p> A runtime error will be generated for blocks that cannot do a deepcopy. These routines are only used internally in the matrix library. <p> Reimplemented from <a class="el" href="class_sc__SCMatrixBlock.html#a4">sc::SCMatrixBlock</a>. </td> </tr> </table> <a name="a3" doxytag="sc::SCMatrixRectBlock::save_data_state"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> void sc::SCMatrixRectBlock::save_data_state ( </b></td> <td valign="bottom"><b> <a class="el" href="class_sc__StateOut.html">StateOut</a> & <em>s</em> )<code> [virtual]</code> </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Save the base classes (with save_data_state) and the members in the same order that the <a class="el" href="class_sc__StateIn.html">StateIn</a> CTOR initializes them. <p> This must be implemented by the derived class if the class has data. <p> Reimplemented from <a class="el" href="class_sc__SCMatrixBlock.html#a3">sc::SCMatrixBlock</a>. </td> </tr> </table> <hr>The documentation for this class was generated from the following file:<ul> <li><a class="el" href="block_h-source.html">block.h</a></ul> <hr> <address> <small> Generated at Mon Oct 14 14:17:45 2002 for <a href="http://aros.ca.sandia.gov/~cljanss/mpqc">MPQC</a> 2.1.2 using the documentation package <a href="http://www.stack.nl/~dimitri/doxygen/index.html">Doxygen</a> 1.2.5. </small> </address> </body> </html>