算額(その1403) 改訂版
算額(その1403)は,依拠した図がでたらめなものであったので,改訂版を書いた。
三十二 一関市舞川 観福寺内地蔵堂後額 明治34年(1901)
山村善夫:現存 岩手の算額,昭和52年1月30日,熊谷印刷,盛岡市.
http://www.wasan.jp/yamamura/yamamura.html
今有如図 03086
https://w.atwiki.jp/sangaku/pages/158.html
キーワード:円2個,等脚台形,斜線
#Julia, #SymPy, #算額, #和算, #数学
合同な直角三角形を4個組み合わせて等脚台形を作り,大円 1 個,小円 1 個を容れる。小円の直径が与えられたときに大円の直径を得る術を述べよ。
山村の図は正しいものではない。「今有如図」の図に従って解を求めると,術に一致する解が得られた。
直角三角形の直角を挟む 2 辺の短い方,長い方の長さをそれぞれ a, h
大円の半径と中心座標を r1, (2a - r1, r1)
小円の半径と中心座標を r2, (a + r2, h - r2)
とおき,以下の連立方程式を解く。
include("julia-source.txt");
# julia-source.txt ソース https://blog.goo.ne.jp/r-de-r/e/ad3a427b84bb416c4f5b73089ae813cf
using SymPy
@syms a::positive, h::positive,
r1::positive, r2::positive
eq1 = dist2(0, 0, a, h, 2a - r1, r1, r1)
eq2 = dist2(3a, 0, 2a, h, a + r2, h - r2, r2)
eq3 = ((a + r2) - (2a - r1))^2 + (h - r2 - r1)^2 - (r1 + r2)^2
res = solve([eq1, eq2, eq3], (r1, a, h))[5]
(-5*r2 + sqrt(41)*r2, -3*r2/2 + sqrt(41)*r2/2, r2*(3 + sqrt(41))/2)
大円の半径 r1 は,小円の半径 r2 の (√41 - 5) = 1.4031242374328485 倍である。
小円の直径が 1 寸のとき,大円の直径は 1.4031242374328485 寸である。
function draw(r2, more)
pyplot(size=(500, 500), grid=false, aspectratio=1, label="", fontfamily="IPAMincho")
(r1, a, h) = (-5*r2 + sqrt(41)*r2, -3*r2/2 + sqrt(41)*r2/2, r2*(3 + sqrt(41))/2)
plot([0, 3a, 2a, a, 0], [0, 0, h, h, 0], color=:green, lw=0.5)
plot!([a, a, 2a, 2a], [0, h, 0, h], color=:green, lw=0.5)
circle(2a - r1, r1, r1)
circle(a + r2, h - r2, 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(2a - r1, r1, "大円:r1\n(2a-r1,r1)", :red, :center, delta=-delta, deltax=2delta)
point(a + r2, h - r2, "小円:r2\n(a+r2,h-r2)", :blue, :center, delta=-delta)
point(a, h, "(a,h)", :green, :center, :bottom, delta=delta)
point(2a, h, "(2a,h)", :green, :center, :bottom, delta=delta)
point(3a, 0, "3a", :green, :right, :bottom, delta=delta/2, deltax=-delta)
end
end;
draw(1/2, true)