MATLAB Answers

plot to the function

조회 수: 14(최근 30일)
Junway 9 Apr 2021 3:39
답변: DGM 9 Apr 2021 4:28
This is function
when r 0 to 3
when z 0, 0.03, 0.2, 0.5, 1,2
can you help me plot?
do i use vector or for loop or calculate each part and put in matlab?

채택된 답변

KALYAN ACHARJYA 9 Apr 2021 4:14
편집: KALYAN ACHARJYA 9 Apr 2021 4:17
z=[0, 0.03, 0.2, 0.5, 1,2];
for i=1:length(z)
eq=..... % Here z(i)
plot(eq); % r vs. eq
hold on;
Add legend for z values

추가 답변(1개)

DGM 9 Apr 2021 4:28
If you're using a relatively new version, this should work. Avoid loops where possible. In this case, you don't need any.
r = linspace(0,3,20); % use a fine vector for this one
z = [0 0.03 0.2 0.5 1 2]'; % salient values, but transposed
% now we are doing elementwise math with row and col vectors
% our solution is now no longer a vector
% each row of f corresponds to one value of z
% note that doing this directly only works in R2016b or newer
% this could otherwise be done using a loop or bsxfun()
f = r.^2.*sqrt(1+(2*z.*r).^2) ./ sqrt((1+r.^2).^2 + (2*z.*r).^2);
h = plot(r,f); grid on
% in order to get the zeta values in the legend automatically
tagfun=@(x) sprintf('\\zeta = %2.2f',x)
xlabel('tony the tiger''s favorite letter')
ylabel('cereal consumed')

Community Treasure Hunt

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

Start Hunting!

Translated by