How to determine where the function is equal to zero
Ältere Kommentare anzeigen
Ultimately I need to figure out the first time my function is equal to zero, but to start I just want to save the x value as a new variable whenever y = 0. Here is my code so far:
close all; clear all; clc
% Prepared by Lauren Stearns
x= 0:10;
x(1)= 1E-5;
f= @(x) (2*besselj(1,x)./x).^2; % The Given Function
y=f(x) % replace the first element in the array
plot(x,y,'b-'); % Plot the Airy pattern
hold on;
xq=0:10; % Points of inquiry
xq(1)=0.0001;
yq3 = interp1(x,y,xq,'cubic'); % Cubic Interpolation
plot(xq,yq3,'b.'); % Plotting the Cubic Interpolation
for y = 0 % Trying to save the x value as a new variable
when y = 0
x = Dark_Fringe
end
xlabel('x');
ylabel('f(x)');
title('Airy Pattern Three');
disp(Dark_Fringe)
Akzeptierte Antwort
Weitere Antworten (1)
Ahmed Hossam
am 10 Mai 2017
0 Stimmen
Try to use symbolic calculation to find 'the zeros'. Otherwise use numerical newton raphson algorithm.
Kategorien
Mehr zu Solver Outputs and Iterative Display finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!