cartesian_to_spherical Subroutine

public subroutine cartesian_to_spherical(vec_car, vec_sph)

Arguments

Type IntentOptional Attributes Name
double precision, intent(in) :: vec_car(1:3)
double precision, intent(inout) :: vec_sph(1:3)

Calls

proc~~cartesian_to_spherical~~CallsGraph proc~cartesian_to_spherical cartesian_to_spherical dacos dacos proc~cartesian_to_spherical->dacos

Called by

proc~~cartesian_to_spherical~~CalledByGraph proc~cartesian_to_spherical cartesian_to_spherical proc~init_vectors_spherical init_vectors_spherical proc~init_vectors_spherical->proc~cartesian_to_spherical proc~get_image get_image proc~get_image->proc~init_vectors_spherical proc~get_spectrum get_spectrum proc~get_spectrum->proc~init_vectors_spherical proc~get_euv_image get_EUV_image proc~get_euv_image->proc~get_image proc~get_euv_spectrum get_EUV_spectrum proc~get_euv_spectrum->proc~get_spectrum proc~get_sxr_image get_SXR_image proc~get_sxr_image->proc~get_image proc~get_whitelight_image get_whitelight_image proc~get_whitelight_image->proc~get_image

Source Code

    subroutine cartesian_to_spherical(vec_car,vec_sph)
      ! angles in rad
      double precision, intent(in) :: vec_car(1:3)
      double precision, intent(inout) :: vec_sph(1:3)

      vec_sph(1)=dsqrt(vec_car(1)**2+vec_car(2)**2+vec_car(3)**2)
      vec_sph(2)=dacos(vec_car(3)/vec_sph(1))
      vec_sph(3)=atan2(vec_car(2),vec_car(3))

    end subroutine cartesian_to_spherical