Error using Quiver function

3 views (last 30 days)
Bajinder Singh
Bajinder Singh on 19 Sep 2020
Commented: Bajinder Singh on 19 Sep 2020
Hi, I am having an error using Quiver. Below is my code.
[X,Y] = meshgrid(-1:0.1:1, -1:0.1:1);
k=2*pi;
syms U_inf Lambda Psi X Y u v
Psi = U_inf*Y+((Lambda/k)*atan(Y/X));
u = diff(Psi,Y);
v = diff (Psi, X);
quiver (X,Y,u,v)
The error is "Unable to convert expression into double array."
I believe I am not using the syms correctly. Any help is appreciated!

Answers (1)

KSSV
KSSV on 19 Sep 2020
You cannot use like that. You need to take all data in double i.e in numbers to plot the arrows.Something like below:
[X,Y] = meshgrid(-1:0.1:1, -1:0.1:1);
k=2*pi;
U_inf = rand ; % define your value
Lambda = 1. ; %define your value
Psi = U_inf*Y+((Lambda/k)*atan(Y./X));
u = gradient(Psi);
v = gradient(Psi);
quiver (X,Y,u,v)
  1 Comment
Bajinder Singh
Bajinder Singh on 19 Sep 2020
Thanks for the response. But I am not given any values for U_inf and Lambda. They are simply constants. That is why I was trying to use the "syms" command.

Sign in to comment.

Categories

Find more on Linear Algebra in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!