transverse gradient undulator

Moderators: cyao, michael_borland

Ji_Li
Posts: 13
Joined: 31 May 2017, 07:16

Re: transverse gradient undulator

Post by Ji_Li » 06 Jul 2017, 06:40

Michael,

I am just curious, is it possible to implement sympletic runge-kutta method to simulate wigglers and undulators ? Except the computational cost, is there any other reason not using it?

Ji

michael_borland
Posts: 1933
Joined: 19 May 2008, 09:33
Location: Argonne National Laboratory
Contact:

Re: transverse gradient undulator

Post by michael_borland » 06 Jul 2017, 14:27

Ji,

I'm not sure about Runge-Kutta integrators in particular. My colleague Ryan Lindberg thinks that even sympletric RK integrators will have to be implicit, which will make them slow. The implicit midpoint integrator we use now has the virtue of good convergence.

BTW, we are working on the BGGEXP using your previously-provided files as a test case.

--Michael

michael_borland
Posts: 1933
Joined: 19 May 2008, 09:33
Location: Argonne National Laboratory
Contact:

Re: transverse gradient undulator

Post by michael_borland » 10 Jul 2017, 10:18

Ji,

I find that when I set STRENGTH=0 on the BGGEXP element, the lattice is unstable. I assume that this is related to changes needed to compensate for the wiggler. Can you post a lattice without the wiggler as well?

--Michael

Ji_Li
Posts: 13
Joined: 31 May 2017, 07:16

Re: transverse gradient undulator

Post by Ji_Li » 12 Jul 2017, 10:18

Michael,

Yes, the lattice is unstable if the wiggler is switched off. Actually the optics is optimized for wiggler, because we need certain dispersion value at the wiggler to manipulate the damping partition numbers.

The lattice without wiggler is attached.

Ji
Attachments
standard1.zip
(25.26 MiB) Downloaded 146 times

Ji_Li
Posts: 13
Joined: 31 May 2017, 07:16

Re: transverse gradient undulator

Post by Ji_Li » 20 Jul 2017, 10:01

Michael,

How it goes with BGGEXP ? When the new version of elegant will be released?

Ji

michael_borland
Posts: 1933
Joined: 19 May 2008, 09:33
Location: Argonne National Laboratory
Contact:

Re: transverse gradient undulator

Post by michael_borland » 15 Aug 2017, 12:55

Ji,

Sorry it took so long to get back to you. The just-released version of elegant and computeGeneralizedGradients should work for most of what you need. Unfortunately, we didn't get the damping rates in there.

See the attached example.

--Michael
Attachments
bggexp.zip
(11.31 MiB) Downloaded 197 times

Ji_Li
Posts: 13
Joined: 31 May 2017, 07:16

Re: transverse gradient undulator

Post by Ji_Li » 17 Aug 2017, 06:12

Michael,

Thanks a lot! I can have good results by running the example you provide.

Now I optimized the filed and tried to run the tracking again. I found if I put the 50 phi(Br) in one page in field.sdds file, I met problem with running computeGeneralizedGradients. The error message is 'warning: no rows selected for page 1........'. And if I use 40 phi(Br) in one page, it works without problem.

Anyway, I get different tracking results after running
computeGeneralizedGradients -input field.sdds -output ggExp -mainHarmonic 1 -nHarmonics 10 -allHarmonics 1

No matter the input file is the field.sdds file in the example you provide or new input file I generated. I wonder how you generate ggExp.grad file excatly and which step I did wrong.

Ji

michael_borland
Posts: 1933
Joined: 19 May 2008, 09:33
Location: Argonne National Laboratory
Contact:

Re: transverse gradient undulator

Post by michael_borland » 17 Aug 2017, 12:07

Ji,

I used

Code: Select all

computeGeneralizedGradients -input field.sdds -output ggExp -mainHarmonic 1 -nHarmonics 6 -allHarmonics 1
The results are similar if I use 10 harmonics.

Are you using an old version of computeGeneralizedGradients? You should use the one in the latest distribution.

As for the other problem, can you upload the field files that cause the error message to be generated?

--Michael

Post Reply