Thank you so much. It was really helpful. Your approach is much more technical and substantially decreased the computation time. I hope I am able to use Mathematica to a maximum extent some day, just as you did. I also needed to shorten my computation time in the following calculation. I hope you can help.
Here lis1, lis2 etc are of the type lis. Most of the time is spent in the nested Do loops below.
lis
{0., 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1., 2., 3., 4., 5., \
6., 7., 8., 9., 10.}
m1 = .003; m2 = 0.4; m3 = 120.; mdiag =
DiagonalMatrix[{m1, -m2, m3}]; mr = {Range[3], Range[3], Range[3]};
mr[[1, 1]] = lis; mr[[1, 2]] = lis1; mr[[1, 3]] = lis2;
mr[[2, 2]] = lis4; mr[[2, 3]] = lis5; mr[[3, 3]] = lis8;
count1 = 0; tr1 = 0; ou = {}; mtr = {}; fa1 = 0;
Do[{eu = mr[[1, 1, i1]],
Do[{au = mr[[1, 2, i2]],
Do[{fu = mr[[1, 3, i3]],
Do[{du = mr[[2, 2, i4]],
Do[{bu = mr[[2, 3, i5]],
Do[{cu = mr[[3, 3, i6]],
m = {{eu, au, fu}, {au, du, bu}, {fu, bu, cu}},
If [Det[m - mdiag] == 0,
{eig = Eigenvectors[m],
If[{Normalize[eig[[3]]], Normalize[eig[[2]]],
Normalize[
eig[[1]]]}.Transpose[{Normalize[eig[[3]]],
Normalize[eig[[2]]], Normalize[eig[[1]]]}] == 1,
{mtr = Append[mtr, m],
ou = Append[ou,
Transpose[{Normalize[eig[[3]]],
Normalize[eig[[2]]], Normalize[eig[[1]]]}]],
tr1 = tr1 + 1},
fa1 = fa1 + 1]},
count1 = count1 + 1]}, {i6, 1, n}]}, {i5, 1, n}]}, {i4,
1, n}]}, {i3, 1, n}]}, {i2, 1, n}]}, {i1, 1,
n}] // AbsoluteTiming