フィルターのクリア

how can I solve the problem with the plot function? (every vectors' length should be the same)

1 回表示 (過去 30 日間)
재윤
재윤 2023 年 4 月 9 日
回答済み: Vanshika Vaishnav 2023 年 4 月 12 日
clear, close all, clc
%% Calculation of Ey and Ez from V
%% Inputs
% Source Info:
Qs = 10e-9;
zs1= -1;
zs2 = 1;
Ns = 200; % No. of sections
% Field points Info (Qt = 1 C assumed)
%y0 = 0.5;
%zf0 = 0.5;
%% Grid of field points
zf1 = -5;
zf2 = 5;
dzf = 0.01;
yf1 = 0.2;
yf2 = 0.8;
dyf = 0.01;
%%
L = zs2-zs1;
rhoL = Qs/L;
dzs = (zs2-zs1)/Ns;
zzs = zs1+0.5*dzs+(0:Ns-1)*dzs;
dq = rhoL*dzs;
yyf = yf1:dyf:yf2; % Field points along y
zzf = zf1:dzf:zf2; % Field points along z
choice = 1;
if choice == 1
Nf = length(yyf);
else
Nf = length(zzf);
end
for ii=1:Nf
yf = yyf(ii);
choice = 0;
for jj=1:Nf
zf = zzf(jj);
rv1 = [0 yf-dyf/2 zf-dzf/2]; % -->V1
for kk=1:Ns
zs = zzs(kk);
rsv = [0 0 zs];
dV(kk) = func_V(rv1,rsv,dq);
end
V1 = sum(dV);
rv2 = [0 yf+dyf/2 zf+dzf/2]; % -->V2
for kk=1:Ns
zs = zzs(kk);
rsv = [0 0 zs];
dV(kk) = func_V(rv2,rsv,dq);
end
V2 = sum(dV);
V(ii,jj) = (V1+V2)/2;
theta = atan(dyf/dzf);
Ey(ii,jj) = -(V2-V1)/sqrt(dyf^2+dzf^2)*sin(theta);
Ez(ii,jj) = -(V2-V1)/sqrt(dyf^2+dzf^2)*cos(theta);
end
end
subplot(2,1,1), plot(yyf,zzf,V)
xlabel('y (m)'), ylabel('z (m)'), zlabel('V (V)')
subplot(2,1,2), plot(yyf,zzf,Ez)
xlabel('y (m)'), ylabel('z (m)'), zlabel(Ez (V/m)')
  1 件のコメント
Dyuman Joshi
Dyuman Joshi 2023 年 4 月 9 日
yyf is 1x61, zzf is 1x1001 and V and Ez are 61x61.
Theoretically, how do you plan to plot these?
Also, for 3D plots, use plot3.

サインインしてコメントする。

回答 (1 件)

Vanshika Vaishnav
Vanshika Vaishnav 2023 年 4 月 12 日
As the dimensions of the variables are not same (i.e.yyf is 1x61, zzf is 1x1001 and V and Ez are 61x61). It is not possible to plot them in same length.
"plot3" can be used to plot all this variables in vector or same length:
plot3(X,Y,Z) plots coordinates in 3-D space.
  • To plot a set of coordinates connected by line segments, specify X, Y, and Z as vectors of the same length.
  • To plot multiple sets of coordinates on the same set of axes, specify at least one of X, Y, or Z as a matrix and the others as vectors.
for more information refer this documentation:

カテゴリ

Help Center および File ExchangeSonar and Spatial Audio についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by