Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Python_超人
太阳系三体模拟器
提交
9d3c6569
太阳系三体模拟器
项目概览
Python_超人
/
太阳系三体模拟器
通知
1074
Star
131
Fork
128
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
太阳系三体模拟器
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
9d3c6569
编写于
3月 23, 2023
作者:
三月三net
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
太阳系三体模拟器
上级
539327a0
变更
4
显示空白变更内容
内联
并排
Showing
4 changed file
with
27 addition
and
22 deletion
+27
-22
bodies/fixed_stars/fixed_star.py
bodies/fixed_stars/fixed_star.py
+4
-4
bodies/fixed_stars/sirius.py
bodies/fixed_stars/sirius.py
+2
-4
bodies/fixed_stars/uy_scuti.py
bodies/fixed_stars/uy_scuti.py
+4
-2
scenes/fixed_stars.py
scenes/fixed_stars.py
+17
-12
未找到文件。
bodies/fixed_stars/fixed_star.py
浏览文件 @
9d3c6569
...
@@ -83,14 +83,14 @@ class FixedStar(Body):
...
@@ -83,14 +83,14 @@ class FixedStar(Body):
print
(
"---------------------------------"
)
print
(
"---------------------------------"
)
print
(
"质量: %.2f M☉ (%.4g kg)"
%
(
self
.
mass
/
sun
.
mass
,
self
.
mass
))
print
(
"质量: %.2f M☉ (%.4g kg)"
%
(
self
.
mass
/
sun
.
mass
,
self
.
mass
))
print
(
"半径: %.2f R☉ (%.4g km)"
%
(
self
.
raduis
/
sun
.
raduis
,
self
.
raduis
))
print
(
"半径: %.2f R☉ (%.4g km)"
%
(
self
.
raduis
/
sun
.
raduis
,
self
.
raduis
))
print
(
"直径: %.2f
R
☉ (%.4g km)"
%
(
self
.
diameter
/
sun
.
diameter
,
self
.
diameter
))
print
(
"直径: %.2f
D
☉ (%.4g km)"
%
(
self
.
diameter
/
sun
.
diameter
,
self
.
diameter
))
num_sun_volume
=
self
.
volume
/
sun
.
volume
# 相当于多少个太阳体积
num_sun_volume
=
self
.
volume
/
sun
.
volume
# 相当于多少个太阳体积
if
num_sun_volume
<=
10000
:
if
num_sun_volume
<=
10000
:
print
(
"体积: %.2f
M
☉ (%.4g km³)"
%
(
num_sun_volume
,
self
.
volume
))
print
(
"体积: %.2f
V
☉ (%.4g km³)"
%
(
num_sun_volume
,
self
.
volume
))
elif
num_sun_volume
<=
100000000
:
elif
num_sun_volume
<=
100000000
:
print
(
"体积: %.2f万
M
☉ (%.4g km³)"
%
(
num_sun_volume
/
10000
,
self
.
volume
))
print
(
"体积: %.2f万
V
☉ (%.4g km³)"
%
(
num_sun_volume
/
10000
,
self
.
volume
))
else
:
else
:
print
(
"体积: %.2f亿
M
☉ (%.4g km³)"
%
(
num_sun_volume
/
100000000
,
self
.
volume
))
print
(
"体积: %.2f亿
V
☉ (%.4g km³)"
%
(
num_sun_volume
/
100000000
,
self
.
volume
))
def
density_by_radius
(
self
,
raduis
=
None
,
num_sun_raduis
=
None
):
def
density_by_radius
(
self
,
raduis
=
None
,
num_sun_raduis
=
None
):
"""
"""
...
...
bodies/fixed_stars/sirius.py
浏览文件 @
9d3c6569
...
@@ -49,10 +49,8 @@ class Sirius(FixedStar):
...
@@ -49,10 +49,8 @@ class Sirius(FixedStar):
近心点幅角 (ω)
近心点幅角 (ω)
(secondary) 147.3°
(secondary) 147.3°
详细资料
详细资料
质量 2.02[7](A) /
质量 2.02[7](A) / 0.978[7](B) M☉
0.978[7](B) M☉
半径 1.711[7](A) / 0.0084 ± 3%[8](B) R☉
半径 1.711[7](A) /
0.0084 ± 3%[8](B) R☉
表面重力 (log g) 4.33[9](A)/8.57[8](B)
表面重力 (log g) 4.33[9](A)/8.57[8](B)
亮度 25.4[7](A) /
亮度 25.4[7](A) /
0.026[10](B) L☉
0.026[10](B) L☉
...
...
bodies/fixed_stars/uy_scuti.py
浏览文件 @
9d3c6569
...
@@ -13,6 +13,8 @@ from common.consts import MO
...
@@ -13,6 +13,8 @@ from common.consts import MO
class
UYScuti
(
FixedStar
):
class
UYScuti
(
FixedStar
):
"""
"""
盾牌座 UY (UY Scuti)
盾牌座 UY (UY Scuti)
质量 7-10 M☉
半径 1708 R☉ (有争议)
--------------- 维基百科 ---------------
--------------- 维基百科 ---------------
盾牌座UY
盾牌座UY
盾牌座UY(影像中最亮恒星)周围有大量恒星。
盾牌座UY(影像中最亮恒星)周围有大量恒星。
...
@@ -55,7 +57,7 @@ class UYScuti(FixedStar):
...
@@ -55,7 +57,7 @@ class UYScuti(FixedStar):
"mass"
:
mass
,
"mass"
:
mass
,
"init_position"
:
init_position
,
"init_position"
:
init_position
,
"init_velocity"
:
init_velocity
,
"init_velocity"
:
init_velocity
,
"density"
:
3.271612056053086e-05
,
"density"
:
2.825784611529699e-06
,
"color"
:
color
,
"color"
:
color
,
"texture"
:
texture
,
"texture"
:
texture
,
"size_scale"
:
size_scale
,
"size_scale"
:
size_scale
,
...
@@ -70,4 +72,4 @@ if __name__ == '__main__':
...
@@ -70,4 +72,4 @@ if __name__ == '__main__':
fixed_star
=
UYScuti
()
fixed_star
=
UYScuti
()
print
(
fixed_star
)
print
(
fixed_star
)
fixed_star
.
compare_with_sun
()
fixed_star
.
compare_with_sun
()
fixed_star
.
density_by_radius
(
num_sun_raduis
=
755
)
fixed_star
.
density_by_radius
(
num_sun_raduis
=
1708
)
scenes/fixed_stars.py
浏览文件 @
9d3c6569
...
@@ -15,6 +15,11 @@ from bodies.body import Body, AU
...
@@ -15,6 +15,11 @@ from bodies.body import Body, AU
if
__name__
==
'__main__'
:
if
__name__
==
'__main__'
:
"""
"""
恒星演示
恒星演示
质量: 8.60 M☉ (1.711e+31 kg)
半径: 5.75 R☉ (4.003e+06 km)
"""
"""
# 构建两个天体对象(太阳、地球)
# 构建两个天体对象(太阳、地球)
D
=
5e5
D
=
5e5
...
@@ -22,20 +27,20 @@ if __name__ == '__main__':
...
@@ -22,20 +27,20 @@ if __name__ == '__main__':
bodies
=
[
bodies
=
[
Earth
(
size_scale
=
SIZE_SCALE
,
ignore_mass
=
True
),
Earth
(
size_scale
=
SIZE_SCALE
,
ignore_mass
=
True
),
Sun
(
size_scale
=
SIZE_SCALE
,
ignore_mass
=
True
),
# 太阳
Sun
(
size_scale
=
SIZE_SCALE
,
ignore_mass
=
True
),
# 太阳
Sirius
(
size_scale
=
SIZE_SCALE
,
ignore_mass
=
True
),
# 天狼星A 质量倍数 2.0
6
半径倍数 1.71
Sirius
(
size_scale
=
SIZE_SCALE
,
ignore_mass
=
True
),
# 天狼星A 质量倍数 2.0
2
半径倍数 1.71
# Bellatrix(size_scale=SIZE_SCALE, ignore_mass=True), # 参宿五 质量倍数 8.6 半径倍数 5.75
# Bellatrix(size_scale=SIZE_SCALE, ignore_mass=True), # 参宿五 质量倍数 8.6 半径倍数 5.75
Alcyone
(
size_scale
=
SIZE_SCALE
,
ignore_mass
=
True
),
# 昴宿六 质量倍数
7 半径倍数 10
Alcyone
(
size_scale
=
SIZE_SCALE
,
ignore_mass
=
True
),
# 昴宿六 质量倍数
6 半径倍数 9.5
Arcturus
(
size_scale
=
SIZE_SCALE
,
ignore_mass
=
True
),
# 大角星 质量倍数 1.
08 半径倍数 25.42
Arcturus
(
size_scale
=
SIZE_SCALE
,
ignore_mass
=
True
),
# 大角星 质量倍数 1.
1 半径倍数 25.7
# Aldebaran(size_scale=SIZE_SCALE, ignore_mass=True), # 毕宿五 质量倍数 11.3 半径倍数 38
Aldebaran
(
size_scale
=
SIZE_SCALE
,
ignore_mass
=
True
),
# 毕宿五 质量倍数 1.16 半径倍数 44.13
Rigel
(
size_scale
=
SIZE_SCALE
,
ignore_mass
=
True
),
# 参宿七 质量倍数
21 半径倍数 78.9
Rigel
(
size_scale
=
SIZE_SCALE
,
ignore_mass
=
True
),
# 参宿七 质量倍数
18 半径倍数 78
# YCanumVenaticorum(size_scale=SIZE_SCALE, ignore_mass=True), # 猎犬座Y 质量倍数 3.0 半径倍数 215
# YCanumVenaticorum(size_scale=SIZE_SCALE, ignore_mass=True), # 猎犬座Y 质量倍数 3.0 半径倍数 215
# EtaCarinae(size_scale=SIZE_SCALE, ignore_mass=True), # 海山二 质量倍数 100.0
半径倍数 278
EtaCarinae
(
size_scale
=
SIZE_SCALE
,
ignore_mass
=
True
),
# 海山二 质量倍数 125
半径倍数 278
CarinaeV382
(
size_scale
=
SIZE_SCALE
,
ignore_mass
=
True
),
# 船底座V382 质量倍数 20.0 半径倍数 35
0
# Antares(size_scale=SIZE_SCALE, ignore_mass=True), # 心宿二 质量倍数 15 半径倍数 68
0
# Antares(size_scale=SIZE_SCALE, ignore_mass=True), # 心宿二 质量倍数 12 半径倍数 770
CarinaeV382
(
size_scale
=
SIZE_SCALE
,
ignore_mass
=
True
),
# 船底座V382 质量倍数 39 半径倍数 747
Betelgeuse
(
size_scale
=
SIZE_SCALE
,
ignore_mass
=
True
),
# 参宿四 质量倍数 11.6 半径倍数 887
# Betelgeuse(size_scale=SIZE_SCALE, ignore_mass=True), # 参宿四 质量倍数 19 半径倍数 1180
# VYCanisMajoris(size_scale=SIZE_SCALE, ignore_mass=True), # 大犬座VY 质量倍数 25 半径倍数 1419.75
VYCanisMajoris
(
size_scale
=
SIZE_SCALE
,
ignore_mass
=
True
),
# 大犬座VY 质量倍数 30 半径倍数 1400
UYScuti
(
size_scale
=
SIZE_SCALE
,
ignore_mass
=
True
),
# 盾牌座 UY 质量倍数 10.0 半径倍数 1706.7
# UYScuti(size_scale=SIZE_SCALE, ignore_mass=True), # 盾牌座 UY 质量倍数 10 半径倍数 1708
Stephenson_2_18
(
size_scale
=
SIZE_SCALE
,
ignore_mass
=
True
)
# 史蒂文森2-18 质量倍数 40.0 半径倍数 215
8.5
Stephenson_2_18
(
size_scale
=
SIZE_SCALE
,
ignore_mass
=
True
)
# 史蒂文森2-18 质量倍数 40.0 半径倍数 215
0
]
]
distance_sum
=
0
distance_sum
=
0
for
idx
,
body
in
enumerate
(
bodies
):
for
idx
,
body
in
enumerate
(
bodies
):
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录