Curvilinear vector finite difference approach to the computation of waveguide modes