Có cách nào hiệu quả để thay đổi giữa hệ tọa độ Descartes và n-spherical one không? Việc chuyển đổi như sau: hệ tọa độ n-sphere với hệ tọa độ Cartesian
Sau đây là mã của tôi nhưng tôi muốn để thoát khỏi vòng lặp:
import numpy as np
import scipy.sparse
def coord_transform_n(r,alpha):
"""alpha: the n-2 values between [0,\pi) and last one between [0,2\pi)
"""
x=[]
for i in range(alpha.shape[0]):
x.append(r*np.prod(np.sin(alpha[0:i]))*np.cos(alpha[i]))
return np.asarray(x)
print coord_transform_n(1,np.asarray(np.asarray([1,2])))
tôi nhận ra mã của tôi là không đúng. Tôi không bao gồm tọa độ cuối cùng, cụ thể là x_n! – Cupitor