


{"id":453585,"date":"2026-03-02T17:20:06","date_gmt":"2026-03-02T17:20:06","guid":{"rendered":"https:\/\/innovationspace.ansys.com\/forum\/forums\/topic\/negative-reflectance-and-transmittance-in-2d-fdtd-simulation-of-ag-nanoparticle\/"},"modified":"2026-03-02T17:20:06","modified_gmt":"2026-03-02T17:20:06","slug":"negative-reflectance-and-transmittance-in-2d-fdtd-simulation-of-ag-nanoparticle","status":"publish","type":"topic","link":"https:\/\/innovationspace.ansys.com\/forum\/forums\/topic\/negative-reflectance-and-transmittance-in-2d-fdtd-simulation-of-ag-nanoparticle\/","title":{"rendered":"Negative Reflectance and Transmittance in 2D FDTD simulation of Ag Nanoparticle"},"content":{"rendered":"<p>&lt;p class=&#8221;font-claude-response-body break-words whitespace-normal leading-[1.7]&#8221;&gt;Hello,&lt;\/p&gt;&lt;p class=&#8221;font-claude-response-body break-words whitespace-normal leading-[1.7]&#8221;&gt;I am simulating the effect of Ag nanoparticles (NPs) on light absorption in a Si solar cell structure using 2D FDTD in Lumerical. I am running two simulations &mdash; one reference (no NPs) and one with 12 Ag NPs of mixed diameters (100&ndash;400 nm) sitting on top of a SiO2\/Si stack &mdash; and comparing the results.&lt;\/p&gt;&lt;p class=&#8221;font-claude-response-body break-words whitespace-normal leading-[1.7]&#8221;&gt;<strong>My structure (bottom to top):<\/strong>&lt;\/p&gt;&lt;ul class=&#8221;[li_&amp;]:mb-0 [li_&amp;]:mt-1 [li_&amp;]:gap-1 [&amp;:not(:last-child)_ul]:pb-1 [&amp;:not(:last-child)_ol]:pb-1 list-disc flex flex-col gap-1 pl-8 mb-3&#8243;&gt;&lt;li class=&#8221;whitespace-normal break-words pl-2&#8243;&gt;Si layer: 8 &micro;m<\/li>\n<p>&lt;li class=&#8221;whitespace-normal break-words pl-2&#8243;&gt;SiO2 layer: 300 nm<\/li>\n<p>&lt;li class=&#8221;whitespace-normal break-words pl-2&#8243;&gt;Ag NPs sitting on SiO2 surface (diameters: 100, 200, 300, 400 nm mixed)<\/li>\n<p>&lt;li class=&#8221;whitespace-normal break-words pl-2&#8243;&gt;Air: 4 &micro;m<\/li>\n<\/ul>\n<p>&lt;p class=&#8221;font-claude-response-body break-words whitespace-normal leading-[1.7]&#8221;&gt;<strong>My simulation settings:<\/strong>&lt;\/p&gt;&lt;ul class=&#8221;[li_&amp;]:mb-0 [li_&amp;]:mt-1 [li_&amp;]:gap-1 [&amp;:not(:last-child)_ul]:pb-1 [&amp;:not(:last-child)_ol]:pb-1 list-disc flex flex-col gap-1 pl-8 mb-3&#8243;&gt;&lt;li class=&#8221;whitespace-normal break-words pl-2&#8243;&gt;2D FDTD<\/li>\n<p>&lt;li class=&#8221;whitespace-normal break-words pl-2&#8243;&gt;Plane wave source, injection axis: y, direction: Backward (downward)<\/li>\n<p>&lt;li class=&#8221;whitespace-normal break-words pl-2&#8243;&gt;Source position: &lt;code class=&#8221;bg-text-200\/5 border border-0.5 border-border-300 text-danger-000 whitespace-pre-wrap rounded-[0.4rem] px-1 py-px text-[0.9rem]&#8221;&gt;Air_y_max &#8211; 200e-9<\/code> (near top of Air)<\/li>\n<p>&lt;li class=&#8221;whitespace-normal break-words pl-2&#8243;&gt;Reflection monitor: &lt;code class=&#8221;bg-text-200\/5 border border-0.5 border-border-300 text-danger-000 whitespace-pre-wrap rounded-[0.4rem] px-1 py-px text-[0.9rem]&#8221;&gt;Air_y_max &#8211; 300e-9<\/code> (just below source)<\/li>\n<p>&lt;li class=&#8221;whitespace-normal break-words pl-2&#8243;&gt;Transmission monitor: &lt;code class=&#8221;bg-text-200\/5 border border-0.5 border-border-300 text-danger-000 whitespace-pre-wrap rounded-[0.4rem] px-1 py-px text-[0.9rem]&#8221;&gt;Si_y_max &#8211; 1e-6<\/code> (1 &micro;m inside Si from top)<\/li>\n<p>&lt;li class=&#8221;whitespace-normal break-words pl-2&#8243;&gt;Boundary conditions: PML on all 4 sides<\/li>\n<p>&lt;li class=&#8221;whitespace-normal break-words pl-2&#8243;&gt;Wavelength: 200&ndash;1000 nm<\/li>\n<p>&lt;li class=&#8221;whitespace-normal break-words pl-2&#8243;&gt;Simulation time: 10000e-15 s<\/li>\n<p>&lt;li class=&#8221;whitespace-normal break-words pl-2&#8243;&gt;Auto shutoff min: 1e-5<\/li>\n<p>&lt;li class=&#8221;whitespace-normal break-words pl-2&#8243;&gt;Mesh accuracy: 2<\/li>\n<p>&lt;li class=&#8221;whitespace-normal break-words pl-2&#8243;&gt;Material: Ag (Johnson and Christy), Si (Palik), SiO2 (Palik)<\/li>\n<\/ul>\n<p>&lt;p class=&#8221;font-claude-response-body break-words whitespace-normal leading-[1.7]&#8221;&gt;<strong>Post-processing:<\/strong>&lt;\/p&gt;&lt;div class=&#8221;relative group\/copy bg-bg-000\/50 border-0.5 border-border-400 rounded-lg&#8221;&gt;&lt;div class=&#8221;sticky opacity-0 group-hover\/copy:opacity-100 top-2 py-2 h-12 w-0 float-right&#8221;&gt;&lt;div class=&#8221;absolute right-0 h-8 px-2 items-center inline-flex z-10&#8243;&gt;&lt;div class=&#8221;relative&#8221;&gt;&lt;div class=&#8221;transition-all opacity-100 scale-100&#8243;&gt;&nbsp;&lt;\/div&gt;&lt;div class=&#8221;absolute inset-0 flex items-center justify-center&#8221;&gt;&lt;div class=&#8221;transition-all opacity-0 scale-50&#8243;&gt;&nbsp;&lt;\/div&gt;&lt;\/div&gt;&lt;\/div&gt;&lt;\/div&gt;&lt;\/div&gt;&lt;div class=&#8221;overflow-x-auto&#8221;&gt;<\/p>\n<pre class=\"code-block__code !my-0 !rounded-lg !text-sm !leading-relaxed p-3.5\">`T = transmission(\"transmission\");\nR = transmission(\"reflection\");\nA = 1 - T - R;`<\/pre>\n<p>&lt;\/div&gt;&lt;\/div&gt;&lt;p class=&#8221;font-claude-response-body break-words whitespace-normal leading-[1.7]&#8221;&gt;<strong>Problem I am getting:<\/strong>&lt;\/p&gt;&lt;ul class=&#8221;[li_&amp;]:mb-0 [li_&amp;]:mt-1 [li_&amp;]:gap-1 [&amp;:not(:last-child)_ul]:pb-1 [&amp;:not(:last-child)_ol]:pb-1 list-disc flex flex-col gap-1 pl-8 mb-3&#8243;&gt;&lt;li class=&#8221;whitespace-normal break-words pl-2&#8243;&gt;Transmittance is negative (down to -0.55)<\/li>\n<p>&lt;li class=&#8221;whitespace-normal break-words pl-2&#8243;&gt;Reflectance is negative (down to -0.9)<\/li>\n<p>&lt;li class=&#8221;whitespace-normal break-words pl-2&#8243;&gt;Absorption (1-T-R) is greater than 1 (up to 2.5)<\/li>\n<p>&lt;li class=&#8221;whitespace-normal break-words pl-2&#8243;&gt;T+R+A is not equal to 1 &mdash; it oscillates wildly<\/li>\n<\/ul>\n<p>&lt;p class=&#8221;font-claude-response-body break-words whitespace-normal leading-[1.7]&#8221;&gt;<strong>My questions:<\/strong>&lt;\/p&gt;<\/p>\n<ol>&lt;li class=&#8221;whitespace-normal break-words pl-2&#8243;&gt;What is the correct sign convention for &lt;code class=&#8221;bg-text-200\/5 border border-0.5 border-border-300 text-danger-000 whitespace-pre-wrap rounded-[0.4rem] px-1 py-px text-[0.9rem]&#8221;&gt;transmission()<\/code> function when using a Backward directed plane wave source? Should I use &lt;code class=&#8221;bg-text-200\/5 border border-0.5 border-border-300 text-danger-000 whitespace-pre-wrap rounded-[0.4rem] px-1 py-px text-[0.9rem]&#8221;&gt;-transmission(&#8220;transmission&#8221;)<\/code> or &lt;code class=&#8221;bg-text-200\/5 border border-0.5 border-border-300 text-danger-000 whitespace-pre-wrap rounded-[0.4rem] px-1 py-px text-[0.9rem]&#8221;&gt;transmission(&#8220;transmission&#8221;)<\/code>?<\/li>\n<p>&lt;li class=&#8221;whitespace-normal break-words pl-2&#8243;&gt;Is my reflection monitor placement correct &mdash; just below the source? Or should it be above the source?<\/li>\n<p>&lt;li class=&#8221;whitespace-normal break-words pl-2&#8243;&gt;Is my transmission monitor placement correct &mdash; 1 &micro;m inside Si from the top? Or should it be near the bottom of Si?<\/li>\n<p>&lt;li class=&#8221;whitespace-normal break-words pl-2&#8243;&gt;Should I use Periodic boundary conditions on x instead of PML for a plane wave source?<\/li>\n<p>&lt;li class=&#8221;whitespace-normal break-words pl-2&#8243;&gt;Is &lt;code class=&#8221;bg-text-200\/5 border border-0.5 border-border-300 text-danger-000 whitespace-pre-wrap rounded-[0.4rem] px-1 py-px text-[0.9rem]&#8221;&gt;auto shutoff min = 1e-5<\/code> sufficient for plasmonic Ag NP simulations or should it be tighter (1e-7)?<\/li>\n<\/ol>\n<p>&lt;p class=&#8221;font-claude-response-body break-words whitespace-normal leading-[1.7]&#8221;&gt;Any guidance would be very helpful. Thank you&lt;br&gt;&lt;br&gt;&lt;\/p&gt;<\/p>\n","protected":false},"template":"","class_list":["post-453585","topic","type-topic","status-publish","hentry","topic-tag-plasmonics-1"],"aioseo_notices":[],"acf":[],"custom_fields":[{"0":{"_bbp_forum_id":["27833"],"_bbp_topic_id":["453585"],"_bbp_subscription":["576871","473055"],"_bbp_author_ip":["158.103.2.8"],"_bbp_last_reply_id":["453613"],"_bbp_last_active_id":["453613"],"_bbp_last_active_time":["2026-03-02 23:39:30"],"_bbp_reply_count":["2"],"_bbp_reply_count_hidden":["0"],"_bbp_voice_count":["2"],"_bbp_engagement":["576871","473055"],"_btv_view_count":["169"],"_bbp_topic_status":["unanswered"],"_edit_lock":["1772479496:473055"],"_bbp_notification_enabled":["473055"]},"test":"154e1f4cc9498b47d227e4d5f3c82505eb46f642"}],"_links":{"self":[{"href":"https:\/\/innovationspace.ansys.com\/forum\/wp-json\/wp\/v2\/topics\/453585","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/innovationspace.ansys.com\/forum\/wp-json\/wp\/v2\/topics"}],"about":[{"href":"https:\/\/innovationspace.ansys.com\/forum\/wp-json\/wp\/v2\/types\/topic"}],"version-history":[{"count":0,"href":"https:\/\/innovationspace.ansys.com\/forum\/wp-json\/wp\/v2\/topics\/453585\/revisions"}],"wp:attachment":[{"href":"https:\/\/innovationspace.ansys.com\/forum\/wp-json\/wp\/v2\/media?parent=453585"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}