{"title":"在C语言中有效实现LU分解","authors":"Alan Meyer","doi":"10.1016/0141-1195(88)90011-3","DOIUrl":null,"url":null,"abstract":"<div><p>An implementation of the well-known LU decomposition method for solving systems of linear equations is presented. Operation counts typically stated for this method are derived from a theoretical analysis of the algorithm and ignore the practical aspects of the implementation. The overhead associated with assessing elements of the two-dimensional coefficient array are explored herein, and seen to be substantial. This overhead is incorporated into the analysis of LU decomposition and new operation counts are developed. By exploiting the addressing capabilities of C the cost of array access is significantly reduced, resulting in an efficient implementation. The techniques employed here can be applied to a wide variety of C programs which utilize multi-dimensional arrays.</p></div>","PeriodicalId":100043,"journal":{"name":"Advances in Engineering Software (1978)","volume":"10 3","pages":"Pages 123-130"},"PeriodicalIF":0.0000,"publicationDate":"1988-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://sci-hub-pdf.com/10.1016/0141-1195(88)90011-3","citationCount":"3","resultStr":"{\"title\":\"An efficient implementation of LU decomposition in C\",\"authors\":\"Alan Meyer\",\"doi\":\"10.1016/0141-1195(88)90011-3\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"<div><p>An implementation of the well-known LU decomposition method for solving systems of linear equations is presented. Operation counts typically stated for this method are derived from a theoretical analysis of the algorithm and ignore the practical aspects of the implementation. The overhead associated with assessing elements of the two-dimensional coefficient array are explored herein, and seen to be substantial. This overhead is incorporated into the analysis of LU decomposition and new operation counts are developed. By exploiting the addressing capabilities of C the cost of array access is significantly reduced, resulting in an efficient implementation. The techniques employed here can be applied to a wide variety of C programs which utilize multi-dimensional arrays.</p></div>\",\"PeriodicalId\":100043,\"journal\":{\"name\":\"Advances in Engineering Software (1978)\",\"volume\":\"10 3\",\"pages\":\"Pages 123-130\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"1988-07-01\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"https://sci-hub-pdf.com/10.1016/0141-1195(88)90011-3\",\"citationCount\":\"3\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Advances in Engineering Software (1978)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://www.sciencedirect.com/science/article/pii/0141119588900113\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Advances in Engineering Software (1978)","FirstCategoryId":"1085","ListUrlMain":"https://www.sciencedirect.com/science/article/pii/0141119588900113","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
An efficient implementation of LU decomposition in C
An implementation of the well-known LU decomposition method for solving systems of linear equations is presented. Operation counts typically stated for this method are derived from a theoretical analysis of the algorithm and ignore the practical aspects of the implementation. The overhead associated with assessing elements of the two-dimensional coefficient array are explored herein, and seen to be substantial. This overhead is incorporated into the analysis of LU decomposition and new operation counts are developed. By exploiting the addressing capabilities of C the cost of array access is significantly reduced, resulting in an efficient implementation. The techniques employed here can be applied to a wide variety of C programs which utilize multi-dimensional arrays.