MATLAB Answers

Error using Quiver function

15 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!

  0 Comments

Sign in to comment.

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.

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by