Problem in mapping axisymmetric vector field to a 3D rectangular coordinate system
2 次查看(过去 30 天)
显示 更早的评论
Dear All,
I have a velocity vector field in axisymmetric coordinate system (r,z), where r is the radius (sqrt(x^2+y^2)) and z is the axis. Suppose we have the following simple axisymmetric vector field:
[ r, z ] = meshgrid( 0.1:0.1:1, 0.1:0.1:1);
ur = ones(size(r)); % velocity vector component in r direction.
uz = ones(size(r)); % velocity vector component in z direction.
quiver(r, z, ur, uz)
QUIVER function shows the vector field which is exactly similar for all theta due to being axisymmetric. theta is the angle between the radius and x-axis and actually revolves around z-axis. Any theta has a velocity vector field similar to the above code. My questions is:
- How I can map this vector field to three dimensional space? In other words, how can I revolve this vector field and at the same time copy it to other angles to cover 360° and make a three dimensional Cartesian vector field?
- How can I make the result of the mapping a valid MESHGRID data? To achieve this, do I have to do interpolation? Is interpolation the only way? I would like to avoid interpolation because it affects the vector field. My ultimate goal is to be able to use the functions CURL and ISOSURFACE and these functions needs a valid MESHGRID data.
For question#1, to make a three dimensional vector field, I kept 'z' and 'uz' and mapped 'r' and 'ur' to their 'x' and 'y' components by using 'r*cos()' and 'r*sin()'. Unfortunately, this will not yield a valid MESHGRID which I mentioned in question#2.
I would be thankful for any help.
Thanks,
Ahmad
2 个评论
Image Analyst
2012-10-29
This looks related to your other meshgrid question. Is it? If so, just combine them into one and delete your other question - don't keep two questions going on the same question.
回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Map Display 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!