From 23181dd294a16f4b30ce0531b23a4d0fc1abeca0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Mon, 3 May 2021 20:53:09 +0200 Subject: new problem --- .../40-eigenwerte/uebungsaufgaben/4006.maxima | 121 +++++++++++++++++++++ 1 file changed, 121 insertions(+) create mode 100644 buch/chapters/40-eigenwerte/uebungsaufgaben/4006.maxima (limited to 'buch/chapters/40-eigenwerte/uebungsaufgaben/4006.maxima') diff --git a/buch/chapters/40-eigenwerte/uebungsaufgaben/4006.maxima b/buch/chapters/40-eigenwerte/uebungsaufgaben/4006.maxima new file mode 100644 index 0000000..9c97a2b --- /dev/null +++ b/buch/chapters/40-eigenwerte/uebungsaufgaben/4006.maxima @@ -0,0 +1,121 @@ +/* + * 4006.maxima + * + * (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule + */ + +A: matrix([ a+b*%i, 1, 0, 0 ], + [ 0, a+b*%i, 0, 0 ], + [ 0, 0, a-b*%i, 1 ], + [ 0, 0, 0, a-b*%i ]); + +expand(charpoly(A, x)); + +S: (1/sqrt(2)) * matrix([ 1, -%i, 0, 0 ], + [ 0, 0, 1, -%i ], + [ 1, %i, 0, 0 ], + [ 0, 0, 1, %i ]); + +B: expand(invert(S).A.S); + + +C: subst(2, a, B); +C: subst(3, b, C); +A: subst(2, a, A); +A: subst(3, b, A); + +U: matrix([ 1, 0, 1, 0 ], + [ 0, 1, 1, 2 ], + [ 0, 0, 1, 0 ], + [ 0, 0, 0, 1 ]); +V: matrix([ 1, 0, 0, 0 ], + [ 0, 1, 0, 0 ], + [ 0, 1, 1, 0 ], + [ 1, 0, 0, 1 ]); +T: U.V; +invert(T); + +D: T.C.invert(T); + +p: expand(charpoly(D, x)); + +factor(p); + +lambda: 2+3*%i; + +Dlambda: ratsimp(expand(D - lambda * identfor(D))); +rank(Dlambda); +/* D2: expand(Dlambda.Dlambda); */ +/* rank(D2); */ + +load(functs); + +/* +E: Dlambda; +E[1]: (rational(1/E[1,1]))*E[1]$ +E[2]: E[2] - E[2,1] * E[1]$ +E[3]: E[3] - E[3,1] * E[1]$ +E[4]: E[4] - E[4,1] * E[1]$ +E: ratsimp(E)$ + +E[2]: (rational(1/E[2,2])) * E[2]$ +E[3]: E[3] - E[3,2] * E[2]$ +E[4]: E[4] - E[4,2] * E[2]$ +E: ratsimp(E)$ + +E[3]: (rational(1/E[3,3])) * E[3]$ +E[4]: E[4] - E[4,3] * E[3]$ +E: ratsimp(E)$ + +E[2]: E[2] - E[2,3] * E[3]$ +E[1]: E[1] - E[1,3] * E[3]$ +E: ratsimp(E)$ + +E[1]: E[1] - E[1,2] * E[2]$ +E: ratsimp(E)$ + +E; +*/ + +b1: matrix([1+%i],[2+2*%i],[%i],[1]); +ratsimp(D.b1 - lambda*b1); + +G: Dlambda; +G: addcol(G, b1); +G[1]: (rational(1/G[1,1]))*G[1]$ +G[2]: G[2] - G[2,1] * G[1]$ +G[3]: G[3] - G[3,1] * G[1]$ +G[4]: G[4] - G[4,1] * G[1]$ +G: ratsimp(G)$ + +G[2]: (rational(1/G[2,2])) * G[2]$ +G[3]: G[3] - G[3,2] * G[2]$ +G[4]: G[4] - G[4,2] * G[2]$ +G: ratsimp(G)$ + +G[3]: (rational(1/G[3,3])) * G[3]$ +G[4]: G[4] - G[4,3] * G[3]$ +G: ratsimp(G)$ + +G[2]: G[2] - G[2,3] * G[3]$ +G[1]: G[1] - G[1,3] * G[3]$ +G: ratsimp(G)$ + +G[1]: G[1] - G[1,2] * G[2]$ +G: ratsimp(G)$ + +G; + +b2: matrix([ G[1,5] ], [ G[2,5] ], [ G[3,5] ], [ G[4,5] ]); + +expand(D.b2 - lambda * b2 - b1); + +c1: 2 * realpart(b1); +d1: 2 * imagpart(b1); +c2: 2 * realpart(b2); +d2: 2 * imagpart(b2); + +D.c1 - 2 * c1 + 3 * d1; +D.d1 - 3 * c1 - 2 * d1; +D.c2 - 2 * c2 + 3 * d2 - c1; +D.d2 - 3 * c2 - 2 * d2 - d1; -- cgit v1.2.1