On Aug 27, 2009, at 2:20 PM, Ardavan F. Oskooi wrote:
Benjamin M. Schwartz wrote:
asadollahbaik a. (aa306) wrote:
Dear Meep Users,
I am about to start running the most important simulation of my PhD:
There is this very complicated 3D structure consisting of 40
cosine-shape structures on a block of dielectric (it will be
expanded to bigger number).
The eps-averaging part of making the geometry is taking ages:
With the resolution of 40 and 60hours of modelling only 10%of eps-
averaging was done!
Is there anyway to reduce this length of time?! Or I just need to
be patient!
Perhaps you are using the guile/scheme interface? This interface is
interpreted, and dramatically slows down the averaging process
because the
interpreted functions must be called many times. You should see much
faster performance for the eps-averaging step if you rewrite your
object
description using the C++ interface
This isn't quite correct. The libctl interface can perform the
subpixel averaging with higher accuracy
since it computes material averages analytically, but only for
predefined geometric objects (ie., cylinders, blocks, spheres). The C
++ interface, on the other hand, always computes the averages
numerically using finer and finer sampling of the material function
within the pixel until some threshold is reached (more on this below).
Note that this has changed in Meep 1.0. Meep 1.0 basically punts on
the averaging if you have a predefined material function---it only
averages for interfaces of the predefined geometric objects. Previous
versions of Meep tried to do the averaging by an adaptive numerical
integration as a fallback in libctl for user-defined material
functions, which was very slow.
If you turn off averaging, it usually means that you may need a higher
spatial resolution to get the same accuracy.
If you are using a version of Meep prior to 1.0 I would definitely
recommend upgrading to 1.1.x.
Steven
_______________________________________________
meep-discuss mailing list
[email protected]
http://ab-initio.mit.edu/cgi-bin/mailman/listinfo/meep-discuss