百五十二 群馬県前橋市下大屋町 産泰神社 年代不明
群馬県和算研究会:群馬の算額,上武印刷株式会社,高崎市,1987年3月31日.
キーワード:円3個,正方形
#Julia #SymPy #算額 #和算 #数学
正方形の中に大円 1 個,小円 2 個を容れる。大円の直径が与えられたとき,小円の直径はいかほどか。

大円の半径と中心座標を \(r_1, (r_1, r_1)\)
正方形の一辺の長さを \(a = 2r_1\)
小円の半径と中心座標を \(r_2, (x_2, r_2), (a - r_2, a - x_2)\)
とおき,以下の連立方程式を解く。
include("julia-source.txt"); # julia-source.txt ソース
using SymPy
@syms r1::positive, r2::positive, x2::positive, a::positive;
a = 2r1
eq1 = (x2 - r1)^2 + (r1 - r2)^2 - (r1 + r2)^2
eq2 = 2(2r1 - r2 - x2)^2 - 4r2^2
res = solve([eq1, eq2], (r2, x2))[1] # 1 of 3
( (-r1 + r1*(-2*sqrt(2) + sqrt(8 - 4*sqrt(2)) + 3))^2/(4*r1), r1*(-2*sqrt(2) + sqrt(8 - 4*sqrt(2)) + 3))
# r2
res[1] |> simplify |> println
r1*(-1 - sqrt(2 - sqrt(2)) + sqrt(2))^2
# x2
res[2] |> println
r1*(-2*sqrt(2) + sqrt(8 - 4*sqrt(2)) + 3)
小円の半径 \(r_2\) は,大円の半径 \(r_1\) の \( \left (\sqrt{2} - 1 - \sqrt{2 - \sqrt{2}}\right )^2\) 倍である。
大円の直径が 1 寸のとき,小円の直径は 0.12330864175628588 寸である。
すべてのパラメータは以下のとおりである。
\(r_1 = 0.5; r_2 = 0.0616543; x_2 = 0.851153\)
描画関数プログラムのソースを見る
function draw(r1, more)
pyplot(size=(500, 500), grid=false, aspectratio=1, label="", fontfamily="IPAMincho")
(r2, x2) = ( (-r1 + r1*(-2*sqrt(2) + sqrt(8 - 4*sqrt(2)) + 3))^2/(4*r1), r1*(-2*sqrt(2) + sqrt(8 - 4*sqrt(2)) + 3))
@printf("大円の直径が %g のとき,小円の直径は %g である。\n", 2r1, 2r2)
@printf("r1 = %g; r2 = %g; x2 = %g\n", r1, r2, x2)
a = 2r1
#@printf("大円の直径が %g のとき,小円の直径は %g である。\n", 2r1, 2r3)
plot([0, a, a, 0, 0], [0, 0, a, a, 0], color=:green, lw=0.5)
circle(r1, r1, r1)
circle(x2, r2, r2, :blue)
circle(a - r2, a - x2, 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/2)
point(x2, r2, "小円:r2,(x2,r2) ", :blue, :right, :vcenter)
point(a - r2, a - x2, "小円:r2,(a-r2,a-x2) ", :blue, :right, :vcenter)
point(a, a, "(a,a)", :green, :right, :bottom, delta=delta/2)
end
end;
draw(1/2, true)
以下のアイコンをクリックして応援してください