극좌표 플롯에서 회전하는 실린더 주변의 흐름의 속도 방정식을 플로트하려했습니다. (방정식은 Andersen의 "Fundamentals of Aerodynamics"에서 나온 것입니다.) for 루프 문에서 두 방정식을 볼 수 있습니다.극지 음모 Magnus 효과가 정확한 데이터를 표시하지 않음
큰 소리로 울부 짖는 소리에 대해 계산 된 데이터를 극좌표로 나타내지는 못합니다. 나는 내 생각을 다 해봤지만 아무 곳에도 도착하지 않았다. 나는 데이터를 확인했는데, 어떻게해야 제대로 작동하는지 알 수있다. 여기
내 마지막 시도의 코드 : 당신이 볼 수 있듯이, 나는 0으로 지금은 RPM을 설정 한
import numpy as np
import matplotlib.pyplot as plt
RadiusColumn = 1.0
VelocityInfinity = 10.0
RPM_Columns = 0.0#
ColumnOmega = (2*np.pi*RPM_Columns)/(60)#rad/s
VortexStrength = 2*np.pi*RadiusColumn**2 * ColumnOmega#rad m^2/s
NumberRadii = 6
NumberThetas = 19
theta = np.linspace(0,2*np.pi,NumberThetas)
radius = np.linspace(RadiusColumn, 10 * RadiusColumn, NumberRadii)
f = plt.figure()
ax = f.add_subplot(111, polar=True)
for r in xrange(len(radius)):
for t in xrange(len(theta)):
VelocityRadius = (1.0 - (RadiusColumn**2/radius[r]**2)) * VelocityInfinity * np.cos(theta[t])
VelocityTheta = - (1.0 + (RadiusColumn**2/radius[r]**2))* VelocityInfinity * np.sin(theta[t]) - (VortexStrength/(2*np.pi*radius[r]))
TotalVelocity = np.linalg.norm((VelocityRadius, VelocityTheta))
ax.quiver(theta[t], radius[r], theta[t] + VelocityTheta/TotalVelocity, radius[r] + VelocityRadius/TotalVelocity)
plt.show()
흐름이 왼쪽에서 오른쪽으로 이동하고를 통해 대칭해야한다는 것을 의미 수평축. (흐름은 양쪽 실린더 주위에 같은 방식으로 가야한다.) 결과는 그러나 더 이런 모습이 완료 넌센스입니다
. 설정이없는 경우에도 와도가있는 것처럼 보입니다! 0에서 pi/2까지의 데이터 만 표시 할 때도 더 이상하지 않습니다. 흐름이 바뀝니다.
당신이 코드에서 볼 수 있듯이
, 내가 단위 벡터의 사용을 만들려고했지만 명확하게 갈 방법이 아니다. 유용한 입력에 감사드립니다.감사합니다.
와우! 고마워, 이거 멋지다! 나는 너의 제안을 시험해 볼 것이다. 덧붙여 말하지만, 변수 이름을 쓰는 데 더 많은 시간이 필요하다는 것에 동의하지만 개인적으로는 코드가 10 배 더 명확 해집니다. 1 년 후, 나는 이것을 읽고 그것은 이야기를 읽는 것과 같을 것이다. 편지 변인은 나를 위해 상당히 성가 셨습니다. 어쨌든, 다시 한번 감사드립니다. – user3604362