Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

updates to ensure correct calculation of eigenmode coefficients with symmetries #417

Merged
merged 3 commits into from
Jul 13, 2018
Merged

updates to ensure correct calculation of eigenmode coefficients with symmetries #417

merged 3 commits into from
Jul 13, 2018

Conversation

HomerReid
Copy link
Contributor

The only API modification is the addition of a new method fields::add_mode_monitor with the same calling convention as add_dft_flux. This instantiates a dft_flux object in which symmetry reduction is turned off. Existing code that calls add_dft_flux to create a flux region for subsequent passage to get_eigenmode_coefficients should now call add_mode_monitor instead.

src/mpb.cpp Outdated
@@ -634,8 +634,8 @@ void fields::get_eigenmode_coefficients(dft_flux flux,
if (d==NO_DIRECTION)
abort("cannot determine normal direction in get_eigenmode_coefficients");

if (S.multiplicity() > 1)
abort("symmetries are not yet supported in get_eigenmode_coefficients");
//if (S.multiplicity() > 1)
Copy link
Collaborator

Choose a reason for hiding this comment

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

Can we save the value of use_symmetry in the dft_flux object and still abort if (use_symmetry && S.multiplicity() > 1), i.e. in case an ordinary add_dft_flux was used?

@stevengj stevengj merged commit 2c7f190 into NanoComp:master Jul 13, 2018
@stevengj
Copy link
Collaborator

cc @ChristopherHogan for a Python API.

bencbartlett pushed a commit to bencbartlett/meep that referenced this pull request Sep 9, 2021
…symmetries (NanoComp#417)

* updates to ensure correct calculation of eigenmode coefficients in the presence of symmetries

* store use_symmetry flag in dft_flux structure and abort from get_eigenmode_coefficients() if set incorrectly

* Update Makefile.am
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