算額(その1333)
七二 加須市大字外野 棘脱地蔵堂 明治7年(1874)
埼玉県立図書館:埼玉県史料集 第二集『埼玉の算額』,昭和44年,誠美堂印刷所,埼玉県与野市.
キーワード:円4個,台形
#Julia, #SymPy, #算額, #和算
台形の中に,大円 2 個,乾円 2 個を容れる。大円の直径が 133 寸のとき,乾円の直径はいかほどか。
注:図に円の種類が書かれていないが,小さいほうが「大円」,大きいほうが「乾円」である。
台形の上底,下底の長さを a, b
乾円の半径と中心座標を r1, (r1, r1), (3r1, r1)
大円の半径と中心座標を r2, (2r1, r2), (x2, y2)
とおき,以下の連立方程式を解く。
include("julia-source.txt");
using SymPy
@syms a::positive, b::positive, r1::positive,
r2::positive, x2::positive, y2::positive;
eq1 = r1^2 + (r1 - r2)^2 - (r1 + r2)^2
eq2 = (x2 - 3r1)^2 + (y2 - r1)^2 - (r1 - r2)^2
eq3 = dist2(0, b, 4r1, a, r1, r1, r1)
eq5 = dist2(0, b, 4r1, a, x2, y2, r2)
eq4 = (a - b)/4r1 + (x2 - 3r1)/(y2 - r1)
res = solve([eq1, eq2, eq3, eq4, eq5], (a, b, r1, x2, y2))[3]
(4*r2*(sqrt(15) + 15)/15, 4*r2*(3 + sqrt(15))/3, 4*r2, 51*r2/4, r2*(3*sqrt(15) + 16)/4)
乾円の半径 r1 は,大円の半径 r2 の 4 倍である。
大円の直径が 133 寸のとき,乾円の直径は 532 寸である。
答では,「乾円径三百七拾八寸有奇」とあり,術では「置大頭乗八拾五除六十二(下底×85/62)」といずれも頓珍漢なことが書かれている。
function draw(r2, more)
pyplot(size=(500, 500), grid=false, aspectratio=1, label="", fontfamily="IPAMincho")
(a, b, r1, x2, y2) = (4*r2*(sqrt(15) + 15)/15, 4*r2*(3 + sqrt(15))/3, 4*r2, 51*r2/4, r2*(3*sqrt(15) + 16)/4)
@printf("大円の直径が %g のとき,乾円の直径は %g である。\n", 2r2, 2r1)
@printf("r1 = %g; a = %g; b = %g; r2 = %g; x2 = %g; y2 = %g\n", r1, a, b, r2, x2, y2)
plot([0, 4r1, 4r1, 0, 0], [0, 0, a, b, 0], color=:green, lw=0.5)
circle(r1, r1, r1)
circle(3r1, r1, r1)
circle(2r1, r2, r2, :blue)
circle(x2, y2, r2, :blue)
if more
delta = (fontheight = (ylims()[2]- ylims()[1]) / 500 * 10 * 2) /3 # size[2] * fontsize * 2
hline!([0], color=:gray80, lw=0.5)
vline!([0], color=:gray80, lw=0.5)
point(r1, r1, "乾円:r1,(r1,r1)", :red, :center, delta=-delta)
point(3r1, r1, "乾円:r1,(3r1,r1)", :red, :center, delta=-delta)
point(2r1, r2, " 大円:r2,(2r1,r2)", :blue, :left, :vcenter)
point(x2, y2, " 大円:r2,(x2,y2)", :blue, :left, :vcenter)
point(0, b, " b", :green, :left, :bottom, delta=delta)
point(4r1, a, "(4r1,a) ", :green, :right, delta=-delta)
end
end;
draw(133/2, true)