I am trying to numerically find roots of an infinite metallic nanowire to plot dispersion diagram. I write a "for" loop in MATLAB, and set frequency value at each time, and then proceed to find the value of propagation constant which makes the dispersion function zero. I used muller method as the root-finding scheme. The problem is that the result is so much dependent on initial values I choose.
First, I considered Drude model with zero damping (no losses) for modeling the metal from which the nanowire is made of. In this case, I was able to make 2D plot of absolute value of dispersion function versus freq and propagation constant, for all the values are real. Therefore, it was easy to check which initial values give the correct results.
But when I included damping in Drude model of the metal, I could not make such a 2D plot because value of propagation constant complex in this case. Hence, I was not able to get reasonable results. Can anyone help me with this? Is there any other root-finding method which migth give better results?
Thanks