裏 RjpWiki

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

算額(その1471)

2024年12月14日 | Julia

算額(その1471)

街角の数学 Street Wasan ~落書き帳「○△□」~ 388.○△□の新算額(その1)
http://streetwasan.web.fc2.com/math18.1.25.html

正方形内に,正三角形 1 個,四分円弧 2 個,中円 1 個を容れる。中円は,正三角形の 2 辺と両円弧に接している。正方形の辺の長さを一寸とするとき,中円の半径を求めよ。

正方形の一辺の長さを a
中円の半径と中心座標を r, (0, y)
とおき,以下の連立方程式を解く。

include("julia-source.txt");

using SymPy

@syms a, r, y
eq1 = (a/2)^2 + (a - y)^2 - (a - r)^2
eq2 = 2r - (sqrt(Sym(3))a/2 - y)
res = solve([eq1, eq2], (r, y))[1]  # 1 of 2

    (-a*(12 - sqrt(3))/12 + sqrt(3)*a/4 + sqrt(3)*a*sqrt(3 - sqrt(3))/3, -2*sqrt(3)*a*sqrt(3 - sqrt(3))/3 + a*(12 - sqrt(3))/6)

# r
res[1] |> factor |> println

    a*(-3 + sqrt(3) + sqrt(3)*sqrt(3 - sqrt(3)))/3

中円の半径は,正方形の一辺の長さの (-3 + sqrt(3) + sqrt(3)*sqrt(3 - sqrt(3)))/3 倍である。
正方形の一辺の長さが 1 寸のとき,中円の直径は 0.454930873066724 寸である。

2*res[1](a => 1).evalf() |> println

    0.454930873066724

# y
res[2] |> factor |> println

    -a*(-12 + sqrt(3) + 4*sqrt(3)*sqrt(3 - sqrt(3)))/6

function draw(a, more=false)
    pyplot(size=(500, 500), grid=false, aspectratio=1, label="", fontfamily="IPAMincho")
    t = √3sqrt(3 - √3)
    r = a*(-3 + √3 + t)/3
    y = a*(12 - √3 - 4t)/6
    @printf("正方形の一辺の長さ = %g;  中円の直径 = %g;  y = %g\n", a, 2r, y)
    plot([a/2, a/2, -a/2, -a/2, a/2], [0, a, a, 0, 0], color=:green, lw=0.5)
    plot!([a/2, 0, -a/2, a/2], [0, √3a/2, 0, 0], color=:magenta, lw=0.5)
    circle(a/2, a, a, beginangle=180, endangle=270)
    circle(-a/2, a, a, beginangle=270, endangle=360)
    circle(0, y, r, :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(a/2, a, "(a/2,a)", :green, :right, :bottom, delta=delta/2)
        point(0, y, "中円:r,(0,y)", :blue, :center, delta=-delta/2)
        point(0, √3a/2, " √3a/2", :magenta, :left, :vcenter)
    end
end;

draw(1, true)


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

コメントを投稿

ブログ作成者から承認されるまでコメントは反映されません。

Julia」カテゴリの最新記事