FrontISTR  5.7.0
Large-scale structural analysis program with finit element method
m_fstr_eig_tridiag Module Reference

This module provides a subroutine to find the eigenvalues and eigenvectors of a symmetric tridiagonal matrix by the ql method. More...

Data Types

type  fstr_eigen_vec
 
type  fstr_tri_diag
 

Functions/Subroutines

subroutine tridiag (hecMESH, hecMAT, fstrEIG, Q, Tri, iter, is_converge)
 
subroutine ql_decomposition (nm, n, d, e, z, ierror)
 This subroutine has been adapted from the eispack routine tql2, which is a translation of the algol procedure tql2, num. math. 11, 293-306(1968) by bowdler, martin, reinsch and wilkinson. Handbook for auto. cop., vol.ii-linear algebra, 227-240(1971). This subroutine finds the eigenvalues and eigenvectors of a symmetric tridiagonal matrix by the ql method. the eigenvectors of a full symmetric matrix can also be found if tred2 has been used to reduce this full matrix to tridiagonal form. More...
 
real(kind=kreal) function a2b2 (a, b)
 

Detailed Description

This module provides a subroutine to find the eigenvalues and eigenvectors of a symmetric tridiagonal matrix by the ql method.

Function/Subroutine Documentation

◆ a2b2()

real(kind=kreal) function m_fstr_eig_tridiag::a2b2 ( real(kind=kreal)  a,
real(kind=kreal)  b 
)

Definition at line 329 of file fstr_EIG_tridiag.f90.

Here is the caller graph for this function:

◆ ql_decomposition()

subroutine m_fstr_eig_tridiag::ql_decomposition ( integer(kind=kint)  nm,
integer(kind=kint)  n,
real(kind=kreal), dimension(n)  d,
real(kind=kreal), dimension(n)  e,
real(kind=kreal), dimension(nm, n)  z,
integer(kind=kint)  ierror 
)

This subroutine has been adapted from the eispack routine tql2, which is a translation of the algol procedure tql2, num. math. 11, 293-306(1968) by bowdler, martin, reinsch and wilkinson. Handbook for auto. cop., vol.ii-linear algebra, 227-240(1971). This subroutine finds the eigenvalues and eigenvectors of a symmetric tridiagonal matrix by the ql method. the eigenvectors of a full symmetric matrix can also be found if tred2 has been used to reduce this full matrix to tridiagonal form.

Definition at line 206 of file fstr_EIG_tridiag.f90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ tridiag()

subroutine m_fstr_eig_tridiag::tridiag ( type(hecmwst_local_mesh hecMESH,
type(hecmwst_matrix hecMAT,
type(fstr_eigen fstrEIG,
type(fstr_eigen_vec), dimension(:), pointer  Q,
type(fstr_tri_diag Tri,
integer(kind=kint), intent(in)  iter,
logical  is_converge 
)

Definition at line 26 of file fstr_EIG_tridiag.f90.

Here is the call graph for this function:
Here is the caller graph for this function: