From 5a1bdbe0eb8761dde8bb90f17690a3ab0377a93e Mon Sep 17 00:00:00 2001 From: Yi-Ting Tu Date: Fri, 26 Jul 2024 22:17:14 -0400 Subject: [PATCH] Add `OpticalFiber` module --- about.html | 5 +- cn/about.html | 5 +- cn/modules/data.json | 19 +++++ cn/modules/modules.html | 23 ++++++ modules/OpticalFiber.json | 167 ++++++++++++++++++++++++++++++++++++++ modules/OpticalFiber.png | Bin 0 -> 53128 bytes modules/data.json | 19 +++++ modules/modules.html | 23 ++++++ tw/about.html | 5 +- tw/modules/data.json | 19 +++++ tw/modules/modules.html | 23 ++++++ 11 files changed, 302 insertions(+), 6 deletions(-) create mode 100644 modules/OpticalFiber.json create mode 100644 modules/OpticalFiber.png diff --git a/about.html b/about.html index d5994278..89e365f5 100644 --- a/about.html +++ b/about.html @@ -128,11 +128,11 @@

Icon

Main Author

Contributors

(GitHub contributors first; others sorted chronologically.) diff --git a/cn/about.html b/cn/about.html index c3fa1079..a6588a64 100644 --- a/cn/about.html +++ b/cn/about.html @@ -129,11 +129,11 @@

Icon

主要作者

贡献者

(GitHub 贡献者优先;其余依时间排序。) diff --git a/cn/modules/data.json b/cn/modules/data.json index e0298c03..d0ca54f8 100644 --- a/cn/modules/data.json +++ b/cn/modules/data.json @@ -101,6 +101,25 @@ "d": "透镜之间的距离", "N": "透镜的数量" } + }, + { + "id": "OpticalFiber", + "contributors": [ + "josephernest", + "Yi-Ting Tu" + ], + "title": "光纤", + "description": "

指定核心和包层折射率的线状光纤。

", + "points": [ + "光纤的第一个端点", + "光纤的第二个端点(应与第一个点有相同的 \\(y\\))" + ], + "params": { + "X": "核心的厚度", + "Y": "包层的厚度", + "n_1": "核心的折射率", + "n_2": "包层的折射率" + } } ] } diff --git a/cn/modules/modules.html b/cn/modules/modules.html index d8eddbe0..0134c47c 100644 --- a/cn/modules/modules.html +++ b/cn/modules/modules.html @@ -207,6 +207,29 @@ +
+ Thumbnail +
+

光纤 (OpticalFiber)

+

josephernest, Yi-Ting Tu

+ +

指定核心和包层折射率的线状光纤。

+
+ +
+
+
+ 控制点顺序 +
    +
  1. 光纤的第一个端点
  2. 光纤的第二个端点(应与第一个点有相同的 \(y\))
  3. +
+ 参数 +
    +
  • X: 核心的厚度
  • Y: 包层的厚度
  • n_1: 核心的折射率
  • n_2: 包层的折射率
  • +

客制化

diff --git a/modules/OpticalFiber.json b/modules/OpticalFiber.json new file mode 100644 index 00000000..145f309e --- /dev/null +++ b/modules/OpticalFiber.json @@ -0,0 +1,167 @@ +{ + "version": 5, + "name": "OpticalFiber", + "modules": { + "OpticalFiber": { + "numPoints": 2, + "params": [ + "X=1:1:100:80", + "Y=1:1:100:20", + "n_1=1:0.01:2:1.456", + "n_2=1:0.01:2:1.44" + ], + "objs": [ + { + "type": "Glass", + "path": [ + { + "x": "`x_1`", + "y": "`y_1-X/2`", + "arc": false + }, + { + "x": "`x_1`", + "y": "`y_1+X/2`", + "arc": false + }, + { + "x": "`x_2`", + "y": "`y_2+X/2`", + "arc": false + }, + { + "x": "`x_2`", + "y": "`y_2-X/2`", + "arc": false + } + ], + "refIndex": "`n_1`" + }, + { + "type": "Blocker", + "p1": { + "x": "`x_1`", + "y": "`y_1-X/2-Y`" + }, + "p2": { + "x": "`x_2`", + "y": "`y_2-X/2-Y`" + } + }, + { + "type": "Blocker", + "p1": { + "x": "`x_1`", + "y": "`y_1+X/2+Y`" + }, + "p2": { + "x": "`x_2`", + "y": "`y_2+X/2+Y`" + } + }, + { + "type": "Glass", + "path": [ + { + "x": "`x_1`", + "y": "`y_1-X/2`", + "arc": false + }, + { + "x": "`x_1`", + "y": "`y_1-X/2-Y`", + "arc": false + }, + { + "x": "`x_2`", + "y": "`y_2-X/2-Y`", + "arc": false + }, + { + "x": "`x_2`", + "y": "`y_2-X/2`", + "arc": false + } + ], + "refIndex": "`n_2`" + }, + { + "type": "Glass", + "path": [ + { + "x": "`x_1`", + "y": "`y_1+X/2`", + "arc": false + }, + { + "x": "`x_1`", + "y": "`y_1+X/2+Y`", + "arc": false + }, + { + "x": "`x_2`", + "y": "`y_2+X/2+Y`", + "arc": false + }, + { + "x": "`x_2`", + "y": "`y_2+X/2`", + "arc": false + } + ], + "refIndex": "`n_2`" + } + ] + } + }, + "objs": [ + { + "type": "ModuleObj", + "module": "OpticalFiber", + "points": [ + { + "x": -2430, + "y": 440 + }, + { + "x": 460, + "y": 440 + } + ], + "params": { + "X": 80, + "Y": 20, + "n_1": 1.456, + "n_2": 1.44 + } + }, + { + "type": "PointSource", + "x": 910, + "y": 430, + "brightness": 3 + }, + { + "type": "CropBox", + "p1": { + "x": -2490, + "y": 360 + }, + "p4": { + "x": -2330, + "y": 520 + }, + "width": 300 + } + ], + "width": 1200, + "height": 700, + "rayModeDensity": 20.085536923187668, + "snapToGrid": true, + "gridSize": 10, + "origin": { + "x": 4920.548652877485, + "y": -448.74224272518126 + }, + "scale": 1.75 +} \ No newline at end of file diff --git a/modules/OpticalFiber.png b/modules/OpticalFiber.png new file mode 100644 index 0000000000000000000000000000000000000000..cb6b6a982948b510f7e8952681616667b52a9feb GIT binary patch literal 53128 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 OcuWl~4JvN9#{3V~AXO^> literal 0 HcmV?d00001 diff --git a/modules/data.json b/modules/data.json index 8cdf1a87..d844e3f7 100644 --- a/modules/data.json +++ b/modules/data.json @@ -101,6 +101,25 @@ "d": "The distance between the lenses", "N": "The number of lenses" } + }, + { + "id": "OpticalFiber", + "contributors": [ + "josephernest", + "Yi-Ting Tu" + ], + "title": "Optical Fiber", + "description": "

Line-shaped optical fiber with given core and cladding thickness and refractive indices.

", + "points": [ + "The first endpoint of the optical fiber", + "The second endpoint of the optical fiber (should have the same \\(y\\) as the first point)" + ], + "params": { + "X": "The thickness of the core", + "Y": "The thickness of the cladding", + "n_1": "The refractive index of the core", + "n_2": "The refractive index of the cladding" + } } ] } diff --git a/modules/modules.html b/modules/modules.html index 2a9f8f7d..9bce8826 100644 --- a/modules/modules.html +++ b/modules/modules.html @@ -207,6 +207,29 @@
  • f: The focal length of the lenses
  • d: The distance between the lenses
  • N: The number of lenses
+
+ Thumbnail +
+

Optical Fiber (OpticalFiber)

+

josephernest, Yi-Ting Tu

+ +

Line-shaped optical fiber with given core and cladding thickness and refractive indices.

+
+ +
+
+
+ Control point sequence +
    +
  1. The first endpoint of the optical fiber
  2. The second endpoint of the optical fiber (should have the same \(y\) as the first point)
  3. +
+ Parameters +
    +
  • X: The thickness of the core
  • Y: The thickness of the cladding
  • n_1: The refractive index of the core
  • n_2: The refractive index of the cladding
  • +

Customization

diff --git a/tw/about.html b/tw/about.html index d0fc734c..fd29bcc1 100644 --- a/tw/about.html +++ b/tw/about.html @@ -129,11 +129,11 @@

Icon

主要作者

貢獻者

    -
  • Stas Fainer(程式碼、作品集)
  • +
  • Stas Fainer(程式碼、作品集、模組)
  • Wei-Fang Sun(程式碼、介面設計)
  • Paul Falstad(程式碼、作品集)
  • James Garrard(程式碼、作品集)
  • @@ -167,6 +167,7 @@

    Icon
  • Georg Nadorff(作品集)
  • Rene(作品集)
  • Pedro(巴西葡萄牙文翻譯)
  • +
  • josephernest(模組)
(GitHub 貢獻者優先;其餘依時間排序。) diff --git a/tw/modules/data.json b/tw/modules/data.json index df1ba94e..1a30617b 100644 --- a/tw/modules/data.json +++ b/tw/modules/data.json @@ -101,6 +101,25 @@ "d": "透鏡之間的距離", "N": "透鏡的數量" } + }, + { + "id": "OpticalFiber", + "contributors": [ + "josephernest", + "Yi-Ting Tu" + ], + "title": "光纖", + "description": "

指定核心和包層折射率的線狀光纖。

", + "points": [ + "光纖的第一個端點", + "光纖的第二個端點(應與第一個點有相同的 \\(y\\))" + ], + "params": { + "X": "核心的厚度", + "Y": "包層的厚度", + "n_1": "核心的折射率", + "n_2": "包層的折射率" + } } ] } diff --git a/tw/modules/modules.html b/tw/modules/modules.html index a59b1b34..b7b0efeb 100644 --- a/tw/modules/modules.html +++ b/tw/modules/modules.html @@ -207,6 +207,29 @@
  • f: 透鏡的焦距
  • d: 透鏡之間的距離
  • N: 透鏡的數量
+
+ Thumbnail +
+

光纖 (OpticalFiber)

+

josephernest, Yi-Ting Tu

+ +

指定核心和包層折射率的線狀光纖。

+
+ +
+
+
+ 控制點順序 +
    +
  1. 光纖的第一個端點
  2. 光纖的第二個端點(應與第一個點有相同的 \(y\))
  3. +
+ 參數 +
    +
  • X: 核心的厚度
  • Y: 包層的厚度
  • n_1: 核心的折射率
  • n_2: 包層的折射率
  • +

客製化