Skip to content

Add dipole and quadrupole electrostatic potential and field with unit test#5

Open
harshjha15335 wants to merge 1 commit intotheochem:mainfrom
harshjha15335:feature/electrostatic-multipole
Open

Add dipole and quadrupole electrostatic potential and field with unit test#5
harshjha15335 wants to merge 1 commit intotheochem:mainfrom
harshjha15335:feature/electrostatic-multipole

Conversation

@harshjha15335
Copy link

Summary
This PR builds on the existing monopole implementation to add dipole and quadrupole electrostatic contributions to FFprime, completing the core multipole expansion needed for the GSoC project.
What's added

dipole potential and dipole field functions for electrostatic potential and field from atomic dipole moments
quadrupole potential and quadrupole field functions for traceless quadrupole tensors
total potential and total field unified functions that combine all multipole contributions
All functions are fully vectorized over N atoms and M field points simultaneously

Testing
26 unit tests, all passing. Each test validates against an analytical solution derived from first principles, not just checking that code runs but that the physics is correct:

Inverse distance scaling for monopoles
Perpendicular dipole gives zero potential
Quadrupole tensor contraction along symmetry axis
Singularity handling at r equals 0 for all terms

Notes
Follows the traceless quadrupole convention. Singularities at exact atom locations are handled gracefully. Docstrings reference Stone Theory of Intermolecular Forces for the physical formulas used.

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.

1 participant