算額(その1589)
江戸 愛宕神社 文政13年(1830)
深川英俊,トニー・ロスマン:聖なる数学:算額,森北出版株式会社,2010年4月22日.
キーワード:正方形4個
#Julia, #SymPy, #算額, #和算, #数学
辺の長さが a, b, c, d の 4 個の正方形が頂点を共有して図のように並んでいる。
a, b, c が与えられたとき,d を求める術を述べよ。
この特殊な場合が左右対称な「算額(その657)」である。
思いつくのは,第二余弦定理の適用であるが,β = π - α ではあるが,変数の個数が多くて,以下の連立方程式は解けなかった。
include("julia-source.txt")
# julia-source.txt ソース https://blog.goo.ne.jp/r-de-r/e/ad3a427b84bb416c4f5b73089ae813cf
using SymPy
@syms a::positive, b::positive, c::positive, d::positive,
α::positive, β::positive
eq1 = b^2 + d^2 - 2b*d*cos(α) - a^2
eq2 = b^2 + d^2 - 2b*d*cos(β) - c^2
res = solve([eq1, eq2], (c, d))
2-element Vector{Tuple{Sym{PyCall.PyObject}, Sym{PyCall.PyObject}}}:
(sqrt(a^2 + (b*cos(α) - sqrt(a^2 + b^2*cos(α)^2 - b^2))*(2*b*cos(α) - 2*b*cos(β))), b*cos(α) - sqrt(a^2 + b^2*cos(α)^2 - b^2))
(sqrt(a^2 + (b*cos(α) + sqrt(a^2 + b^2*cos(α)^2 - b^2))*(2*b*cos(α) - 2*b*cos(β))), b*cos(α) + sqrt(a^2 + b^2*cos(α)^2 - b^2))
補助線を引くと,cos(α) は CX/BC で,CX = x とおくと,x/d である。cos(β) は -x/d。
これらを代入して,以下の連立方程式を解いて d, x を求めると a, b, c を含む式として解が得られる。
@syms x
eq11 = eq1(d*cos(α) => x)
eq11 |> println
-a^2 + b^2 - 2*b*x + d^2
eq12 = eq2(d*cos(β) => -x)
eq12 |> println
b^2 + 2*b*x - c^2 + d^2
res = solve([eq11, eq12], (d, x))[1]
(sqrt(2)*sqrt(a^2 - 2*b^2 + c^2)/2, -(a - c)*(a + c)/(4*b))
# d
res[1] |> println
sqrt(2)*sqrt(a^2 - 2*b^2 + c^2)/2