finding an array of roots?
4 views (last 30 days)
Show older comments
Hello, I'm trying to find the root of f with respect to phi, given multiple values of theta. However, when doing this, it calculates phi to be a single value, though it should be mutiple values given that theta is mutiple values. Below is my code, can anybody see what I'm doing wrong? Thank you
R = .5 %m
L = 1.25 %m
H = .25 %m
N = 100
theta = linspace(0, 4*pi, N);
for i = 1:N
fphi = @(phi) R*sin(theta(i)) + L*sin(phi) - H;
phi = fzero(fphi, phi)
end
0 Comments
Answers (2)
KALYAN ACHARJYA
on 1 Oct 2019
Edited: KALYAN ACHARJYA
on 1 Oct 2019
Is this?
R=.5; %m
L=1.25; %m
H=.25; %m
N=100
phi=0;
theta=linspace(0, 4*pi, N);
for i=1:N
fphi=@(phi) R*sin(theta(i)) + L*sin(phi) - H;
phi=fzero(fphi,phi)
end
Or
R=.5; %m
L=1.25; %m
H=.25; %m
N=100;
phi=zeros(1,N);
theta=linspace(0, 4*pi, N);
for i=1:N
fphi=@(phi) R*sin(theta(i)) + L*sin(phi) - H;
phi(i)=fzero(fphi,phi(i));
end
phi
0 Comments
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!