بهینه سازی یک کریستال فوتونیک برای فیلتر کردن سیگنال
دستگاههای بلور فوتونیک ساختارهای تناوبی از لایههای متناوب مواد با ضریب شکست متفاوت هستند. موجبرهایی که در داخل یک کریستال فوتونیک محصور شدهاند، میتوانند خمشهای بسیار تیز و کم تلفات داشته باشند، که ممکن است باعث افزایش چگالی ادغام چندین مرتبه شود.
معرفی
این مدل نحوه اعمال بهینه سازی شکل را در مدل کریستال فوتونی نشان می دهد . تابع هدف افزایش نسبت انتقال بین دو طول موج است. این با اجازه دادن به ستون های GaAs تغییر موقعیت اما نه شکل به دست می آید. این پیاده سازی از دو ویژگی بهینه سازی شکل، Free Shape Domain و Transformation برای اعمال بهینه سازی مبتنی بر گرادیان استفاده می کند.
تعریف مدل
تابع هدف بر حسب میانگین بزرگی میدان الکتریکی در خروجی برای یک طول موج و هندسه معین، λ و Ω تعریف می شود :
مسئله بهینه سازی تنظیم شده در این مدل، به حداقل رساندن لاگ نسبت بین این تابع برای دو طول موج است:
.توپولوژی هندسه ثابت است تا امکان بهینه سازی مبتنی بر گرادیان را فراهم کند. برای ساده سازی ساخت، شکل سیلندر نیز ثابت شده است. بنابراین، تنها چیزی که مجاز به تغییر است، موقعیت سیلندر است. اگر به آنها اجازه داده شود دورتر حرکت کنند، ممکن است با هم برخورد کنند و باعث ایجاد پیام های خطا در مورد عناصر معکوس یا مقادیر NaN/Inf شوند. برای جلوگیری از این امر، سیلندرها محدود به حرکت 0.1 میکرومتر در جهت x و y هستند .
نتایج و بحث
شکل 1 و شکل 2 مولفه z میدان الکتریکی را در هندسه بهینه شده برای دو طول موجنشان می دهد

شکل 1: مولفه z میدان الکتریکی که نحوه انتشار موج در مسیری که توسط ستون ها تعریف شده است را نشان می دهد. هندسه اولیه از یک آرایه مستطیلی از استوانه ها تشکیل شده است، بنابراین بهینه سازی نه تنها موقعیت ستون ها را در نزدیکی مسیر موج تغییر می دهد.
بهینهسازی، انتقال طول موج اول را به طور نهایی افزایش میدهد، در حالی که انتقال طول موج دوم را 99.9 درصد کاهش میدهد.

شکل 2: طول موج بلندتر از طریق راهنما منتشر نمی شود.
ارجاع
1. JD Joannopoulos، RD Meade، و JN Winn، بلورهای فوتونیک (مدلسازی جریان نور) ، انتشارات دانشگاه پرینستون، 1995.
مسیر کتابخانه برنامه: Wave_Optics_Module/Waveguides_and_Couplers/photonic_crystal_filter_optimization
دستورالعمل مدلسازی
کتابخانه های کاربردی
1 | از منوی File ، Application Libraries را انتخاب کنید . |
2 | در پنجره Application Libraries ، Wave Optics Module>Waveguides and Couplers>photonic_crystal را در درخت انتخاب کنید. |
3 |
جزء 1 (COMP1)
یک کاوشگر برای بزرگی میدان الکتریکی روی مرز خروجی اضافه کنید تا به عنوان تابع هدف استفاده شود.
تعاریف
تابع هدف
1 | در پنجره Model Builder ، گره Component 1 (comp1) را گسترش دهید . |
2 | روی Component 1 (comp1)>Definitions کلیک راست کرده و Probes>Boundary Probe را انتخاب کنید . |
3 | در پنجره تنظیمات برای کاوشگر مرزی ، تابع هدف را در قسمت متن برچسب تایپ کنید . |
4 | در قسمت متن نام متغیر ، obj را تایپ کنید . |
5 | قسمت Probe Type را پیدا کنید . از لیست Type ، Integral را انتخاب کنید . |
6 | فقط مرز 45 را انتخاب کنید. |
7 | روی نوار ابزار بخش در گوشه سمت راست بالای بخش Expression کلیک کنید . از منو، Component 1 (comp1)> Waves Electromagnetic , Frequency Domain> Energy and power>ewfd.nPoav – جریان برق ، میانگین زمانی – W/m² را انتخاب کنید . |
مطالعه 1
مرحله 1: دامنه طول موج
1 | در پنجره Model Builder ، گره Study 1 را گسترش دهید ، سپس روی Step 1: Wavelength Domain کلیک کنید . |
2 | در پنجره تنظیمات برای دامنه طول موج ، برای گسترش بخش Results while Solving کلیک کنید . |
3 | از لیست Probes ، هیچکدام را انتخاب کنید . |
4 | در پنجره Model Builder ، روی Study 1 کلیک کنید . |
5 | در پنجره تنظیمات برای مطالعه ، طرح اولیه را در قسمت متن برچسب تایپ کنید . |
مقادیر اولیه تابع هدف را محاسبه کنید و پارامترهای مربوط به این مقادیر را تعریف کنید.
6 | در نوار ابزار صفحه اصلی ، |
نتایج
انتقال
1 | در نوار ابزار نتایج ، روی |
2 | در پنجره تنظیمات برای گروه ارزیابی ، Transmission را در قسمت متن برچسب تایپ کنید . |
ارزیابی جهانی 1
1 | روی Transmission کلیک راست کرده و Global Evaluation را انتخاب کنید . |
2 | در پنجره تنظیمات برای ارزیابی جهانی ، روی Add Expression در گوشه سمت راست بالای بخش عبارات کلیک کنید . از منو، Component 1 (comp1)>Definitions>obj – Objective Function – W/m را انتخاب کنید . |
3 | در نوار ابزار انتقال ، |
هندسه 1
راه اندازی بهینه سازی شکل را با افزودن دو انتخاب به دنباله هندسه ساده کنید.
دامنه هایی برای جابجایی
1 | در نوار ابزار Geometry ، روی |
2 | در پنجره تنظیمات مربوط به Box Selection ، Domains to Move را در قسمت نوشتار Label تایپ کنید . |
3 | قسمت Box Limits را پیدا کنید . در قسمت متن x حداقل ، 0.2e-6 را تایپ کنید . |
4 | در قسمت متن حداکثر x ، 3.2e-6 را تایپ کنید . |
5 | در قسمت حداقل متن y ، 0.2e-6 را تایپ کنید . |
6 | در قسمت متن حداکثر y ، 3.2e-6 را تایپ کنید . |
7 | قسمت Output Entities را پیدا کنید . از فهرست Include entity if ، Entity inside کادر را انتخاب کنید . |
تغییر شکل دامنه ها
1 | در نوار ابزار Geometry ، روی |
2 | در پنجره تنظیمات برای انتخاب مجاور ، Deforming Domains را در قسمت نوشتار Label تایپ کنید . |
3 | قسمت Output Entities را پیدا کنید . از لیست سطح نهاد هندسی ، دامنههای مجاور را انتخاب کنید . |
4 | قسمت Input Entities را پیدا کنید . |
5 | در کادر محاورهای افزودن ، Domains to Move را در فهرست انتخابهای ورودی انتخاب کنید . |
6 | روی OK کلیک کنید . |
جزء 1 (COMP1)
دامنه شکل رایگان 1
1 | در نوار ابزار تعاریف ، روی |
2 | در پنجره تنظیمات برای دامنه شکل آزاد ، بخش انتخاب دامنه را پیدا کنید . |
3 | از لیست انتخاب ، تغییر شکل دامنه ها را انتخاب کنید . |
تحول 1
1 | در نوار ابزار تعاریف ، روی |
2 | در پنجره تنظیمات برای تبدیل ، قسمت انتخاب موجودیت هندسی را پیدا کنید . |
3 | از لیست انتخاب ، دامنه هایی را برای انتقال انتخاب کنید . |
4 | بخش ترجمه را پیدا کنید . در جدول تنظیمات زیر را وارد کنید: |
قفل کردن | کران پایین (متر) | کران بالا (متر) | |
ایکس | -0.1 [یک] | 0.1 [یک] | |
Y | -0.1 [یک] | 0.1 [یک] |
5 | بخش Scaling را پیدا کنید . از لیست نوع مقیاسبندی ، بدون مقیاسبندی را انتخاب کنید . |
اضافه کردن مطالعه
1 | در نوار ابزار Home ، روی |
2 | به پنجره Add Study بروید . |
3 | زیربخش مطالعات را پیدا کنید . در درخت انتخاب مطالعه ، مطالعات پیشفرض برای واسطهای فیزیک انتخاب شده > دامنه طول موج را انتخاب کنید . |
4 | روی Add Study در نوار ابزار پنجره کلیک کنید . |
5 | در نوار ابزار Home ، روی |
طراحی اولیه
مرحله 1: دامنه طول موج
1 | در پنجره Model Builder ، گره طراحی اولیه را گسترش دهید ، سپس روی Step 1: Wavelength Domain کلیک کنید . |
2 | در پنجره تنظیمات دامنه طول موج ، قسمت Physics and Variables Selection را پیدا کنید . |
3 | در جدول، چارگوش حل برای هندسه تغییر شکل یافته (کامپوننت 1) را پاک کنید . |
مطالعه 2
بهینه سازی شکل
1 | در نوار ابزار مطالعه ، روی |
حد پیشفرض حرکت 0.1 اغلب بسیار محافظهکار است، مگر اینکه راهاندازی مسئله بهینهسازی شکل آزادی طراحی بیش از حد را ایجاد کند. در این صورت برای صرفه جویی در زمان محاسباتی آن را دو برابر می کنیم.
2 | در پنجره تنظیمات برای Shape Optimization ، بخش Optimization Solver را پیدا کنید . |
3 | در قسمت حداکثر تعداد تکرار ، 20 را تایپ کنید . |
4 | در قسمت متنی Move limits ، 0.2 را تایپ کنید . |
5 | قسمت Objective Function را پیدا کنید . در جدول تنظیمات زیر را وارد کنید: |
اصطلاح | شرح |
if(lambda0<1.15[um],-1,1)*log(comp1.obj[m/W]) |
این مربوط به به حداقل رساندن انتقال در 1.3 میکرومتر تقسیم بر انتقال در 1 میکرومتر است.
6 | از لیست مقیاس بندی هدف ، گزینه Initial solution based را انتخاب کنید . |
7 | قسمت Output while Solving را پیدا کنید . از لیست Probes ، هیچکدام را انتخاب کنید . |
8 | در پنجره Model Builder ، روی Study 2 کلیک کنید . |
9 | در پنجره تنظیمات برای مطالعه ، Shape Optimization را در قسمت نوشتار Label تایپ کنید . |
مطالعه را آغاز کنید تا یک نمودار برای استفاده در حین بهینه سازی ایجاد کنید.
10 | در نوار ابزار مطالعه ، |
11 | در پنجره Model Builder ، روی Shape Optimization کلیک کنید . |
12 | در پنجره تنظیمات برای بهینه سازی شکل ، بخش خروجی هنگام حل را پیدا کنید . |
13 | کادر Plot را انتخاب کنید . |
14 | از لیست گروه Plot ، Shape Optimization را انتخاب کنید . |
تنظیمات حل کننده
همگرا کردن مسئله با استفاده از یک حل کننده جدا شده آسان تر است .
در پنجره Model Builder ، گره Shape Optimization>Solver Configurations را گسترش دهید .
راه حل 2 (sol2)
1 | در پنجره Model Builder ، گره Shape Optimization>Solver Configurations>Solution 2 (sol2) را گسترش دهید ، سپس روی Optimization Solver 1 کلیک کنید . |
2 | در پنجره تنظیمات برای حل بهینه سازی ، برای گسترش بخش پیشرفته کلیک کنید . |
3 | از لیست Compensate for nojac terms ، خاموش را انتخاب کنید . |
4 | در پنجره Model Builder ، گره Shape Optimization>Solver Configurations>Solution 2 (sol2)>Optimization Solver 1>Stationary 1 را گسترش دهید . |
5 | روی Stationary 1 کلیک راست کرده و Segregated را انتخاب کنید . |
6 | در پنجره تنظیمات برای Segregated ، بخش General را پیدا کنید . |
7 | از لیست تکنیک پایان ، Iterations را انتخاب کنید . |
8 | روی Segregated 1 کلیک راست کرده و Segregated Step را انتخاب کنید . |
9 | در پنجره تنظیمات برای مرحله جدا شده ، فیلدهای الکتریکی را در قسمت متن برچسب تایپ کنید . |
10 | قسمت General را پیدا کنید . در قسمت متغیرها ، روی |
11 | در کادر محاورهای افزودن ، در لیست متغیرها ، فیلد الکتریکی ( فریمهای فضایی و مادی ) (comp1.E) و ترجمه ( فریم هندسی ) (comp1.tsf1.move) را انتخاب کنید . |
12 | روی OK کلیک کنید . |
13 | در پنجره Model Builder ، روی Segregated Step کلیک کنید . |
14 | در پنجره تنظیمات برای مرحله جدا شده ، بخش عمومی را پیدا کنید . |
15 | در لیست متغیرها ، فیلد الکتریکی (قاب های فضایی و متریال ) (comp1.E) را انتخاب کنید . |
16 | در قسمت متغیرها ، |
17 | در قسمت نوشتار Label ، Optimization را تایپ کنید . |
مرحله 1: دامنه طول موج
1 | در پنجره Model Builder ، در قسمت Shape Optimization روی مرحله 1: دامنه طول موج کلیک کنید . |
2 | در پنجره تنظیمات دامنه طول موج ، بخش تنظیمات مطالعه را پیدا کنید . |
3 | در قسمت متن طول موج ، 1[um] 1.3[um] را تایپ کنید . |
این یک راه حل برای طول موج فضای آزاد 1 میکرومتر و یک راه حل برای طول موج فضای آزاد 1.3 میکرومتر به شما می دهد .
4 | در نوار ابزار مطالعه ، |
نتایج
میدان الکتریکی (ewfd) 1
در نوار ابزار Electric Field (ewfd) 1 ، روی
Plot کلیک کنید .
سطح 1
1 | در پنجره Model Builder ، گره Electric Field (ewfd) 1 را گسترش دهید ، سپس روی Surface 1 کلیک کنید . |
2 | در پنجره تنظیمات برای Surface ، روی Replace Expression در گوشه سمت راست بالای بخش Expression کلیک کنید . از منو، Component 1 (comp1)>Electromagnetic Waves، Frequency Domain>Electric>Electric ( قاب های فضایی و مادی ) – V/m>ewfd.Ez – Electric field، z-component را انتخاب کنید . |
3 | قسمت Coloring and Style را پیدا کنید . |
4 | در کادر محاوره ای Color Table ، Wave>WaveLight را در درخت انتخاب کنید. |
5 | روی OK کلیک کنید . |
6 | در نوار ابزار Electric Field (ewfd) 1 ، روی |
7 | در پنجره تنظیمات برای Surface ، روی |
ارزیابی جهانی 2
هدف را برای طراحی بهینه محاسبه کنید تا بررسی کنید که انتقال برای مورد 1 میکرومتر افزایش یافته و برای مورد 1.3 میکرومتر کاهش یافته است.
1 | در پنجره Model Builder ، در Results>Transmission روی Global Evaluation 1 کلیک راست کرده و Duplicate را انتخاب کنید . |
2 | در پنجره تنظیمات برای ارزیابی جهانی ، بخش داده را پیدا کنید . |
3 | از لیست Dataset ، Shape Optimization/Solution 2 (sol2) را انتخاب کنید . |
4 | در نوار ابزار انتقال ، |
بند انگشتی
یک نمودار برای تصویر کوچک مدل بسازید.
1 | در نوار ابزار صفحه اصلی ، روی |
2 | در پنجره تنظیمات برای گروه طرح دو بعدی ، Thumbnail را در قسمت نوشتار برچسب تایپ کنید . |
3 | قسمت Plot Settings را پیدا کنید . کادر بررسی لبه های مجموعه داده Plot را پاک کنید . |
خط 1
1 | روی Thumbnail کلیک راست کرده و Line را انتخاب کنید . |
2 | در پنجره تنظیمات برای Line ، قسمت Coloring and Style را پیدا کنید . |
3 | از لیست نوع خط ، لوله را انتخاب کنید . |
4 | در قسمت متن بیان شعاع لوله ، 3e-9 را تایپ کنید . |
5 | چک باکس Radius scale factor را انتخاب کنید . |
6 | از لیست Coloring ، Uniform را انتخاب کنید . |
7 | از لیست رنگ ، خاکستری را انتخاب کنید . |
فیلتر 1
1 | روی خط 1 کلیک راست کرده و Filter را انتخاب کنید . |
2 | در پنجره تنظیمات برای فیلتر ، قسمت انتخاب عنصر را پیدا کنید . |
3 | در قسمت عبارت Logical for inclusion متن، (5e-7<Xg)*(Yg<28e-7)*(7e-7<Yg) را تایپ کنید . |
خط 2
1 | در پنجره Model Builder ، در Results>Thumbnail روی خط 1 کلیک راست کرده و Duplicate را انتخاب کنید . |
2 | در پنجره تنظیمات برای خط ، بخش داده را پیدا کنید . |
3 | از لیست Dataset ، Shape Optimization/Solution 2 (sol2) را انتخاب کنید . |
4 | قسمت Coloring and Style را پیدا کنید . از لیست رنگ ، سیاه را انتخاب کنید . |
پیکان خط 1
1 | در پنجره Model Builder ، روی Thumbnail کلیک راست کرده و Arrow Line را انتخاب کنید . |
2 | در پنجره تنظیمات برای خط پیکان ، بخش داده را پیدا کنید . |
3 | از لیست Dataset ، Shape Optimization/Solution 2 (sol2) را انتخاب کنید . |
4 | قسمت Expression را پیدا کنید . در قسمت متن X-component ، material.dX را تایپ کنید . |
5 | در قسمت متن Y-component ، material.dY را تایپ کنید . |
6 | قسمت تعیین موقعیت پیکان را پیدا کنید . در قسمت متنی Number of arrows ، 1e3 را تایپ کنید . |
7 | قسمت Coloring and Style را پیدا کنید . از لیست پایه پیکان ، Head را انتخاب کنید . |
8 | تیک گزینه Scale factor را انتخاب کنید . در فیلد متن مرتبط، 1 را تایپ کنید . |
فیلتر 1
در پنجره Model Builder ، در Results>Thumbnail>Line 1 روی Filter 1 راست کلیک کرده و Copy را انتخاب کنید .
فیلتر 1
در پنجره Model Builder ، روی Arrow Line 1 کلیک راست کرده و Paste Filter را انتخاب کنید .
بیان رنگ 1
1 | روی Arrow Line 1 کلیک راست کرده و Color Expression را انتخاب کنید . |
2 | در پنجره تنظیمات برای Color Expression ، بخش Expression را پیدا کنید . |
3 | در قسمت متن Expression ، sqrt(material.dX^2+material.dY^2) را تایپ کنید . |
4 | قسمت Coloring and Style را پیدا کنید . تیک Color legend را پاک کنید . |
5 | در نوار ابزار Thumbnail ، روی |