PyORBIT-Collaboration / py-orbit

Core of Py-ORBIT code
MIT License
25 stars 38 forks source link

Add envelope solver c++ routines #44

Closed austin-hoover closed 3 years ago

austin-hoover commented 3 years ago

These files implement space charge calculators based on the envelope equations. Two types of envelope equations are included: the KV envelope equations and the rotating envelope equations. I have included references in the header files. The associated files for each case are:

1) KV envelope equations

azukov commented 3 years ago

@austin-hoover is it possible to add a very simplistic script to examples folder that would demonstrate the new solver? with lattice as simple as possible (just drift?).

austin-hoover commented 3 years ago

@azukov yes, I just need to submit another PR for the solver's Python modules first.

For the example, is it going in PyORBIT-Collaboration/examples or just in py-orbit/examples temporarily? I have a script prepared that benchmarks with the FFT based solver in a FODO cell, but it is a bit longer.

azukov commented 3 years ago

a small example demonstrating this new feature should go into py-orbit/examples. I think your script is fine as long as it has just one FODO cell and an easy way to tell if it failed or not.

austin-hoover commented 3 years ago

I put two examples under py-orbit/examples in my fork: https://github.com/austin-hoover/py-orbit/tree/master/examples/EnvelopeSolver.