ZjuMatrix: C plus plus vector and matrix class library for finite element method

被引:0
|
作者
Zheng, Shicheng [1 ]
Xu, Rongqiao [1 ,2 ]
机构
[1] Zhejiang Univ, Dept Civil Engn, Hangzhou 310058, Peoples R China
[2] Zhejiang Prov Engn Res Ctr Digital & Smart Mainten, Hangzhou 310051, Peoples R China
关键词
Matrix; Vector; Finite element method; C plus plus;
D O I
10.1016/j.softx.2024.101825
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Finite element analysis is an indispensable and valuable tool widely used in the field of science and technology. It involves a multitude of matrix operations, storage of large banded matrices, and calculation of large-scale algebraic equations and associated eigenvalue problems. To facilitate these computations, a static library ZjuMatrix is developed based on the object-oriented design techniques and leverages the power of the C++ programming language. ZjuMatrix provides a comprehensive set of vector and matrix classes, offering efficient data storage management. The library supports various matrix types, including general matrices, square matrices, symmetric matrices, and symmetric banded matrices. Essential matrix operations such as addition, subtraction and multiplication are implemented. Furthermore, ZjuMatrix also offers advanced functionalities including LU factorization of a square matrix, LDL factorization of a symmetric positive definite matrix, determinant and inverse of a square matrix. In addition, ZjuMatrix equips researchers with methods to solve the standard eigenvalue problem of symmetric matrices and generalized eigenvalue problems of symmetric banded matrices. This robust support system lays a solid foundation for the implementation of the structural finite element analysis.
引用
收藏
页数:9
相关论文
共 50 条
  • [1] SIMPLE AND EFFECTIVE C plus plus MATRIX-VECTOR LIBRARY FOR NONPROFESSIONALS IN COMPUTER SCIENCE
    Brcic, Stanko
    Zugci-Zornija, Ljiljana
    INTERNATIONAL JOURNAL OF COMPUTATIONAL METHODS, 2009, 6 (01) : 43 - 74
  • [2] Veamy: an extensible object-oriented C plus plus library for the virtual element method
    Ortiz-Bernardin, A.
    Alvarez, C.
    Hitschfeld-Kahler, N.
    Russo, A.
    Silva-Valenzuela, R.
    Olate-Sanzana, E.
    NUMERICAL ALGORITHMS, 2019, 82 (04) : 1189 - 1220
  • [3] Complex Inclusion Functions in the CoStLy C plus plus Class Library
    Neher, Markus
    MATHEMATICAL SOFTWARE - ICMS 2010, 2010, 6327 : 333 - 336
  • [4] OBJECT-ORIENTED CLASS LIBRARY FOR C plus plus PROGRAMS.
    Gorlen, Keith E.
    Software - Practice and Experience, 1987, 17 (12) : 899 - 922
  • [5] Computational wave optics library for C plus plus: CWO plus plus library
    Shimobaba, Tomoyoshi
    Weng, Jiantong
    Sakurai, Takahiro
    Okada, Naohisa
    Nishitsuji, Takashi
    Takada, Naoki
    Shiraki, Atsushi
    Masuda, Nobuyuki
    Ito, Tomoyoshi
    COMPUTER PHYSICS COMMUNICATIONS, 2012, 183 (05) : 1124 - 1138
  • [6] The Pinocchio C plus plus library
    Carpentier, Justin
    Saurel, Guilhem
    Buondonno, Gabriele
    Mirabel, Joseph
    Lamiraux, Florent
    Stasse, Olivier
    Mansard, Nicolas
    2019 IEEE/SICE INTERNATIONAL SYMPOSIUM ON SYSTEM INTEGRATION (SII), 2019, : 614 - 619
  • [7] Inconsistencies in egspp (the EGSnrc C plus plus class library) and in the SLAB module of BEAMnrc
    Behrens, R.
    PHYSICS IN MEDICINE AND BIOLOGY, 2010, 55 (15): : L33 - L36
  • [8] ZKCM: A C plus plus library for multiprecision matrix computation with applications in quantum information
    SaiToh, Akira
    COMPUTER PHYSICS COMMUNICATIONS, 2013, 184 (08) : 2005 - 2020
  • [9] General Parallel Finite and Spectral-Element Oriented C/C plus plus Framework
    Otero, A. D.
    Quinteros, J.
    PROCEEDINGS OF THE SECOND INTERNATIONAL CONFERENCE ON PARALLEL, DISTRIBUTED, GRID AND CLOUD COMPUTING FOR ENGINEERING, 2011, 95
  • [10] A C plus plus CLASS FOR ANALYSING VECTOR BOOLEAN FUNCTIONS FROM A CRYPTOGRAPHIC PERSPECTIVE
    Antonio Alvarez-Cubero, Jose
    Zufiria, Pedro J.
    SECRYPT 2010: PROCEEDINGS OF THE INTERNATIONAL CONFERENCE ON SECURITY AND CRYPTOGRAPHY, 2010, : 512 - 520