算額(その653)
群馬県前橋市河原浜町 大胡神社 大正4年(1915)
http://www.wasan.jp/gunma/ohgo.html
この算額の問・答・術はほとんど判読できない。図はかろうじて見ることができるので,以下のようなものでもあろうかと推測して問を建ててみた。
外円内に互いに外接する 7 個の等円がある。更に外側の等円に外接し外円に内接する 7 個の小円がある。
外円の直径が与えられたとき,等円と小円の直径を求めよ。
外円の半径と中心座標を R, (0, 0)
等円の半径と中心座標を r1, (0, 0), (√3r1, r1)
小円の半径と中心座標を r2, (R - r2, 0)
とおき,以下の連立方程式を解く。
include("julia-source.txt");
# julia-source.txt ソース https://blog.goo.ne.jp/r-de-r/e/ad3a427b84bb416c4f5b73089ae813cf
using SymPy
@syms R::positive, r1::positive, r2::positive
eq1 = (sqrt(Sym(3))r1 - R + r2)^2 + r1^2 - (r1 + r2)^2
eq2 = (sqrt(Sym(3))r1)^2 + r1^2 - (R - r1)^2
res = solve([eq1, eq2], (r1, r2))
2-element Vector{Tuple{Sym, Sym}}:
(-R/6 + sqrt(3)*R/3 + (1/2 - 2*sqrt(3)/3)*(10*sqrt(3)*R/39 + 9*R/13 - 4*sqrt(6)*R*sqrt(11894 - 6867*sqrt(3))/(3*(625 - 361*sqrt(3)))), 10*sqrt(3)*R/39 + 9*R/13 - 4*sqrt(6)*R*sqrt(11894 - 6867*sqrt(3))/(3*(625 - 361*sqrt(3))))
(-R/6 + sqrt(3)*R/3 + (1/2 - 2*sqrt(3)/3)*(4*sqrt(6)*R*sqrt(11894 - 6867*sqrt(3))/(3*(625 - 361*sqrt(3))) + 10*sqrt(3)*R/39 + 9*R/13), 4*sqrt(6)*R*sqrt(11894 - 6867*sqrt(3))/(3*(625 - 361*sqrt(3))) + 10*sqrt(3)*R/39 + 9*R/13)
2 組の解が得られるが,2 番目のものが適解である。
表示される式は長いが簡約化すれば R/3,(5 - 2√3)R/13 になる。
res[2][1] |> sympy.sqrtdenest |> simplify |> println
res[2][2] |> sympy.sqrtdenest |> simplify |> println
R/3
-2*sqrt(3)*R/13 + 5*R/13
外円の直径が 3 のとき,等円の直径は 1,小円の直径は 3(5 - 2√3)/13 = 0.3544380888143644 である。
function draw(more=false)
pyplot(size=(500, 500), grid=false, aspectratio=1, label="", fontfamily="IPAMincho")
R = 3/2
(r1, r2) = R .* [1/3, (5 - 2√3)/13]
@printf("R = %g; r1 = %g; r2 = %g\n", R, r1, r2)
plot()
circle(0, 0, R, :green)
circle(0, 0, r1)
rotate(√3r1, r1, r1, angle=60)
rotate(R - r2, 0, r2, :blue, angle=60)
if more
delta = (fontheight = (ylims()[2]- ylims()[1]) / 500 * 10 * 2) /3 # size[2] * fontsize * 2
vline!([0], color=:black, lw=0.5)
hline!([0], color=:black, lw=0.5)
point(√3r1, r1, "等円:r1,(√3r1,r1)", :red, :center, delta=-delta/2)
point(R - r2, 0, "小円:r2\n(R-r2,0)", :blue, :right, delta=-delta/2)
end
end;