福島県二本松市杉沢 愛宕神社
和算の館
http://www.wasan.jp/fukusima/atago.html
キーワード:外円,正三角形,団扇
#Julia #SymPy #算額 #和算 #数学
外円の中に正三角形が入っている。小さい方の一辺の長さが1寸のとき,大きい方の一辺の長さはいかほどか。

大きい方の一辺の長さを 2,小さい方の一辺の長さを \(x\) として,以下のように記号を定める。

円の半径は \(2/\sqrt{3}\),\(c\) は \(AB\) の中点である。以下順に長さが決まる。
\(AB = 2\)
\(Ac = 1\)
\(yc = 1/2\)
\(Ay = \sqrt{3}/2\)
\(y = 1/(2\sqrt{3})\)
\( (x+1/2,\ y)\) が円周上にあるので以下の方程式を解き x を求める。
include("julia-source.txt"); # julia-source.txt ソース
using SymPy
@syms x::positive, y::positive;
y = 1/(2*sqrt(Sym(3)))
eq = (x + 1//2)^2 + y^2 -(y +sqrt(Sym(3))/2)^2
x = solve(eq)[1];
(x, y) |> println
(-1/2 + sqrt(5)/2, sqrt(3)/6)
\(x\) が 1 寸ならば大きい正三角形の一辺は \(2 / (-1/2 + \sqrt{5}/2) = 1 + \sqrt{5}\) = 3寸2分3厘6毛である。
2 / (-1//2 + sqrt(Sym(5))/2) |> simplify
1 + sqrt(5)
1+√5
3.23606797749979
算額では,「5個を開平し1個を加える」ことで三寸二分三厘を得ている。
描画関数プログラムのソースを見る
function draw(more=false)
pyplot(size=(500, 500), grid=false, aspectratio=1, label="", fontfamily="IPAMincho")
(x, y) = (-1/2 + sqrt(5)/2, sqrt(3)/6)
r = 2/sqrt(3)
(Ax, Ay) = (0, r)
(Bx, By) = (r*cosd(30), r*sind(-30))
(Cx, Cy) = (-r*cosd(30), r*sind(-30))
(ax, ay) = ( (1 + x)/2, y + sqrt(3)/2*x)
(bx, by) = (1/2 + x, y)
(cx, cy) = (1/2, y)
plot()
circle(0, 0, r, :black)
plot!([Ax, Bx, Cx, Ax], [Ay, By, Cy, Ay])
plot!([ax, bx, cx, ax], [ay, by, cy, ay])
plot!(-[ax, bx, cx, ax], [ay, by, cy, ay])
if more
hline!([0], color=:black, lw=0.5)
vline!([0], color=:black, lw=0.5)
point(Ax, Ay, " A", :black, :bottom)
point(Bx, By, " B", :black)
point(Cx, Cy, "C ", :black, :right)
point(ax, ay, " a", :black, :bottom)
point(bx, by, " b:(1/2+x, y)", :black)
point(cx, cy, "c", :black, :right)
point(0, y, " y", :black)
point(0, 0, " o", :black)
end
end;
以下のアイコンをクリックして応援してください