Graph appears blank but the equation and code are correct.

1 view (last 30 days)
Hi,
I'm graphing a Gaussian function that resembles the inverse impulse response, which should look like this:
However, the graph on matlab appears blank and I can't figure out the problem.
My code:
H_k_eq = @(k) (exp(-pi.*k.^2)) / (exp(-pi.*k.^2) + exp(-pi.*(4.*k).^2));
Range = -0.5:.01:0.5;
plot(Range,H_k_eq(Range))
What is wrong with my code?

Accepted Answer

Walter Roberson
Walter Roberson on 23 Sep 2022
The MATLAB / operator is "matrix right division". A/B is similar to A * pinv(B) (but not exactly that.) So when you have a row vector on the left and the right of the / operator, MATLAB does what is effectively a fitting operation, returning a scalar result
H_k_eq = @(k) (exp(-pi.*k.^2)) ./ (exp(-pi.*k.^2) + exp(-pi.*(4.*k).^2));
Range = -0.5:.01:0.5;
plot(Range,H_k_eq(Range))

More Answers (1)

KSSV
KSSV on 23 Sep 2022
H_k_eq = @(k) (exp(-pi.*k.^2)) ./ (exp(-pi.*k.^2) + exp(-pi.*(4.*k).^2)); %<-- element by element division
Range = -0.5:.01:0.5;
plot(Range,H_k_eq(Range))

Categories

Find more on 2-D and 3-D Plots in Help Center and File Exchange

Products


Release

R2021b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!