PHD Discussions Logo

Ask, Learn and Accelerate in your PhD Research

Question Icon Post Your Answer

Question Icon

I have sparse 3D far-field data points from an EM simulator. What’s the best interpolation algorithm in MATLAB to generate smooth, publication-quality 2D rectilinear (gain vs. angle) plots?

My antenna simulation exports gain values at coarse 5° increments in theta and phi. When I plot a specific phi-cut (e.g., phi=0°), the line is jagged. I want to interpolate to a finer grid (e.g., 0.1°) for a smooth curve. Should I use linear, cubic spline, or something more specialized like spherical harmonic interpolation? I'm concerned about introducing artifacts, especially near pattern nulls where the phase changes rapidly. Is there a standard approach in antenna measurement post-processing?

All Answers (1 Answers In All)

By Luisftun Answered 1 year ago

For a single 2D phi-cut, cubic spline interpolation is standard and works well for most pattern lobes. However, it can overshoot and create ripples near deep nulls. My robust workflow is: 1. Extract the 1D data for your cut (Gain vs. Theta). 2. Use a Savitzky-Golay filter ( sgolayfilt in MATLAB) to lightly smooth the raw data first—this reduces noise without shifting peaks. 3. Apply piecewise cubic Hermite interpolating polynomial (PCHIP) interpolation. PCHIP preserves monotonicity and won't create false extrema, making it safer for nulls than a standard spline. 4. Interpolate onto your fine grid. Avoid interpolating over the entire sphere if you only need a few cuts. For full 3D smoothing, consider spherical harmonic expansion, but that's overkill for simple 2D line plots.

 

Your Answer