Convert vector from spherical basis components to Cartesian components
converts the components of a vector or set of vectors,
vr = sph2cartvec(
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,
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
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 .
[4.0; -3.5; 6.3]
Complex Number Support: Yes
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
C/C++ Code Generation
Generate C and C++ code using MATLAB® Coder™.
Usage notes and limitations:
Does not support variable-size inputs.
Introduced in R2020a