Skip to content

Add ID symplectic passmethod - #90

Open
Gabrielrezende-asc wants to merge 27 commits into
masterfrom
add-ID_sympletic
Open

Add ID symplectic passmethod#90
Gabrielrezende-asc wants to merge 27 commits into
masterfrom
add-ID_sympletic

Conversation

@Gabrielrezende-asc

Copy link
Copy Markdown

This PR adds a new pass method to perform symplectic integration of 3D fields, ie, fields with both transverse and longitudinal variation.
The changes include:

  1. New properties to the elements, kx, ks, s0 and coefs1 and coefs2. These properties will be used in the element "field3d", until the moment these properties can describe planar fields, a further generalization to describe fields with arbitrary polarization will be done.
  2. field3d.hpp was added to the library; it contains all the calculations necessary to execute the integration steps, including the calculation of the vector potential components.

Comment thread include/trackcpp/elements.h Outdated
Comment thread include/trackcpp/elements.h Outdated
Comment thread src/flat_file.cpp
cmd.compare("coefs_sin") == 0) {
CoefMatrix Element::* M = nullptr;

if (cmd == "coefs_cos")

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

at some places "coefs" is being used while in others "coeffs" is used. can it be standardized? maybe using "coeffs"...

@xresende xresende Aug 6, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Gabrielrezende-asc , I think it would be nice if you added reference links on the passmethod formalism.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

at some places "coefs" is being used while in others "coeffs" is used. can it be standardized? maybe using "coeffs"...

what about this comment ? you do not see inconsistency ?

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry about the delay! I just fixed the coefficient names and added a link to the main paper of the integrator.

@Gabrielrezende-asc

Copy link
Copy Markdown
Author

Hi guys, this PR is ready. In the future I can create a document detailing the derivations of this passmethod

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.

3 participants