Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

COMSOL-nanoparticles-PML-scattering formalism in RF module

  1. Apr 10, 2009 #1
    Hi, all,
    I am starting with calculating scattering cross sections of metallic nanoparticles. I have some doubt about what type of scattering boundaries conditions and PML to use, since near field shows some surface waves on PML´s inner side and some reflections which affect my far-field results. Since I am not theoretician, I do a lot of guessing here....
    If anyone likes to discuss just reply, and I have tons of questions ready....
  2. jcsd
  3. Apr 12, 2009 #2
    Hi, to make it a little bit clearer:
    I have a problem with reflection of scattered field from PML (I guess). I remove scatterer, and just solve problem with geometry I want to use. There is always some kind of interference pattern of scattered field. I can decrease the reflection intensity by making PML thicker (better solution), or moving it further away (not so efficient), or both. But it´s wasting my memory. Patern depends on direction of excitation as well as on wavelength.
    My geometry is spherical encapsulated in spherical PML. Pattern is different depending on what parameters i set (cartesian or spherical), although the natural choice must be spherical. Also I define scattering boundary conditions on outer boundaries.
    Metallic scatterer is inside. It looks like reflections are independent of presence of scatterer. I know that solving is not selfconsistent procedure, but anyway it looks wierd that it´s independent.
    Any tips?
    ps. I know there must be always some reflection, but in my case is comparable to the strength of field scattered by object of interest

    Attached Files:

  4. May 5, 2009 #3
    i think maybe relocate the PML further from the particle helps. the evanescent tail of the surface plasmon should be avoid from extending into the PML.
  5. May 7, 2009 #4
    I have solved some of the problems I had, and decreased the reflections. The problem was definiion of the excitation fields in different media, cause I thought that scaling down of wavelength in different media was automatic in COMSOL, and it's not.
    Now, I have the folowing problem- My model consists of substrate, scattering particle lying down on substrate and air. I define PMLs next to different media as materials with ref.indices to be same as adjacent media, and in that case reflection comes from boundary between two PMLs. In order to avoid that, I read in some paper that one should calculate first scattering field in the same model geoetry but without particle first, and then use the solution as excitation in case when particle is present....
    So, nw problem is not the COMSOL but MAtlab, and what is the best way to extract solutions from fem.sol.u and to use it is excitation in the next loop. I don'tt have time to spend on that at the moment, but would appreciate if someone might answer few of mine questions:
    1) In harmonic scattering propagation in RF module in solver parameters there is a tab with label SOLVE FOR, and there I see variables tExscEyscEzsc10,tExscEyscEzsc20, tExscEyscEzsc11. I nknow that sc means scattered , and don't know what numbers mean and t letter.
    2) in fem.sol.u I got array with some solution, and since I don't know answer to question 1) I dont know what is there. Also, If I want to use that as excitation for the next step, I don't know where and how to define it. I am sure that meshing must be the same, but don't know how to overlay former solution in the same mesh element as a new excitation for that element. Maybe sme function might be used like posteval, and similar, but ....

  6. May 7, 2009 #5
    thanks for the update man!
  7. May 7, 2009 #6
    hi dude. i have one question. do you know how to use the dielectric function of metal from the material library to perform the scattering simulation?
  8. May 7, 2009 #7
    BTW. do you have any idea about whether PML can be implemented in transient propagation mode? thank you very much.
  9. May 8, 2009 #8
    Well, I use complex refractive index for metals from different sources (Palik, I think), n-j*k for particular wavelength, I am not sure about data in implemented library of COMSOL.
    PMLs in transient propagation mode, don't have any idea. I am using occasionally scattering harmonic propagation only, so cannot help with that...
  10. May 8, 2009 #9
    oh. my goodness. does that mean each time you do the simulation you get only the result for a single frequency?

    i haven't anticipated such difficulty with comsol simulation. i am actually a beginner doing light scattering by metallic nanoparticles. and i pretty much want to find the spectra of such interactions.
  11. May 8, 2009 #10
    Yes, one frequency at time since COMSOL is FEM. (U may try with some software based on FDTD method, it's faster but with some drawbacks)...
    Well, I am doing the same, scattering of metallic particles, and it works fine if u calculate spectra of particles in uniform medium, but if there is some interface, problems come into play, as I have mentioned in posts at the beginning...
  12. May 12, 2009 #11
    Hi, I have the same problem to solve and I think I have the same problem of reflection of scattered field caused by PML. I tried to remove the scattered element but it doesn't work... I read that you solved the problem..
    Can you explain me how to define the excitation fields in different media?
  13. May 12, 2009 #12
    I´ll try to explain. When I keep my excitation as exp(-j*k0_rfw*z) it works fine for vacuum medium. But in medium with ref. index of n, you have to define it as exp(-j*k0_rfw*n*z). If u have different media in your model, for example substrate and air, you have to define it in each subdomain separately. I use signum function, so if I have glass/air interface (glass for z<0) I define excitation as (1-sign(z))/2*exp(-j*k0_rfw*n*z)+(1+sign(z))/2*exp(-j*k0_rfw*z). U should incorporate also Fresnel formulae in this, but anyway like this it will work better.
    Send me an email to srbasket@yahoo.com for more informations
    ps. put COMSOL into subject
  14. Sep 8, 2009 #13
    Thank you for sharing.
  15. Dec 20, 2009 #14
    Hi, all,
    folks keep contacting me about different things regarding this subject. I have advanced a bit, but still some issues remaining.
    1) In excitation field definition you can forget about using complicated formulae with different expressions for z>0 and z<0. It looks like that if u use k_rfw, COMSOL will automatically consider refractive index of material into k vector in different media.
    2) THERE is a big difference if u are solving for SCATTERD or TOTAL field. You should read Jiaming Jin's book to find out more. In short, if u are solving for SCATTERD field your excitation should be defined in the most precize analytical way, using Fresnel coefficients, and in that case you need complicated formulae with z>0 and z<0, since in SCATTERING MODULE you have to define field present everywhere except PML. In total field calculation, you have to insert incident wave on one boundary (port or scattering boundary condition with excitation), and propagation should be calculated... There are some advantages/disadvantages in both cases, depending what you whant to calculatet, how much memory you have, and some FEM issues that you can read in Jim's book...
    3) About 2 step procedure: When u create new model name your dependents variables to scEx1,etc, and Application mode name to rfw1. Then you can make your geometry. After, you go to Multyphysics/Module navigator and ADD new scEx2,...,rfw2, and now you have two models on the same geometry. In both models you define separately Subdomain setting, Boundary settings, etc. Meshing is the same, since you have one geometry, and 2 models defioned on the same geometry. So, first you solve situation when your particle is made of air let's say, and later use that solution as excitation in your second model. Thus, in Physics/Scalar Variables you set Eoix... with Fresnel coefficients (or not if u don't want), and for E0ix2 you set Ex, E0iy2 set Ey, etc.... First step is to SOLVER MANAGER/Solve for you highlight rfw1, and for the output rfw1 (not necessary), and when it is done, you go to SOLVER MANAGER/Initial value, there you first Store solution, and check STORED SOLUTION option as initial values, SOLVE FOR you highlight rfw2, and the same for OUTPUT... That should work. Theoretical benefits of this procedure are not so clear to me. IF SOMEONE COMPARES IT; PLEASE PUT YOUR RESULTS AND CONCLUSION HERE....
    4) Someone asked me "How did you separate the scattered field from the substrate and from the nanoparticle?" Maybe this 2 step procedure is the answer to that. Maybe you can normalized what you get for particle air and partice made of metal case, I don't know exactely.
    5)Scattering cross-section: Read RF module reference guide. There is a Stratton-Chu formula implemented ion COMSOL for calculating far-fileld components. Onece you have them, you need spherical surface (it doesn't have to be the same as one for Stratton-Chu, can be smaller to save you integratin time) and one should do boundary integration of normEfar*normEfar, and that is proportional to scattering cross section. If you want to be more precise calculate this expresion: (normEfar*normEfar)/(Surface of particle*Ein*Ein*R*R) where R is the radius of your integrating spherical surface.

  16. Dec 20, 2009 #15
    This is how it looks.
    Cylindar made of gold, 50nm diameter, 10nm height, laying on glass substrate...
    Integration sphere for Straton-Chu was placed on 175nm from the center... That is the one geometry that worked fine in my case....Spectra are in case of air, water and dielectric of 1.517 ref. index....

    Attached Files:

  17. Dec 21, 2009 #16
    One clarification:
    In 3) second time you are solving press RESTART, not the SOLVE
  18. Dec 21, 2009 #17
    Did you compared it to any experimental data?
  19. Dec 22, 2009 #18
    Not particles of that size, but they behave in expected way. For instance Bulk refractive index sensitivity is more-less expected. I did long time ago for the bigger cylinders that I fabricate, and it fitted well.
    I can try again.
    Anyway, it looks like one have to optimize PML and meshing to get geometry that will behave fine. I was lucky with this one...
  20. Dec 29, 2009 #19

    Does it take a lot of time to do integration by using Stratton-Chu in Comsol?

    The only way to speed up the process is by making integration sphere smaller?
  21. Dec 29, 2009 #20
    When you doing your simulations, do you place nanoparticle directly on the substrate or putting it some distance away?
    If i'm placing nanoparticle directly on the substrate I'm getting huge discontinuity in the electric field right at the edge between substrate and air. Do you get something like that?

    In this paper they place nanosphere 1 nm away from substrate.

  22. Dec 30, 2009 #21
    With my machine to solve model of 200.000 elements it takes around 35min for 2 step procedure (2 solver runs, GMRES), where Stratton-Chu integration is part of second solver run, so I imagine it takes less than few minutes, but again depends on number of mesh elements that your sphere is composed of.
    Making integration sphere smaller-I am not sure. Me and few of my friends are still having some doubts regarding Stratton-Chu formula and its definition. In RF module guide they say that one should put integration sphere in the near-field of your scatterer. That is maybe correct for dielectrics, but for metallic nanoparticles there are strong evanescent fields, so maybe you have to avoid collecting them into Stratton-Chu. I am not a theoretician so I don't know yet how Stratton-Chu is really defined, and we are trying to clarify it with COMSOL support at the moment.
    So far, I am placing integration sphere on the distance few times larger than evanescent field decaying length, and that is easy for simple structure (spheres, etc....)
    ANY DISSCUSSION about interpretation on Stratton-Chu is welcome here....
  23. Dec 30, 2009 #22
    I put my structures directly on the substrate, but my structures are flat cylindars, in case of spheres might be a problem, but if you mesh it nicely might work.
    What you get depends on if are you solving for scattered field or total field, how did you defined excitation and similar. If u upload your model I can take a look, or just plot images...

    Regarding that paper, they have done single particle spectroscopy in dark field reflection configuration. So somehow they immobilized nanoshells on glass substrate. Probably they just spun coated them on glass. Also they noticed that the best correspondence between theory and experiment was in case where particle is floating 1nm above substrate. Since nanoshells in experiment are not perfect spheres I guess, they did it just for that, and not due to interface problems in COMSOL calculations.
  24. Jan 15, 2010 #23
    IMPORTANT Update regarding this post:
    It looks like COMSOL has problems regarding PMLs performance for versions older than COMSOL 3.5a+patch.
    I made geometry as always in scattering formulation (solving for scE), all air and PML, and have launched plane wave with amplitude 1 V/m. Scatered field instead of 0, was on the order of 10-40% of my excitation throughout the whole volume. That was solved in my COMSOL 3.5 version.
    My friend solved my model in his 3.5a+patch, and he got scattered field on the order of 10 to power of -4. (4 orders of magnitude, without any optimization of PML, just default values)

    So, if you have older versions forget about scattering formalism, you should solve it for total field...

    I am about to get new version, and I will post how it behaves!
  25. Jan 19, 2010 #24
    Last update:
    If you don´t have COMSOL 3.5a with installed patch, just forget about solving for scatered field (scatered harmonic propagation in RF module)...
    Just got Comsol 3.5a, and default PMLs work very good. No more wierd reflections, near field looks very neat....
  26. Mar 20, 2010 #25
    Hi, all,
    I have compared 2-step procedure with 1-step procedure, and results are the same, so don't do 2 step procedure if you are solving for SCATTERED FIELD.
    I am planning to compare 1-step procedure where Solving for scattered field, and 2-step procedure when solving for total field... Excitations are defined in different ways in these cases...
    Maybe the latter might be solution for those of you who don't have COMSOL 3.5a+patch...

    2) Use symmetry always if possible, results are same (1-2nm difference in resonance position) for far-field calculations

    3) Use swept mesh for PML layer. In order to do it in spherical geometry, you have to divide outer layer (and whole geometry) into 8 equal parts by drawing squares (big enough to envelope your geometry) in planes x=0,y=0 and z=0, and embedding them into 3D model. Later Select all objects in 3D, and press COERCE to solid... Then you can use SWEPT mesh, without errors, after meshing everything except PMLs

    That would be all
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook