Dear fellow MEEP users, I have been struggling for quite some time with this problem. I run a MEEP simulation in which a femtosecond laser pulse impinges on a structure containing a semiconductor material (say silicon). In our experiment, we use such high light intensities that during the pulse, an extremely high carrier density is generated in the semiconductor. A this happens during the pulse, we have to take the changing carrier density, and therefore the changing plasma frequency, into account. We can do this in our own FDTD code relatively easily, but we would like to make use of MEEPs readily available MPI support.
So the question is, is there a way to change the susceptiblity of the structure during a simulation. What we have in mind is the following. We will step() MEEP forward for half an optical cycle, calculate the intensity distribution inside the semiconductor and use it to update the carrier density (and perhaps carrier temperature). From this we will calculate new parameters for the Drude susceptiblity of the semiconductor. We would then need a way to update these. Simply writing them back into the array using C does not work. Upon inspection of the source code of MEEP I understand that this is because the array you specify is actually only used as a input to generate the chunks. So I would need a way to trigger the distribution of the new parameters to the chunks. My understanding of the code is however by far not good enough to know how to achieve that. Is there a way of doing this without changing the source code of MEEP? Some undocumented function that when used wisely can achieve this? I would be very thankful for any advice! kind regards, Dries _______________________________________________ meep-discuss mailing list meep-discuss@ab-initio.mit.edu http://ab-initio.mit.edu/cgi-bin/mailman/listinfo/meep-discuss