裏 RjpWiki

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

算額(その1154)

2024年07月17日 | Julia

算額(その1154)

一〇一 大宮市高鼻町 氷川神社 明治31年(1898)
埼玉県立図書館:埼玉県史料集 第二集『埼玉の算額』,昭和44年,誠美堂印刷所,埼玉県与野市.
キーワード:円7個,楕円1個

外円の中に楕円 1 個,甲円 2 個を容れ,隙間に乙円 2 個,丙円 2 個を容れる。乙円の直径が 1 寸のとき,丙円の直径はいかほどか。

注:これだけでは条件不足である。「問」には書かれていないが,乙円は楕円の曲率円である。そのように解釈すれば条件は足りる。

楕円の長半径,短半径と中心座標を a, b, (0, 0); a = r1 + r3, b = a - 2r3
外円の半径と中心座標を R, (0, 0); R = a
甲円の半径と中心座標を r1, (0, R - r1)
乙円の半径と中心座標を r2, (R - r2, 0)
丙円の半径と中心座標を r3, (0, R - r3)
とおき,以下の連立方程式を解く。

include("julia-source.txt")

using SymPy

@syms a, b, R, r1, r2, r3

a = r1 + r3
b = a - 2r3
R = a
eq1 = (R - r2)^2 + (R - r1)^2 - (r1 + r2)^2
eq2 = r2 - b^2/a
res= solve([eq1, eq2], (r3, r1))[3]  # 3 of 3

   (r2*(sqrt(2) + 2)/2, r2*(4 + 3*sqrt(2))/2)

丙円の半径 r3 は,乙円の半径 r2 の √2/2 + 1 倍である。
乙円の直径が 1 寸のとき,丙円の直径は 1.7071067811865475 寸である。

術」は簡約化すれば,「乙円の径の √2/2 + 1 倍が丙円の径である」となり,同じである。

乙径 = 1
天 = √8 + 3
(天 - √天)*乙径/2

   1.7071067811865475

(√Sym(8) + 3 - sqrt(√Sym(8) + 3))/2 |> sympy.sqrtdenest |> simplify |> println

   sqrt(2)/2 + 1

その他のパラメータは以下の通りである。

  r2 = 0.5;  r3 = 0.853553;  r1 = 2.06066;  a = 2.91421;  b = 1.20711

function draw(r2, more=false)
    pyplot(size=(500, 500), grid=false, aspectratio=1, label="", fontfamily="IPAMincho")
   #@printf("正方形の一辺の長さが %g,大円の直径が %g のとき,小円の直径は %g である。\n", a, 2r1, 2r2)
   (r3, r1) = (r2*(sqrt(2) + 2)/2, r2*(4 + 3*sqrt(2))/2)
   a = r1 + r3
   b = a - 2r3
   @printf("乙円の直径が %g のとき,丙円の直径は %g である。\n", 2r2, 2r3)
   @printf("r2 = %g;  r3 = %g;  r1 = %g;  a = %g;  b = %g\n", r2, r3, r1, a, b)
   plot()
   circle(0, 0, a, :orange)
   circle22(0, a - r1, r1)
   circle22(0, a - r3, r3, :blue)
   circle2(a - r2, 0, r2, :green)
   ellipse(0, 0, a, b, color=:magenta)
   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(0, a - r1, "甲円:r1,(0,a-r1)", :red, :center, delta=-delta/2)
       point(a - r2, 0, "乙円:r2\n(a-r2,0)", :green, :center, :bottom, delta=delta/2)
       point(0, a - r3, "丙円:r3,(0,a-r3)", :blue, :center, delta=-delta/2)
       point(0, b, "b", :magenta, :center, delta=-delta/2)
       point(0, a - 2r3, "a-2r3", :blue, :center, :bottom, delta=delta/2)
       point(0, a, "a", :orange, :center, :bottom, delta=delta/2)
       point(a, 0, " a", :orange, :left, :bottom, delta=delta/2)
   end
end;

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

算額(その1153)

2024年07月17日 | Julia

算額(その1153)

 七九 春日部市 香取神社 明治9年(1876)
 九九 春日部市小渕 観音院 明治30年(1897)
一〇三 春日部市 東福寺 明治40年(1907)
埼玉県立図書館:埼玉県史料集 第二集『埼玉の算額』,昭和44年,誠美堂印刷所,埼玉県与野市.

キーワード:正三角形,正方形,三角法

面積が 65996035.98832495593 坪の正三角形の土地の一辺の長さはいかほどか。

注:10間四方=1坪

正三角形の一辺の長さが a,高さが h のとき,正三角形の面積 S は,S = (a/2) * (√3a/2) = a^2 * √3/4 である。

√3/4 = 0.4330127018922193 であるが,この近似値 0.433 が「三角法」と呼ばれていた。
これは,辺の長さが同じ正三角形の面積(S)と正方形の面積(a^2)の比である。

a = sqrt(S/(√3/4)) ≒ sqrt(S/0.433) 

演算精度が必要なので,長精度演算を行う。

正三角形の面積 = big"65996035.98832495593"

   6.59960359883249559299999999999999999999999999999999999999999999999999999999999e+07

正方形の一辺の長さ = 正三角形の一辺の長さ = sqrt(正三角形の面積/0.433)

   12345.6789000000000569783430598987438553058946472557173681712465830204994722506

三角法の近似値として 0.433 を使うと,正三角形の面積が 65996035.98832495593 坪なので,正三角形の一辺の長さは sqrt(65996035.98832495593/0.433) = 12345.6789 = 123456.789 間である。
この「きれいな結果」を出すために,あのとんでもない長い数字列の面積が与えられたのだ。

sqrt(65996035.98832495593/0.433) |> println
sqrt(big"65996035.98832495593"/big"0.433") |> println

   12345.678899999999
   12345.6788999999999999999999999999999999999999999999999999999999999999999999999

0.433 という近似値ではなく,正確な値 √3/4 を 使うとどうなるか,逆算してみる。
正三角形の一辺の長さが 12345.6789 になる,面積を求める。

一辺 = big"12345.6789"
面積 = 一辺/2 * √big"3" * 一辺/2

   6.599797195723032842573567192825322468159425832771741027437062249938522329618199e+07

三角法 = √3/4
面積 = big"65997971.957230328"
一辺 = sqrt(面積/三角法)

   12345.67890000000031782004072795357343003813226134859822153538170864063729519095

面積/一辺^2

   0.43301270189221929829415103085921145975589752197265625

正確な三角法を使うときには,「正三角形の面積は 65997971.957230328 坪」といえばよい。そうすれば答えは 123456.789 間になる。

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

PVアクセスランキング にほんブログ村

PVアクセスランキング にほんブログ村