算額(その1187)
(10) 京都市中京区三条大宮西二筋目下ル 武信稲荷神社 嘉永6年(1853)
近畿数学史学会:近畿の算額「数学の絵馬を訪ねて」,平成4年5月16日 初版第一刷,大阪教育図書株式会社,大阪市.
キーワード:円1個,直角三角形,正方形,斜線
直角三角形の中に,正方形と斜線で区切られた領域に全円を容れる。鈎,股が 21 寸,28 寸のとき,全円の直径はいかほどか。
鈎,股を「鈎」,「股」
正方形の一辺の長さを b,股上の正方形の頂点座標を (a, 0); b = 股 - a
全円の半径と中心座標を r, (a + r, b - r)
とおき,以下の連立方程式を解く。
include("julia-source.txt");
using SymPy
@syms 鈎::positive, 股::positive, a::positive, r::positiv
b = 股 - a
eq1 = (鈎 - b)/b - 鈎/股
eq2 = dist2(股, 鈎, a, 0, a + r, b - r, r)
res = solve([eq1, eq2], (r, a))[1] # 1 of 2
(股*鈎*(2*股 + 鈎 - sqrt(2*股^2 + 2*股*鈎 + 鈎^2))/(2*(股^2 + 2*股*鈎 + 鈎^2)), 股^2/(股 + 鈎))
鈎,股が 21 寸,28 寸のとき,全円の直径は 5.03612957434534 寸である。
ちなみに,正方形の一辺の長さは 12 寸である。
2res[1](鈎 => 21, 股 => 28).evalf() |> println
(股 - res[2])(鈎 => 21, 股 => 28).evalf() |> println
5.03612957434534
12.0000000000000
function draw(鈎, 股, more)
pyplot(size=(500, 500), grid=false, aspectratio=1, label="", fontfamily="IPAMincho")
(r, a) = (股*鈎*(2*股 + 鈎 - sqrt(2*股^2 + 2*股*鈎 + 鈎^2))/(2*(股^2 + 2*股*鈎 + 鈎^2)), 股^2/(股 + 鈎))
b = 股 - a
@printf("鈎,股が %g, %g のとき,円の直径は %g である。\n", 鈎, 股, 2r)
@printf("正方形の一辺の長さは %g である。\n", b)
plot([0, 股, 股, 0], [0, 0, 鈎, 0], color=:green, lw=0.5)
plot!([a, 股, 股, a, a], [0, 0, b, b, 0], color=:blue, lw=0.5)
circle(a + r, b - r, r)
segment(a, 0, 股, 鈎, :magenta)
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(a, b, "(a,b) ", :blue, :right, :vcenter)
point(a + r, b - r, "全円:r\n(a+r,b-r)", :red, :center, :bottom, delta=delta)
point(股, 鈎, "(股,鈎) ", :green, :right, :vcenter)
end
end;
draw(21, 28, true)
※コメント投稿者のブログIDはブログ作成者のみに通知されます