# Problem in mapping axisymmetric vector field to a 3D rectangular coordinate system

2 ビュー (過去 30 日間)
AP 2012 年 10 月 29 日
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:
1. 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?
2. 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,
##### 2 件のコメント表示非表示 1 件の古いコメント
AP 2012 年 10 月 29 日
I deleted it and explained my question in more details here.

サインインしてコメントする。

### Community Treasure Hunt

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

Start Hunting!