sph2cartvec
Convert vector from spherical basis components to Cartesian components
Description
converts the components of a vector or set of vectors, vr
= sph2cartvec(vs
,az
,el
)vs
, from their
spherical basis representation to their representation in a local
Cartesian coordinate system. A spherical basis representation is the set of components of a
vector projected into the right-handed spherical basis given by . The orientation of a spherical basis depends upon its location on the
sphere as determined by azimuth, az
, and elevation,
el
.
Examples
Cartesian Representation of Azimuthal Vector
Start with a vector in a spherical basis located at 45° azimuth, 45° elevation. The vector points along the azimuth direction. Compute the vector components with respect to Cartesian coordinates.
vs = [1;0;0]; vr = sph2cartvec(vs,45,45)
vr = 3×1
-0.7071
0.7071
0
Input Arguments
vs
— Vector in spherical basis representation
3-by-1 column vector | 3-by-N matrix
Vector in spherical basis representation specified as a 3-by-1 column vector or
3-by-N matrix. Each column of vs
contains the
three components of a vector in the right-handed spherical basis .
Example: [4.0; -3.5; 6.3]
Data Types: double
Complex Number Support: Yes
az
— Azimuth angle in degrees
scalar in range [–180, 180]
Azimuth angle in degrees, specified as a scalar in the closed range [–180, 180]. To define the azimuth angle of a point on a sphere, construct a vector from the origin to the point. The azimuth angle is the angle in the xy-plane from the positive x-axis to the vector's orthogonal projection into the xy-plane. As examples, zero azimuth angle and zero elevation angle specify a point on the x-axis while an azimuth angle of 90° and an elevation angle of zero specify a point on the y-axis.
Example: 45
Data Types: double
el
— Elevation angle in degrees
scalar in range [–90, 90]
Elevation angle in degrees, specified as a scalar in the closed range [–90, 90]. To define the elevation of a point on the sphere, construct a vector from the origin to the point. The elevation angle is the angle from its orthogonal projection into the xy-plane to the vector itself. As examples, zero elevation angle defines the equator of the sphere and ±90° elevation define the north and south poles, respectively.
Example: 30
Data Types: double
Output Arguments
vr
— Vector in Cartesian representation
3-by-1 column vector | 3-by-N matrix
Cartesian vector returned as a 3-by-1 column vector or 3-by-N matrix having
the same dimensions as vs
. Each column of vr
contains the three components of the vector in the right-handed x,y,z
basis.
More About
Spherical basis representation of vectors
Spherical basis vectors are a local set of basis vectors which point along the radial and angular directions at any point in space.
The spherical basis is a set of three mutually orthogonal unit vectors defined at a point on the sphere. The first unit vector points along lines of azimuth at constant radius and elevation. The second points along the lines of elevation at constant azimuth and radius. Both are tangent to the surface of the sphere. The third unit vector points radially outward.
The orientation of the basis changes from point to point on the sphere but is independent of R so as you move out along the radius, the basis orientation stays the same. The following figure illustrates the orientation of the spherical basis vectors as a function of azimuth and elevation:
For any point on the sphere specified by az and el, the basis vectors are given by:
Any vector can be written in terms of components in this basis as . The transformations between spherical basis components and Cartesian components take the form
.
and
.
Extended Capabilities
C/C++ Code Generation
Generate C and C++ code using MATLAB® Coder™.
Usage notes and limitations:
Does not support variable-size inputs.
Version History
Introduced in R2013a
See Also
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)