stor.html
来自「矩阵算法库newmat10.tar.gz的帮助文件」· HTML 代码 · 共 54 行
HTML
54 行
<HTML><HEAD><TITLE>Newmat09 - storage</TITLE></HEAD><BODY><H2>Data storage</H2><A HREF="mem_man.html"> next</A> -<A HREF="mem_man.html"> skip</A> -<A HREF="design.html"> up</A> -<A HREF="index.html"> start</A><H3>Structure</H3><P>Each matrix object contains the basic information such as the number ofrows and columns and a status variable plus a pointer to the dataarray which is on the heap.<H3>One block or several</H3><P>The elements of the matrix are stored as asingle array. Alternatives would have been to store each row as aseparate array or a set of adjacent rows as a separate array. Thepresent solution simplifies the program but limits the size ofmatrices in 16 bit PCs that have a 64k byte limit on thesize of arrays (I don't use the <TT>huge</TT> keyword).The large arrays may also cause problems formemory management in smaller machines.<H3>By row or by column or other</H3><P>In Fortran two dimensional arrays are stored by column. Inmost other systems they are stored by row. I have followed thislater convention. This makes it easier to interface with otherpackages written in C but harder to interface with those writtenin Fortran. This may have been a wrong decision. Most work on theefficient manipulation of large matrices is being done inFortran. It would have been easier to use this work if I hadadopted the Fortran convention.<P>An alternative would be to store the elements by mid-sizedrectangular blocks. This might impose less strain on memorymanagement when one needs to access both rows and columns.<H3>Storage of symmetric matrices</H3><P>Symmetric matrices are stored as lower triangular matrices.The decision was pretty arbitrary, but it does slightly simplifythe Cholesky decomposition program.<P><A HREF="mem_man.html"> next</A> -<A HREF="mem_man.html"> skip</A> -<A HREF="design.html"> up</A> -<A HREF="index.html"> start</A><P> </BODY></HTML>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?