HomerReid / scuff-em

A comprehensive and full-featured computational physics suite for boundary-element analysis of electromagnetic scattering, fluctuation-induced phenomena (Casimir forces and radiative heat transfer), nanophotonics, RF device engineering, electrostatics, and more. Includes a core library with C++ and python APIs as well as many command-line applications.
http://www.homerreid.com/scuff-em
GNU General Public License v2.0
126 stars 50 forks source link

scuff-heat and scuff-neq produce different results for the heat transfer between two spheres #50

Closed chinmayCK closed 9 years ago

chinmayCK commented 9 years ago

Hi, I am running scuff-heat and scuff-neq both to verify the consistency between the two. However, it turns out that scuff-neq produces different result for the heat flux between the two spheres.

scuff-heat DEFAULT 0.592 1.366101e-01
scuff-neq 5.920000e-01 DEFAULT 11 8.29117274e-02 5.920000e-01 DEFAULT 12 2.02679179e-02 5.920000e-01 DEFAULT 21 2.02606865e-02 5.920000e-01 DEFAULT 22 8.28855525e-02

If I add 11 and 12 then I get almost the same result as that obtained using scuff-heat (which shows excellent agreement with the analytical result). This is also true at other frequencies and distances of separation. So I presume they are meant to be equal. Is that the case ?

Also, for scuff-neq, what does 11 mean physically ? Is it the flux between the source body 1 and the environment or the self-interaction term ? If it is self-interaction term, then it does not make sense that the net total heat flux between the bodies is 11+12.

Thanks.

HomerReid commented 9 years ago

I looked into this, and I think the output of scuff-neq is correct. (scuff-heat is a very old legacy code that used idiosyncratic units and is no longer supported.)

I have updated the scuff-neq documentation to describe the output files in a little more detail:

http://homerreid.dyndns.org/scuff-em/doc/applications/scuff-neq/scuff-neq

Also, I have added the following detailed example involving radiation from single spheres and power/momentum transfer between two spheres, which I have benchmarked against the T-matrix formulas of Matthias Krueger et al:

http://homerreid.dyndns.org/scuff-em/doc/examples/SiO2Spheres/SiO2Spheres/

Please double check and let me know what you find. If you are satisfied, please close the issue.

chinmayCK commented 9 years ago

Okay. I double checked the results. I have been comparing with the analytical expression derived in the following reference:

http://journals.aps.org/prb/abstract/10.1103/PhysRevB.77.075125

The results of scuff-neq are consistently off by a factor of 4/3 from the analytical result. I checked this at multiple frequencies and distances of separation. So I just need to find this factor now.

Earlier, I was computing the heat transfer for smaller distances of separation and the results did not seem to agree with the theory. This is because they were not converged properly. I tried to increase the resolution until I reached a limit where the simulation didn't finish at all. Is it true that for very small distances of separation ~0.1um, we need to increase the resolution ? Apart from this difficulty, scuff-neq is working fine.

Thank you for your reply.

HomerReid commented 9 years ago

If you are comparing results for the heat transfer per unit frequency, then the discrepancy may arise from differing conventions for Fourier analysis and frequency integrals. For example, some authors define frequency integrals with integration measure d\omega / (2\pi), while other authors use simply d\omega, so a direct comparison of the integrands in the two cases will yield a factor-of-2\pi discrepancy. The conventions used by SCUFF-NEQ are summarized here:

http://homerreid.dyndns.org/scuff-em/doc/applications/scuff-neq/scuff-neq/

Regarding your other question, yes, the rule of thumb is that edges of the triangular panels in the surface mesh should be small compared to the separation distance to the nearest neighboring object. So for very short separations it is typically necessary to use higher-resolution meshing. Of course, one of the main advantages of the localized basis functions used in SCUFF-EM is that you can refine the meshing only in regions that lie close to other surfaces, while not refining the meshing in regions that are far removed from other surfaces.

Please feel free to keep the discussion going here, or close the issue if it has been resolved to your satisfaction.