I am an independent researcher working on a theoretical physics model where the geometry of space is hypothesized to be tetrahedral at a fundamental scale. A key prediction of the model is that the fundamental electromagnetic eigenmode of a perfectly conducting tetrahedron should have a specific dimensionless frequency.
The Theoretical Prediction: For a regular tetrahedron with edge length a, the fundamental eigenvalue k (wave number) should satisfy: (k * a)^2 / π² ≈ 14.6969 (This value comes from 12 * sqrt(3/2)).
The Request: I would be incredibly grateful if someone with experience in electromagnetic simulations in FreeFEM could help me verify this. The task would involve:
Defining the geometry of a regular tetrahedron.
Setting up the eigenvalue problem for EM waves in a perfect electrical conductor (PEC) cavity.
Solving for the fundamental eigenmode and extracting its eigenvalue.
(Optionally) visualizing the E-field distribution to see if it oscillates between opposite edges.
I believe this is a non-trivial and interesting problem that could be of general interest. My strength is in the theoretical side, and I am less experienced with numerical code. Any help or guidance would be immensely appreciated. I am, of course, happy to provide full theoretical context and acknowledge all help in any resulting work.
Operational Definition for the Simulation:
Please define a regular tetrahedron with edge length a = 1.
Set up the electromagnetic eigenvalue problem for a perfect electrical conductor (PEC) cavity, solving the wave equation \nabla^2 \mathbf{E} + k^2 \mathbf{E} = 0 with boundary condition \mathbf{\hat{n}} \times \mathbf{E} = 0.
Solve for the fundamental eigenmode (the mode with the smallest eigenvalue k^2).
The output I need is this smallest eigenvalue \lambda = k^2 .
From this, I will compute the dimensionless constant C = \lambda / \pi^2 and check if it is approximately 14.6969.
A visualization of the E-field for this mode would also be immensely valuable to see if the energy is indeed concentrated between opposite edges.
If I understood you correctly, your problem should not be too difficult to implement in FreeFEM.
Here is the simulation file Curl3dEigenValue.edp (1.4 KB) and the mesh thetrahedron.mesh (166 Bytes).
Unfortunately, for edge length a = 1we get \lambda = k^2 = 78.10634802.
Your code is for the CurlCurl operator, and for the boundary condition (Curl E)\times n=0 on the boundary, which is not exactly what Frodo wants. If I am correct, he wants the Laplace operator (recall that CurlCurl=Graddiv-Delta) with boundary condition E\times n=0. Probably he is missing one boundary condition divE=0 on the boundary (otherwise without that the spectrum of the PDE operator is continuous).
I see your point. I agree that the wave equation includes the Laplace operator.
However, Frodo asks for the “electromagnetic eigenvalue problem for a perfect electrical conductor”. As far as I know this is modeled with the CurlCurl operator.
If we consider the CurlCurl operator with boundary condition E\times n=0, then no further boundary condition is needed.
However handling this boundary condition E\times n=0 on a tetrahedron (faces are not parallel to axes) is not so simple, since imposing this via penalty (implying huge coefficients in the matrix) could make the eigenvalue solver fail. The same remark holds for the case of Laplace operator.
Could you please visualize the eigenvector (the field distribution) for this mode? I need to see if the energy is concentrated between opposite edges or if it has a more complex pattern. I’m particularly interested in finding the mode with the longest wavelength (the lowest k^2), which might be the next mode in the spectrum.
Could you please also compute the next few eigenvalues (the next 5 or 6) and visualize their modes? I have a theoretical prediction that the fundamental mode for the electric field should be around k^2 \approx 145, so it might be the 2nd or 3rd mode in the list.
Subject: Thank you for the insight & a follow-up request
Hello Michael and Francois
Thank you so much for your prompt and thorough response—it is greatly appreciated. Your explanation regarding the boundary condition \mathbf{\hat{n}} \times \mathbf{E} = 0 and the implication that \mathbf{E} = 0 on all edges was particularly enlightening. I see now that my initial hypothesis about energy concentration between opposite edges may not hold under these conditions.
Would it be possible to see a visualization of the \mathbf{E}-field for the fundamental mode? This would help me better understand how the energy is actually distributed within the tetrahedron.
Also, if it’s not too much trouble, could you please compute the next few eigenmodes (e.g., the second and third smallest eigenvalues and their corresponding modes)? It’s possible that one of these higher modes might exhibit the kind of edge-oriented behavior I was originally looking for.
Finally, if time permits, would it be feasible to simulate the same tetrahedron but as a dielectric object (with high relative permittivity, say \epsilon_r = 1000) rather than a PEC? This might allow nonzero field values on the edges and better approximate the physical system I have in mind.
I understand that this requires additional effort, and I am happy to provide any additional context or resources needed. Your work is already of immense value to my research, and I will gladly acknowledge your contribution in any resulting publications.
Thank you again for your generosity and expertise.
It seems that there is a first eigenvalue with triple multiplicity, then an eigenvalue 154 (your fundamental mode ?), then again an eigenvalue with triple multiplicity.
You have to run the code EMtet.edp to plot (built-in with medit, but also possible with paraview with file E.pvd).
I use SLEPc as eigenvalue solver.
About the method: I use a Lagrange multiplier formulation (to avoid large coefficients in the matrix if we use penalty), using that
Thank you very much for your help and for preparing the example with the Lagrange multiplier formulation and boundary condition \mathbf{E} \times \mathbf{n} = 0. The results you shared are extremely useful for my work. The triple degeneracy of the first eigenvalue around 78.9 is exactly what I hoped to see, and the following mode around 154 also matches very well with my theoretical expectations.
Your clear explanation of the method, and especially the note about using a Lagrange multiplier to avoid large coefficients, is greatly appreciated. This guidance has given me both a working baseline and confidence in the numerical approach.
I am grateful for your support, and I will make sure to acknowledge FreeFEM in my upcoming manuscript.