Skip to content

Conversation

danielwboyce
Copy link

Closes #1109.

In process of making changes to cyclically rotate Meep's coordinate systems when passed into MPB so that wave propagation is always in the x direction. So of the math involved and its implementation (notation) is a bit opaque, so at the moment the largest part of the problem is understanding what exactly is happening in the src/mpb.cpp so I don't miss any necessary transformations, either from Meep to MPB or from MPB to Meep.

@danielwboyce
Copy link
Author

The direction object d hasn't been rotated correctly; I need to update it with the correct way for direction objects.

@danielwboyce
Copy link
Author

At the moment when I run python/examples/mode-decomposition.py with the compiled test version I'm getting an error that seems related to SWIG:

Traceback (most recent call last):
  File "/home/tests/mode-decomposition.no_rotation.testing_version.py", line 61, in <module>
    sim.run(until_after_sources=mp.stop_when_fields_decayed(50,mp.Ez,mon_pt,1e-9))
  File "/usr/local/lib/python3.6/site-packages/meep/simulation.py", line 2222, in run
    self.init_sim()
  File "/usr/local/lib/python3.6/site-packages/meep/simulation.py", line 1321, in init_sim
    self.add_source(s)
  File "/usr/local/lib/python3.6/site-packages/meep/simulation.py", line 1603, in add_source
    add_eig_src()
  File "/usr/local/lib/python3.6/site-packages/meep/__init__.py", line 3947, in add_eigenmode_source
    return _meep.fields_add_eigenmode_source(self, *args)
RuntimeError: meep: invalid dielectric function for MPB

@danielwboyce
Copy link
Author

Actually judging the error to be caused by SWIG seems a bit hasty; I'm just not quite sure what's caused it yet.

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.

x parity constraints for eigenmodes
1 participant