[1]:
import numpy as np
import astropy.units as u
import astropy.table
import astropy.io.fits
import plasmapy
import pathlib
import matplotlib.pyplot as plt

from astropy.coordinates import SkyCoord
from astropy.convolution import convolve, Gaussian1DKernel
import ndcube
from ndcube.extra_coords import QuantityTableCoordinate
import fiasco
import aiapy.response
from sunpy.coordinates import get_earth, Helioprojective

from fiasco.io import Parser
from fiasco.util import parse_ion_name
from synthesizAR.instruments import InstrumentDEM

from mocksipipeline.physics.spectral import get_spectral_tables
from mocksipipeline.detector.response import SpectrogramChannel, convolve_with_response

Updated 1D Spectral Predictions#

Using new effective area and inclusion of 2nd order contribution, model 1D AR spectrum.

[2]:
def dem_table_to_ndcube(dem_table):
    temperature = dem_table['temperature_bin_center']
    em = dem_table['dem']*np.gradient(temperature, edge_order=2)
    tab_coord = QuantityTableCoordinate(temperature,
                                        names='temperature',
                                        physical_types='phys.temperature')
    return ndcube.NDCube(em, wcs=tab_coord.wcs, meta=dem_table.meta)
[3]:
def compute_total_flux(dem, spec_table, channels, location, ):
    intensity = InstrumentDEM.calculate_intensity(dem, spec_table, {})
    wcs = channels[0].get_wcs(location.observer)
    pix_grid, _, _ = wcs.world_to_pixel(location, channels[0].wavelength)
    flux_total = np.zeros(pix_grid.shape)
    for chan in channels:
        flux = convolve_with_response(intensity, chan, electrons=False, include_gain=False)
        _pix_grid, _, _ = chan.get_wcs(location.observer).world_to_pixel(location, chan.wavelength)
        flux_total += np.interp(pix_grid, _pix_grid, flux.data)
    return ndcube.NDCube(flux_total, flux.wcs, unit=flux.unit)
[4]:
def degrade_spectra(spec, resolution, chan):
    std = resolution / chan.spectral_order / (2*np.sqrt(2*np.log(2)))  # FWHM is 0.5 so convert to sigma using W = 2\sqrt{2\ln2}\sigma
    std_eff = (std / chan.spectral_resolution).to_value('pix')  # Scale sigma by bin width
    kernel = Gaussian1DKernel(std_eff)
    data_smooth = convolve(spec.data, kernel)
    return ndcube.NDCube(data_smooth, wcs=spec.wcs, meta=spec.meta, unit=spec.unit)
[5]:
dem_ar = dem_table_to_ndcube(Parser('active_region.dem', ascii_dbase_root='/Users/wtbarnes/ssw/packages/chianti/dbase/').parse())
[6]:
dem_flare = dem_table_to_ndcube(Parser('flare_ext.dem', ascii_dbase_root='/Users/wtbarnes/ssw/packages/chianti/dbase/').parse())
[7]:
spec_tables = get_spectral_tables()
WARNING: UnitsWarning: The unit 'Angstrom' has been deprecated in the VOUnit standard. Suggested: 0.1nm. [astropy.units.format.utils]
WARNING: AstropyDeprecationWarning: The truth value of a Quantity is ambiguous. In the future this will raise a ValueError. [astropy.units.quantity]
[8]:
line_list = astropy.table.QTable.read('../data/moxsi-line-list.asdf')
[9]:
earth_observer = get_earth(time='2020-01-01 12:00:00')
flare_loc = SkyCoord(Tx=0*u.arcsec, Ty=0*u.arcsec,
                     frame=Helioprojective(obstime=earth_observer.obstime, observer=earth_observer))
roll_angle = -90 * u.deg
dispersion_angle = 0*u.deg
[10]:
chan_1 = SpectrogramChannel(1)
chan_2 = SpectrogramChannel(2)
chan_3 = SpectrogramChannel(3)
[12]:
flux_tot = compute_total_flux(dem_ar,
                              spec_tables['sun_coronal_1992_feldman_ext_all'],
                              [chan_1, chan_2, chan_3],
                              flare_loc)
blur = 40 * u.arcsec * chan_1.spectral_resolution / chan_1.resolution[0]
flux_tot = degrade_spectra(flux_tot, blur, chan_1)
WARNING: UnitsWarning: The unit 'Angstrom' has been deprecated in the VOUnit standard. Suggested: 0.1nm. [astropy.units.format.utils]
[13]:
pix_grid_1,_,_ = chan_1.get_wcs(flare_loc.observer).world_to_pixel(flare_loc, chan_1.wavelength)
pix_grid_2,_,_ = chan_2.get_wcs(flare_loc.observer).world_to_pixel(flare_loc, chan_2.wavelength)
pix_grid_3,_,_ = chan_3.get_wcs(flare_loc.observer).world_to_pixel(flare_loc, chan_3.wavelength)
[14]:
flux_1 = compute_total_flux(dem_ar, spec_tables['sun_coronal_1992_feldman_ext_all'], [chan_1,], flare_loc)
flux_1 = degrade_spectra(flux_1, blur, chan_1)
flux_2 = compute_total_flux(dem_ar, spec_tables['sun_coronal_1992_feldman_ext_all'], [chan_2,], flare_loc)
flux_2 = degrade_spectra(flux_2, blur, chan_2)
flux_3 = compute_total_flux(dem_ar, spec_tables['sun_coronal_1992_feldman_ext_all'], [chan_3,], flare_loc)
flux_3 = degrade_spectra(flux_3, blur, chan_3)
[20]:
ar_line_labels = line_list[line_list['intensity_scaled (coronal)_active_region']>0.1]
ar_line_labels = ar_line_labels[['ion name', 'wavelength', 'ion id']]
#ar_line_labels = ar_line_labels[np.logical_or(ar_line_labels['ion name'] == 'O VIII', ar_line_labels['ion name'] == 'O VII')]
#ar_line_labels = ar_line_labels[ar_line_labels['wavelength'] > 20*u.angstrom]
#is_iron = ['Si' in i for i in ar_line_labels['ion name']]
#ar_line_labels = ar_line_labels[is_iron]
[21]:
ar_line_labels
[21]:
QTable length=58
ion namewavelengthion id
Angstrom
str9float64str5
C V40.267398834228516c_5
C V41.471500396728516c_5
C VI33.739601135253906c_6
C VI33.73419952392578c_6
O VII21.601499557495117o_7
O VII21.803600311279297o_7
O VII22.097700119018555o_7
O VIII18.97249984741211o_8
O VIII18.967100143432617o_8
Mg IX67.23899841308594mg_9
Mg IX62.750999450683594mg_9
Mg X63.152000427246094mg_10
Mg X65.6729965209961mg_10
Mg X63.29499816894531mg_10
Mg X65.84500122070312mg_10
Mg X57.91999816894531mg_10
.........
Fe XV63.957000732421875fe_15
Fe XV59.404998779296875fe_15
Fe XV69.68199920654297fe_15
Fe XV52.9109992980957fe_15
Fe XVI66.2490005493164fe_16
Fe XVI66.35700225830078fe_16
Fe XVI54.125999450683594fe_16
Fe XVI62.87099838256836fe_16
Fe XVI54.709999084472656fe_16
Fe XVI63.71099853515625fe_16
Fe XVI50.564998626708984fe_16
Fe XVI50.361000061035156fe_16
Fe XVII15.012999534606934fe_17
Fe XVII15.26200008392334fe_17
Fe XVII17.051000595092773fe_17
Fe XVII16.77560043334961fe_17
Fe XVII17.09600067138672fe_17
[27]:
fig = plt.figure(figsize=(20,8))
ax = fig.add_subplot()
ax.plot(pix_grid_1, flux_tot.data, color='k', label='total')
ax.plot(pix_grid_1, flux_1.data, label='order=1')
ax.plot(pix_grid_2, flux_2.data, label='order=2')
ax.plot(pix_grid_3, flux_3.data, label='order=3')

# Add vertical lines denoting lines
tick_locations = []
for i, chan in enumerate([chan_1, chan_2, chan_3]):
    line_pos,_,_ = chan.get_wcs(flare_loc.observer).world_to_pixel(flare_loc, ar_line_labels['wavelength'])
    ax.vlines(line_pos, 0, 100, ls=':', color=f'C{i}',)
    tick_locations.append(line_pos)
# Add tick labels for lines
tick_labels = [f'{row["ion name"]}, {row["wavelength"].to_string(format="latex_inline")}' for row in ar_line_labels]
ax_top = ax.secondary_xaxis('top')
ax_top.set_xticks(np.hstack(tick_locations),
                  labels=3*tick_labels,
                  rotation=90,
                  horizontalalignment='center',
                  color='k');
for i, tick in enumerate(ax_top.get_xticklabels()):
    if i < len(tick_labels):
        tick.set_color('C0')
    elif len(tick_labels) <= i < 2*len(tick_labels):
        tick.set_color('C1')
    else:
        tick.set_color('C2')

ax.set_yscale('log')
#ax.set_ylim(1e-3,2e0)
ax.set_ylim(1e-7, 1e-3)
#ax.set_xlim(1800,2000)
#ax.set_xlim(1500,1800)
ax.set_xlim(1000,2000)
ax.legend()
[27]:
<matplotlib.legend.Legend at 0x2a68b26d0>
../_images/reports_updated-1d-spectra-all-orders_16_1.png
[23]:
line_list
[23]:
QTable length=836
atomic numberionization stagetransitiontransition (latex)ion namelower levelupper levelmax temperature_flare_extwavelengthonly theoretical_flare_extelemention idenergyabundance (coronal)abundance (photospheric)intensity (coronal)_flare_extintensity_scaled (coronal)_flare_extintensity (photospheric)_flare_extintensity_scaled (photospheric)_flare_extmax temperature_active_regiononly theoretical_active_regionintensity (coronal)_active_regionintensity_scaled (coronal)_active_regionintensity (photospheric)_active_regionintensity_scaled (photospheric)_active_region
MKAngstromkeVph / (cm2 s sr)ph / (cm2 s sr)MKph / (cm2 s sr)ph / (cm2 s sr)
int16int16str48str93str9int16int16float32float64boolstr2str5float64float64float64float64float64float64float64float32boolfloat64float64float64float64
651s2 1S0 - 1s.2p 1P11s$^{2}$ $^1$S$_{0}$ - 1s 2p $^1$P$_{1}$C V171.040.267398834228516FalseCc_50.30790217899004170.00038904514499428050.00026915348039269146533714714604.0470.0017431709224856474520226194711.8580.0046363717520130141.1220190525054932False329912553647.374760.14822303764598255228243722308.208920.23036640952282866
651s2 1S0 - 1s.2p 3P11s$^{2}$ $^1$S$_{0}$ - 1s 2p $^3$P$_{1}$C V140.891250550746917740.730201721191406FalseCc_50.30440359535143880.00038904514499428050.0002691534803926914817185380850.28450.00021802203744748316565354155454.4130.00057988072351301931.0False47490837462.946830.02133667273732619432855632191.7438960.033161192536082684
651s2 1S0 - 1s.2s 3S11s$^{2}$ $^1$S$_{0}$ - 1s 2s $^3$S$_{1}$C V121.041.471500396728516FalseCc_50.2989624133371860.00038904514499428050.00026915348039269144448601168028.3410.0011868703395496563077680065308.16060.0031567599279039881.1220190525054932False250709904086.476170.11263888912620688173448876363.14020.1750619665656783
651s2 1S0 - 1s.3p 1P11s$^{2}$ $^1$S$_{0}$ - 1s 3p $^1$P$_{1}$C V1171.122019052505493234.972801208496094FalseCc_50.354516064338249950.00038904514499428050.0002691534803926914970088269583.5650.00025881596268700365671137109423.06850.00068838173175869871.1220190525054932False44996472231.797610.02021600488921927731129953072.0514950.031419464444848534
661s 2S1/2 - 2p 2P1/21s $^2$S$_{1/2}$ - 2p $^2$P$_{1/2}$C VI1311.22018909454345733.739601135253906FalseCc_60.36747381196409990.00038904514499428050.0002691534803926914157924415453753.560.04213364999763524109257001675175.80.112064320336233541.5848925113677979False523641758655.51460.23526165115003184362271586304.343930.3656407447490605
661s 2S1/2 - 2p 2P3/21s $^2$S$_{1/2}$ - 2p $^2$P$_{3/2}$C VI1411.22018909454345733.73419952392578FalseCc_60.36753265286542580.00038904514499428050.0002691534803926914289421291045608.60.07721653009600904200230612788695.440.205375465083543351.5848925113677979False855361668545.94040.384296697400997591765693636.97920.5972691679898798
661s 2S1/2 - 3p 2P1/21s $^2$S$_{1/2}$ - 3p $^2$P$_{1/2}$C VI1611.22018909454345728.466299057006836FalseCc_60.43554730520082190.00038904514499428050.000269153480392691420029673823547.3360.0053438429011964513857148688534.3550.0142132030512380771.5848925113677979False44602733254.5089340.02003910593036447430857552253.105240.031144530273704105
661s 2S1/2 - 3p 2P3/21s $^2$S$_{1/2}$ - 3p $^2$P$_{3/2}$C VI1711.22018909454345728.465200424194336FalseCc_60.43556411543063790.00038904514499428050.000269153480392691440066139099582.6250.01068949773680013427718995914237.40.0284312253668373431.5848925113677979False89273505126.470720.0401087802354227961762175728.9828640.062336569536800175
661s 2S1/2 - 4p 2P3/21s $^2$S$_{1/2}$ - 4p $^2$P$_{3/2}$C VI11211.22018909454345726.989599227905273FalseCc_60.459377693556151930.00038904514499428050.000269153480392691413444623584008.2660.00358697585051021749301406987764.0660.0095404032352400371.5848925113677979False27236596864.488790.01223685209235352418843121253.2869340.01901836398138208
761s2 1S0 - 1s.2p 1P11s$^{2}$ $^1$S$_{0}$ - 1s 2p $^1$P$_{1}$N VI171.995263218879699728.78700065612793FalseNn_60.430695090170179150.00016.760829753919819e-054892836634379.6570.0013053907190742763307963549878.2890.0033929604623075831.5848925113677979False158824949992.53550.0713568376880472107378844757.436110.10837747770375417
761s2 1S0 - 1s.2p 3P11s$^{2}$ $^1$S$_{0}$ - 1s 2p $^3$P$_{1}$N VI141.77827942371368429.084299087524414FalseNn_60.42629254382266590.00016.760829753919819e-05509016185965.27050.00013580363594172906344137177530.07840.00035297965632440031.5848925113677979False23018449490.1658970.0103417237919953815562381820.2214090.015707113375528797
761s2 1S0 - 1s.2s 3S11s$^{2}$ $^1$S$_{0}$ - 1s 2s $^3$S$_{1}$N VI121.77827942371368429.534700393676758FalseNn_60.41979162402387090.00016.760829753919819e-052846653696012.60350.00075947667843287271924574100710.78340.0019740253276772411.5848925113677979False121276088983.058880.05448689388796923481992699083.56920.08275523858422558
771s 2S1/2 - 2p 2P1/21s $^2$S$_{1/2}$ - 2p $^2$P$_{1/2}$N VII1311.22018909454345724.78459930419922FalseNn_70.50024693524980160.00016.760829753919819e-0564856235454392.090.01730340376406078243848196638728.350.044974859999339312.238720655441284False104099923411.56820.0467699900964334170380185958.170460.07103472803882507
771s 2S1/2 - 2p 2P3/21s $^2$S$_{1/2}$ - 2p $^2$P$_{3/2}$N VII1411.22018909454345724.779199600219727FalseNn_70.50035594544426210.00016.760829753919819e-05129814006106167.660.0346338967432887765039495810.730.090020130056483142.238720655441284False208256728431.461460.0935655359490177140798828603.34240.14210827041531116
771s 2S1/2 - 3p 2P3/21s $^2$S$_{1/2}$ - 3p $^2$P$_{3/2}$N VII1711.22018909454345720.909500122070312FalseNn_70.5929563007693950.00016.760829753919819e-0518382395110423.3670.00490435503259867112428024381086.0490.0127473579178861032.238720655441284False24102987521.208570.01082898479381696516295619519.1744980.016447170251250934
871s2 1S0 - 1s.2p 1P11s$^{2}$ $^1$S$_{0}$ - 1s 2p $^1$P$_{1}$O VII177.07945632934570321.601499557495117FalseOo_70.5739610720228040.00077624711662869280.0004897788193684457119535470268644.780.03189162139451886475421782891895.020.077359717992769832.238720655441284False1570289359709.87720.7054992491378178990785604468.04471.0
...........................................................................
28192s2 2p6 1S0 - 2s2 2p5 4d 3D12s$^{2}$ 2p$^{6}$ $^1$S$_{0}$ - 2s$^{2}$ 2p$^{5}$ 4d $^3$D$_{1}$Ni XIX17110.09.977100372314453FalseNini_191.24268769288164246.9183097091893625e-061.584893192461114e-0639634878730894.060.0105744390653466629079826160597.8670.0093131289698364826.309576034545898False4772477155.8845570.0021441774595135881093311353.9989080.0011034792482536215
28202s.2p6 2S1/2 - 2s2.2p4(1D).3p 2P3/22s 2p$^{6}$ $^2$S$_{1/2}$ - 2s$^{2}$ 2p$^{4}$ ($^1$D) 3p $^2$P$_{3/2}$Ni XX32911.22018909454345714.470000267028809FalseNini_200.85683618621424166.9183097091893625e-061.584893192461114e-0672730913241022.00.0194043386749338816661689650011.6720.017089805666029516.309576034545898False1627427575.0720380.0007311702936404228372822118.895483140.0003762893982453977
28202s2.2p5 2P3/2 - 2s2.2p4(1D).3d 2D5/22s$^{2}$ 2p$^{5}$ $^2$P$_{3/2}$ - 2s$^{2}$ 2p$^{4}$ ($^1$D) 3d $^2$D$_{5/2}$Ni XX15611.22018909454345711.831999778747559FalseNini_201.0478718792397096.9183097091893625e-061.584893192461114e-06141198889258698.780.0376713414641261632346796800949.2230.033177935903180146.309576034545898False2594049884.08226250.0011654541464792224594262496.91100510.0005997891917596705
28202s2.2p5 2P3/2 - 2s2.2p4(1D).3d 2P3/22s$^{2}$ 2p$^{5}$ $^2$P$_{3/2}$ - 2s$^{2}$ 2p$^{4}$ ($^1$D) 3d $^2$P$_{3/2}$Ni XX15511.22018909454345711.841400146484375FalseNini_201.04704001975653426.9183097091893625e-061.584893192461114e-0680957631788627.70.02159919675889732518546321990925.1330.019022862945013386.309576034545898False1502058905.25510050.0006748446859590477344101815.86006850.0003473019937999782
28202s2.2p5 2P3/2 - 2s2.2p4(1D).3s 2D5/22s$^{2}$ 2p$^{5}$ $^2$P$_{3/2}$ - 2s$^{2}$ 2p$^{4}$ ($^1$D) 3s $^2$D$_{5/2}$Ni XX1911.22018909454345712.927000045776367FalseNini_200.95911037359135416.9183097091893625e-061.584893192461114e-0650728397448075.770.01353414883238281711621204479054.4120.0119198070738337426.309576034545898False1316525681.5883750.0005914883611023491301598609.79888560.00030440350408685507
28202s2.2p5 2P3/2 - 2s2.2p4(3P).3d 2D5/22s$^{2}$ 2p$^{5}$ $^2$P$_{3/2}$ - 2s$^{2}$ 2p$^{4}$ ($^3$P) 3d $^2$D$_{5/2}$Ni XX14911.22018909454345711.961000442504883FalseNini_201.0365704694116326.9183097091893625e-061.584893192461114e-0654333933446386.460.01449609250252534312447185057996.3850.0127670109213752776.309576034545898False1040709885.81302080.00046756990262421635238412861.332469370.00024063012245769744
28202s2.2p5 2P3/2 - 2s2.2p4(3P).3d 2F5/22s$^{2}$ 2p$^{5}$ $^2$P$_{3/2}$ - 2s$^{2}$ 2p$^{4}$ ($^3$P) 3d $^2$F$_{5/2}$Ni XX13911.22018909454345712.112000465393066FalseNini_201.02364756992416966.9183097091893625e-061.584893192461114e-0652712879676498.1950.0140636013517962112075823093512.9570.0123861069471632576.309576034545898False1024125331.22013060.00046011879767962773234613559.367228030.00023679548664132304
28202s2.2p5 2P3/2 - 2s2.2p4(3P).3s 2P3/22s$^{2}$ 2p$^{5}$ $^2$P$_{3/2}$ - 2s$^{2}$ 2p$^{4}$ ($^3$P) 3s $^2$P$_{3/2}$Ni XX1511.22018909454345713.255999565124512FalseNini_200.93530629526718516.9183097091893625e-061.584893192461114e-0661391984021375.0860.01637915429343166414064091033380.4280.014425462703877176.309576034545898False1609886614.87055780.0007232894949998545368803717.063077330.0003722336249133222
28202s2.2p5 2P3/2 - 2s2.2p4(3P).3s 4P5/22s$^{2}$ 2p$^{5}$ $^2$P$_{3/2}$ - 2s$^{2}$ 2p$^{4}$ ($^3$P) 3s $^4$P$_{5/2}$Ni XX1411.22018909454345713.309000015258789FalseNini_200.93158162364604516.9183097091893625e-061.584893192461114e-0685350134211318.950.0227711001606587519552586162409.880.0200549827060095556.309576034545898False2505577340.41208360.0011257052220261165573994608.06579540.000579332809719187
28212s2.2p4 3P2 - 2s2.2p3(2D).3d 3D32s$^{2}$ 2p$^{4}$ $^3$P$_{2}$ - 2s$^{2}$ 2p$^{3}$ ($^2$D) 3d $^3$D$_{3}$Ni XXI14012.58925056457519511.318599700927734FalseNini_211.09540227333101836.9183097091893625e-061.584893192461114e-0691143782064616.030.0243168239815067920879834208274.4530.0214163339045314356.309576034545898False169119903.99700997.598215229974842e-0538743131.7505941543.910344637212956e-05
28212s2.2p4 3P2 - 2s2.2p3(2D).3d 3P22s$^{2}$ 2p$^{4}$ $^3$P$_{2}$ - 2s$^{2}$ 2p$^{3}$ ($^2$D) 3d $^3$P$_{2}$Ni XXI14312.58925056457519511.302000045776367FalseNini_211.09701113016305436.9183097091893625e-061.584893192461114e-0650422296830006.20.0134524823195212911551080878611.630.0118478816731485486.309576034545898False93823295.152635954.215290887155348e-0521493675.1941257232.1693568313061765e-05
28212s2.2p4 3P2 - 2s2.2p3(4S).3d 3D32s$^{2}$ 2p$^{4}$ $^3$P$_{2}$ - 2s$^{2}$ 2p$^{3}$ ($^4$S) 3d $^3$D$_{3}$Ni XXI12812.58925056457519511.539299964904785FalseNini_211.07445164620281426.9183097091893625e-061.584893192461114e-0638385391789593.520.0102410805703342858793585238959.7530.0090195331925044326.309576034545898False74704673.566133383.356329887997864e-0517113852.018323081.7273012386480475e-05
28232s2 2p2 3P0 - 2s2 2p 3d 3D12s$^{2}$ 2p$^{2}$ $^3$P$_{0}$ - 2s$^{2}$ 2p 3d $^3$D$_{1}$Ni XXIII13914.12537860870361310.310999870300293TrueNini_231.20244593145930636.9183097091893625e-061.584893192461114e-06133524420560359.50.035623821597583930588677591628.7970.031374642464391446.309576034545898True1014824.46053582134.5594010459765935e-07232482.8529879022.3464496450039022e-07
28242s2 2p 2P1/2 - 2s2 3d 2D3/22s$^{2}$ 2p $^2$P$_{1/2}$ - 2s$^{2}$ 3d $^2$D$_{3/2}$Ni XXIV12015.848924636840829.946900367736816TrueNini_241.2464606445174436.9183097091893625e-061.584893192461114e-0667922124327718.750.0181213715770125315560059752964.2030.015959869792063926.309576034545898True17923.9622413468578.05287371060142e-094106.1425308132494.144330026896028e-09
28252s 2p 1P1 - 2s 3d 1D22s 2p $^1$P$_{1}$ - 2s 3d $^1$D$_{2}$Ni XXV52019.95263099670419.967000007629395FalseNini_251.24394700851103276.9183097091893625e-061.584893192461114e-0678721595267674.970.02100263048454982518034075617299.3320.0184974545883412756.309576034545898False324.96396543353251.4599973705009554e-1074.444943672682487.513728836689363e-11
28252s 2p 1P1 - 2s 3s 1S02s 2p $^1$P$_{1}$ - 2s 3s $^1$S$_{0}$Ni XXV51219.952630996704110.288000106811523FalseNini_251.2051341091172066.9183097091893625e-061.584893192461114e-0643602824326146.560.011633072275668639988829981808.50.0102454893114634836.309576034545898False236.08661127688271.060689394329881e-1054.084318102577035.45873071416041e-11
28252s2 1S0 - 2s 3p 1P12s$^{2}$ $^1$S$_{0}$ - 2s 3p $^1$P$_{1}$Ni XXV11519.95263099670419.329999923706055FalseNini_251.32887673576691026.9183097091893625e-061.584893192461114e-0638779322008648.8050.0103461796959221688883829438587.8980.0091120961838052756.309576034545898False138.79670403212576.235855186305297e-1131.7964879577979323.209219816518181e-11
[ ]: