-
Notifications
You must be signed in to change notification settings - Fork 1
Project Support Page
Before inserting new issues or Project ideas, let's freely drop our ideas here. Let's use this to
- To lay out problems and doubt
- To expand concepts
- To write memos
We should benchmark a little bit on different systems. On my computer the code runs on all cores, both in virtual machine (Windows) and natively (Linux).
n, t(n) graph, where n is the number of points (sampling) and t(n) is the computation time.
It seems that numba is the best way to write efficient code, but for best result the code has to be rewritten a little bit. I already improved on the Huygens_1d_Kernel quite a lot.
EDIT: Very nice feature is that numba also supports interaction with CUDA, which can be implemented in the future.
SIMPLE! just create an automated script traversing the Examples folder
More complicated. One keeps the eye on the research, codes many different version of the same files, and only very seldom produces a "FROZEN" definitive version. There is not the perfect solution. Either one copy-paste the script in a "watch folder" (that will never work), or one will mark the script with an extra tag "VERSIONWATCH" (which may work for a few times, but it is so clumsy that it will stop working soon). As a conclusion => don't know.... don't change too much the code 🙂
Add the capability of handle the reflectivity/transmission of a mirror for a given coating. To discuss how to do that.
Mirror only? I would say: no, more general.
Idea:
class OpticsEfficiency:
EDIT: Calculating reflectivity of a multilayer (can be single layer as well) is not too difficult, one for loop...
do we need a way to tell that a mirror (o.e.) is horizontal or vertical? e.g. if in a beamline there may be V or H mirror. The propagation should be done among similar planes (H & H, or V & V). One possibility is to draw two distinct beamlines
Source---V1----V2---V3 Source---H1---H2
This is how we can do now. Or to draw a unique beamline with mixed elements.
Source---V1---H1----V2----H2----V3 AND to instruct the code (probably something in the propagation section) that he has to do First the V, then the H. Consider the options to add extra flag for mixed states.
It is not so "minor". When designing a beamline it is natural to design "as is", and not to split the H and V part. Splitting would require re-computing the all the distances (the "previous" element is an amologous one or not?), which would be a great bothering