裏 RjpWiki

Julia ときどき R, Python によるコンピュータプログラム,コンピュータ・サイエンス,統計学

算額(その329)

2023年07月16日 | Julia

算額(その329)

四二 浦和市西堀(現さいたま市桜区西堀) 氷川神社 嘉永5年(1852)
埼玉県立図書館:埼玉県史料集 第二集『埼玉の算額』,昭和44年,誠美堂印刷所,埼玉県与野市.

埼玉県浦和市西堀 氷川神社 嘉永5年(文化9年の算額の修復)
http://www.wasan.jp/saitama/uhikawa.html

正三角形の中に大円,中円,小円が入っている。中円の直径が520寸であるとき,小円の直径を求めよ。

正三角形の一辺の長さを 2a とする。座標原点を正三角形の「底辺/2」に置く。
大円の半径,中心座標は a/√3,(0, a/√3)
中円の半径,中心座標を r2, (x2, r2)
小円の半径,中心座標を r3, (x3, r3)
とおき,連立方程式を a を未知数のまま r2, x2, r3, x3 について解く。

include("julia-source.txt");

using SymPy

@syms a::positive, r2::positive, x2::positive, r3::positive, x3::positive;

r1 = a/sqrt(Sym(3))
eq1 = r2/(a - x2) - 1/sqrt(Sym(3))
eq2 = x2^2 + (r1 - r2)^2 - (r1 + r2)^2
eq3 = (x2 - x3)^2 + (r2 - r3)^2 - (r2 + r3)^2
eq4 = x3^2 + (r1 - r3)^2 - (r1 + r3)^2

res = solve([eq1, eq2, eq3, eq4], (a, x2, r3, x3))

   2-element Vector{NTuple{4, Sym}}:
    (3*sqrt(3)*r2, 2*sqrt(3)*r2, 3*r2*(2 - sqrt(3))/2, 3*r2*(-1 + sqrt(3)))
    (3*sqrt(3)*r2, 2*sqrt(3)*r2, 3*r2*(sqrt(3) + 2)/2, 3*r2*(1 + sqrt(3)))

最初のものが適解である。

r2 = 520
3*r2*(2 - sqrt(3))/2

   209.0003700962758

中円の直径が 520寸のとき,小円の直径は 209寸あまりである。
算額の答えは 109寸あまりということであるが,記載誤りである。

   大円径 = 1560; 中円径 = 520; 小円径 = 209

using Plots

function draw(more=false)
   pyplot(size=(500, 500), grid=false, aspectratio=1, label="", fontfamily="IPAMincho")
   r2 = 520/2
   (a, x2, r3, x3) = (3*sqrt(3)*r2, 2*sqrt(3)*r2, 3*r2*(2 - sqrt(3))/2, 3*r2*(-1 + sqrt(3)))
   r1 = a/√3
   @printf("大円径 = %g;  中円径 = %g;  小円径 = %g\n", 2r1, 2r2, 2r3)
   plot([a, 0, -a, a], [0, a*sqrt(3), 0, 0], color=:black, lw=0.5)
   circle(0, r1, r1)
   circle(x2, r2, r2, :blue)
   circle(x3, r3, r3, :green)
   if more
       point(0, r1, " 大円:r1,(0,r1)", :red, :vcenter, :left)
       point(x2, r2, "中円:r2,(x2,r2) ", :blue, :right, :vcenter)
       point(x3, r3, " 小円:r3,(x3,r3)", :green, :left, :vcenter)
       point(a, 0, "a", :black, :left, :bottom)
       point(0, √3a, " (0,√3a)", :black)
       vline!([0], color=:black, lw=0.5)
       hline!([0], color=:black, lw=0.5)
   else
       plot!(showaxis=false)
   end
end;


コメント    この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« 算額(その328) | トップ | 算額(その330) »
最新の画像もっと見る

コメントを投稿

Julia」カテゴリの最新記事