gregmoille / pyLLE

Lugiato Lefever Equation Solver in Python/Julia
Other
65 stars 39 forks source link

Theoretical model: a combination of LLE and CMT? #19

Closed yumtong closed 4 years ago

yumtong commented 4 years ago

Hello, I have a few questions I would like to ask you~

1) First, can I understand your theoretical model as a combination of LLE and CMT? Why convert the dispersion β in the LLE model into a mode-dependent Dint, etc.. If only β2, β3 are considered, the calculation speed is tens of seconds, so the simulation time becomes much slower. Also, is the frequency interval of the optical comb fixed to FSR? The secondary optical frequency comb cannot be generated?

2) Your article says that this is a friendly and fast LLE model solver, but since I have been studying the communication field, I just started the microcavity, so many parameters and simulation principles in the code are not very understandable. η = δω/α # need to be fixed B0 = np.sqrt(2*η) What do these mean?

3) Is the step-by-step Fourier method not used? I want to use SSMF, but I don't know how to set the incident light, and the initial light field, whether to consider the frequency and line width. If I set u0 = Aexp(iω*τ), (f :193.4T), the sampling frequency of the FFT is greater than 400T?

4) I see you compare the running time of matlab python in the article. Can you upload the matlab code?

gregmoille commented 4 years ago
  1. The main point that we explain in the article is that the Taylor expansion using the different β coefficient is far from being accurate in the case of micro-resonators, the main scope of this package. For instance, one can take the example of dispersive waves (DW). It is quite easy to understand that these DW will occur when the integrated dispersion (DW) will be zero. However, to take into account such dispersion, one need to expand the β coefficient to an high order (usually β5 or β6 ). This leads to discrepancy between theory and experiment, hence using the raw frequency of resonance from which a complete dispersion is extracted, through Dint, is far more accurate. It indeed slow down the calculus. However, thank to Julia and the preallocation of the FFT operator, it doesn't slow it down that much in this pyLLE package. However, using only the Taylor expansion dispersion coefficient result in a fairly simple equation that I believe the community would be able to solve and implement by themselves. I am not quite sure what you mean by secondary comb and which effect you are mentioning. Here only one mode is taking into account and we assume that the modes are forming an orthogonal basis, and that the χ(3) tensor is diagonal. Hence, if you have other non-linearities that could introduce a second comb onto an other family of mode (Raman, SHG, Brillouin, etc...) this will not work, and you would likely need a system of coupled equations.

  2. pyLLE is indeed user friendly as the different parameters you have quoted are within the Julia core, and are not intended to be used by the end-user. The package was designed such that the end-user will only interact through the python interface where the handful of parameters that the user can set are fully explained in the documentation and the article and are consistent with the glossary used in the field.

  3. The split step Fourier is used the Julia core. The initial conditions, the pump energy/frequency are all set through the python interface as explained in the documentation.

  4. It is beyond the scope of this package to provide different language of the same code, and it would also violated the license here used to provide a code using a proprietary language

yumtong commented 4 years ago

Thank you very much for your reply and help( ̄▽ ̄)ブ.