以下の内容はhttps://sangaku0418.hatenablog.com/entry/2023/02/18/173650より取得しました。


算額(その0134)

福島県田村郡三春町上舞木 直毘神社 明治28年(1895)

http://www.wasan.jp/fukusima/naobi.html
キーワード:円10個,外円
#Julia #SymPy #算額 #和算 #数学


外円の中に甲円,乙円,丙円を容れる。甲円の直径が与えられたとき,外円,乙円,丙円の直径を求めよ。

外円の半径と中心座標を \(R,\ (0,\ 0)\)
甲円の半径と中心座標を \(r_1,\ (x_1,\ y_1)\)
乙円の半径と中心座標を \(r_2,\ (x_2,\ r_2)\)
丙円の半径と中心座標を \(r_3,\ (x_3,\ y_3)\)
とおき,以下の連立方程式を解く。

include("julia-source.txt");  # julia-source.txt ソース
using SymPy
@syms R::positive, r1::positive, x1::positive, y1::negative,
      r2::positive, r3::positive
x2 = 2r2 * cos(PI/6)
y2 = 2r2 * sin(PI/6)
x3 = (R - r3) * cos(PI/6)
y3 = (r3 - R) * sin(PI/6)
x1 = (R - r1) * cos(PI/6)
y1 = (r1 - R) * sin(PI/6)
eq1 = 2r3 - R - r2  # 半径間の関連
eq2 = x1^2 + (R - r3 - y1)^2 - (r1 + r3)^2  # 甲円と丙円が外接
eq3 = x2^2 + (R - r3 - y2)^2 - (r3 - r2)^2;  # 乙円が丙円に内接
res = solve([eq2, eq3, eq1], (R, r2, r3))[1]

    (3*r1, 3*r1/5, 9*r1/5)

外円,乙円,丙円の径はそれぞれ甲円の径の 3 倍,3/5 = 0.6 倍,9/5 = 1.8 倍である。

描画関数プログラムのソースを見る

function draw(r1, more)
    pyplot(size=(500, 500), grid=false, aspectratio=1, label="", fontfamily="IPAMincho")
    (R, r2, r3) = (3r1, 3r1/5, 9r1/5)
    R = 3r1
    x2 = 2r2 * cos(π/6)
    y2 = 2r2 * sin(π/6)
    x3 = (R - r3) * cos(π/6)
    y3 = (r3 - R) * sin(π/6)
    x1 = (R - r1) * cos(π/6)
    y1 = (r1 - R) * sin(π/6)
    @printf("外円の半径 = %g,  甲円の半径 = %g,  乙円の半径 = %g,  丙円の半径 = %g\n", R, r1, r2, r3)
    @printf("x2 = %g,  y2 = %g,  x3 = %g,  y3 = %g\n", x2, y2, x3, y3)
    plot()
    circle(0, 0, R, :black)
    rotate(0, R - r1, r1, :green)
    rotate(x2, y2, r2, :blue)
    circle(0, 0, r2, :blue)
    rotate(0, R - r3, r3)
    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(x2, y2, "乙円:r2\n(x2,y2)", :blue, :center, delta=-delta)
        point(x1, y1, "甲円:r1,(x1,y1)", :green, :center, delta=-delta)
        point(x3, y3, " 丙円:r3,(x3,y3)", :red, :left, :vcenter)
        point(0, R - r3, "R-r3 ", :red, :center, :bottom, delta=delta)
    end
end;
draw(1, true)
savefig("fig1.png");

    外円の半径 = 3, 甲円の半径 = 1, 乙円の半径 = 0.6, 丙円の半径 = 1.8
    x2 = 1.03923, y2 = 0.6, x3 = 1.03923, y3 = -0.6

   
   

 


以下のアイコンをクリックして応援してください




以上の内容はhttps://sangaku0418.hatenablog.com/entry/2023/02/18/173650より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14