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
125 stars 50 forks source link

Problem with TransFile Option in scuff-cas3D #208

Open xygao96 opened 4 years ago

xygao96 commented 4 years ago

Hi,

Recently I was trying to use scuff-cas3D to calculate casimir force. As I just started to use this package this week, I first tried to run the SiliconBeams example. However I met a very strange problem when I use the TransFile option. In the document, it said the calculation of specific frequency is much faster than a full run which is also reasonable from the view of theory. But when I ran the command:

% scuff-cas3d --geometry SiliconBeams_192.scuffgeo --TransFile Beams.trans --zforce --xi 0.7

it took two days the complete the calculation with 20 cores CPUs on cluster which is very unreasonable. And I also use tail -f scuff-cas3D to monitor the progress and I found it updated around every 20 minutes, sometimes even 40 minutes, which means every step of calculation takes 20-40 minutes.

Then I deleted the option '-TransFile Beams.trans' to see the calculation at a specific separation and then it only took 1 minute to complete the calculation. And every step only takes 1-2 seconds:

08/09/19::13:40:42: Surface 1 is identical to object 0 (skipping) 08/09/19::13:40:42: Applying transform DEFAULT... 08/09/19::13:40:42: Assembling U(0,1) 08/09/19::13:40:42: Assembling BEM matrix block (0,1) 08/09/19::13:40:42: Step 1: Contributions of innermost grid cells... 08/09/19::13:40:42: Step 2: Contributions of outer grid cells... 08/09/19::13:40:42: Initializing 2x8 interpolation table with 08/09/19::13:40:42: X points at [0:1:1] 08/09/19::13:40:42: Rho points at ( 08/09/19::13:40:42: 1.00e+00, 08/09/19::13:40:42: 1.45e+00, 08/09/19::13:40:42: 1.80e+00, 08/09/19::13:40:42: 2.29e+00, 08/09/19::13:40:42: 2.96e+00, 08/09/19::13:40:42: 3.60e+00, 08/09/19::13:40:42: 4.24e+00, 08/09/19::13:40:42: 4.24e+00)08/09/19::13:40:42: Creating interpolation grid with 16 grid points... 08/09/19::13:40:43: Computing ZForce... 08/09/19::13:40:43: Computing Casimir integrand at (Xi,kx)=(0.7,-1.84658) 08/09/19::13:40:43: Mem usage: 967 08/09/19::13:40:43: Assembling T1 at Xi=7.000000e-01... 08/09/19::13:40:43: Assembling BEM matrix block (0,0) 08/09/19::13:40:43: Step 1: Contributions of innermost grid cells... 08/09/19::13:40:43: Step 2: Contributions of outer grid cells... 08/09/19::13:40:43: Initializing 3x6 interpolation table with 08/09/19::13:40:43: X points at [0:0.5:1] 08/09/19::13:40:43: Rho points at ( 08/09/19::13:40:43: 0.00e+00, 08/09/19::13:40:43: 4.87e-01, 08/09/19::13:40:43: 1.07e+00, 08/09/19::13:40:43: 1.67e+00, 08/09/19::13:40:43: 2.43e+00, 08/09/19::13:40:43: 3.16e+00)08/09/19::13:40:43: Creating interpolation grid with 18 grid points..

This means if I delete the TransFile Option and change the separation manually, the calculation at one frequency at 10 different separations will only take 10 minutes. But with TransFile option the same calculation would take 2 days.

The same problem also happened when I tried the full run

%scuff-cas3d --geometry SiliconBeams_192.scuffgeo --TransFile Beams.trans --zforce

and also after deleting the option --TransFile Beams.trans, the calculation of each step became much faster.

However this is very strange as the force at different separations are calculated separately and there should be no interaction between each step. I cannot understand why this option makes the calculation much slower. Could you help me figure out what is wrong with the scuff-cas3D calculation? Thank you!

(I tried the same calculation both on my own computer (Unbuntu 18.04) and the cluster (CentOS 7). They has the same problems.)

Xingyu

raminpouria commented 4 years ago

Hi Xingyu, I am trying to install SCUFF-EM on CentOS 7 but so far I got too many errors. could u guide me through how should I install it on CentOS 7. (I have installed it on Ubuntu previously, but CentOS is different) Let me know, thanks. Ramin