中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何用Python繪制一個仿黑洞圖像

發布時間:2023-02-24 17:39:12 來源:億速云 閱讀:88 作者:iii 欄目:開發技術

本篇內容主要講解“如何用Python繪制一個仿黑洞圖像”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“如何用Python繪制一個仿黑洞圖像”吧!

單位制

利用einsteinpy模塊中的Shadow類,可以實現黑洞吸積盤的發射強度,換言之,用理論模擬一下黑洞的照片應該是什么樣子的。

22年5月份發布的是人馬座A*的照片,這個"黑洞"的質量為8.26×1036kg,距離地球26673光年。

根據源碼推測,einstenipy中采用幾何單位制,光速和萬有引力常數設為1, 即c=G=1。現設幾何單位制下的時間、距離以及質量單位為S,M,KG,國際制單位為s,m,kg,若以時間單位秒為基本單位,即1s=1S,由于幾何單位制下光速Sc=1M/S,則可得到距離單位的換算關系

如何用Python繪制一個仿黑洞圖像

同理,根據萬有引力常數可得到質量單位的換算關系

如何用Python繪制一個仿黑洞圖像

所以質量和距離可以分別表示為

如何用Python繪制一個仿黑洞圖像

觀測繪圖

盡管我們在地球上觀測這個黑洞,但由于相機鏡頭等因素,實際上肯定不能用這么大的尺度來觀測,所以稍微選一個差不多的距離就好

import astropy.units as u
from einsteinpy.rays import Shadow
mass = 1.98 * u.kg         
fov  = 100 * u.km
shadow = Shadow(mass=mass, fov=fov, n_rays=1000)

shadow就是其發射模型,其內部用于繪圖的主要成員有

  • fb1 x xx負半軸

  • fb2 x xx正半軸

  • intensity 發射強度

下面繪制一下不同距離處的發射強度

import matplotlib.pyplot as plt
plt.plot(shadow.fb1, shadow.intensity, "r")
plt.plot(shadow.fb2, shadow.intensity, "r")
plt.xlabel("Impact Paramter (b)")
plt.ylabel("Intensity (Emissivity)")
plt.title("Intensity Plot")
plt.grid()
plt.show()

結果如下圖所示,果然中間凹了下去

如何用Python繪制一個仿黑洞圖像

einsteinpy內嵌了繪圖函數,通過ShadowPlotter(shadow, is_line_plot=True)可以更加方便地繪制上述圖像,如果將is_line_plot設為False,則可得到強度分布圖

from einsteinpy.plotting import ShadowPlotter
obj = ShadowPlotter(shadow=shadow, is_line_plot=False)
obj.plot()
obj.show()
plt.show()

如何用Python繪制一個仿黑洞圖像

這樣一看是不是覺得和前面的那個甜甜圈確有相似之處。

到此,相信大家對“如何用Python繪制一個仿黑洞圖像”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

青川县| 准格尔旗| 徐州市| 汝南县| 宁陕县| 富蕴县| 栾城县| 兴山县| 萝北县| 临沂市| 赤城县| 酒泉市| 涟源市| 纳雍县| 明溪县| 延庆县| 绥德县| 万载县| 枣强县| 樟树市| 施甸县| 乌拉特中旗| 黄大仙区| 凤凰县| 泸定县| 大石桥市| 靖西县| 巩留县| 宽城| 怀安县| 大连市| 齐河县| 西华县| 阳信县| 凤城市| 抚顺县| 松潘县| 大竹县| 北安市| 龙胜| 汶上县|