The eigenvalues of a matrix and the corresponding eigenvectors are called its eigenpairs.The eigenpair and its solution are classical problems in linear algebra and computational mathematics and arise widely in science and technology,such as structural dynamics calculation and buckling analysis.In such fields as ship and marine engineering,due to the demand for precise design and control,the structures involved in modeling are becoming increasingly large and complex,the models are increasingly finely divided,and the dimensionality and computational cost of the eigenpairs are expanding severely,which brings nonnegligible time and computer hardware costs,and puts increasing demands on the efficiency of the eigenpair algorithm.This thesis studies an efficient algorithm for eigenpairs.By using the relevant theories of linear algebra and computational mathematics,this thesis focuses on the primary reasons that hinder the further improvement of the existing methods and carries out detailed theoretical derivation and numerical verification.By replacing the eigenvalue iteration method,constructing sub-matrices to obtain the natural orthogonal eigenvectors,and changing the assignment of parallelism according to the number of eigenpairs to the parallelism for each eigenpair,a new efficient algorithm for eigenpairs is developed,which significantly improves the computational and parallel efficiency while ensuring accuracy.The algorithm is applied in the vibration calculation of ship shafting,further verifying its efficiency and applicability in the engineering field based on comparing the measured and numerical results of the eigenpairs.Specifically,the standard practice for eigenpairs of a large matrix is to tridiagonalize the matrix and then compute the eigenpairs of the symmetric tridiagonal matrices.After the stable and efficient tridiagonalizing algorithm has been developed,the time cost of the latter becomes the bottleneck.This thesis focuses on this,and the main improvements are as follows.(1)To address the problem of too many iterations for the existing methods to compute eigenvalues,this thesis uses the property of submatrix eigenvalues to construct an initial iteration interval for the root-finding algorithm with a high convergence rate,thus replacing the existing computation method and reducing the number of iterations required for each eigenvalue from 53 to about 7,significantly reducing the computational time cost.(2)Since the existing methods cost too many operations to reorthogonalize the clustering eigenvectors,this thesis proposes a new subspace dividing and search method to distribute the solution process into independent submatrices,thus ensuring the natural orthogonality of the computation results and avoiding the introduction of “expensive” reorthogonalization algorithms.(3)Parallel computation is an essential means to reduce time cost? however,the parallel strategy of existing methods is to assign each eigenpair to each computational core.Therefore,there are bound to be idle computational cores when the number of eigenpairs to be solved is less than the number of cores.This thesis proposes a parallel algorithm for a single eigenpair by dividing the matrix and assigning the solution of the eigenpair to each submatrix so that the computation of each eigenpair can be assigned to any number of computational cores,which improves the parallel efficiency and the utilization of computer resources.(4)In this paper,the proposed eigenpair algorithm is integrated with the existing tridiagonalization method and a modal calculation procedure is designed.Using the two sets of ship propulsion shaft system test rigs built,the eigenvalues,eigenvectors and parallel algorithms proposed in this paper are applied to calculate their related frequencies and vibration modes,and compared with three existing dynamics solvers in the finite element software Abaqus.The results show that the time consumption of the algorithm in this paper is significantly lower than that of the AMS solver,Lanczos solver and Subspace Iterative solver in Abaqus? moreover,the utilization of computational resources by the parallel algorithm proposed in this paper is significantly better than that of the methods in Abaqus,which makes its efficiency advantage more significant in parallel computation. |