to plot velocity vectors . But matlab shows an error .
Error using +
Matrix dimensions must agree.
Error in roms_quivergrd (line 96)
uveitheta = (u+sqrt(-1)*v).*exp(sqrt(-1)*angle);
Easygrid can generated spherical grid ,but my grid is Cartesian. I changed some codes and generated the grid.
X = 1200;
Y = 1200;
rotangle = 0; % Angle (degrees) to rotate the grid conterclock-wise
resol = 20; % Cell width and height
N = 10;
x = 0:resol:X; Lm = length(x)-2; Lp= Lm +2; L = Lp-1;
y = 0:resol:Y; Mm = length(y)-2; Mp= Mm +2; M = Mp-1;
x_rho = ones(length(y),1)*x(:)';
y_rho = y(:)*ones(1,length(x));
x_u = (x_rho(:,1:L) + x_rho(:,2:Lp))/2;
y_u = (y_rho(:,1:L) + y_rho(:,2:Lp))/2;
x_v = (x_rho(1:M,:) + x_rho(2:Mp,:))/2;
y_v = (y_rho(1:M,:) + y_rho(2:Mp,:))/2;
Could somebody tell me what's wrong with it ? How could i plot vector of current? Thank you !
MY GRID
grd_file: 'C:\Users\Administrator\Desktop\roms-result\ocean_his_2.nc'
mask_rho: [61x61 double]
mask_psi: [60x60 double]
mask_u: [61x60 double]
mask_v: [60x61 double]
h: [61x61 double]
pm: [61x61 double]
pn: [61x61 double]
f: [61x61 double]
angle: [61x61 double]
x_rho: [61x61 double]
y_rho: [61x61 double]
x_u: [61x60 double]
y_u: [61x60 double]
x_v: [60x61 double]
y_v: [60x61 double]
x_psi: [60x60 double]
y_psi: [60x60 double]
lon_rho: [61x61 double]
nolatlon: 1
lat_rho: [61x61 double]
lon_psi: [60x60 double]
lat_psi: [60x60 double]
lon_v: [60x61 double]
lat_v: [60x61 double]
lon_u: [61x60 double]
lat_u: [61x60 double]
mask_rho_nan: [61x61 double]
zeta: [61x61 double]
z_r: [10x61x61 double]
z_w: [11x61x61 double]
Vtransform: 2
Vstretching: 4
theta_s: 7
theta_b: 2
Tcline: 250
N: 10
hc: 250
sc_w: [-1 -0.9 -0.8 -0.7 -0.6 -0.5 -0.4 -0.3 -0.2 -0.1 0]
Cs_w: [1x11 double]
sc_r: [-0.95 -0.85 -0.75 -0.65 -0.55 -0.45 -0.35 -0.25 -0.15 -0.05]
Cs_r: [1x10 double]
s_w: [-1 -0.9 -0.8 -0.7 -0.6 -0.5 -0.4 -0.3 -0.2 -0.1 0]
s_rho: [-0.95 -0.85 -0.75 -0.65 -0.55 -0.45 -0.35 -0.25 -0.15 -0.05]
![Image](https://www.myroms.org/wiki/images/0/0a/Whole_grid.png)