算額(その1059)
九十四 大船渡市立根町 五葉神社 文政5年(1822)
山村善夫:現存 岩手の算額,昭和52年1月30日,熊谷印刷,盛岡市.
http://www.wasan.jp/yamamura/yamamura.html
外円の中に正方形と小円 2 個ずつを容れる。小円の直径が 1 寸のとき,正方形の一辺の長さはいかほどか。
外円の半径と中心座標を R, (0, 0)
小円の半径と中心座標を r, (0, R - r)
とおき,以下の方程式を解き,外円の半径 R を求める。
include("julia-source.txt");
using SymPy
@syms R::positive, r::positive
eq1 = dist2(0, 0, R/2, R/2, 0, R - r, r)
R = solve(eq1, R)[1]
R |> println
r*(1 + sqrt(2))
外円の半径 R は,小円の半径 r の (1 + √2) 倍である。
正方形の一辺の長さは (R/2)\*√2 = r\*(√2/2 + 1) である。
したがって 小円の半径が 1/2 のとき 0.853553390593274 である。
r = 1/2
r*((1 + √2)/2*√2) |> println
r*(√2/2 + 1) |> println
0.8535533905932737
0.8535533905932737
function draw(more=false)
pyplot(size=(500, 500), grid=false, aspectratio=1, label="", fontfamily="IPAMincho")
r = 1/2
R = (1 + √2)r
len = r*(√2/2 + 1)
@printf("小円の直径が %g のとき,正方形の一辺の長さは %g である。\n", 2r, len)
plot([R, R/2, -R/2, -R, -R/2, R/2, R], [0, R/2, -R/2, 0, R/2, -R/2, 0], color=:blue, lw=0.5)
circle(0, 0, R, :green)
circle22(0, R - r, r)
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(R, 0, " R", :blue, :left, :bottom, delta=delta/2)
point(0, R, " R", :blue, :left, :bottom, delta=delta/2)
point(R/2, R/2, "(R/2,R/2)", :blue, :left, :bottom, delta=delta)
point(R/2, 0, "", :blue)
point(0, R - r, "小円:r,(0,R-r)", :red, :center, delta=-delta/2)
end
end;