2016-08-10 3 views
0

이제 회전 궤도를 만들기 위해 노력 중입니다. 처음에는 회전하는 대상의 초기 위치를 정의해야합니다. 이런 종류의 객체를 파이썬이나 NumPy로 3 차원 적으로 1000 개의 임의의 초기 위치로 만드는 방법은 무엇입니까? 나는 파이썬 함수가 문제를 해결할 수 있다고 생각한다.파이썬으로 임의의 초기 위치 지정

+4

'random'모듈을 사용하십시오. 보다 자세한 답변을 원하면보다 자세한 질문을해야합니다. – DeepSpace

+0

시작하려면'numpy.random' 모듈을보십시오 : http://docs.scipy.org/doc/numpy/reference/routines.random.html 그 중 하나를 사용하는 방법을 모른다면, 그들의 문서화 문자열을 살펴보십시오 - 많은 것은 문서화 문자열에 예제를 포함합니다. 도움이되지 않으면 시도한 내용과 예상하지 못한 내용을 포함하여 자세한 정보로 질문을 편집하십시오. 또한, 당신은 "위치"라고 말하지만, 당신은 얼마나 많은 차원을 말하지 않습니다. 2-D 또는 3-D 직위로 일하고 있습니까? –

+0

3 차원 위치로 작업 중입니다. –

답변

0

질문을 이해하는 경우, 구형에 균일하게 분포 된 지점을 잡아야합니다. 자세한 내용은 here을 참조하십시오.

import math 
import numpy as np 

cos_theta = 2.0 * np.random.random(100) - 1.0 
phi  = 2.0 * math.pi * np.random.random(100) 

sin_theta = np.sqrt((1.0 - cos_theta)*(1.0 + cos_theta)) 

x = sin_theta * np.cos(phi) 
y = sin_theta * np.sin(phi) 
z = cos_theta 

print(x, y, z) 
print("---------------------") 
print(np.square(x) + np.square(y) + np.square(z)) 
+0

감사합니다. 그것은 작동합니다. –