sph2cart
Transformar coordenadas esféricas en cartesianas
Descripción
Ejemplos
Coordenadas esféricas a cartesianas
Convierta las coordenadas esféricas definidas por las entradas correspondientes en las matrices az
, el
y r
a las coordenadas cartesianas x
, y
y z
. Estos puntos corresponden a los ocho vértices de un cubo.
az = [0.7854 0.7854 -0.7854 -0.7854; 2.3562 2.3562 -2.3562 -2.3562]
az = 2×4
0.7854 0.7854 -0.7854 -0.7854
2.3562 2.3562 -2.3562 -2.3562
el = [0.6155 -0.6155 0.6155 -0.6155; 0.6155 -0.6155 0.6155 -0.6155]
el = 2×4
0.6155 -0.6155 0.6155 -0.6155
0.6155 -0.6155 0.6155 -0.6155
r = 1.7321*ones(2,4)
r = 2×4
1.7321 1.7321 1.7321 1.7321
1.7321 1.7321 1.7321 1.7321
[x,y,z] = sph2cart(az,el,r)
x = 2×4
1.0000 1.0000 1.0000 1.0000
-1.0000 -1.0000 -1.0000 -1.0000
y = 2×4
1.0000 1.0000 -1.0000 -1.0000
1.0000 1.0000 -1.0000 -1.0000
z = 2×4
1.0001 -1.0001 1.0001 -1.0001
1.0001 -1.0001 1.0001 -1.0001
Argumentos de entrada
azimuth
— Ángulo azimut
escalar | vector | matriz | arreglo multidimensional
Ángulo azimut, especificado como escalar, vector, matriz o arreglo multidimensional. azimuth
, elevation
y r
deben ser del mismo tamaño o tener tamaños compatibles (por ejemplo, azimuth
es una matriz de M
por N
, elevation
es un escalar y r
es un escalar o un vector fila de 1
por N
). Para obtener más información, consulte Tamaños de arreglos compatibles para operaciones básicas.
azimuth
es el ángulo en sentido contrario a las agujas del reloj en el plano x-y medido en radianes desde el eje x positivo.
Tipos de datos: single
| double
Soporte de números complejos: Sí
elevation
— Ángulo de elevación
escalar | vector | matriz | arreglo multidimensional
Ángulo de elevación, especificado como escalar, vector, matriz o arreglo multidimensional. azimuth
, elevation
y r
deben ser del mismo tamaño o tener tamaños compatibles.
elevation
es el ángulo de elevación en radianes desde el plano x-y.
Tipos de datos: single
| double
Soporte de números complejos: Sí
r
— Radio
escalar | vector | matriz | arreglo multidimensional
Radio, especificado como escalar, vector, matriz o arreglo multidimensional. azimuth
, elevation
y r
deben ser del mismo tamaño o tener tamaños compatibles.
Las unidades de longitud de r
pueden ser arbitrarias, y los arreglos de salida x
, y
y z
utilizan las mismas unidades.
Tipos de datos: single
| double
Soporte de números complejos: Sí
Argumentos de salida
x,y,z
— Coordenadas cartesianas
arreglos
Coordenadas cartesianas, devueltas como arreglos.
Algoritmos
La aplicación desde las coordenadas esféricas a las coordenadas cartesianas tridimensionales es
x = r .* cos(elevation) .* cos(azimuth) y = r .* cos(elevation) .* sin(azimuth) z = r .* sin(elevation)
Capacidades ampliadas
Arreglos altos
Realice cálculos con arreglos que tienen más filas de las que caben en la memoria.
Esta función es totalmente compatible con los arreglos altos. Para obtener más información, consulte Arreglos altos.
Generación de código C/C++
Genere código C y C++ mediante MATLAB® Coder™.
Notas y limitaciones de uso:
Si utiliza
sph2cart
con operandos de tipo simple y de tipo doble, es posible que el código generado no produzca el mismo resultado que MATLAB®. Consulte Binary Element-Wise Operations with Single and Double Operands (MATLAB Coder).
Generación de código de GPU
Genere código CUDA® para GPU NVIDIA® mediante GPU Coder™.
Entorno basado en subprocesos
Ejecute código en segundo plano con MATLAB® backgroundPool
o acelere código con Parallel Computing Toolbox™ ThreadPool
.
Esta función es totalmente compatible con entornos basados en subprocesos. Para obtener más información, consulte Ejecutar funciones de MATLAB en un entorno basado en subprocesos.
Arreglos GPU
Acelere código mediante la ejecución en una unidad de procesamiento gráfico (GPU) mediante Parallel Computing Toolbox™.
Esta función es totalmente compatible con los arreglos de GPU. Para obtener más información, consulte Run MATLAB Functions on a GPU (Parallel Computing Toolbox).
Arreglos distribuidos
Realice particiones de arreglos grandes por toda la memoria combinada de su cluster mediante Parallel Computing Toolbox™.
Esta función es totalmente compatible con los arreglos distribuidos. Para obtener más información, consulte Run MATLAB Functions with Distributed Arrays (Parallel Computing Toolbox).
Historial de versiones
Introducido antes de R2006a
Comando de MATLAB
Ha hecho clic en un enlace que corresponde a este comando de MATLAB:
Ejecute el comando introduciéndolo en la ventana de comandos de MATLAB. Los navegadores web no admiten comandos de MATLAB.
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)