我正在使用 python 模拟一个对数螺旋星系。使用参数方程,
x= a*exp(b*theta)*cos(theta)
和
y= a*exp(b*theta)*sin(theta)
我使用 numpy.random 来获取星星的随机分布。示例代码如下。
import random
from math import *
from pylab import *
import numpy as np
n=100000
a= 1
b=0.6
th =np.random.randn(n)
x= a*exp(b*th)*cos(th)
y=a*exp(b*th)*sin(th)
x1 = a*exp(b*(th))*cos(th+ pi)
y1=a*exp(b*(th))*sin(th + pi)
plot(x,y,"*")
plot(x1, y1,"*")
show()
生成的图像显示在 具有两条臂的螺旋星系下方
我需要什么:1)恒星应该径向分布在螺旋星系中。我只在手臂上得到分布。2)双臂应该是蓝色的。在这里,我的一只手臂是蓝色的,另一只是绿色的。
模拟完之后,我需要旋转星系。任何有关这方面的帮助都是不言而喻的。
**编辑:我的双臂都是蓝色的plot(x1, y1,"b*")