Текст подпрограммы и версий ( Фортран ) aee6r.zip , aee6d.zip |
Тексты тестовых примеров ( Фортран ) taee6r.zip , taee6d.zip |
Текст подпрограммы и версий ( Си ) aee6r_c.zip , aee6d_c.zip |
Тексты тестовых примеров ( Си ) taee6r_c.zip , taee6d_c.zip |
Текст подпрограммы и версий ( Паскаль ) aee6r_p.zip , aee6e_p.zip |
Тексты тестовых примеров ( Паскаль ) taee6r_p.zip , taee6e_p.zip |
Вычисление плотности распределения собственных значений симметричной трехдиагональной матрицы на заданном полуинтервале.
Подпрограмма АЕЕ6R строит последовательность точек
V = X0 < X1 < X2 ... < XM-1 < XM = U ,
разбивающую заданный полуинтервал (V, U) на заданное число (М) равных частей. Для каждого полученного полуинтервала (ХK - 1, ХК), К = 1, ... М, вычисляется МW (К) - число собственных значений симметричной трехдиагональной матрицы, принадлежащих полуинтервалу (ХК - 1, ХК).
SUBROUTINE AEE6R ( A, B, N, V, U, M, MW)
Параметры
A - | вещественный вектор длины N, содержащий диагональные элементы симметричной трехдиагональной матрицы; |
B - | вещественный вектор длины N, содержащий в последних N - 1 компонентах поддиагональные элементы симметричной трехдиагональной матрицы; |
N - | порядок симметричной трехдиагональной матрицы (тип: целый); |
V, U - | соответственно нижняя и верхняя границы заданного полуинтервала (тип: вещественный); |
M - | заданное число разбиений исходного полуинтервала (тип: целый); |
MW - | целый вектор длины М, содержащий вычисленные значения плотности. |
Версии
AEE6D - | вычисление плотности распределения собственных значений симметричной трехдиагональной матрицы, заданной с двойной точностью, на заданном полуинтервале. |
Вызываемые подпрограммы : нет
Замечания по использованию
1. |
Подпрограмма АЕЕ6R не сохраняет исходные векторы А и В. | |
2. |
В подпрограмме АЕЕ6D параметры А и В имеют тип DОUВLЕ РRЕСISIОN. | |
3. | Подпрограмма АЕЕ6R может быть использована и для вычисления плотности распределения собственных значений комплексной эрмитовой трехдиагональной матрицы на заданном полуинтервале. Для этого нужно предварительно привести комплексную эрмитову трехдиагональную матрицу к вещественной симметричной трехдиагональной матрице преобразованием подобия (например, обратиться к подпрограмме АFЕ0С). |
DIMENSION A(50), B(50), MW(20) DATA A /1., 49., 48*0.0/ DATA B /0., 7., 48*0./ N = 50 V = -13. U = 7. M = 20 CALL AEE6R (A, B, N, V, U, M, MW) Результаты: MW(1) = MW(2) = ... = MW(13) = 0 , MW(14) = 49 , MW(15) = MW(16) = ... = MW(20) = 0 .