problem in plot of given equation

df=1:300;
nc=1.33;
ns=1.5;
nf=1.59;
theta=10:60
y=zeros(length(theta),length(df))
x=1.5*sind(theta);
l=632.8;
zfc=(l/2*pi)*sqrt(x.^2-nc.^2);
zfs=(l/2*pi)*sqrt(x.^2-ns.^2);
p=1;
de=df+zfc+zfs
y=(nc/x)*((nf^2-x^2)./(nf^2-nc^2))*(zfc/de)*(2*(x/nc)^2-1)^p;
plot(df,y)
iI have problem to plot the graph

1 Comment

The sizes of vectors that are input arguments to plot function have to be the same. So you have to check it.

Sign in to comment.

Answers (1)

Abhaya
Abhaya on 24 Sep 2024
Edited: Abhaya on 24 Sep 2024
Hi Shiv,
The error you are encountering occurs while adding the vectorsdf’,zfc’, andzfs’, which have different sizes. Specifically, the vectordf’is of size 1x300, whilezfc’andzfs’are calculated based on the vectortheta’, which is of a size 1x51. To resolve this issue, you can make vectorthetaof size 1x300 using MATLABlinspace’function.
theta=linspace(10,60,300);
Additionally, when calculating 'y', ensure that you are using element-wise operations to handle each element of the vectors individually. The code given below shows how you can assign values toy’:
y=(nc./x).*((nf^2-x.^2)./(nf^2-nc^2))*(zfc/de).*(2*(x/nc).^2-1).^p;
Please refer to the code snippet given below, to resolve the error.
df = 1:300;
nc = 1.33;
ns = 1.5;
nf = 1.59;
% adjust theta to match the size of df
theta = linspace(10, 60, 300);
x = 1.5 * sind(theta);
l = 632.8;
zfc = (l / (2 * pi)) * sqrt(x.^2 - nc.^2);
zfs = (l / (2 * pi)) * sqrt(x.^2 - ns.^2);
p = 1;
% ensure df, zfc, and zfs are compatible in size
de = df + zfc + zfs;
% using element-wise operations to handle each element of the vectors individually
y = (nc ./ x) .* ((nf^2 - x.^2) ./ (nf^2 - nc^2)) .* (zfc ./ de) .* (2 * (x ./ nc).^2 - 1).^p;
plot(df, y);
For more information on linspace’, please follow the MATLAB documentation for linspace’ function.
Hope this helps.

Categories

Find more on MATLAB in Help Center and File Exchange

Products

Release

R2021b

Tags

Asked:

on 5 Feb 2022

Edited:

on 24 Sep 2024

Community Treasure Hunt

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

Start Hunting!