Note
Go to the end to download the full example code.
Plot the line continuum for a given grid point¶
Demonstrate how to create spectra using a collection of line luminosities instead of the default approach. Mostly for testing purposes.

/opt/hostedtoolcache/Python/3.10.16/x64/lib/python3.10/site-packages/unyt/array.py:1832: RuntimeWarning: divide by zero encountered in log10
out_arr = func(np.asarray(inp), out=out_func, **kwargs)
['He 2 1025.27A' 'O 6 1031.91A' 'O 6 1037.61A' 'He 2 1084.94A'
'Si 2 1179.59A' 'Si 3 1206.50A' 'He 2 1215.13A' 'H 1 1215.67A'
'O 5 1218.34A' 'N 5 1238.82A' 'N 5 1242.80A' 'Si 2 1260.42A'
'Si 2 1264.74A' 'Si 2 1265.00A' 'O 1 1302.17A' 'O 1 1304.86A'
'O 1 1306.03A' 'C 2 1334.53A' 'C 2 1335.66A' 'C 2 1335.71A'
'Si 4 1393.75A' 'O 4 1399.78A' 'O 4 1401.16A' 'Si 4 1402.77A'
'O 4 1404.81A' 'O 4 1407.38A' 'N 4 1486.50A' 'Si 2 1526.71A'
'Si 2 1533.43A' 'C 4 1548.19A' 'C 4 1550.77A' 'Ne 4 1601.45A'
'He 2 1640.41A' 'O 1 1641.31A' 'C 1 1657.91A' 'O 3 1660.81A'
'O 3 1666.15A' 'Al 2 1670.79A' 'N 3 1749.67A' 'Mg 6 1806.00A'
'Si 3 1882.71A' 'Si 3 1892.03A' 'C 3 1906.68A' 'C 3 1908.73A'
'C 1 1992.01A' 'Si 7 2146.64A' 'O 3 2320.95A' 'C 2 2325.40A'
'C 2 2326.93A' 'Fe 2 2395.63A' 'Fe 2 2399.24A' 'Fe 2 2406.66A'
'Fe 2 2410.52A' 'C 1 2582.90A' 'Fe 2 2598.37A' 'Fe 2 2607.09A'
'Fe 2 2611.87A' 'Fe 2 2613.82A' 'Fe 2 2625.67A' 'Fe 2 2628.29A'
'Mg 7 2628.89A' 'Fe 2 2631.05A' 'Fe 2 2631.32A' 'Mg 5 2782.76A'
'Mg 2 2795.53A' 'Mg 2 2802.71A' 'Fe 4 2829.36A' 'Fe 4 2835.74A'
'Ar 4 2853.66A' 'Fe 4 3094.96A' 'He 1 3187.74A' 'Ne 5 3345.82A'
'Ne 5 3425.88A' 'Fe 7 3586.32A' 'Fe 6 3662.50A' 'O 2 3726.03A'
'O 2 3728.81A' 'H 1 3734.37A' 'H 1 3750.15A' 'Fe 7 3758.92A'
'H 1 3770.63A' 'H 1 3797.90A' 'H 1 3835.38A' 'Ne 3 3868.76A'
'He 1 3888.64A' 'H 1 3889.05A' 'Fe 5 3891.28A' 'Ne 3 3967.47A'
'H 1 3970.07A' 'S 2 4068.60A' 'S 2 4076.35A' 'H 1 4101.73A'
'Fe 2 4243.97A' 'Fe 2 4276.84A' 'Fe 2 4287.39A' 'Fe 2 4319.62A'
'H 1 4340.46A' 'Fe 2 4346.86A' 'Fe 2 4352.79A' 'Fe 2 4358.37A'
'Fe 2 4359.33A' 'O 3 4363.21A' 'Fe 2 4413.78A' 'Fe 2 4416.27A'
'Fe 2 4452.10A' 'Fe 2 4474.90A' 'Fe 3 4658.05A' 'He 2 4685.68A'
'Fe 2 4814.54A' 'H 1 4861.32A' 'Fe 2 4874.50A' 'Fe 2 4889.62A'
'Fe 2 4905.35A' 'Fe 2 4923.92A' 'Fe 2 4947.39A' 'O 3 4958.91A'
'Fe 2 4973.40A' 'Fe 3 4985.87A' 'Fe 2 5005.52A' 'O 3 5006.84A'
'Fe 2 5018.44A' 'Fe 2 5020.25A' 'Fe 2 5049.30A' 'Fe 2 5072.41A'
'Fe 2 5111.64A' 'Fe 2 5158.01A' 'Fe 2 5158.79A' 'Fe 2 5169.03A'
'Fe 6 5176.04A' 'Fe 2 5184.80A' 'Fe 2 5261.63A' 'Fe 3 5270.40A'
'Fe 2 5273.36A' 'Fe 2 5284.10A' 'Fe 2 5333.66A' 'Fe 2 5376.47A'
'Fe 2 5412.67A' 'Fe 2 5433.15A' 'Fe 2 5527.36A' 'Fe 7 5720.71A'
'He 1 5875.61A' 'He 1 5875.64A' 'Fe 7 6086.97A' 'O 1 6300.30A'
'O 1 6363.78A' 'Fe 2 6516.08A' 'N 2 6548.05A' 'H 1 6562.80A'
'N 2 6583.45A' 'Ni 2 6666.80A' 'He 1 6678.15A' 'S 2 6716.44A'
'S 2 6730.82A' 'Ar 3 7135.79A' 'Fe 2 7155.17A' 'Fe 2 7172.00A'
'Ca 2 7291.47A' 'Ca 2 7323.89A' 'Ni 2 7377.83A' 'Fe 2 7388.17A'
'Ni 2 7411.61A' 'Fe 2 7452.56A' 'Ar 3 7751.11A' 'O 1 8446.25A'
'O 1 8446.36A' 'O 1 8446.76A' 'Cl 2 8578.70A' 'Fe 2 8616.95A'
'Fe 2 8891.93A' 'Fe 2 9051.95A' 'S 3 9068.62A' 'Fe 2 9226.63A'
'H 1 9229.02A' 'Fe 2 9267.56A' 'Fe 2 9399.04A' 'Fe 2 9470.94A'
'S 3 9530.62A' 'H 1 9545.97A' 'H 1 1.00494m' 'S 2 1.02867m'
'S 2 1.03205m' 'S 2 1.03364m' 'He 1 1.08291m' 'He 1 1.08303m'
'H 1 1.09381m' 'O 1 1.12863m' 'O 1 1.12864m' 'O 1 1.12869m'
'O 1 1.12870m' 'O 1 1.12873m' 'Ni 2 1.19102m' 'Fe 2 1.25668m'
'Fe 2 1.27877m' 'H 1 1.28181m' 'Fe 2 1.29427m' 'Fe 2 1.32055m'
'Fe 2 1.32777m' 'Fe 2 1.37181m' 'Fe 2 1.53348m' 'Fe 2 1.59948m'
'Fe 2 1.64355m' 'Fe 2 1.66377m' 'Fe 2 1.67688m' 'Fe 2 1.71113m'
'Fe 2 1.74494m' 'Fe 2 1.79711m' 'Fe 2 1.80002m' 'Fe 2 1.80940m'
'H 1 1.87510m' 'Fe 2 1.89541m' 'Ni 2 1.93877m' 'Fe 2 1.95361m'
'Si 6 1.96247m' 'H 1 2.16553m' 'Si 7 2.48071m']
He 2 1025.27A 2.6684436192911277e+17 erg
O 6 1031.91A 0.0 erg
O 6 1037.61A 0.0 erg
He 2 1084.94A 4.649008956096094e+17 erg
Si 2 1179.59A 2.684416076668131e+19 erg
Si 3 1206.50A 5.207698712245799e+19 erg
He 2 1215.13A 1.4273384122779743e+18 erg
H 1 1215.67A 2.4142112114545024e+22 erg
O 5 1218.34A 8702262944309.936 erg
N 5 1238.82A 6.796800582844339e+16 erg
N 5 1242.80A 7.803526478139834e+16 erg
Si 2 1260.42A 9.01192432025211e+18 erg
Si 2 1264.74A 1.4809434868717558e+19 erg
Si 2 1265.00A 2.103309921524258e+19 erg
O 1 1302.17A 2.390640416150038e+18 erg
O 1 1304.86A 2.0033236506572345e+19 erg
O 1 1306.03A 6.900707936461656e+18 erg
C 2 1334.53A 9.585877416208927e+18 erg
C 2 1335.66A 8.501834156734459e+18 erg
C 2 1335.71A 1.1320634664191865e+19 erg
Si 4 1393.75A 1.9173215933478314e+19 erg
O 4 1399.78A 3346066950717044.0 erg
O 4 1401.16A 2138349470187679.8 erg
Si 4 1402.77A 1.5945153458972033e+19 erg
O 4 1404.81A 1113943704997798.5 erg
O 4 1407.38A 3289405380316562.5 erg
N 4 1486.50A 1.6020079558317293e+17 erg
Si 2 1526.71A 3.2073313626984684e+18 erg
Si 2 1533.43A 1.2226239635607536e+19 erg
C 4 1548.19A 1.5205998846073379e+19 erg
C 4 1550.77A 2.8477210719267336e+19 erg
Ne 4 1601.45A 167798496915594.3 erg
He 2 1640.41A 7.677017265205076e+18 erg
O 1 1641.31A 1089508790432881.4 erg
C 1 1657.91A 2.5471349361541984e+17 erg
O 3 1660.81A 1.2786144319067945e+19 erg
O 3 1666.15A 3.7648114434306376e+19 erg
Al 2 1670.79A 0.0 erg
N 3 1749.67A 6.393808084796461e+18 erg
Mg 6 1806.00A 0.0 erg
Si 3 1882.71A 2.4175939462879927e+20 erg
Si 3 1892.03A 1.8363934182115918e+20 erg
C 3 1906.68A 2.918060454353271e+20 erg
C 3 1908.73A 1.9988936777604936e+20 erg
C 1 1992.01A 3487609307446.4688 erg
Si 7 2146.64A 0.0 erg
O 3 2320.95A 3.2844989668864213e+19 erg
C 2 2325.40A 1.74408349657985e+20 erg
C 2 2326.93A 9.982434290597131e+19 erg
Fe 2 2395.63A 2.9339442483637244e+19 erg
Fe 2 2399.24A 4.625963478001286e+18 erg
Fe 2 2406.66A 4.3675242162858993e+18 erg
Fe 2 2410.52A 4.006633357914469e+18 erg
C 1 2582.90A 16406249663160.828 erg
Fe 2 2598.37A 5.728052485964241e+18 erg
Fe 2 2607.09A 7.709455938083249e+18 erg
Fe 2 2611.87A 3.0991333805488603e+19 erg
Fe 2 2613.82A 4.5003817072701676e+18 erg
Fe 2 2625.67A 2.107450025915887e+20 erg
Fe 2 2628.29A 3.475985215281353e+18 erg
Mg 7 2628.89A 0.0 erg
Fe 2 2631.05A 7.316414414293366e+18 erg
Fe 2 2631.32A 4.740509614650159e+19 erg
Mg 5 2782.76A 0.0 erg
Mg 2 2795.53A 2.362113010523026e+21 erg
Mg 2 2802.71A 1.1727536648327712e+21 erg
Fe 4 2829.36A 4.133588296376539e+20 erg
Fe 4 2835.74A 7.533259970554252e+20 erg
Ar 4 2853.66A 1.5683891991858092e+18 erg
Fe 4 3094.96A 1.9528375144762104e+20 erg
He 1 3187.74A 3.184002735564638e+20 erg
Ne 5 3345.82A 104386041446.37408 erg
Ne 5 3425.88A 292918932905.44904 erg
Fe 7 3586.32A 0.0 erg
Fe 6 3662.50A 62478396475761.81 erg
O 2 3726.03A 8.9359113124198e+21 erg
O 2 3728.81A 7.377615900844416e+21 erg
H 1 3734.37A 4.395339637179697e+20 erg
H 1 3750.15A 5.430197115009305e+20 erg
Fe 7 3758.92A 0.0 erg
H 1 3770.63A 6.930919855708972e+20 erg
H 1 3797.90A 6.667179776558751e+20 erg
H 1 3835.38A 9.254528566541645e+20 erg
Ne 3 3868.76A 3.3472319016531615e+21 erg
He 1 3888.64A 8.432345782614368e+20 erg
H 1 3889.05A 1.3619690748927497e+21 erg
Fe 5 3891.28A 3.860369277070337e+16 erg
Ne 3 3967.47A 1.0444026048085539e+21 erg
H 1 3970.07A 2.0955155176343572e+21 erg
S 2 4068.60A 1.8392977375494966e+20 erg
S 2 4076.35A 5.872291571961159e+19 erg
H 1 4101.73A 3.494794523415847e+21 erg
Fe 2 4243.97A 9.458771321119739e+19 erg
Fe 2 4276.84A 2.7281429041684558e+19 erg
Fe 2 4287.39A 9.054181344558314e+19 erg
Fe 2 4319.62A 8.686582651214944e+18 erg
H 1 4340.46A 6.771193012083055e+21 erg
Fe 2 4346.86A 2.2939521422864175e+19 erg
Fe 2 4352.79A 1.3424626055686466e+19 erg
Fe 2 4358.37A 4.269467031233169e+18 erg
Fe 2 4359.33A 6.824612006186533e+19 erg
O 3 4363.21A 2.6565145845646872e+20 erg
Fe 2 4413.78A 4.884054981448519e+19 erg
Fe 2 4416.27A 1.4273345956272781e+19 erg
Fe 2 4452.10A 3.1708858118475678e+19 erg
Fe 2 4474.90A 1.5518713490729605e+19 erg
Fe 3 4658.05A 1.8155395312155684e+21 erg
He 2 4685.68A 3.3829909740349204e+18 erg
Fe 2 4814.54A 2.8491099062086713e+19 erg
H 1 4861.32A 1.6367281262623778e+22 erg
Fe 2 4874.50A 1.1980082357630695e+19 erg
Fe 2 4889.62A 1.9974206183697805e+19 erg
Fe 2 4905.35A 1.4203081884486949e+19 erg
Fe 2 4923.92A 2.0687022823915805e+17 erg
Fe 2 4947.39A 3.34614355388081e+19 erg
O 3 4958.91A 2.7876993606676587e+22 erg
Fe 2 4973.40A 9.715733978311913e+18 erg
Fe 3 4985.87A 2.3301226005688294e+20 erg
Fe 2 5005.52A 1.933258604492412e+19 erg
O 3 5006.84A 8.409045917168631e+22 erg
Fe 2 5018.44A 3.281412656552321e+17 erg
Fe 2 5020.25A 5.615684128119128e+18 erg
Fe 2 5049.30A 2.29813525371211e+19 erg
Fe 2 5072.41A 5.555785447221173e+19 erg
Fe 2 5111.64A 3.2382268427472028e+19 erg
Fe 2 5158.01A 9.316392896424417e+18 erg
Fe 2 5158.79A 2.844637775367266e+20 erg
Fe 2 5169.03A 2.605088584526983e+18 erg
Fe 6 5176.04A 616508314811264.0 erg
Fe 2 5184.80A 8.073590800189694e+18 erg
Fe 2 5261.63A 1.1282377647832028e+20 erg
Fe 3 5270.40A 1.1880260570675308e+21 erg
Fe 2 5273.36A 6.6533416246033514e+19 erg
Fe 2 5284.10A 1.0224392955462118e+17 erg
Fe 2 5333.66A 5.665236717776721e+19 erg
Fe 2 5376.47A 2.5973969114046145e+19 erg
Fe 2 5412.67A 5.396493149152941e+18 erg
Fe 2 5433.15A 2.107909553937569e+19 erg
Fe 2 5527.36A 4.077367708604737e+19 erg
Fe 7 5720.71A 0.0 erg
He 1 5875.61A 1.363793364190283e+21 erg
He 1 5875.64A 8.182912819812047e+20 erg
Fe 7 6086.97A 0.0 erg
O 1 6300.30A 4.598592426151358e+20 erg
O 1 6363.78A 1.4856055856935063e+20 erg
Fe 2 6516.08A 1.4557869391300672e+16 erg
N 2 6548.05A 1.51925532961907e+21 erg
H 1 6562.80A 6.473676961272349e+22 erg
N 2 6583.45A 4.501279748185385e+21 erg
Ni 2 6666.80A 1.1463240337837658e+19 erg
He 1 6678.15A 7.682611210219452e+20 erg
S 2 6716.44A 2.2943132357416793e+21 erg
S 2 6730.82A 2.7814126572912504e+21 erg
Ar 3 7135.79A 3.1447180974962303e+21 erg
Fe 2 7155.17A 4.136544285329326e+20 erg
Fe 2 7172.00A 7.776119070881563e+19 erg
Ca 2 7291.47A 6.702713437788037e+20 erg
Ca 2 7323.89A 4.4167660972914265e+20 erg
Ni 2 7377.83A 3.236599859598313e+20 erg
Fe 2 7388.17A 6.096012667309214e+19 erg
Ni 2 7411.61A 2.135139052681041e+19 erg
Fe 2 7452.56A 1.395710930324371e+20 erg
Ar 3 7751.11A 8.190350039061738e+20 erg
O 1 8446.25A 2.0824425247357391e+18 erg
O 1 8446.36A 5.054980912443591e+18 erg
O 1 8446.76A 4.4180863129251676e+18 erg
Cl 2 8578.70A 9.485539768197089e+19 erg
Fe 2 8616.95A 2.3350465244684295e+20 erg
Fe 2 8891.93A 1.121833170510262e+20 erg
Fe 2 9051.95A 3.549683399861723e+20 erg
S 3 9068.62A 1.1013673338224048e+22 erg
Fe 2 9226.63A 1.3315692650931182e+20 erg
H 1 9229.02A 8.733222256849899e+20 erg
Fe 2 9267.56A 5.336025494445137e+19 erg
Fe 2 9399.04A 1.3971360900329433e+20 erg
Fe 2 9470.94A 5.574135072459046e+19 erg
S 3 9530.62A 2.923767079037357e+22 erg
H 1 9545.97A 1.305734049219602e+21 erg
H 1 1.00494m 2.077370652627567e+21 erg
S 2 1.02867m 1.2348455705225011e+20 erg
S 2 1.03205m 1.6867578042671258e+20 erg
S 2 1.03364m 1.2206150504854376e+20 erg
He 1 1.08291m 1.2129415688009951e+21 erg
He 1 1.08303m 7.690528818120729e+21 erg
H 1 1.09381m 3.6780639088122664e+21 erg
O 1 1.12863m 1.0308601762600673e+18 erg
O 1 1.12864m 9.715147529121243e+17 erg
O 1 1.12869m 5.5215786491403475e+17 erg
O 1 1.12870m 3.4393335456498605e+17 erg
O 1 1.12873m 1.2954930383359534e+18 erg
Ni 2 1.19102m 1.188898880955155e+20 erg
Fe 2 1.25668m 3.5292491155340545e+20 erg
Fe 2 1.27877m 1.5143610900182895e+19 erg
H 1 1.28181m 7.808333237227415e+21 erg
Fe 2 1.29427m 3.0934414843565363e+19 erg
Fe 2 1.32055m 1.1878685214812843e+20 erg
Fe 2 1.32777m 2.0888558249854255e+19 erg
Fe 2 1.37181m 7.072259402994181e+19 erg
Fe 2 1.53348m 8.69504666850521e+20 erg
Fe 2 1.59948m 3.642927921808465e+20 erg
Fe 2 1.64355m 7.109336706846334e+21 erg
Fe 2 1.66377m 1.9590037561984706e+20 erg
Fe 2 1.67688m 3.5908730161453734e+20 erg
Fe 2 1.71113m 8.224526893813485e+19 erg
Fe 2 1.74494m 9.815888967313621e+19 erg
Fe 2 1.79711m 1.924128972950678e+20 erg
Fe 2 1.80002m 3.7386967636979896e+20 erg
Fe 2 1.80940m 1.9741709565745648e+21 erg
H 1 1.87510m 2.3250359219510588e+22 erg
Fe 2 1.89541m 7.241299655329109e+19 erg
Ni 2 1.93877m 1.8127797537489673e+20 erg
Fe 2 1.95361m 2.6264545571697715e+20 erg
Si 6 1.96247m 0.0 erg
H 1 2.16553m 2.3124645735877124e+21 erg
Si 7 2.48071m 0.0 erg
8.409640299708007e+22 erg/(Hz*s)
3.1536864796138526e+24 erg/(Hz*s)
import matplotlib.pyplot as plt
import numpy as np
from unyt import Hz, c, erg, s
from synthesizer.emissions import Sed
from synthesizer.grid import Grid
# define grid
grid_name = "test_grid"
grid_dir = "../../tests/test_grid/"
grid = Grid(grid_name, grid_dir=grid_dir, read_lines=True)
# define grid point
grid_point = grid.get_grid_point(log10ages=6.5, metallicity=0.01)
# get an Sed
sed = grid.get_spectra(grid_point, spectra_id="linecont")
plt.plot(np.log10(sed.lam), np.log10(sed.lnu))
plt.xlim([2.0, 5.0])
plt.ylim([18.0, 23])
plt.xlabel(r"$\rm log_{10}(\lambda/\AA)$")
plt.ylabel(r"$\rm log_{10}(L_{\nu}/erg\ s^{-1}\ Hz^{-1} M_{\odot}^{-1})$")
plt.show()
print(grid.available_lines)
lnu = (np.zeros(len(sed.lam)) + 1) * erg / s / Hz
lc = grid.get_lines(grid_point)
for ind in range(lc.nlines):
lam = lc.lam[ind]
idx = (np.abs(sed.lam - lam)).argmin()
dl = 0.5 * (sed.lam[idx + 1] - sed.lam[idx - 1])
n = c / lam
llnu = lam * (lc.luminosity[ind] / n) / dl
print(lc.line_ids[ind], llnu)
lnu[idx] += llnu.to("erg/s/Hz")
linecont = Sed(lam=sed.lam, lnu=lnu)
print(np.max(linecont.lnu))
print(np.max(sed.lnu))
plt.plot(np.log10(sed.lam), np.log10(sed.lnu), alpha=0.5, c="r")
# plt.plot(np.log10(linecont.lam), np.log10(linecont.lnu), alpha=0.5, c='b')
plt.scatter(
np.log10(linecont.lam), np.log10(linecont.lnu), alpha=0.5, color="b", s=1
)
plt.xlim([2.0, 5.0])
plt.ylim([18.0, 23])
plt.xlabel(r"$\rm log_{10}(\lambda/\AA)$")
plt.ylabel(r"$\rm log_{10}(L_{\nu}/erg\ s^{-1}\ Hz^{-1} M_{\odot}^{-1})$")
plt.show()
plt.plot(np.log10(sed.lam), sed.lnu, alpha=0.5, c="r")
# plt.plot(np.log10(linecont.lam), np.log10(linecont.lnu), alpha=0.5, c='b')
plt.scatter(np.log10(linecont.lam), linecont.lnu, alpha=0.5, color="b", s=1)
plt.xlim([2.0, 5.0])
plt.ylim([0, 0.3e23])
plt.xlabel(r"$\rm log_{10}(\lambda/\AA)$")
plt.ylabel(r"$\rm L_{\nu}/erg\ s^{-1}\ Hz^{-1} M_{\odot}^{-1}$")
plt.show()
Total running time of the script: (0 minutes 0.244 seconds)