算額(その2023)
(3) 大阪府茨木市大字総持寺 総持寺 弘化3年(1846)
近畿数学史学会:近畿の算額「数学の絵馬を訪ねて」,平成4年5月16日 初版第一刷,大阪教育図書株式会社,大阪市.
キーワード:円2個,長方形,斜線2本
長方形の中に2本の斜線と甲円,乙円を容れる。長方形の長辺と短辺が 120 寸,70 寸のとき,乙円の直径を求めよ。
長方形の長辺,短辺を a, 2b
甲円の半径と中心座標を r1, (a - r1, 0); r1 = b
乙円の半径と中心座標を r2, (a - r2 - 2r1, 0)
とおき,以下の方程式を解く。
include("julia-source.txt");
using SymPy
@syms a::positive, b::positive, r1::positive, r2::positive
r1 = b
eq1 = r2/(a - r2 - 2r1) ⩵ b/sqrt(a^2 + b^2)
res = solve(eq1, r2)[1]
res |> println
res(a => 120, b => 70/2) |> println
b*(a - 2*b)/(b + sqrt(a^2 + b^2))
10.9375000000000
長方形の長辺と短辺が 120 寸,70 寸のとき,乙円の直径は 10.9375 寸である。
function draw(a, b, more=false)
pyplot(size=(500, 500), grid=false, aspectratio=1, label="", fontfamily="IPAMincho")
r1 = b
r2 = b*(a - 2*b)/(b + sqrt(a^2 + b^2))
plot([a, a, 0, 0, a], [-b, b, b, -b, -b], color=:green, lw=0.5)
plot!([a, 0, a], [b, 0, -b], color=:magenta, lw=0.5)
circle(a - r1, 0, r1)
circle(a - r2 - 2r1, 0, 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(a - r1, 0, "甲円:r1\n(a-r1,0)", :red, :center, :bottom, delta=delta)
point(a - r2 - 2r1, 0, "乙円:r2\n(a-r2-2r1,0)", :blue, :center, :bottom, delta=delta)
point(a, b, "(a,b)", :green, :right, :bottom, delta=delta)
end
end;
draw(120, 70/2, true)
※コメント投稿者のブログIDはブログ作成者のみに通知されます