aboutsummaryrefslogtreecommitdiffstats
path: root/buch/chapters/110-elliptisch/agm/agm.m
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--buch/chapters/110-elliptisch/agm/agm.m20
-rw-r--r--buch/chapters/110-elliptisch/agm/agm.maxima26
2 files changed, 46 insertions, 0 deletions
diff --git a/buch/chapters/110-elliptisch/agm/agm.m b/buch/chapters/110-elliptisch/agm/agm.m
new file mode 100644
index 0000000..dcb3ad8
--- /dev/null
+++ b/buch/chapters/110-elliptisch/agm/agm.m
@@ -0,0 +1,20 @@
+#
+# agm.m
+#
+# (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule
+#
+format long
+
+n = 10;
+a = 1;
+b = sqrt(0.5);
+
+for i = (1:n)
+ printf("%20.16f %20.16f\n", a, b);
+ A = (a+b)/2;
+ b = sqrt(a*b);
+ a = A;
+end
+
+K = pi / (2 * a)
+
diff --git a/buch/chapters/110-elliptisch/agm/agm.maxima b/buch/chapters/110-elliptisch/agm/agm.maxima
new file mode 100644
index 0000000..c7facd4
--- /dev/null
+++ b/buch/chapters/110-elliptisch/agm/agm.maxima
@@ -0,0 +1,26 @@
+/*
+ * agm.maxima
+ *
+ * (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule
+ */
+
+S: 2*a*sin(theta1) / (a+b+(a-b)*sin(theta1)^2);
+
+C2: ratsimp(diff(S, theta1)^2 / (1 - S^2));
+C2: ratsimp(subst(sqrt(1-sin(theta1)^2), cos(theta1), C2));
+C2: ratsimp(subst(S, sin(theta), C2));
+C2: ratsimp(subst(sqrt(1-S^2), cos(theta), C2));
+
+D2: (a^2 * cos(theta)^2 + b^2 * sin(theta)^2)
+ /
+ (a1^2 * cos(theta1)^2 + b1^2 * sin(theta1)^2);
+D2: subst((a+b)/2, a1, D2);
+D2: subst(sqrt(a*b), b1, D2);
+D2: ratsimp(subst(1-S^2, cos(theta)^2, D2));
+D2: ratsimp(subst(S, sin(theta), D2));
+D2: ratsimp(subst(1-sin(theta1)^2, cos(theta1)^2, D2));
+
+Q: D2/C2;
+Q: ratsimp(subst(x, sin(theta1), Q));
+
+Q: ratsimp(expand(ratsimp(Q)));