<style>
.reveal, .reveal h1, .reveal h2, .reveal h3, .reveal h4, .reveal h5, .reveal h6 {
font-family: "Source Sans Pro", "Helvetica Neue", Helvetica, Arial, "Microsoft JhengHei", Meiryo, sans-serif;
}
h1, h2, h3, h4, h5, h6 {
text-transform: none !important;
}
.color-yellow{
color: yellow;
}
.alert {
padding: 15px;
margin-bottom: 20px;
border: 1px solid transparent;
border-radius: 4px;
text-align: left;
padding: 10px 0;
}
.alert-info {
color: #31708f;
background-color: #d9edf7;
border-color: #bce8f1;
}
.alert-success {
color: #3c763d;
background-color: #dff0d8;
border-color: #d6e9c6;
}
.alert-danger {
color: #a94442;
background-color: #f2dede;
border-color: #ebccd1;
}
.reveal .slides span {
text-align: left;
display: inline-block;
}
p, li {
font-size: 0.88em !important;
}
li>p {
font-size: 1em !important;
}
</style>
## 編み紙工作ワークショップ
**(理論解説付き)**

日本数学協会 第21回 年次大会
----
### スケジュール
* 作り方の説明 (30分)
* 材料
* 組立方法 (立体射影)
* 組立方法 (懸垂面と螺旋面)
* 数学的解説 (30分)
* 立体射影とは?
* 懸垂面と螺旋面の関係
* もっと理論的解説 (30分)
* 弾性論の話
* 数値計算の話
* 曲率と埋め込みの関係
----
### 注意事項
* 質問があれば随時どうぞ!
* 本スライドは以下のリンクで公開されています

https://hackmd.io/@hyrodium/SyLQ51bTh
---
### 自己紹介
 
[堀川 由人, ほりたみゅ, @Hyrodium](https://hyrodium.github.io/ja)
----
### 経歴など
* 学職歴
* 大阪府立高専
* 大阪大学工学部
* 大阪大学大学院工学研究科 (修士課程)
* (就職)
* 大阪大学大学院基礎工学研究科 (招聘研究員)
* イベント関連 (一部抜粋)
* 2015/06/20 第1回日曜数学会
* 2015/11/14 サイエンスアゴラ
* 2016/02/13 HackDay2016
* 2018/08/04 Maker Faire Tokyo 2018
* 2018/10/06 MathPower2018
* 2019/01/16 JMM2019
* 2023/07/25 JuliaCon2023
----
### 興味: 数学的対象の可視化
* POV-Rayをつかったアニメーション
* Julia言語による数値計算
* Desmosによるグラフ描画
* レーザー加工機による工作
   
---
## 作り方の説明
* 材料
* 組立方法 (立体射影)
* 組立方法 (懸垂面と螺旋面)
----
### 材料
* キット一式
* 立体射影 or 螺旋面懸垂面
* 木工ボンド
* 数が少ないので、分け合ってお使い下さい
* 竹串
* ボンド塗布用
----
### 組立方法 (立体射影)

[説明書](https://hackmd.io/@hyrodium/HJsIPNKqo)
----
### 組立方法 (螺旋面懸垂面)

[説明書](https://hackmd.io/@hyrodium/Hy4D5r633)
---
## 数学的解説
* 立体射影とは?
* 懸垂面と螺旋面の関係
----
### 立体射影とは?

球面$S^n$と平面$\mathbb{R}^n$を対応させる写像のこと
(※北極を除く)
----
#### $n=1$の場合

円周$S^1$上の1点と直線$\mathbb{R}^1$上の1点が対応する
----
#### $n=2$の場合

球面$S^2$上の1点と直線$\mathbb{R}^2$上の1点が対応する
----
#### なぜ格子点が浮かぶのか?

平面上の格子点に対応する球面上の点に穴があるため!
----
#### 立体射影の応用
* 逆数の作図
* [第一回日曜数学会](https://www.docswell.com/s/hyrodium/KQXX75-2022-03-14-235327)
* Riemann球面上の直方体
* [第四回日曜数学会](https://www.docswell.com/s/hyrodium/KJ3GV5-2022-12-15-173057)
* メビウス変換の可視化
* [HackDay2016](https://www.youtube.com/watch?v=Aw-YASXbI04)
* MRP (Modified Rodrigues Parameters, 3次元の回転)
* [Rotations.jl](https://juliageometry.github.io/Rotations.jl/dev/3d_quaternion/)
* 4次元多胞体の可視化
* [POV-Rayで作ったアニメーション](https://twitter.com/Hyrodium/status/948831531853783040)
* etc.
----
### 懸垂面と螺旋面の関係

----
#### 懸垂面 (Catenoid)
\begin{align*}
\boldsymbol{p}_{[0]}(u,v)
&=\begin{pmatrix}
\cosh(v)\cos(u) \\
\cosh(v)\sin(u) \\
v
\end{pmatrix}
\end{align*}

----
#### 螺旋面 (Helicoid)
\begin{align*}
\boldsymbol{p}_{[0]}(u,v)
&=\begin{pmatrix}
\sinh(v)\cos(u) \\
\sinh(v)\sin(u) \\
u
\end{pmatrix}
\end{align*}

----
#### 相互に変形可能!

なぜ変形可能か?
→第一基本形式(Riemann計量)が各点で等しいから
----
#### 極小曲面 by Henry Segerman
懸垂面・螺旋面は極小曲面としての性質を持つ
<iframe width="560" height="315" src="https://www.youtube.com/embed/jReQUm9EB9k?si=O5xBb9jFY3KJTrCG" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>
---
## もっと理論的解説
* 弾性論の話
* 数値計算の話
* 曲率と埋め込みの関係
**退屈なら工作を続けてOK!**
----
### お伝えしたいこと
* To みなさん
* Julia言語は数値計算に向いた良い言語!
* To 幾何学者
* Gauss曲率・測地的曲率との関連が理論的に面白い!
* To 工作愛好家
* 数学・プログラミングで製作が広がるのでオススメ!
----
### 先行研究①
平面材料から作られる立体形状の例
 
* 手法: 曲面を可展面で近似してから切出形状を決定
* 問題点: 材料の**繋ぎ目で滑らかにならない**
目的: 可展面近似を用いずに, 高精度に曲面形状を構成
----
### 先行研究②

https://www.youtube.com/watch?v=lrr2iKXSYz4
* 手法: 3次元的な材料変形を考慮して切出形状を決定
* 問題点: **隙間が発生**・**外在的な埋込に計算結果が依存**
目的: 2次元弾性体としてモデリングして切出形状を決定
----
### 平面材料の変形 : 面外と面内
  
* 曲面の第一基本形式を
* 面外変形: 保つ
* 面内変形: 保たない
* 通常の折り紙/紙工作では可展面のみを構成可能
* 面外変形: 可展面のみ構成可能
* 面内変形: 可展面以外も構成可能
----
### 紙の弾性的性質
具体例: 紙を捩って常螺旋面($K< 0$)が作れる
面外変形のみなら可展面($K=0$) ($K$:Gauss曲率)

* 紙は面内方向にも変形可能.
* [面外変形のエネルギー] $\ll$ [面内変形のエネルギー]
----
<!-- .slide: data-transition="none" -->
### 問題設定
1. 曲面を座標に沿って曲面片に分割
1. 平面材料から曲面に変形すると歪エネルギーが発生
1. エネルギー最小の形状を最も自然な切出形状とする

----
<!-- .slide: data-transition="none" -->
### 問題設定
1. **曲面を座標に沿って曲面片に分割**
1. 平面材料から曲面に変形すると歪エネルギーが発生
1. エネルギー最小の形状を最も自然な切出形状とする

----
<!-- .slide: data-transition="none" -->
### 問題設定
1. 曲面を座標に沿って曲面片に分割
1. **平面材料から曲面に変形すると歪エネルギーが発生**
1. エネルギー最小の形状を最も自然な切出形状とする

----
<!-- .slide: data-transition="none" -->
### 問題設定
1. 曲面を座標に沿って曲面片に分割
1. 平面材料から曲面に変形すると歪エネルギーが発生
1. **エネルギー最小の形状を最も自然な切出形状とする**

----
### 基準状態と現状態
* 基準状態 : 変形前で歪エネルギーが発生していない
* 現状態 : 変形後で歪エネルギーが発生している
 
「平面材料から曲面片へ変形させた際のエネルギー」と
「曲面片から平面への埋め込みで入るエネルギー」は
ほぼ同じ
以降では基準状態と現状態を入れ替えて定式化する
----
### Riemann多様体上の非線形弾性論

材料に発生する歪エネルギー$W$は次の順で定義される
* 基準状態$M_{[0]}$, 現状態$M_{[t]}$のRiemann計量 $g_{[0]}, g_{[t]}$
* Green歪テンソル $E=\frac{1}{2}(g_{[t]}-g_{[0]})$
* 歪エネルギー $W=\int_M \frac{1}{2}C(E,E)\upsilon_{[0]}$
歪エネルギー$W$が最小となる 埋込$M_{[0]}\to \mathbb{E}^2$を探す
---
## ElasticSurfaceEmbedding.jl
* 環境構築
* 編み紙の全体の流れ
* 数値計算の全体の流れ
* デモ
----
### 環境構築
REPLのpkgモードで以下を実行
```
(@v1.8) pkg> add BasicBSpline StaticArrays IntervalSets
(@v1.8) pkg> add https://github.com/hyrodium/BasicBSplineExporter.jl
(@v1.8) pkg> add https://github.com/hyrodium/ElasticSurfaceEmbedding.jl
```
----
### 編み紙の全体の流れ

1. 曲面の形状の定義
1. 曲面を長細い曲面片に分割
1. それぞれの曲面片の切り出し形状の計算
1. 平面材料(紙)から切り出し
1. 編んで完成!
----
### 数値計算の全体の流れ
1. 曲面の形状の定義
1. 測地的曲率から初期値決定
1. 反復計算
a. Newton法で反復計算
b. B-spline多様体のリファインメント
----
### デモ (放物面)
```julia=
using ElasticSurfaceEmbedding
using IntervalSets
using StaticArrays
# Overload the shape definition
ElasticSurfaceEmbedding.surface(x,y) = SVector(x, y, x^2+y^2)
# (1) split the surface into strips
dom = [(-1..1, (i-1)/10..i/10) for i in 1:10]
# (2) Embed the strips onto a plane
res = auto_allsteps(dom)
export_pinned_steps("paraboloid", res)
```
----
### 放物面を編む
 
レーザー加工機で紙を切って編む
----
### 紙の幅のトレードオフ
* 幅が大きいほど
* 材料に無理な変形(歪)が発生
* 滑らかな曲面ができない
* 幅が小さいほど
* 組み立てが複雑になる
  
----
### 歪の近似定理
\begin{align*}
E^{\langle0\rangle}_{11} \approx \frac{1}{2}K_{[0]}B^2\left(r^2-\frac{1}{3}\right)
\end{align*}

この値が0.01以下になるような幅$B$を選べばOK!
----
### 埋め込み近似定理
* 曲面上の測地的曲率
* 埋め込み形状の平面曲率
これらが(ほぼ)一致する!
 
----
### 他の作品たち
  
 ↑双曲放物面 6回対称↑
---
## まとめ
* 数学たのしい!
* 工作たのしい!
* Juliaたのしい!
----
## なぜ編み紙?
* 曲面上の座標から簡単に分割できる
* 十分な強度
* 変形可能
* 薄い
   
{"breaks":true,"lang":"ja","dir":"ltr","robots":"noindex, nofollow","slideOptions":"{\"theme\":\"white\",\"transition\":\"slide\"}","title":"日本数学協会 第21回 年次大会","description":"2023-03-14","contributors":"[{\"id\":\"41421433-16a1-4a57-ac11-6f7b7becb765\",\"add\":12165,\"del\":1983}]"}