📄 index.htm
字号:
each element.</i></tt></li><li><tt><a href="#matrixO34">operator+</a> - - <i>Addition of a number to eachelement.</i></tt></li><li><tt><a href="#matrixO35">operator-=</a> - - <i>Subtraction of a vectorfrom the rows of a matrix</i></tt></li><li><tt><a href="#matrixO36">operator-</a> - - <i>Subtraction of a vector fromthe rows of a matrix</i></tt></li><li><tt><a href="#matrixO37">operator+=</a> - - <i>Addition of a vector tothe rows of a matrix</i></tt></li><li><tt><a href="#matrixO38">operator+</a> - - <i>Addition of a vector to therows of a matrix</i></tt></li><li><tt><a href="#matrixO39">operator-=</a> - - <i>matrix subtraction</i></tt></li><li><tt><a href="#matrixO40">operator-</a> - - <i>Matrix subtraction</i></tt></li><li><tt><a href="#matrixO41">operator+=</a> - - <i>Matrix addition</i></tt></li><li><tt><a href="#matrixO42">operator+</a> - - <i>Matrix addition</i></tt></li><li><tt><a href="#matrixO43">operator&</a> - - <i>Matrix multiplicationTranspose(m1) * m2 N.B. this is less efficient than (but not equivalentto) operator%</i></tt></li><li><tt><a href="#matrixO44">operator%</a> - - <i>Matrix multiplication m1* Transpose(m2) N.B. this is more efficient than (but not equivalent to)operator&</i></tt></li><li><tt><a href="#matrixO45">operator==</a> - - <i>Equality operator</i></tt></li></ul><a href="#Classes"><img SRC="leftb.gif" ALT="back" BORDER=0 ></a><hr><p><a NAME="matrix_product"></a><h2>matrix_product</h2><p><br>Matrix multiplication. The output matrix is nrows1*ncols2 in size.<br><b><font color="#FF0000">Restrictions:</font></b> ncols1 must equalnrows2.<p><b>Operations</b><br> <br> <ul><li><tt><a href="#matrix_productO0">matrix_product</a> -</tt></li></ul><a href="#Classes"><img SRC="leftb.gif" ALT="back" BORDER=0 ></a><hr><p><a NAME="matrixtranspose_matrix_product"></a><h2>matrixtranspose_matrix_product</h2><p><br>Matrix multiplication: Transpose(M1)*M2. The output matrix is ncols1*ncols2in size.<br><b><font color="#FF0000">Restrictions:</font></b> Both matrices musthave the same number of rows<p><b>Operations</b><br> <br> <ul><li><tt><a href="#matrixtranspose_matrix_productO0">matrixtranspose_matrix_product</a>-</tt></li></ul><a href="#Classes"><img SRC="leftb.gif" ALT="back" BORDER=0 ></a><hr><p><a NAME="matrix_matrixtranspose_product"></a><h2>matrix_matrixtranspose_product</h2><p><br>Matrix multiplication: M1*Transpose(M2) The output matrix is nrows1*nrows2in size.<br><b><font color="#FF0000">Restrictions:</font></b> Both matrices musthave the same number of columns<p><b>Operations</b><br> <br> <ul><li><tt><a href="#matrix_matrixtranspose_productO0">matrix_matrixtranspose_product</a>-</tt></li></ul><a href="#Classes"><img SRC="leftb.gif" ALT="back" BORDER=0 ></a><hr><p><a NAME="transpose"></a><h2>transpose</h2><p><br>Matrix transpose. Can be used in-place.<p><b>Operations</b><br> <br> <ul><li><tt><a href="#transposeO0">transpose</a> -</tt></li></ul><a href="#Classes"><img SRC="leftb.gif" ALT="back" BORDER=0 ></a><hr><p><a NAME="column_means"></a><h2>column_means</h2><p><br>Calculate the mean of each column of a matrix and store the answersin a container of size >= ncols.<p><b>Operations</b><br> <br> <ul><li><tt><a href="#column_meansO0">column_means</a> -</tt></li></ul><a href="#Classes"><img SRC="leftb.gif" ALT="back" BORDER=0 ></a><hr><p><a NAME="copy_column"></a><h2>copy_column</h2><p><br>Copy a column of this matrix into another container. Columns arenumbered from 1. in the FORTRAN manner.<p><b>Operations</b><br> <br> <ul><li><tt><a href="#copy_columnO0">copy_column</a> -</tt></li></ul><a href="#Classes"><img SRC="leftb.gif" ALT="back" BORDER=0 ></a><hr><p><a NAME="determinant"></a><h2>determinant</h2><p><br>Calculates matrix determinant<br><b><font color="#FF0000">Restrictions:</font></b> Square matrices only.<p><b>Operations</b><br> <br> <ul><li><tt><a href="#determinantO0">determinant</a> -</tt></li></ul><a href="#Classes"><img SRC="leftb.gif" ALT="back" BORDER=0 ></a><hr><p><a NAME="minor"></a><h2>minor</h2><p><br>Find the minor of a matrix. The minor denoted by minor(.,.,,.,i,j)is found by eliminating the row i and column j from the parent matrix.<p><b>Operations</b><br> <br> <ul><li><tt><a href="#minorO0">minor</a> -</tt></li></ul><a href="#Classes"><img SRC="leftb.gif" ALT="back" BORDER=0 ></a><hr><p><a NAME="adjoint"></a><h2>adjoint</h2><p><br>Matrix adjoint<br><b><font color="#FF0000">Restrictions:</font></b> Square matrices only.<p><b>Operations</b><br> <br> <ul><li><tt><a href="#adjointO0">adjoint</a> -</tt></li></ul><a href="#Classes"><img SRC="leftb.gif" ALT="back" BORDER=0 ></a><hr><p><a NAME="inverse_square"></a><h2>inverse_square</h2><p><br>Calculate inverse of a small square matrix (inverse = adjoint/determinant).The result matrix should be of a floating point type.<p><b>Operations</b><br> <br> <ul><li><tt><a href="#inverse_squareO0">inverse_square</a> -</tt></li></ul><a href="#Classes"><img SRC="leftb.gif" ALT="back" BORDER=0 ></a><hr><p><a NAME="eigen_solution"></a><h2>eigen_solution</h2><p><br>Eigenvalues and eigenvectors of a symmetric matrix<br><b><font color="#FF0000">Restrictions:</font></b> The input matrixmust be real, square and symmetric, the output vector of eigen values willbe nrows in size and the output matrix of eigenvectors will be nrows*nrowsin size.<p><b>Operations</b><br> <br> <ul><li><tt><a href="#eigen_solutionO0">eigen_solution</a> -</tt></li></ul><a href="#Classes"><img SRC="leftb.gif" ALT="back" BORDER=0 ></a><hr><p><a NAME="inverse_cholesy"></a><h2>inverse_cholesy</h2><p><br>Inverts a symmetric positive definite matrix. Employs Cholesky decompositionin three steps:<p> (1)M=LL(tr) (2)compute L(-1) (3)M(-1)=L(-1)(tr)L(-1) Input shouldcontain numerical data that can be interpreted as a symmetric positivedefinite matrix. The output is the inverse of this matrix in the form ofa matrix of the same size as the input and probably containing data oftype BTL_REAL.<p><b>Operations</b><br> <br> <ul><li><tt><a href="#inverse_cholesyO0">inverse_cholesky</a> -</tt></li></ul><a href="#Classes"><img SRC="leftb.gif" ALT="back" BORDER=0 ></a><hr><p><a NAME="lsqfit_rmsd"></a><h2>lsqfit_rmsd</h2><p><br>Calculate the root mean squared deviation after a least squaresfit of the two sets of coordinates using the method of Kearsley(Acta Cryst.'89, A45, 208-10). Both sets of coordinates remain unchanged by this function<br><b><font color="#FF0000">Restrictions:</font></b> Each set must havethe same number of coordinates. Each coordinate must be orthogonal andin three dimensions (i.e. normal x,y,z coordinates). WARNING: if coordinateswith varying dimensions are input then this may well not be detected.<p><b>Operations</b><br> <br> <ul><li><tt><a href="#lsqfit_rmsdO0">lsqfit_rmsd</a> -</tt></li></ul><a href="#Classes"><img SRC="leftb.gif" ALT="back" BORDER=0 ></a><hr><p><a NAME="centroid"></a><h2>centroid</h2><p><br>Calculate the centroid of a set of x,y,z coordinates held in ann x 3 matrix.<p><b>Operations</b><br> <br> <ul><li><tt><a href="#centroidO0">centroid</a> -</tt></li></ul><a href="#Classes"><img SRC="leftb.gif" ALT="back" BORDER=0 ></a><hr><p><a NAME="rotation_from_fit"></a><h2>rotation_from_fit</h2><p><br>Create fitting rotation matrix from the eigen vector that correspondsto the smallest eigen vector of Kearsley's matrix.<p><b>Operations</b><br> <br> <ul><li><tt><a href="#rotation_from_fitO0">rotation_from_fit</a> -</tt></li></ul><a href="#Classes"><img SRC="leftb.gif" ALT="back" BORDER=0 ></a><hr><p><a NAME="rmsd"></a><h2>rmsd</h2><p><br>Calculate the root mean squared deviation of two sets of coordinates.<br><b><font color="#FF0000">Restrictions:</font></b> Each set must havethe same number of coordinates. There is no restriction on the number ofdimensions which the coordinates represent (except that it must be thesame in every case). WARNING: if coordinates with varying dimensions areinput then this may well not be detected.<p><b>Operations</b><br> <br> <ul><li><tt><a href="#rmsdO0">rmsd</a> -</tt></li></ul><a href="#Classes"><img SRC="leftb.gif" ALT="back" BORDER=0 ></a><hr><p><a NAME="check_3d_data"></a><h2>check_3d_data</h2><p><br>Check that both input containers have the same number of elementsand that number is multiple of 3. Output the number of x,y,z positions.<p><b>Operations</b><br> <br> <ul><li><tt><a href="#check_3d_dataO0">check_3d_data</a> -</tt></li></ul><a href="#Classes"><img SRC="leftb.gif" ALT="back" BORDER=0 ></a><hr><p><a NAME="BTL_VertexWithEdges"></a><h2>BTL_VertexWithEdges</h2><p><br>This class represents an vertex that has links to edge objects.It is to be used in combination with class BTL_GraphWithEdges.<br><b>Authors:</b> W.R.Pitt<br><b>Files:</b> <a href="btl/btl_graph_with_edges.h">btl_graph_with_edges.h</a><br><b>Friends:</b> friend class BTL_GraphWithEdges&ltT1,T2>>;<p>friend ostream& operator<<(ostream &os, const BTL_VertexWithEdges&m);<br><b>Dependencies:</b> None, except by inheritance.<p><b>Generalizations</b><p><font color="#FF0000">N.B. The graph classes command syntax will berevised in the 3.0beta version</font><ul><li><a href="#BTL_Vertex">BTL_Vertex</a></li></ul><b>Operations</b><br> <br> <ul><li><tt><a href="#BTL_VertexWithEdgesO0">BTL_VertexWithEdges</a> - - <i>Constructorempty vertex.</i></tt></li><li><tt><a href="#BTL_VertexWithEdgesO1">~BTL_VertexWithEdges</a> - - <i>Deletevertex and its contents.</i></tt></li><li><tt><a href="#BTL_VertexWithEdgesO2">begin_edge</a> - - <i>Return iteratorthat references first edge connected to Vertex. (There is also a constversion of this function.)</i></tt></li><li><tt><a href="#BTL_VertexWithEdgesO3">begin_edge</a> -</tt></li><li><tt><a href="#BTL_VertexWithEdgesO4">end_edge</a> - - <i>Return iteratorthat references the position in memory after the last edge connected toVertex. (There is also a const version of this function.)</i></tt></li><li><tt><a href="#BTL_VertexWithEdgesO5">end_edge</a> -</tt></li></ul><a href="#Classes"><img SRC="leftb.gif" ALT="back" BORDER=0 ></a><hr><p><a NAME="BTL_Edge"></a><h2>BTL_Edge</h2><p><br>This class represents an edge of a graph. It is to be used in combinationwith class BTL_GraphWithEdges.<br><b>Authors:</b> W.R.Pitt<br><b>Files:</b> <a href="btl/btl_graph_with_edges.h">btl_graph_with_edges.h</a><br><b>Friends:</b> friend class BTL_GraphWithEdges&ltT1,T2>>;<p>friend ostream& operator<<(ostream &os, const BTL_Edge&m);<br><b>Dependencies:</b> <a href="#BTL_VertexWithEdges">BTL_VertexWithEdges</a><p><b>Generalizations</b><p><font color="#FF0000">N.B. The graph classes command syntax will berevised in the 3.0beta version</font><br> <ul><li><a href="#BTL_EdgeBase">BTL_EdgeBase</a></li></ul><b>Operations</b><br> <br> <ul><li><tt><a href="#BTL_EdgeO0">BTL_Edge</a> - - <i>Construct empty edge</i></tt></li><li><tt><a href="#BTL_EdgeO1">BTL_Edge</a> - - <i>Copy constructor</i></tt></li><li><tt><a href="#BTL_EdgeO2">~BTL_Edge</a> - - <i>Destructor</i></tt></li><li><tt><a href="#BTL_EdgeO3">GetIterator</a> - - <i>Returns an iterator thatcan be deferenced to obtain the data object associated with this edge (Thereis a const version of this function as well)</i></tt></li><li><tt><a href="#BTL_EdgeO4">GetIterator</a> -</tt></li><li><tt><a href="#BTL_EdgeO5">LeftVertex</a> - - <i>Returns pointer to thefirst vertex connected to this edge.</i></tt></li><li><tt><a href="#BTL_EdgeO6">RightVertex</a> - - <i>Returns pointer to thesecond vertex connected to this edge.</i></tt></li></ul><a href="#Classes"><img SRC="leftb.gif" ALT="back" BORDER=0 ></a><hr><p><a NAME="BTL_GraphWithEdges"></a><h2>BTL_GraphWithEdges</h2><p><br>Graph container with any type of data at the vertices of the graphand any type of data at the edges. The default behaviour is have undirectededges. This can be changed to directed if specified in the constructor.No self links (edges from one vertex to itself) are allowed.<br><b>Authors:</b> W.R.Pitt<br><b>Files:</b> <a href="btl/btl_graph_with_edges.h">btl_graph_with_edges.h</a><br><b>Friends:</b> friend ostream& operator<<<(ostream &os,const BTL_GraphWithEdges &m);<br><b>Dependencies:</b> <a href="#BTL_Vertex">BTL_Vertex</a>, <a href="#BTL_II">BTL_II</a><p><b>Generalizations</b>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -