Source code for pyspedas.cotrans_tools.spc2cart

'''
Convert spherical coordinates (r, theta, phi) to Cartesian coordinates (x, y, z).

This function is similar to spc2cart.pro in IDL SPEDAS.
'''
import numpy as np


[docs] def spc2cart(r, theta, phi): """ Convert spherical coordinates (r, theta, phi) to Cartesian coordinates (x, y, z). Parameters: ----------- r : float Radial distance from the origin. theta : float Polar angle (angle from the positive z-axis to the point) in radians. It ranges from [0, pi]. phi : float Azimuthal angle (angle in the xy-plane from the positive x-axis to the point) in radians. It ranges from [0, 2*pi]. Returns: -------- x : float X coordinate in Cartesian system. y : float Y coordinate in Cartesian system. z : float Z coordinate in Cartesian system. Notes: ------ - Uses the following equations for conversion: x = r*sin(theta)*cos(phi) y = r*sin(theta)*sin(phi) z = r*cos(theta) """ r, theta, phi = np.array(r), np.array(theta), np.array(phi) x = r * np.sin(theta) * np.cos(phi) y = r * np.sin(theta) * np.sin(phi) z = r * np.cos(theta) return x, y, z