Esiste un modo efficace per passare dal sistema di coordinate cartesiano a n-spherical one? La trasformazione è il seguente: Sistema di coordinate n-sfera a sistema di coordinate cartesiane
Quello che segue è il mio codice ma voglio sbarazzarsi del ciclo:
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])))
ho realizzato il mio codice non è corretto. Non includo l'ultima coordinata, ovvero x_n! – Cupitor