How to plot a Vector Field from symbolic Matrix?
Mostrar comentarios más antiguos
This code will be used to help me study Maxwell's equations using vector fields presented in Cylindrical Coordinates. I am a lowly Electronics Technician reviewing physics, so that I may one day have a shot at completing Electrical Engineering Curriculum when I return back to Engineering School one day. I have consulted with 3 of the best engineers that use MatLab from my work place, and none of them have experience with the symbolic package. I have tinkered more around this code over the Easter weekend, but I haven't presented any of my modified variants.
INPUT: "cyl" - A vector in cylindrical coordinates.
"A Cylindrical-to-Cartesian transformation matrix is specified called "trans".
OUTPUT: "rec" - rectangular coordinate obtained by matrix multiplication.
So far, it LOOKS like the matrix obtained is correct, but something is happening. A 2D plot is made, but the following error message is given:
error: set: invalid number of arguments error: called from _quiver_ at line 301 column 7 quiver3 at line 83 column 10
It seems to me like I am using the correct number of arguments, so I don't understand why there is a problem.
_____________MY CODE:_______________
clear
syms x y z phi(x,y) r(x,y,z) u v w trans cyl rec
phi = atan2(y,x);
r = sqrt(x.^2+y.^2);
trans = [cos(phi), -sin(phi), 0; sin(phi), cos(phi), 0; phi.*0, 0, 1];
cyl = [z ./ r;r; r.^2.*z];
rec = trans * cyl;
u = rec(1,1);
v = rec(2,1);
w = rec(3,1);
[x,y,z] = meshgrid([-1:.2:1]);
figure
quiver3(x,y,z,u,v,w)
3 comentarios
DJ Mac Farlane
el 17 de Abr. de 2017
Editada: Walter Roberson
el 19 de Abr. de 2017
DJ Mac Farlane
el 19 de Abr. de 2017
Editada: Andrew Newell
el 19 de Abr. de 2017
Andrew Newell
el 19 de Abr. de 2017
Nicely done! Just for curiosity, what's with the hash marks? Is that the comment symbol on your machine? Normally it's a percent sign.
Respuestas (1)
Walter Roberson
el 19 de Abr. de 2017
0 votos
"pkg load" and use of # for comments tells us that you are using Octave rather than MATLAB.
2 comentarios
Andrew Newell
el 19 de Abr. de 2017
I guess there isn't an Octave Answers!
DJ Mac Farlane
el 19 de Abr. de 2017
Categorías
Más información sobre Code Generation en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!