Discussion on how to implement rectangular cuboid dipoles for prolate and oblate spheroids

8 views
Skip to first unread message

Neil Cutting

unread,
Jul 31, 2026, 11:29:30 AM (14 days ago) Jul 31
to ADDA questions and answers
Hi all, 

I have seen recently that using rectangular cuboid dipoles instead of cubical dipoles can be beneficial for highly prolate or oblate geometries. I have been recently running simulations to find the optimal number of dipoles per wavelength (DPL) for spheroids with extreme geometries and am having trouble achieving convergence (threshold of 10%) between the ADDA and comparing to the Separation of Variables T-matrix method. Particularly, with a size parameter (using X = (2*pi*C)/ƛ) of 30, aspect ratio of 0.1 (defined as oblate in my case), DPL = 40, and 1025 total orientations I have reached a maximum absolute relative difference % of the phase functions (P11) between the two models of 19.4%. 

How would I be able to change the type of voxels to rectangular cuboids in the ADDA code currently? I am running these simulations locally. 

Neil Cutting

unread,
Jul 31, 2026, 11:38:52 AM (14 days ago) Jul 31
to ADDA questions and answers
I also should mention that the refractive index is m = 1.308 + i1.66e-08 (ice), so it is non-absorptive. 

Maxim Yurkin

unread,
Jul 31, 2026, 12:40:17 PM (14 days ago) Jul 31
to adda-d...@googlegroups.com, neilcu...@tamu.edu
Dear Neil,

Thanks for your interest in the ADDA code and the trust that you assume to it for testing the SVM.

I guess, there are two questions here: how to get the most out of standard ADDA for your scattering problem, and whether cudoid dipoles can hep. 

Let's start with the second:

Short answer: maybe, since there are some reasons for both yes and no. In principle, cuboid dipoles shine when the smallest particle dimension is much smaller than the wavelength, such as an example in the corresponding paper:
Smunev D.A., Chaumet P.C., and Yurkin M.A. Rectangular dipoles in the discrete dipole approximation, J. Quant. Spectrosc. Radiat. Transfer 156, 67–79 (2015). (PDF) Erratum: 171, 84 (2016). (PDF)
In your case the minimum size is only a bit smaller than the wavelength (I am not sure about specific definition of C in your formula). Thus, if voxel size is, say, 1/20 of this minimum size, than you may try to increase its lateral sizes, but the latter must still stay smaller than the wavelength. So you can try an aspect ratio of two or three. If you however, will need to decrease the voxels size even further, you may try to keep the lateral sizes fixed and decrease only the z-dimension of the voxel (thus, increasing its aspect ratio). Such voxels (moderately oblate) should also better describe the shape of the spheroid, thus decreasing the shape errors. The latter may be dominant in your cases (at least for phase function, especially at backscattering) 

To try it, use:
-shape ellipsoid 1 0.1 -rect_dip 3 3 1 -pol igt_so -int igt_so -dpl 15 -m ... -size ...

dpl will correspond to the largest dimension of the voxel, so it will be better along z. Switching to IGT_SO formulation is critical, so you need to use the latest 1.5.0-alpha3 version. And you definitely need to test your workflow on some smaller test cases along the lines discussed below (note, however, that optimal aspect ratio of voxels will depend on this size). If you try it, I will also be interested in the results.

Concerning the first one. Overall, your combination of m and x should not cause serious accuracy or convergence problems. When using cubical voxels, try FCD formulation (-pol fcd -int fcd) and (optionally) BCGS2 iterative solver (-iter bcgs2, but default qmr is probably fine for such moderate sizes). Then I recommend, first, trying to get good agreement for smaller size (e.g., 15) and fixed orientation. Then you can go to really large dpl and compare with the reference. If the agreement is still not achieved, look at DDA results for different dpl values (try, e.g., plotting Cext or S11(at some fixed angle) versus 1/dpl. If the DDA smoothly converge, but the value is far from reference, that is a strong indication that either there is a problem with SVM or one of the method has wrong input parameters (i.e. shape, etc. is not what you aimed for).

After agreement for this case is achieved, add orientation averaging, but employ all possible optimizations for axisymmetric particles mentioned in ADDA manual (and also in the file avg_params.dat). And then increase the size to the one you need. For even larger sizes, you may need to go to the cluster and, at some size, iterative solver will stop converging (but I believe you are still quite far from that).

Finally, if the above doesn't help, get back to me, I may think of something else. Also, Paul Bouillon is currently working on weighted discretization, which may significantly improve the accuracy for your case. He has presently presented it at:
Bouillon P. and Yurkin M.A. Implementation of the weighted discretization in the ADDA code, Laser Interaction with Particles (LIP) and Laser Induced Incandecence (LII) 2026, 5–10 July 2026, Rouen, France, pp. 213–216. (PDF, slides)
but the code currently works only for spheres and cylinders. Spheroids are next on his list to implement, so if you have a nice application in mind, let us know - it will motivate Paul to do it faster.

Maxim.

P.S. This answer has been forwarded to your e-mail address for your convenience. However, if you want to continue the discussion please reply to the group's e-mail. You are also advised to check the corresponding discussion thread at http://groups.google.com/group/adda-discuss and/or subscribe to it to receive automatic notifications, since other answers/comments will not be necessarily forwarded to your e-mail. 
--
You received this message because you are subscribed to the Google Groups "ADDA questions and answers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to adda-discuss...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/adda-discuss/5ce59c72-d37d-4416-b9ee-1e7f53b189f7n%40googlegroups.com.


Neil Cutting

unread,
Jul 31, 2026, 5:42:28 PM (13 days ago) Jul 31
to ADDA questions and answers
Hi Maxim,
Will give it a try! I tested for size parameters 15 and 30 so far with aspect ratios of 0.1, 0.2, 0.5, 2.0, 5.0, and 10.0. However, I will give the fixed orientation runs a try first to verify agreement between the SV-TM and ADDA. I am presenting some of my initial findings along with some findings for testing the number of orientations for convergence for hexagonal columns between the ADDA and II-TM at the AMS Summit next week as a poster. Thank you for all of the help both here and from the manual. It has been a big help! 

Best, 
Neil Cutting
Reply all
Reply to author
Forward
0 new messages