<!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::SymRep 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_1SymRep.html">SymRep</a> </div> </div> <div class="contents"> <h1>sc::SymRep Class Reference</h1><!-- doxytag: class="sc::SymRep" -->The <a class="el" href="classsc_1_1SymRep.html" title="The SymRep class provides an n dimensional matrix representation of a symmetry operation...">SymRep</a> class provides an n dimensional matrix representation of a symmetry operation, such as a rotation or reflection. <a href="#_details">More...</a> <p> <code>#include <<a class="el" href="pointgrp_8h_source.html">pointgrp.h</a>></code> <p> <p> <a href="classsc_1_1SymRep-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="ec25e455d7c5ce442ea96b9a12323e23"></a><!-- doxytag: member="sc::SymRep::SymRep" ref="ec25e455d7c5ce442ea96b9a12323e23" args="(int=0)" --> </td><td class="memItemRight" valign="bottom"><b>SymRep</b> (int=0)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="84e262ec08b32e436c2ae7b400d0791c"></a><!-- doxytag: member="sc::SymRep::SymRep" ref="84e262ec08b32e436c2ae7b400d0791c" args="(const SymmetryOperation &)" --> </td><td class="memItemRight" valign="bottom"><b>SymRep</b> (const <a class="el" href="classsc_1_1SymmetryOperation.html">SymmetryOperation</a> &)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4755f8d7f0ff38342e8651e3a89b8c2d"></a><!-- doxytag: member="sc::SymRep::operator SymmetryOperation" ref="4755f8d7f0ff38342e8651e3a89b8c2d" args="() const " --> </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SymRep.html#4755f8d7f0ff38342e8651e3a89b8c2d">operator SymmetryOperation</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Cast to a <a class="el" href="classsc_1_1SymmetryOperation.html" title="The SymmetryOperation class provides a 3 by 3 matrix representation of a symmetry...">SymmetryOperation</a>. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2c3a811a6dd5f946ad268f80e9e2ac54"></a><!-- doxytag: member="sc::SymRep::trace" ref="2c3a811a6dd5f946ad268f80e9e2ac54" args="() const " --> double </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SymRep.html#2c3a811a6dd5f946ad268f80e9e2ac54">trace</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">returns the trace of the transformation matrix <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="61cf163a54a4043883aafd0632653a8b"></a><!-- doxytag: member="sc::SymRep::set_dim" ref="61cf163a54a4043883aafd0632653a8b" args="(int i)" --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SymRep.html#61cf163a54a4043883aafd0632653a8b">set_dim</a> (int i)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">set the dimension of d <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f7245774f2e942215c284780a873bdd0"></a><!-- doxytag: member="sc::SymRep::operator[]" ref="f7245774f2e942215c284780a873bdd0" args="(int i)" --> double * </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SymRep.html#f7245774f2e942215c284780a873bdd0">operator[]</a> (int i)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">returns the i'th row of the transformation matrix <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="99e0d06e1e8521a89a993957fe1d9875"></a><!-- doxytag: member="sc::SymRep::operator[]" ref="99e0d06e1e8521a89a993957fe1d9875" args="(int i) const " --> const double * </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SymRep.html#99e0d06e1e8521a89a993957fe1d9875">operator[]</a> (int i) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">const version of the above <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="83fff630b6d6456df08822b70dc21c41"></a><!-- doxytag: member="sc::SymRep::operator()" ref="83fff630b6d6456df08822b70dc21c41" args="(int i, int j)" --> double & </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SymRep.html#83fff630b6d6456df08822b70dc21c41">operator()</a> (int i, int j)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">returns a reference to the (i,j)th element of the transformation matrix <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="bd9de65b483c21fc7355a626899e5f89"></a><!-- doxytag: member="sc::SymRep::operator()" ref="bd9de65b483c21fc7355a626899e5f89" args="(int i, int j) const " --> double </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SymRep.html#bd9de65b483c21fc7355a626899e5f89">operator()</a> (int i, int j) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">const version of double& <a class="el" href="classsc_1_1SymRep.html#83fff630b6d6456df08822b70dc21c41" title="returns a reference to the (i,j)th element of the transformation matrix">operator()(int i, int j)</a> <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="bb9264765b55b8289b3c7946854b469e"></a><!-- doxytag: member="sc::SymRep::zero" ref="bb9264765b55b8289b3c7946854b469e" args="()" --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SymRep.html#bb9264765b55b8289b3c7946854b469e">zero</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">zero out the symop <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="35762283a99bd10cac2847a2b598448a"></a><!-- doxytag: member="sc::SymRep::operate" ref="35762283a99bd10cac2847a2b598448a" args="(const SymRep &r) const " --> <a class="el" href="classsc_1_1SymRep.html">SymRep</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SymRep.html#35762283a99bd10cac2847a2b598448a">operate</a> (const <a class="el" href="classsc_1_1SymRep.html">SymRep</a> &r) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">This operates on this with r (i.e. return r * this). <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2d3ca4715718106a5034c0596e7aed60"></a><!-- doxytag: member="sc::SymRep::transform" ref="2d3ca4715718106a5034c0596e7aed60" args="(const SymRep &r) const " --> <a class="el" href="classsc_1_1SymRep.html">SymRep</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SymRep.html#2d3ca4715718106a5034c0596e7aed60">transform</a> (const <a class="el" href="classsc_1_1SymRep.html">SymRep</a> &r) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">This performs the transform r * this * r~. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6809f00f8c8776c34a855a8e67a15085"></a><!-- doxytag: member="sc::SymRep::unit" ref="6809f00f8c8776c34a855a8e67a15085" args="()" --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SymRep.html#6809f00f8c8776c34a855a8e67a15085">unit</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set equal to a unit matrix. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2f820a3b65a3fbd9626e0b9d69cff91e"></a><!-- doxytag: member="sc::SymRep::E" ref="2f820a3b65a3fbd9626e0b9d69cff91e" args="()" --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SymRep.html#2f820a3b65a3fbd9626e0b9d69cff91e">E</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set equal to the identity. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e2063a7d0c994aff17aae7dc10122510"></a><!-- doxytag: member="sc::SymRep::i" ref="e2063a7d0c994aff17aae7dc10122510" args="()" --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SymRep.html#e2063a7d0c994aff17aae7dc10122510">i</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set equal to an inversion. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="78a538dc32e4edeced0c68a81b8a037a"></a><!-- doxytag: member="sc::SymRep::sigma_h" ref="78a538dc32e4edeced0c68a81b8a037a" args="()" --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SymRep.html#78a538dc32e4edeced0c68a81b8a037a">sigma_h</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set equal to reflection in xy plane. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cfb7ca0a7fc4c0df5de65cdf4f0e9723"></a><!-- doxytag: member="sc::SymRep::sigma_xz" ref="cfb7ca0a7fc4c0df5de65cdf4f0e9723" args="()" --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SymRep.html#cfb7ca0a7fc4c0df5de65cdf4f0e9723">sigma_xz</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set equal to reflection in xz plane. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a4a3a0fe0957f3c1ee70b13feff8e11d"></a><!-- doxytag: member="sc::SymRep::sigma_yz" ref="a4a3a0fe0957f3c1ee70b13feff8e11d" args="()" --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SymRep.html#a4a3a0fe0957f3c1ee70b13feff8e11d">sigma_yz</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set equal to reflection in yz plane. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="669ee95a2e205ade1eb65a00c0a5b4f5"></a><!-- doxytag: member="sc::SymRep::rotation" ref="669ee95a2e205ade1eb65a00c0a5b4f5" args="(int n)" --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SymRep.html#669ee95a2e205ade1eb65a00c0a5b4f5">rotation</a> (int n)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set equal to a clockwise rotation by 2pi/n. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9f75d99176d0b2b764abba44fe4fcb3a"></a><!-- doxytag: member="sc::SymRep::rotation" ref="9f75d99176d0b2b764abba44fe4fcb3a" args="(double theta)" --> void </td><td class="memItemRight" valign="bottom"><b>rotation</b> (double theta)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b1dc6bda91d591e786fc1615c6f4ece0"></a><!-- doxytag: member="sc::SymRep::c2_x" ref="b1dc6bda91d591e786fc1615c6f4ece0" args="()" --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SymRep.html#b1dc6bda91d591e786fc1615c6f4ece0">c2_x</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set equal to C2 about the x axis. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="06c755b49b388807c86d7b40aacb9b5b"></a><!-- doxytag: member="sc::SymRep::c2_y" ref="06c755b49b388807c86d7b40aacb9b5b" args="()" --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SymRep.html#06c755b49b388807c86d7b40aacb9b5b">c2_y</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set equal to C2 about the x axis. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="aa3652daf734578076d7fc001b8554d9"></a><!-- doxytag: member="sc::SymRep::print" ref="aa3652daf734578076d7fc001b8554d9" args="(std::ostream &=ExEnv::out0()) const " --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SymRep.html#aa3652daf734578076d7fc001b8554d9">print</a> (std::ostream &=ExEnv::out0()) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">print the matrix <br></td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> The <a class="el" href="classsc_1_1SymRep.html" title="The SymRep class provides an n dimensional matrix representation of a symmetry operation...">SymRep</a> class provides an n dimensional matrix representation of a symmetry operation, such as a rotation or reflection. <p> The trace of a <a class="el" href="classsc_1_1SymRep.html" title="The SymRep class provides an n dimensional matrix representation of a symmetry operation...">SymRep</a> can be used as the character for that symmetry operation. d is hardwired to 5x5 since the H irrep in Ih is 5 dimensional. <hr>The documentation for this class was generated from the following file:<ul> <li><a class="el" href="pointgrp_8h_source.html">pointgrp.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>