Skip to content

Gradient-based longitudinal space charge calculation#108

Open
austin-hoover wants to merge 17 commits into
PyORBIT-Collaboration:mainfrom
austin-hoover:lsc-grad
Open

Gradient-based longitudinal space charge calculation#108
austin-hoover wants to merge 17 commits into
PyORBIT-Collaboration:mainfrom
austin-hoover:lsc-grad

Conversation

@austin-hoover
Copy link
Copy Markdown
Contributor

This PR adds the option to calculate the longitudinal space charge kick in LSpaceChargeCalc using the gradient of the charge density. The current solver calculates the kick in frequency space using the impedance formulation.

@austin-hoover austin-hoover marked this pull request as draft February 19, 2026 19:56
@austin-hoover austin-hoover marked this pull request as ready for review February 19, 2026 20:56
@austin-hoover
Copy link
Copy Markdown
Contributor Author

It looks good in some initial tests; will need to think about how to benchmark.

@austin-hoover austin-hoover requested review from azukov and shishlo May 27, 2026 21:35
@shishlo
Copy link
Copy Markdown
Contributor

shishlo commented May 28, 2026

So, what about the benchmark? Was it successful? As I understand frequency approach allows to cut or to keep high frequency noise. What about the suggested new gradient method? Could you reproduce the results of the paper:
https://journals.aps.org/prab/abstract/10.1103/PhysRevSTAB.7.094201
So, bottom line: would it better to keep the old frequency based method and add a new one with derivatives?

@austin-hoover
Copy link
Copy Markdown
Contributor Author

This PR doesn't replace the frequency approach, just adds option to use gradient instead.

One option for a benchmark would be a uniform disk in x-y plane within conducting pipe of radius b, and then a Gaussian z distribution. The energy kick from the 1D and 2D-sliced solvers should agree with the analytic result.

I've tested this 1D solver against 2D-sliced for bunch compression simulations in the SNS ring, and they give similar results. But we do expect differences in that case since the transverse distribution is not uniform.

I'm not sure about the space-charge-sustained microbunching. We should definitely try to reproduce these simulations, but it might be better to start with a simpler benchmark.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants