正方形の線形変換

春学期の定期試験も終わり、学生たちは夏休み中である。数式処理演習I(関西学院大学理工学部数理科学科2年生対象)の中で、平面の線形変換の Maple による図示を扱い、定期試験でも線形変換を幾何学的に理解しているかを問うた。
上の図は講義のレポート課題の採点対象外のおまけである。Maple の plottools パッケージの rotate と scale を使って、正方形の辺上に頂点を持つ正方形を対角線の交点を中心に回転と相似縮小により順次作って図示する問題。レポート課題が物足りない学生は取り組んでくれたようだ。(問題では、白黒に色を塗ることまで求めておらず、線画を描いてもらえばよい。) 上の図を作った Maple プログラムは以下のとおり:
with(plottools):
with(plots):
alpha := (1/20)*Pi:
r := 1/(cos(alpha)+sin(alpha)):
P := [[-1, -1], [-1, 1], [1, 1], [1, -1], [-1, -1]]:
A[1] := polygon(P, color = "Black"):
f :=x -> rotate(scale(x, r, r), alpha):
A[2] := f(polygon(P, color = white)):
N := 30:
for i from 3 to N do A[i] := (f@f)(A[i-2]) end do:
B := [seq(A[N-i], i = 0 .. N-1)]:
display(B, axes=none);
スポンサーサイト