nucleardatapy 0.2.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- nucleardatapy/__init__.py +23 -0
- nucleardatapy/astro/__init__.py +9 -0
- nucleardatapy/astro/setup_gw.py +370 -0
- nucleardatapy/astro/setup_masses.py +366 -0
- nucleardatapy/astro/setup_mr.py +399 -0
- nucleardatapy/astro/setup_mtov.py +143 -0
- nucleardatapy/astro/setup_mup.py +302 -0
- nucleardatapy/corr/__init__.py +8 -0
- nucleardatapy/corr/setup_EsymDen.py +154 -0
- nucleardatapy/corr/setup_EsymLsym.py +468 -0
- nucleardatapy/corr/setup_KsatQsat.py +226 -0
- nucleardatapy/create_folder.py +7 -0
- nucleardatapy/crust/__init__.py +6 -0
- nucleardatapy/crust/setup_crust.py +475 -0
- nucleardatapy/cst.py +72 -0
- nucleardatapy/data/LandauParameters/micro/1994-BHF-SM.dat +33 -0
- nucleardatapy/data/LandauParameters/micro/2006-BHF-NM-AV18.dat +2701 -0
- nucleardatapy/data/LandauParameters/micro/2006-BHF-SM-AV18.dat +6001 -0
- nucleardatapy/data/LandauParameters/micro/2006-IBHF-NM-AV18.dat +2701 -0
- nucleardatapy/data/LandauParameters/micro/2006-IBHF-SM-AV18.dat +6001 -0
- nucleardatapy/data/LandauParameters/micro/2007-BHF-NM.dat +12 -0
- nucleardatapy/data/LandauParameters/pheno/2013-BSk22.dat +7 -0
- nucleardatapy/data/LandauParameters/pheno/2016-BSk31.dat +9 -0
- nucleardatapy/data/LandauParameters/pheno/2016-BSk32.dat +9 -0
- nucleardatapy/data/LandauParameters/pheno/2021-BSkG1.dat +9 -0
- nucleardatapy/data/LandauParameters/pheno/2022-BSkG2.dat +9 -0
- nucleardatapy/data/LandauParameters/pheno/2023-BSkG3.dat +9 -0
- nucleardatapy/data/NeutronSkin/ddrhNskin-208Pb.dat +6 -0
- nucleardatapy/data/NeutronSkin/ddrhNskin-48Ca.dat +6 -0
- nucleardatapy/data/NeutronSkin/nlrhNskin-208Pb.dat +6 -0
- nucleardatapy/data/NeutronSkin/nlrhNskin-48Ca.dat +6 -0
- nucleardatapy/data/NeutronSkin/skyrmeNskin-208Pb.dat +34 -0
- nucleardatapy/data/NeutronSkin/skyrmeNskin-48Ca.dat +34 -0
- nucleardatapy/data/astro/GW/GW170817.dat +6 -0
- nucleardatapy/data/astro/GW/GW190425.dat +3 -0
- nucleardatapy/data/astro/NICER/J0030+0451.dat +6 -0
- nucleardatapy/data/astro/NICER/J0437-4715.dat +3 -0
- nucleardatapy/data/astro/NICER/J0740+6620.dat +4 -0
- nucleardatapy/data/astro/masses/GW170817.dat +5 -0
- nucleardatapy/data/astro/masses/GW190814.dat +2 -0
- nucleardatapy/data/astro/masses/J0348+0432.dat +2 -0
- nucleardatapy/data/astro/masses/J0740+6620.dat +4 -0
- nucleardatapy/data/astro/masses/J1600+3053.dat +2 -0
- nucleardatapy/data/astro/masses/J1614/342/200/2232230.dat +6 -0
- nucleardatapy/data/astro/masses/J2215+5135.dat +2 -0
- nucleardatapy/data/corr/EsymDen/2014-IAS+NS.dat +8 -0
- nucleardatapy/data/corr/EsymDen/2014-IAS.dat +9 -0
- nucleardatapy/data/corr/EsymLsym/2010-RNP.dat +8 -0
- nucleardatapy/data/corr/EsymLsym/2012-FRDM.dat +6 -0
- nucleardatapy/data/corr/EsymLsym/2013-NS.dat +7 -0
- nucleardatapy/data/corr/EsymLsym/2014-IAS+RNP-err.dat +15 -0
- nucleardatapy/data/corr/EsymLsym/2014-IAS+RNP-plot.py +24 -0
- nucleardatapy/data/corr/EsymLsym/2014-IAS+RNP.dat +15 -0
- nucleardatapy/data/corr/EsymLsym/2014-IAS-err.dat +9 -0
- nucleardatapy/data/corr/EsymLsym/2014-IAS-plot.py +24 -0
- nucleardatapy/data/corr/EsymLsym/2014-IAS.dat +7 -0
- nucleardatapy/data/corr/EsymLsym/2021-PREXII-Reed.dat +3 -0
- nucleardatapy/data/corr/EsymLsym/2021-PREXII-Reinhard.dat +3 -0
- nucleardatapy/data/corr/EsymLsym/2023-PREXII-Zhang.dat +3 -0
- nucleardatapy/data/corr/EsymLsym/test.png +0 -0
- nucleardatapy/data/crust/1973-Negele-Vautherin.dat +18 -0
- nucleardatapy/data/crust/2020-MVCD-D1M.dat +16 -0
- nucleardatapy/data/crust/2020-MVCD-D1MS-full.dat +71 -0
- nucleardatapy/data/crust/2020-MVCD-D1MS.dat +17 -0
- nucleardatapy/data/crust/2020-MVCD-D1S.dat +17 -0
- nucleardatapy/data/crust/2022-crustGMRS-BSK14.dat +1455 -0
- nucleardatapy/data/crust/2022-crustGMRS-BSK16.dat +1538 -0
- nucleardatapy/data/crust/2022-crustGMRS-DHSL59.dat +1413 -0
- nucleardatapy/data/crust/2022-crustGMRS-DHSL69.dat +1424 -0
- nucleardatapy/data/crust/2022-crustGMRS-F0.dat +1525 -0
- nucleardatapy/data/crust/2022-crustGMRS-H1.dat +1651 -0
- nucleardatapy/data/crust/2022-crustGMRS-H2.dat +1621 -0
- nucleardatapy/data/crust/2022-crustGMRS-H3.dat +1537 -0
- nucleardatapy/data/crust/2022-crustGMRS-H4.dat +1598 -0
- nucleardatapy/data/crust/2022-crustGMRS-H5.dat +1562 -0
- nucleardatapy/data/crust/2022-crustGMRS-H7.dat +1523 -0
- nucleardatapy/data/crust/2022-crustGMRS-LNS5.dat +1396 -0
- nucleardatapy/data/crust/2022-crustGMRS-RATP.dat +1552 -0
- nucleardatapy/data/crust/2022-crustGMRS-SGII.dat +1345 -0
- nucleardatapy/data/crust/2022-crustGMRS-SLY5.dat +1455 -0
- nucleardatapy/data/hnuclei/2013-2L-Ahn.csv +5 -0
- nucleardatapy/data/hnuclei/2015-1Xi-Nakazawa.csv +5 -0
- nucleardatapy/data/hnuclei/2016-1L-GHM.csv +67 -0
- nucleardatapy/data/matter/hic/2002-DLL-NM-soft.dat +6 -0
- nucleardatapy/data/matter/hic/2002-DLL-NM-stiff.dat +5 -0
- nucleardatapy/data/matter/hic/2002-DLL-SM.dat +6 -0
- nucleardatapy/data/matter/hic/2002-KAON.dat +45 -0
- nucleardatapy/data/matter/hic/2009-ISO-DIFF.dat +3 -0
- nucleardatapy/data/matter/hic/2011-FOPI-LAND.dat +32 -0
- nucleardatapy/data/matter/hic/2016-ASY-EOS.dat +31 -0
- nucleardatapy/data/matter/hic/2016-FOPI-E2A.dat +19 -0
- nucleardatapy/data/matter/hic/2016-FOPI-SM.dat +31 -0
- nucleardatapy/data/matter/hic/2019-N2P-RATIO.dat +3 -0
- nucleardatapy/data/matter/hic/2021-SPIRIT.dat +3 -0
- nucleardatapy/data/matter/micro/1981-VAR-NM-FP.dat +26 -0
- nucleardatapy/data/matter/micro/1981-VAR-SM-FP.dat +26 -0
- nucleardatapy/data/matter/micro/1998-VAR-NM-APR.dat +16 -0
- nucleardatapy/data/matter/micro/1998-VAR-SM-APR.dat +15 -0
- nucleardatapy/data/matter/micro/2006-BHF/2006-BHF-E2A-AM.dat +17 -0
- nucleardatapy/data/matter/micro/2006-BHF/2006-BHF-E2A-NM.dat +21 -0
- nucleardatapy/data/matter/micro/2006-BHF/2006-BHF-E2A-SM.dat +30 -0
- nucleardatapy/data/matter/micro/2006-BHF/2006-BHF-Esym2-SM.dat +19 -0
- nucleardatapy/data/matter/micro/2006-BHF/2006-BHF-GAP-NM-FreeSpectrum.dat +9 -0
- nucleardatapy/data/matter/micro/2006-BHF/2006-BHF-GAP-NM-SelfEnergy.dat +8 -0
- nucleardatapy/data/matter/micro/2006-BHF/2006-BHF-GAP-SM-FreeSpectrum.dat +8 -0
- nucleardatapy/data/matter/micro/2006-BHF/2006-BHF-GAP-SM-SelfEnergy.dat +6 -0
- nucleardatapy/data/matter/micro/2008-AFDMC-NM-bkup.dat +11 -0
- nucleardatapy/data/matter/micro/2008-AFDMC-NM.dat +11 -0
- nucleardatapy/data/matter/micro/2008-BCS-NM.dat +16 -0
- nucleardatapy/data/matter/micro/2008-QMC-NM-swave-bkup.dat +8 -0
- nucleardatapy/data/matter/micro/2008-QMC-NM-swave.dat +8 -0
- nucleardatapy/data/matter/micro/2009-AFDMC-NM.dat +7 -0
- nucleardatapy/data/matter/micro/2009-dQMC-NM.dat +7 -0
- nucleardatapy/data/matter/micro/2010-NM-Hebeler.dat +12 -0
- nucleardatapy/data/matter/micro/2010-QMC-NM-AV4-bkup.dat +9 -0
- nucleardatapy/data/matter/micro/2010-QMC-NM-AV4.dat +7 -0
- nucleardatapy/data/matter/micro/2012-AFDMC-NM-1.dat +29 -0
- nucleardatapy/data/matter/micro/2012-AFDMC-NM-2.dat +10 -0
- nucleardatapy/data/matter/micro/2012-AFDMC-NM-3.dat +11 -0
- nucleardatapy/data/matter/micro/2012-AFDMC-NM-4.dat +10 -0
- nucleardatapy/data/matter/micro/2012-AFDMC-NM-5.dat +11 -0
- nucleardatapy/data/matter/micro/2012-AFDMC-NM-6.dat +10 -0
- nucleardatapy/data/matter/micro/2012-AFDMC-NM-7.dat +37 -0
- nucleardatapy/data/matter/micro/2012-AFDMC-NM-fit.dat +10 -0
- nucleardatapy/data/matter/micro/2012-AFDMC-NM.txt +252 -0
- nucleardatapy/data/matter/micro/2013-QMC-NM.dat +12 -0
- nucleardatapy/data/matter/micro/2014-AFQMC-NM.dat +14 -0
- nucleardatapy/data/matter/micro/2016-MBPT-AM/EOS_spec_4_beta_0.0.txt +35 -0
- nucleardatapy/data/matter/micro/2016-MBPT-AM/EOS_spec_4_beta_0.1.txt +35 -0
- nucleardatapy/data/matter/micro/2016-MBPT-AM/EOS_spec_4_beta_0.2.txt +35 -0
- nucleardatapy/data/matter/micro/2016-MBPT-AM/EOS_spec_4_beta_0.3.txt +35 -0
- nucleardatapy/data/matter/micro/2016-MBPT-AM/EOS_spec_4_beta_0.4.txt +35 -0
- nucleardatapy/data/matter/micro/2016-MBPT-AM/EOS_spec_4_beta_0.5.txt +35 -0
- nucleardatapy/data/matter/micro/2016-MBPT-AM/EOS_spec_4_beta_0.6.txt +35 -0
- nucleardatapy/data/matter/micro/2016-MBPT-AM/EOS_spec_4_beta_0.7.txt +35 -0
- nucleardatapy/data/matter/micro/2016-MBPT-AM/EOS_spec_4_beta_0.8.txt +35 -0
- nucleardatapy/data/matter/micro/2016-MBPT-AM/EOS_spec_4_beta_0.9.txt +35 -0
- nucleardatapy/data/matter/micro/2016-MBPT-AM/EOS_spec_4_beta_1.0.txt +35 -0
- nucleardatapy/data/matter/micro/2016-QMC-NM.dat +10 -0
- nucleardatapy/data/matter/micro/2017-Drischler/N3LO_EGM450_500_effmass_1S0_HF_spectrum_N2LO_3N_forces.csv +45 -0
- nucleardatapy/data/matter/micro/2017-Drischler/N3LO_EGM450_500_effmass_1S0_HF_spectrum_N3LO_3N_forces.csv +45 -0
- nucleardatapy/data/matter/micro/2017-Drischler/N3LO_EGM450_500_effmass_3PF2_HF_spectrum_N2LO_3N_forces.csv +32 -0
- nucleardatapy/data/matter/micro/2017-Drischler/N3LO_EGM450_500_effmass_3PF2_HF_spectrum_N3LO_3N_forces.csv +32 -0
- nucleardatapy/data/matter/micro/2017-Drischler/N3LO_EGM450_500_gap_1S0_HF_spectrum_N2LO_3N_forces.csv +45 -0
- nucleardatapy/data/matter/micro/2017-Drischler/N3LO_EGM450_500_gap_1S0_HF_spectrum_N3LO_3N_forces.csv +45 -0
- nucleardatapy/data/matter/micro/2017-Drischler/N3LO_EGM450_500_gap_1S0_free_spectrum_N2LO_3N_forces.csv +45 -0
- nucleardatapy/data/matter/micro/2017-Drischler/N3LO_EGM450_500_gap_1S0_free_spectrum_N3LO_3N_forces.csv +45 -0
- nucleardatapy/data/matter/micro/2017-Drischler/N3LO_EGM450_500_gap_3PF2_HF_spectrum_N2LO_3N_forces.csv +32 -0
- nucleardatapy/data/matter/micro/2017-Drischler/N3LO_EGM450_500_gap_3PF2_HF_spectrum_N3LO_3N_forces.csv +32 -0
- nucleardatapy/data/matter/micro/2017-Drischler/N3LO_EGM450_500_gap_3PF2_free_spectrum_N2LO_3N_forces.csv +32 -0
- nucleardatapy/data/matter/micro/2017-Drischler/N3LO_EGM450_500_gap_3PF2_free_spectrum_N3LO_3N_forces.csv +32 -0
- nucleardatapy/data/matter/micro/2017-Drischler/N3LO_EGM450_700_effmass_1S0_HF_spectrum_N2LO_3N_forces.csv +45 -0
- nucleardatapy/data/matter/micro/2017-Drischler/N3LO_EGM450_700_effmass_1S0_HF_spectrum_N3LO_3N_forces.csv +45 -0
- nucleardatapy/data/matter/micro/2017-Drischler/N3LO_EGM450_700_effmass_3PF2_HF_spectrum_N2LO_3N_forces.csv +32 -0
- nucleardatapy/data/matter/micro/2017-Drischler/N3LO_EGM450_700_effmass_3PF2_HF_spectrum_N3LO_3N_forces.csv +32 -0
- nucleardatapy/data/matter/micro/2017-Drischler/N3LO_EGM450_700_gap_1S0_HF_spectrum_N2LO_3N_forces.csv +45 -0
- nucleardatapy/data/matter/micro/2017-Drischler/N3LO_EGM450_700_gap_1S0_HF_spectrum_N3LO_3N_forces.csv +45 -0
- nucleardatapy/data/matter/micro/2017-Drischler/N3LO_EGM450_700_gap_1S0_free_spectrum_N2LO_3N_forces.csv +45 -0
- nucleardatapy/data/matter/micro/2017-Drischler/N3LO_EGM450_700_gap_1S0_free_spectrum_N3LO_3N_forces.csv +45 -0
- nucleardatapy/data/matter/micro/2017-Drischler/N3LO_EGM450_700_gap_3PF2_HF_spectrum_N2LO_3N_forces.csv +32 -0
- nucleardatapy/data/matter/micro/2017-Drischler/N3LO_EGM450_700_gap_3PF2_HF_spectrum_N3LO_3N_forces.csv +32 -0
- nucleardatapy/data/matter/micro/2017-Drischler/N3LO_EGM450_700_gap_3PF2_free_spectrum_N2LO_3N_forces.csv +32 -0
- nucleardatapy/data/matter/micro/2017-Drischler/N3LO_EGM450_700_gap_3PF2_free_spectrum_N3LO_3N_forces.csv +32 -0
- nucleardatapy/data/matter/micro/2017-Drischler/N3LO_EM500_effmass_1S0_HF_spectrum_N2LO_3N_forces.csv +45 -0
- nucleardatapy/data/matter/micro/2017-Drischler/N3LO_EM500_effmass_1S0_HF_spectrum_N3LO_3N_forces.csv +45 -0
- nucleardatapy/data/matter/micro/2017-Drischler/N3LO_EM500_effmass_3PF2_HF_spectrum_N2LO_3N_forces.csv +32 -0
- nucleardatapy/data/matter/micro/2017-Drischler/N3LO_EM500_effmass_3PF2_HF_spectrum_N3LO_3N_forces.csv +32 -0
- nucleardatapy/data/matter/micro/2017-Drischler/N3LO_EM500_gap_1S0_HF_spectrum_N2LO_3N_forces.csv +45 -0
- nucleardatapy/data/matter/micro/2017-Drischler/N3LO_EM500_gap_1S0_HF_spectrum_N3LO_3N_forces.csv +45 -0
- nucleardatapy/data/matter/micro/2017-Drischler/N3LO_EM500_gap_1S0_free_spectrum_N2LO_3N_forces.csv +45 -0
- nucleardatapy/data/matter/micro/2017-Drischler/N3LO_EM500_gap_1S0_free_spectrum_N3LO_3N_forces.csv +45 -0
- nucleardatapy/data/matter/micro/2017-Drischler/N3LO_EM500_gap_3PF2_HF_spectrum_N2LO_3N_forces.csv +32 -0
- nucleardatapy/data/matter/micro/2017-Drischler/N3LO_EM500_gap_3PF2_HF_spectrum_N3LO_3N_forces.csv +32 -0
- nucleardatapy/data/matter/micro/2017-Drischler/N3LO_EM500_gap_3PF2_free_spectrum_N2LO_3N_forces.csv +32 -0
- nucleardatapy/data/matter/micro/2017-Drischler/N3LO_EM500_gap_3PF2_free_spectrum_N3LO_3N_forces.csv +32 -0
- nucleardatapy/data/matter/micro/2018-QMC-NM.dat +18 -0
- nucleardatapy/data/matter/micro/2020-MBPT-NM-DHSL59.dat +18 -0
- nucleardatapy/data/matter/micro/2020-MBPT-NM-DHSL69.dat +18 -0
- nucleardatapy/data/matter/micro/2020-MBPT-SM-DHSL59.dat +18 -0
- nucleardatapy/data/matter/micro/2020-MBPT-SM-DHSL69.dat +18 -0
- nucleardatapy/data/matter/micro/2022-AFDMC-NM-gap.csv +17 -0
- nucleardatapy/data/matter/micro/2022-AFDMC-NM.csv +11 -0
- nucleardatapy/data/matter/micro/2023-MBPT-NM.csv +60 -0
- nucleardatapy/data/matter/micro/2023-MBPT-SM.csv +60 -0
- nucleardatapy/data/matter/micro/2024-BHF-NM-23BF/spin_isosp_Av1823BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-BHF-NM-23BF/spin_isosp_Av1823BFmicro.dat +13 -0
- nucleardatapy/data/matter/micro/2024-BHF-NM-23BF/spin_isosp_Av8p23BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-BHF-NM-23BF/spin_isosp_BONN23BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-BHF-NM-23BF/spin_isosp_BONNB23BFmicro.dat +13 -0
- nucleardatapy/data/matter/micro/2024-BHF-NM-23BF/spin_isosp_CDBONN23BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-BHF-NM-23BF/spin_isosp_NSC9323BFmicro.dat +13 -0
- nucleardatapy/data/matter/micro/2024-BHF-NM-23BF/spin_isosp_NSC97a23BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-BHF-NM-23BF/spin_isosp_NSC97b23BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-BHF-NM-23BF/spin_isosp_NSC97c23BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-BHF-NM-23BF/spin_isosp_NSC97d23BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-BHF-NM-23BF/spin_isosp_NSC97e23BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-BHF-NM-23BF/spin_isosp_NSC97f23BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-BHF-NM-23BF/spin_isosp_SSCV1423BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-BHF-NM-2BF/spin_isosp_Av182BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-BHF-NM-2BF/spin_isosp_Av8p2BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-BHF-NM-2BF/spin_isosp_BONN2BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-BHF-NM-2BF/spin_isosp_CDBONN2BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-BHF-NM-2BF/spin_isosp_NSC97a2BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-BHF-NM-2BF/spin_isosp_NSC97b2BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-BHF-NM-2BF/spin_isosp_NSC97c2BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-BHF-NM-2BF/spin_isosp_NSC97d2BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-BHF-NM-2BF/spin_isosp_NSC97e2BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-BHF-NM-2BF/spin_isosp_NSC97f2BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-BHF-NM-2BF/spin_isosp_SSCV142BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-BHF-SM-23BF/spin_isosp_Av1823BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-BHF-SM-23BF/spin_isosp_Av1823BFmicro.dat +13 -0
- nucleardatapy/data/matter/micro/2024-BHF-SM-23BF/spin_isosp_Av8p23BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-BHF-SM-23BF/spin_isosp_BONN23BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-BHF-SM-23BF/spin_isosp_BONNB23BFmicro.dat +11 -0
- nucleardatapy/data/matter/micro/2024-BHF-SM-23BF/spin_isosp_CDBONN23BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-BHF-SM-23BF/spin_isosp_NSC9323BFmicro.dat +13 -0
- nucleardatapy/data/matter/micro/2024-BHF-SM-23BF/spin_isosp_NSC97a23BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-BHF-SM-23BF/spin_isosp_NSC97b23BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-BHF-SM-23BF/spin_isosp_NSC97c23BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-BHF-SM-23BF/spin_isosp_NSC97d23BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-BHF-SM-23BF/spin_isosp_NSC97e23BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-BHF-SM-23BF/spin_isosp_NSC97f23BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-BHF-SM-23BF/spin_isosp_SSCV1423BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-BHF-SM-2BF/spin_isosp_Av182BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-BHF-SM-2BF/spin_isosp_Av8p2BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-BHF-SM-2BF/spin_isosp_BONN2BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-BHF-SM-2BF/spin_isosp_CDBONN2BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-BHF-SM-2BF/spin_isosp_NSC97a2BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-BHF-SM-2BF/spin_isosp_NSC97b2BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-BHF-SM-2BF/spin_isosp_NSC97c2BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-BHF-SM-2BF/spin_isosp_NSC97d2BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-BHF-SM-2BF/spin_isosp_NSC97e2BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-BHF-SM-2BF/spin_isosp_NSC97f2BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-BHF-SM-2BF/spin_isosp_SSCV142BF.dat +14 -0
- nucleardatapy/data/matter/micro/2024-DMC-NM.dat +15 -0
- nucleardatapy/data/matter/micro/2024-NLEFT-NM-bkp.dat +38 -0
- nucleardatapy/data/matter/micro/2024-NLEFT-NM.dat +28 -0
- nucleardatapy/data/matter/micro/2024-NLEFT-SM-bkp.dat +33 -0
- nucleardatapy/data/matter/micro/2024-NLEFT-SM.dat +16 -0
- nucleardatapy/data/matter/micro/BSTmicro-NM.dat +12 -0
- nucleardatapy/data/matter/micro/BSTmicro-SM.dat +10 -0
- nucleardatapy/data/matter/micro/BSTph-NM.dat +13 -0
- nucleardatapy/data/matter/micro/BSTph-SM.dat +13 -0
- nucleardatapy/data/matter/micro/convert.sh +6 -0
- nucleardatapy/data/matter/nep/NEPESkyrme.dat +10 -0
- nucleardatapy/data/matter/nep/NEPFayans.dat +5 -0
- nucleardatapy/data/matter/nep/NEPGogny.dat +8 -0
- nucleardatapy/data/matter/nep/NEPMBPT2016.dat +8 -0
- nucleardatapy/data/matter/nep/NEPSkyrme.dat +45 -0
- nucleardatapy/data/matter/nep/NEPSkyrme2.dat +18 -0
- nucleardatapy/data/matter/nep/NEPddrh.dat +6 -0
- nucleardatapy/data/matter/nep/NEPddrhf.dat +5 -0
- nucleardatapy/data/matter/nep/NEPnlrh.dat +7 -0
- nucleardatapy/data/matter/pheno/ESkyrme/BSk22-NM.dat +1002 -0
- nucleardatapy/data/matter/pheno/ESkyrme/BSk22-SM.dat +1002 -0
- nucleardatapy/data/matter/pheno/ESkyrme/BSk24-NM.dat +1002 -0
- nucleardatapy/data/matter/pheno/ESkyrme/BSk24-SM.dat +1002 -0
- nucleardatapy/data/matter/pheno/ESkyrme/BSk25-NM.dat +1002 -0
- nucleardatapy/data/matter/pheno/ESkyrme/BSk25-SM.dat +1002 -0
- nucleardatapy/data/matter/pheno/ESkyrme/BSk26-NM.dat +1002 -0
- nucleardatapy/data/matter/pheno/ESkyrme/BSk26-SM.dat +1002 -0
- nucleardatapy/data/matter/pheno/ESkyrme/BSk31-NM.dat +1002 -0
- nucleardatapy/data/matter/pheno/ESkyrme/BSk31-SM.dat +1002 -0
- nucleardatapy/data/matter/pheno/ESkyrme/BSk32-NM-old.dat +1002 -0
- nucleardatapy/data/matter/pheno/ESkyrme/BSk32-NM.dat +1002 -0
- nucleardatapy/data/matter/pheno/ESkyrme/BSk32-SM-old.dat +1002 -0
- nucleardatapy/data/matter/pheno/ESkyrme/BSk32-SM.dat +1002 -0
- nucleardatapy/data/matter/pheno/ESkyrme/BSkG1-NM.dat +1002 -0
- nucleardatapy/data/matter/pheno/ESkyrme/BSkG1-SM.dat +1002 -0
- nucleardatapy/data/matter/pheno/ESkyrme/BSkG2-NM.dat +1002 -0
- nucleardatapy/data/matter/pheno/ESkyrme/BSkG2-SM.dat +1002 -0
- nucleardatapy/data/matter/pheno/ESkyrme/BSkG3-NM.dat +1002 -0
- nucleardatapy/data/matter/pheno/ESkyrme/BSkG3-SM.dat +1002 -0
- nucleardatapy/data/matter/pheno/Skyrme/BSK14-NM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/BSK14-SM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/BSK16-NM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/BSK16-SM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/BSK17-NM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/BSK17-SM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/BSK27-NM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/BSK27-SM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/F+-NM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/F+-SM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/F--NM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/F--SM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/F0-NM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/F0-SM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/FPL-NM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/FPL-SM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/LNS-NM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/LNS-SM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/LNS1-NM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/LNS1-SM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/LNS5-NM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/LNS5-SM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/NRAPR-NM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/NRAPR-SM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/RATP-NM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/RATP-SM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/SAMI-NM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/SAMI-SM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/SGII-NM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/SGII-SM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/SIII-NM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/SIII-SM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/SKGSIGMA-NM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/SKGSIGMA-SM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/SKI2-NM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/SKI2-SM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/SKI4-NM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/SKI4-SM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/SKMP-NM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/SKMP-SM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/SKMS-NM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/SKMS-SM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/SKO-NM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/SKO-SM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/SKOP-NM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/SKOP-SM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/SKP-NM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/SKP-SM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/SKRSIGMA-NM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/SKRSIGMA-SM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/SKX-NM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/SKX-SM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/SLY230A-NM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/SLY230A-SM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/SLY230B-NM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/SLY230B-SM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/SLY4-NM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/SLY4-SM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/SLY5-NM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/SLY5-SM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/SV-NM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/SV-SM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/Skz2-NM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/Skz2-SM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/T44-NM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/T44-SM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/T6-NM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/T6-SM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/UNEDF0-NM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/UNEDF0-SM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/UNEDF1-NM.dat +99 -0
- nucleardatapy/data/matter/pheno/Skyrme/UNEDF1-SM.dat +99 -0
- nucleardatapy/data/matter/pheno/ddrh/DDME1-NM.dat +200 -0
- nucleardatapy/data/matter/pheno/ddrh/DDME1-SM.dat +176 -0
- nucleardatapy/data/matter/pheno/ddrh/DDME2-NM.dat +200 -0
- nucleardatapy/data/matter/pheno/ddrh/DDME2-SM.dat +169 -0
- nucleardatapy/data/matter/pheno/ddrh/DDMEd-NM.dat +200 -0
- nucleardatapy/data/matter/pheno/ddrh/DDMEd-SM.dat +200 -0
- nucleardatapy/data/matter/pheno/ddrh/PKDD-NM.dat +200 -0
- nucleardatapy/data/matter/pheno/ddrh/PKDD-SM.dat +191 -0
- nucleardatapy/data/matter/pheno/ddrh/PKDD.pdf +0 -0
- nucleardatapy/data/matter/pheno/ddrh/TW99-NM.dat +200 -0
- nucleardatapy/data/matter/pheno/ddrh/TW99-SM.dat +200 -0
- nucleardatapy/data/matter/pheno/ddrhf/PKA1-NM.dat +200 -0
- nucleardatapy/data/matter/pheno/ddrhf/PKA1-SM.dat +200 -0
- nucleardatapy/data/matter/pheno/ddrhf/PKO1-NM.dat +200 -0
- nucleardatapy/data/matter/pheno/ddrhf/PKO1-SM.dat +200 -0
- nucleardatapy/data/matter/pheno/ddrhf/PKO2-NM.dat +200 -0
- nucleardatapy/data/matter/pheno/ddrhf/PKO2-SM.dat +200 -0
- nucleardatapy/data/matter/pheno/ddrhf/PKO3-NM.dat +200 -0
- nucleardatapy/data/matter/pheno/ddrhf/PKO3-SM.dat +200 -0
- nucleardatapy/data/matter/pheno/nlrh/NL-SH-NM.dat +101 -0
- nucleardatapy/data/matter/pheno/nlrh/NL-SH-SM.dat +101 -0
- nucleardatapy/data/matter/pheno/nlrh/NL3-NM.dat +101 -0
- nucleardatapy/data/matter/pheno/nlrh/NL3-SM.dat +101 -0
- nucleardatapy/data/matter/pheno/nlrh/NL3II-NM.dat +101 -0
- nucleardatapy/data/matter/pheno/nlrh/NL3II-SM.dat +101 -0
- nucleardatapy/data/matter/pheno/nlrh/PK1-NM.dat +101 -0
- nucleardatapy/data/matter/pheno/nlrh/PK1-SM.dat +101 -0
- nucleardatapy/data/matter/pheno/nlrh/PK1R-NM.dat +101 -0
- nucleardatapy/data/matter/pheno/nlrh/PK1R-SM.dat +101 -0
- nucleardatapy/data/matter/pheno/nlrh/TM1-NM.dat +157 -0
- nucleardatapy/data/matter/pheno/nlrh/TM1-SM.dat +140 -0
- nucleardatapy/data/nuclei/esym/Danielewicz-2014-S.dat +8 -0
- nucleardatapy/data/nuclei/isgmr/2010-ISGMR-Li.dat +16 -0
- nucleardatapy/data/nuclei/isgmr/2018-ISGMR-Garg.dat +17 -0
- nucleardatapy/data/nuclei/isgmr/2018-ISGMR-Garg.tex +76 -0
- nucleardatapy/data/nuclei/isgmr/2022-ISGMR-average.dat +17 -0
- nucleardatapy/data/nuclei/isgmr/isgmr.pdf +0 -0
- nucleardatapy/data/nuclei/masses/AME/2012_nubase.mas12.txt +5513 -0
- nucleardatapy/data/nuclei/masses/AME/2016_nubase2016.txt +5625 -0
- nucleardatapy/data/nuclei/masses/AME/2020_nubase_4.mas20.txt +5868 -0
- nucleardatapy/data/nuclei/masses/Theory/1988-GK.txt +1 -0
- nucleardatapy/data/nuclei/masses/Theory/1988-MJ.txt +1 -0
- nucleardatapy/data/nuclei/masses/Theory/1995-DZ.txt +1 -0
- nucleardatapy/data/nuclei/masses/Theory/1995-ETFSI.txt +8245 -0
- nucleardatapy/data/nuclei/masses/Theory/1995-FRDM.dat +8982 -0
- nucleardatapy/data/nuclei/masses/Theory/1995-FRDM.txt +8980 -0
- nucleardatapy/data/nuclei/masses/Theory/2005-KTUY.txt +9437 -0
- nucleardatapy/data/nuclei/masses/Theory/2007-HFB14.txt +8389 -0
- nucleardatapy/data/nuclei/masses/Theory/2010-HFB21.dat +8389 -0
- nucleardatapy/data/nuclei/masses/Theory/2010-WS3.txt +1 -0
- nucleardatapy/data/nuclei/masses/Theory/2011-WS3.txt +1 -0
- nucleardatapy/data/nuclei/masses/Theory/2013-HFB22.txt +8396 -0
- nucleardatapy/data/nuclei/masses/Theory/2013-HFB23.txt +8396 -0
- nucleardatapy/data/nuclei/masses/Theory/2013-HFB24.txt +8396 -0
- nucleardatapy/data/nuclei/masses/Theory/2013-HFB25.txt +9488 -0
- nucleardatapy/data/nuclei/masses/Theory/2013-HFB26-old.txt +9512 -0
- nucleardatapy/data/nuclei/masses/Theory/2013-HFB26.txt +9515 -0
- nucleardatapy/data/nuclei/masses/Theory/2021-BSkG1-old.txt +7017 -0
- nucleardatapy/data/nuclei/masses/Theory/2021-BSkG1.txt +6574 -0
- nucleardatapy/data/nuclei/masses/Theory/2022-BSkG2-old.txt +6722 -0
- nucleardatapy/data/nuclei/masses/Theory/2022-BSkG2.txt +6719 -0
- nucleardatapy/data/nuclei/masses/Theory/2023-BSkG3-old.txt +8489 -0
- nucleardatapy/data/nuclei/masses/Theory/2023-BSkG3.txt +8486 -0
- nucleardatapy/data/nuclei/masses/Theory/2024-BSkG4-old.txt +7848 -0
- nucleardatapy/data/nuclei/masses/Theory/2025-BSkG4.txt +7845 -0
- nucleardatapy/data/nuclei/masses/UNEDF/ExpDatabase_Fortran90_v04/DataSet04.dat +1497 -0
- nucleardatapy/data/nuclei/masses/UNEDF/ExpDatabase_Fortran90_v04/Makefile_ifc +16 -0
- nucleardatapy/data/nuclei/masses/UNEDF/ExpDatabase_Fortran90_v04/input04.f90 +515 -0
- nucleardatapy/data/nuclei/masses/UNEDF/ExpDatabase_Fortran90_v04/main04.f90 +14 -0
- nucleardatapy/data/nuclei/masses/UNEDF/ExpDatabase_Fortran90_v04.tar +0 -0
- nucleardatapy/data/nuclei/nskin/208Pb.dat +25 -0
- nucleardatapy/data/nuclei/nskin/48Ca.dat +21 -0
- nucleardatapy/data/nuclei/radch/2013-Angeli.csv +960 -0
- nucleardatapy/env.py +9 -0
- nucleardatapy/eos/__init__.py +7 -0
- nucleardatapy/eos/setup_am.py +198 -0
- nucleardatapy/eos/setup_am_Beq.py +240 -0
- nucleardatapy/eos/setup_am_Leq.py +229 -0
- nucleardatapy/fig/__init__.py +43 -0
- nucleardatapy/fig/astro_setupGW_fig.py +67 -0
- nucleardatapy/fig/astro_setupMR_fig.py +88 -0
- nucleardatapy/fig/astro_setupMasses_fig.py +64 -0
- nucleardatapy/fig/astro_setupMtov_fig.py +84 -0
- nucleardatapy/fig/astro_setupMup_fig.py +68 -0
- nucleardatapy/fig/corr_setupEsymDen_fig.py +47 -0
- nucleardatapy/fig/corr_setupEsymLsym_fig.py +56 -0
- nucleardatapy/fig/corr_setupKsatQsat_fig.py +64 -0
- nucleardatapy/fig/crust_setupCrust_fig.py +52 -0
- nucleardatapy/fig/eos_setupAMBeq_fig.py +204 -0
- nucleardatapy/fig/eos_setupAMLeq_fig.py +209 -0
- nucleardatapy/fig/eos_setupAM_fig.py +81 -0
- nucleardatapy/fig/hnuc_setupChart_fig.py +54 -0
- nucleardatapy/fig/hnuc_setupRE1LExp_fig.py +44 -0
- nucleardatapy/fig/matter_ENM_fig.py +119 -0
- nucleardatapy/fig/matter_ESM_fig.py +119 -0
- nucleardatapy/fig/matter_Esym_fig.py +122 -0
- nucleardatapy/fig/matter_setupFFGNuc_fig.py +172 -0
- nucleardatapy/fig/matter_setupHIC_fig.py +101 -0
- nucleardatapy/fig/matter_setupMicroEsym_fig.py +85 -0
- nucleardatapy/fig/matter_setupMicro_LP_fig.py +109 -0
- nucleardatapy/fig/matter_setupMicro_band_fig.py +85 -0
- nucleardatapy/fig/matter_setupMicro_effmass_fig.py +70 -0
- nucleardatapy/fig/matter_setupMicro_err_NM_fig.py +47 -0
- nucleardatapy/fig/matter_setupMicro_fig.py +165 -0
- nucleardatapy/fig/matter_setupMicro_gap_fig.py +161 -0
- nucleardatapy/fig/matter_setupNEPModelDist_fig.py +68 -0
- nucleardatapy/fig/matter_setupPhenoEsym_fig.py +100 -0
- nucleardatapy/fig/matter_setupPheno_fig.py +121 -0
- nucleardatapy/fig/nuc_setupBEExp_fig.py +122 -0
- nucleardatapy/hnuc/__init__.py +8 -0
- nucleardatapy/hnuc/setup_be1L_exp.py +233 -0
- nucleardatapy/hnuc/setup_be1Xi_exp.py +192 -0
- nucleardatapy/hnuc/setup_be2L_exp.py +202 -0
- nucleardatapy/matter/__init__.py +17 -0
- nucleardatapy/matter/setup_ffg.py +410 -0
- nucleardatapy/matter/setup_hic.py +314 -0
- nucleardatapy/matter/setup_micro.py +1635 -0
- nucleardatapy/matter/setup_micro_band.py +233 -0
- nucleardatapy/matter/setup_micro_effmass.py +215 -0
- nucleardatapy/matter/setup_micro_esym.py +352 -0
- nucleardatapy/matter/setup_micro_gap.py +381 -0
- nucleardatapy/matter/setup_micro_lp.py +347 -0
- nucleardatapy/matter/setup_nep.py +478 -0
- nucleardatapy/matter/setup_nep_dist.py +187 -0
- nucleardatapy/matter/setup_nep_model_dist.py +202 -0
- nucleardatapy/matter/setup_pheno.py +353 -0
- nucleardatapy/matter/setup_pheno_esym.py +271 -0
- nucleardatapy/nuc/__init__.py +12 -0
- nucleardatapy/nuc/setup_be_exp.py +1026 -0
- nucleardatapy/nuc/setup_be_theo.py +1086 -0
- nucleardatapy/nuc/setup_isgmr_exp.py +494 -0
- nucleardatapy/nuc/setup_nskin_exp.py +610 -0
- nucleardatapy/nuc/setup_nskin_theo.py +263 -0
- nucleardatapy/nuc/setup_rch_exp.py +159 -0
- nucleardatapy/nuc/setup_rch_theo.py +198 -0
- nucleardatapy/param.py +247 -0
- nucleardatapy-0.2.0.dist-info/LICENSE +402 -0
- nucleardatapy-0.2.0.dist-info/METADATA +115 -0
- nucleardatapy-0.2.0.dist-info/RECORD +491 -0
- nucleardatapy-0.2.0.dist-info/WHEEL +5 -0
- nucleardatapy-0.2.0.dist-info/top_level.txt +2 -0
- tests/__init__.py +16 -0
- tests/test_astro_setupMasses.py +18 -0
- tests/test_corr_setupKsatQsat.py +22 -0
- tests/test_matter_setupFFGNuc.py +21 -0
- tests/test_matter_setupMicro.py +20 -0
nucleardatapy/env.py
ADDED
|
@@ -0,0 +1,198 @@
|
|
|
1
|
+
import os
|
|
2
|
+
import sys
|
|
3
|
+
import math
|
|
4
|
+
import numpy as np # 1.15.0
|
|
5
|
+
from scipy.optimize import fsolve
|
|
6
|
+
from scipy.interpolate import CubicSpline
|
|
7
|
+
from scipy.optimize import curve_fit
|
|
8
|
+
import random
|
|
9
|
+
|
|
10
|
+
#nucleardatapy_tk = os.getenv('NUCLEARDATAPY_TK')
|
|
11
|
+
#sys.path.insert(0, nucleardatapy_tk)
|
|
12
|
+
|
|
13
|
+
import nucleardatapy as nuda
|
|
14
|
+
|
|
15
|
+
class setupAM():
|
|
16
|
+
"""
|
|
17
|
+
Instantiate the object with microscopic results choosen \
|
|
18
|
+
by the toolkit practitioner.
|
|
19
|
+
|
|
20
|
+
:param model: Fix the name of model. Default value: '1998-VAR-AM-APR'.
|
|
21
|
+
:type model: str, optional.
|
|
22
|
+
:param kind: chose between 'micro' and 'pheno'.
|
|
23
|
+
:type kind: str, optional.
|
|
24
|
+
|
|
25
|
+
**Attributes:**
|
|
26
|
+
"""
|
|
27
|
+
#
|
|
28
|
+
def __init__( self, model = '1998-VAR-AM-APR', param = None, kind = 'micro', asy = 0.0, x_mu = 0.0 ):
|
|
29
|
+
"""
|
|
30
|
+
Parameters
|
|
31
|
+
----------
|
|
32
|
+
model : str, optional
|
|
33
|
+
The model to consider. Choose between: 1998-VAR-AM-APR (default), 2008-AFDMC-NM, ...
|
|
34
|
+
kind : chose between 'micro' or 'pheno'.
|
|
35
|
+
var1 and var2 : densities (array) and isospin asymmetry (scalar) if necessary (for interpolation function in APRfit for instance)
|
|
36
|
+
var1 = np.array([0.1,0.15,0.16,0.17,0.2,0.25])
|
|
37
|
+
"""
|
|
38
|
+
#
|
|
39
|
+
if nuda.env.verb: print("Enter setupAM()")
|
|
40
|
+
#
|
|
41
|
+
#: Attribute model.
|
|
42
|
+
self.model = model
|
|
43
|
+
if nuda.env.verb: print("model:",model)
|
|
44
|
+
#
|
|
45
|
+
self = setupAM.init_self( self )
|
|
46
|
+
#
|
|
47
|
+
# read var and define den, asy and xpr:
|
|
48
|
+
#self.den = np.array( den, dtype=float ) # density n_b=n_n+n_p
|
|
49
|
+
self.asy = float(asy)
|
|
50
|
+
#
|
|
51
|
+
if kind == 'micro':
|
|
52
|
+
models, models_lower = nuda.matter.micro_esym_models()
|
|
53
|
+
models.remove('1998-VAR-AM-APR-fit')
|
|
54
|
+
models_lower.remove('1998-var-am-apr-fit')
|
|
55
|
+
elif kind == 'pheno':
|
|
56
|
+
models, models_lower = nuda.matter.pheno_esym_models()
|
|
57
|
+
#
|
|
58
|
+
if model.lower() not in models_lower:
|
|
59
|
+
print('The model name ',model,' is not in the list of models.')
|
|
60
|
+
print('list of models:',models)
|
|
61
|
+
print('-- Exit the code --')
|
|
62
|
+
exit()
|
|
63
|
+
#
|
|
64
|
+
if kind == 'micro':
|
|
65
|
+
esym = nuda.matter.setupMicroEsym( model = model )
|
|
66
|
+
#eos.print_outputs( )
|
|
67
|
+
elif kind == 'pheno':
|
|
68
|
+
esym = nuda.matter.setupPhenoEsym( model = model, param = param )
|
|
69
|
+
#eos.print_outputs( )
|
|
70
|
+
else:
|
|
71
|
+
print('Issue with variable kind=',kind)
|
|
72
|
+
exit()
|
|
73
|
+
self.label = esym.label
|
|
74
|
+
self.every = esym.every
|
|
75
|
+
self.linestyle = esym.linestyle
|
|
76
|
+
self.marker = esym.marker
|
|
77
|
+
#print('type esym:',type(esym.esym))
|
|
78
|
+
self.den = esym.den
|
|
79
|
+
self.esym = esym.esym
|
|
80
|
+
#print('esym:',self.esym)
|
|
81
|
+
self.x_n = ( 1.0 + self.asy ) / 2.0
|
|
82
|
+
self.x_p = ( 1.0 - self.asy ) / 2.0
|
|
83
|
+
self.x_mu = x_mu
|
|
84
|
+
self.x_el = self.x_p - self.x_mu
|
|
85
|
+
self.n_n = self.x_n * self.den
|
|
86
|
+
self.n_p = self.x_p * self.den
|
|
87
|
+
self.kfn = nuda.kf_n( self.n_n )
|
|
88
|
+
self.n_el = self.x_el * self.den
|
|
89
|
+
self.n_mu = self.x_mu * self.den
|
|
90
|
+
#
|
|
91
|
+
# Thermodynamical variables
|
|
92
|
+
self.e2a_nuc = esym.e2a_sm + esym.esym * self.asy**2
|
|
93
|
+
self.e2v_nuc = self.e2a_nuc * self.den
|
|
94
|
+
lep = nuda.matter.setupFFGLep( den_el = self.n_el, den_mu = self.n_mu )
|
|
95
|
+
self.e2a_el = lep.e2a_el
|
|
96
|
+
self.e2a_mu = lep.e2a_mu
|
|
97
|
+
self.e2a_lep = lep.e2a_el + lep.e2a_mu
|
|
98
|
+
self.pre_el = lep.pre_el
|
|
99
|
+
self.pre_mu = lep.pre_mu
|
|
100
|
+
self.pre_lep = lep.pre_el + lep.pre_mu
|
|
101
|
+
# self.h2a
|
|
102
|
+
# self.h2v
|
|
103
|
+
# self.cs2
|
|
104
|
+
|
|
105
|
+
self.den_unit = 'fm$^{-3}$'
|
|
106
|
+
self.kf_unit = 'fm$^{-1}$'
|
|
107
|
+
self.e2a_unit = 'MeV'
|
|
108
|
+
self.e2v_unit = 'MeV fm$^{-3}$'
|
|
109
|
+
self.pre_unit = 'MeV fm$^{-3}$'
|
|
110
|
+
self.gap_unit = 'MeV'
|
|
111
|
+
#
|
|
112
|
+
if nuda.env.verb: print("Exit setupAM()")
|
|
113
|
+
#
|
|
114
|
+
def print_outputs( self ):
|
|
115
|
+
"""
|
|
116
|
+
Method which print outputs on terminal's screen.
|
|
117
|
+
"""
|
|
118
|
+
#
|
|
119
|
+
if nuda.env.verb: print("Enter print_outputs()")
|
|
120
|
+
#
|
|
121
|
+
print("- Print output:")
|
|
122
|
+
print(" model:",self.model)
|
|
123
|
+
print(" ref: ",self.ref)
|
|
124
|
+
print(" label:",self.label)
|
|
125
|
+
print(" note: ",self.note)
|
|
126
|
+
#if any(self.sm_den): print(f" sm_den: {np.round(self.sm_den,3)} in {self.den_unit}")
|
|
127
|
+
if self.den is not None: print(f" den: {np.round(self.den,3)} in {self.den_unit}")
|
|
128
|
+
if self.kfn is not None: print(f" kfn: {np.round(self.den,3)} in {self.kf_unit}")
|
|
129
|
+
if self.asy is not None: print(f" asy: {np.round(self.asy,3)}")
|
|
130
|
+
if self.e2a is not None: print(f" e2a: {np.round(self.e2a,3)} in {self.e2a_unit}")
|
|
131
|
+
if self.e2v is not None: print(f" e2v: {np.round(self.e2v,3)} in {self.e2v_unit}")
|
|
132
|
+
if self.pre is not None: print(f" pre: {np.round(self.pre,3)} in {self.pre_unit}")
|
|
133
|
+
if self.cs2 is not None: print(f" cs2: {np.round(self.cs2,2)}")
|
|
134
|
+
#
|
|
135
|
+
if nuda.env.verb: print("Exit print_outputs()")
|
|
136
|
+
#
|
|
137
|
+
def init_self( self ):
|
|
138
|
+
"""
|
|
139
|
+
Initialize variables in self.
|
|
140
|
+
"""
|
|
141
|
+
#
|
|
142
|
+
if nuda.env.verb: print("Enter init_self()")
|
|
143
|
+
#
|
|
144
|
+
#: Attribute providing the full reference to the paper to be citted.
|
|
145
|
+
self.ref = ''
|
|
146
|
+
#: Attribute providing additional notes about the data.
|
|
147
|
+
self.note = ''
|
|
148
|
+
#: Attribute the matter asymmetry parameter (n_n-n_p)/(n_n+n_p).
|
|
149
|
+
self.asy = None
|
|
150
|
+
#: Attribute the matter density.
|
|
151
|
+
self.den = None
|
|
152
|
+
#: Attribute the symmetry energy.
|
|
153
|
+
self.esym = None
|
|
154
|
+
#: Attribute the neutron fraction.
|
|
155
|
+
self.x_n = None
|
|
156
|
+
#: Attribute the proton fraction.
|
|
157
|
+
self.x_p = None
|
|
158
|
+
#: Attribute the neutron density
|
|
159
|
+
self.n_n = None
|
|
160
|
+
#: Attribute the proton density.
|
|
161
|
+
self.n_p = None
|
|
162
|
+
#: Attribute the neutron Fermi momentum.
|
|
163
|
+
self.kfn = None
|
|
164
|
+
|
|
165
|
+
#: Attribute the energy per particle.
|
|
166
|
+
self.e2a = None
|
|
167
|
+
#: Attribute the energy per unit volume.
|
|
168
|
+
self.e2v = None
|
|
169
|
+
#: Attribute the enthalpy per particle.
|
|
170
|
+
self.h2a = None
|
|
171
|
+
#: Attribute the enthalpy per unit volume.
|
|
172
|
+
self.h2v = None
|
|
173
|
+
#: Attribute the pressure.
|
|
174
|
+
self.pre = None
|
|
175
|
+
#: Attribute the sound speed.
|
|
176
|
+
self.cs2 = None
|
|
177
|
+
#self.chempot_n
|
|
178
|
+
#self.chempot_p
|
|
179
|
+
#: Attribute the neutron matter effective mass.
|
|
180
|
+
#self.effmass_n = None
|
|
181
|
+
#: Attribute the symmetric matter effective mass.
|
|
182
|
+
#self.effmass_p = None
|
|
183
|
+
|
|
184
|
+
#: Attribute the plot linestyle.
|
|
185
|
+
self.linestyle = None
|
|
186
|
+
#: Attribute the plot to discriminate True uncertainties from False ones.
|
|
187
|
+
self.err = False
|
|
188
|
+
#: Attribute the plot label data.
|
|
189
|
+
self.label = ''
|
|
190
|
+
#: Attribute the plot marker.
|
|
191
|
+
self.marker = None
|
|
192
|
+
#: Attribute the plot every data.
|
|
193
|
+
self.every = 1
|
|
194
|
+
#
|
|
195
|
+
if nuda.env.verb: print("Exit init_self()")
|
|
196
|
+
#
|
|
197
|
+
return self
|
|
198
|
+
|
|
@@ -0,0 +1,240 @@
|
|
|
1
|
+
import math
|
|
2
|
+
import numpy as np # 1.15.0
|
|
3
|
+
from scipy.optimize import fsolve
|
|
4
|
+
from scipy.interpolate import CubicSpline
|
|
5
|
+
from scipy.optimize import curve_fit
|
|
6
|
+
import random
|
|
7
|
+
|
|
8
|
+
import nucleardatapy as nuda
|
|
9
|
+
|
|
10
|
+
def func_betaeq(var,*args):
|
|
11
|
+
x_el, x_mu = var
|
|
12
|
+
den, esym = args
|
|
13
|
+
n_el = x_el * den
|
|
14
|
+
kFel = ( 3 * nuda.cst.pi2 * n_el )**nuda.cst.third
|
|
15
|
+
mu_el = nuda.cst.hbc * kFel
|
|
16
|
+
if mu_el < nuda.cst.mmuc2:
|
|
17
|
+
x_p = x_el
|
|
18
|
+
eq1 = 4 * esym * (1-2*x_p) - nuda.cst.hbc * ( 3 * nuda.cst.pi2 * x_el * den )**nuda.cst.third
|
|
19
|
+
eq2 = 0.0
|
|
20
|
+
else:
|
|
21
|
+
x_p = x_el + x_mu
|
|
22
|
+
eq1 = 4 * esym * (1-2*x_p) - nuda.cst.hbc * ( 3 * nuda.cst.pi2 * x_el * den )**nuda.cst.third
|
|
23
|
+
n_mu = x_mu * den
|
|
24
|
+
kFmu = ( 3 * nuda.cst.pi2 * n_mu )**nuda.cst.third
|
|
25
|
+
eq2 = kFmu - math.sqrt( kFel**2 - (nuda.cst.mmuc2/nuda.cst.hbc)**2 )
|
|
26
|
+
return (eq1,eq2)
|
|
27
|
+
|
|
28
|
+
class setupAMBeq():
|
|
29
|
+
"""
|
|
30
|
+
Instantiate the object with microscopic results choosen \
|
|
31
|
+
by the toolkit practitioner.
|
|
32
|
+
|
|
33
|
+
:param model: Fix the name of model. Default value: '1998-VAR-AM-APR'.
|
|
34
|
+
:type model: str, optional.
|
|
35
|
+
:param kind: chose between 'micro' and 'pheno'.
|
|
36
|
+
:type kind: str, optional.
|
|
37
|
+
|
|
38
|
+
**Attributes:**
|
|
39
|
+
"""
|
|
40
|
+
#
|
|
41
|
+
def __init__( self, model = '1998-VAR-AM-APR', param = None, kind = 'micro', var1 = np.linspace(0.01,0.4,100) ):
|
|
42
|
+
"""
|
|
43
|
+
Parameters
|
|
44
|
+
----------
|
|
45
|
+
model : str, optional
|
|
46
|
+
The model to consider. Choose between: 1998-VAR-AM-APR (default), 2008-AFDMC-NM, ...
|
|
47
|
+
kind : chose between 'micro' or 'pheno'.
|
|
48
|
+
var1 and var2 : densities (array) and isospin asymmetry (scalar) if necessary (for interpolation function in APRfit for instance)
|
|
49
|
+
var1 = np.array([0.1,0.15,0.16,0.17,0.2,0.25])
|
|
50
|
+
"""
|
|
51
|
+
#
|
|
52
|
+
if nuda.env.verb: print("Enter setupAMBeq()")
|
|
53
|
+
#
|
|
54
|
+
#: Attribute model.
|
|
55
|
+
self.model = model
|
|
56
|
+
if nuda.env.verb: print("model:",model)
|
|
57
|
+
#
|
|
58
|
+
self = setupAMBeq.init_self( self )
|
|
59
|
+
#
|
|
60
|
+
# read var and define den, asy and xpr:
|
|
61
|
+
self.den = var1[:] # density n_b=n_n+n_p
|
|
62
|
+
#
|
|
63
|
+
if kind == 'micro':
|
|
64
|
+
models, models_lower = nuda.matter.micro_esym_models()
|
|
65
|
+
models.remove('1998-VAR-AM-APR-fit')
|
|
66
|
+
models_lower.remove('1998-var-am-apr-fit')
|
|
67
|
+
elif kind == 'pheno':
|
|
68
|
+
models, models_lower = nuda.matter.pheno_esym_models()
|
|
69
|
+
#
|
|
70
|
+
if model.lower() not in models_lower:
|
|
71
|
+
print('The model name ',model,' is not in the list of models.')
|
|
72
|
+
print('list of models:',models)
|
|
73
|
+
print('-- Exit the code --')
|
|
74
|
+
exit()
|
|
75
|
+
#
|
|
76
|
+
if kind == 'micro':
|
|
77
|
+
esym = nuda.matter.setupMicroEsym( model = model )
|
|
78
|
+
#eos.print_outputs( )
|
|
79
|
+
elif kind == 'pheno':
|
|
80
|
+
esym = nuda.matter.setupPhenoEsym( model = model, param = param )
|
|
81
|
+
#eos.print_outputs( )
|
|
82
|
+
self.label = esym.label
|
|
83
|
+
self.every = esym.every
|
|
84
|
+
self.linestyle = esym.linestyle
|
|
85
|
+
self.marker = esym.marker
|
|
86
|
+
#print('type esym:',type(esym.esym))
|
|
87
|
+
#
|
|
88
|
+
# lepton fractions
|
|
89
|
+
#
|
|
90
|
+
#if isinstance(esym.esym, np.ndarray ):
|
|
91
|
+
if esym.esym is not None:
|
|
92
|
+
self.den = esym.den
|
|
93
|
+
self.esym = esym.esym
|
|
94
|
+
self.x_el = []
|
|
95
|
+
self.x_mu = []
|
|
96
|
+
tmp1 = (4*esym.esym[0]/nuda.cst.hbc)**nuda.cst.three
|
|
97
|
+
x_el = tmp1 / (3*nuda.cst.pi2*esym.den[0] + 6*tmp1 )
|
|
98
|
+
#x_el = 0.1
|
|
99
|
+
x_mu = 0.0
|
|
100
|
+
for ind,den in enumerate(esym.den):
|
|
101
|
+
x_el, x_mu = fsolve(func_betaeq, (x_el, x_mu), args=(den,esym.esym[ind]) )
|
|
102
|
+
#print(f' ind:{ind}, den:{den:.3f}, esym:{esym.esym[ind]:.0f}, x_el:{x_el:.3f}, x_mu:{x_mu:.3f}')
|
|
103
|
+
self.x_el.append( x_el )
|
|
104
|
+
self.x_mu.append( x_mu )
|
|
105
|
+
self.x_el = np.array( self.x_el, dtype = float )
|
|
106
|
+
self.x_mu = np.array( self.x_mu, dtype = float )
|
|
107
|
+
#print('x_el:',self.x_el)
|
|
108
|
+
#print('x_mu:',self.x_mu)
|
|
109
|
+
self.x_p = self.x_el + self.x_mu
|
|
110
|
+
self.x_n = 1.0 - self.x_p
|
|
111
|
+
self.asy = self.x_n - self.x_p
|
|
112
|
+
self.n_n = self.x_n * self.den
|
|
113
|
+
self.n_p = self.x_p * self.den
|
|
114
|
+
#print('n_n:',self.n_n)
|
|
115
|
+
self.kfn = nuda.kf_n( self.n_n )
|
|
116
|
+
self.n_el = self.x_el * self.den
|
|
117
|
+
self.n_mu = self.x_mu * self.den
|
|
118
|
+
#
|
|
119
|
+
# Thermodynamical variables
|
|
120
|
+
self.e2a_nuc = esym.e2a_sm + esym.esym * self.asy**2
|
|
121
|
+
self.e2v_nuc = self.e2a_nuc * self.den
|
|
122
|
+
self.pre_nuc = esym.sm_pre + esym.sym_pre * self.asy**2
|
|
123
|
+
lep = nuda.matter.setupFFGLep( den_el = self.n_el, den_mu = self.n_mu )
|
|
124
|
+
self.e2a_el = lep.e2a_el
|
|
125
|
+
self.e2a_mu = lep.e2a_mu
|
|
126
|
+
self.e2a_lep = lep.e2a_lep
|
|
127
|
+
self.e2v_lep = lep.e2v_lep
|
|
128
|
+
self.pre_el = lep.pre_el
|
|
129
|
+
self.pre_mu = lep.pre_mu
|
|
130
|
+
self.pre_lep = lep.pre_lep
|
|
131
|
+
#
|
|
132
|
+
self.e2a_tot = self.e2a_nuc + self.e2a_lep
|
|
133
|
+
self.e2v_tot = self.e2v_nuc + self.e2v_lep
|
|
134
|
+
self.pre_tot = self.pre_nuc + self.pre_lep
|
|
135
|
+
# self.h2a
|
|
136
|
+
# self.h2v
|
|
137
|
+
# self.cs2
|
|
138
|
+
|
|
139
|
+
self.den_unit = 'fm$^{-3}$'
|
|
140
|
+
self.kf_unit = 'fm$^{-1}$'
|
|
141
|
+
self.e2a_unit = 'MeV'
|
|
142
|
+
self.e2v_unit = 'MeV fm$^{-3}$'
|
|
143
|
+
self.pre_unit = 'MeV fm$^{-3}$'
|
|
144
|
+
self.gap_unit = 'MeV'
|
|
145
|
+
#
|
|
146
|
+
if nuda.env.verb: print("Exit setupAMBeq()")
|
|
147
|
+
#
|
|
148
|
+
def print_outputs( self ):
|
|
149
|
+
"""
|
|
150
|
+
Method which print outputs on terminal's screen.
|
|
151
|
+
"""
|
|
152
|
+
#
|
|
153
|
+
if nuda.env.verb: print("Enter print_outputs()")
|
|
154
|
+
#
|
|
155
|
+
print("- Print output:")
|
|
156
|
+
print(" model:",self.model)
|
|
157
|
+
print(" ref: ",self.ref)
|
|
158
|
+
print(" label:",self.label)
|
|
159
|
+
print(" note: ",self.note)
|
|
160
|
+
#if any(self.sm_den): print(f" sm_den: {np.round(self.sm_den,3)} in {self.den_unit}")
|
|
161
|
+
if self.den is not None: print(f" den: {np.round(self.den,3)} in {self.den_unit}")
|
|
162
|
+
if self.kfn is not None: print(f" kfn: {np.round(self.den,3)} in {self.kf_unit}")
|
|
163
|
+
if self.asy is not None: print(f" asy: {np.round(self.asy,3)}")
|
|
164
|
+
if self.e2a is not None: print(f" e2a: {np.round(self.e2a,3)} in {self.e2a_unit}")
|
|
165
|
+
if self.e2v is not None: print(f" e2v: {np.round(self.e2v,3)} in {self.e2v_unit}")
|
|
166
|
+
if self.pre is not None: print(f" pre: {np.round(self.pre,3)} in {self.pre_unit}")
|
|
167
|
+
if self.cs2 is not None: print(f" cs2: {np.round(self.cs2,2)}")
|
|
168
|
+
#
|
|
169
|
+
if nuda.env.verb: print("Exit print_outputs()")
|
|
170
|
+
#
|
|
171
|
+
def init_self( self ):
|
|
172
|
+
"""
|
|
173
|
+
Initialize variables in self.
|
|
174
|
+
"""
|
|
175
|
+
#
|
|
176
|
+
if nuda.env.verb: print("Enter init_self()")
|
|
177
|
+
#
|
|
178
|
+
#: Attribute providing the full reference to the paper to be citted.
|
|
179
|
+
self.ref = ''
|
|
180
|
+
#: Attribute providing additional notes about the data.
|
|
181
|
+
self.note = ''
|
|
182
|
+
#: Attribute the matter density.
|
|
183
|
+
self.den = None
|
|
184
|
+
#: Attribute the symmetry energy.
|
|
185
|
+
self.esym = None
|
|
186
|
+
#: Attribute the neutron fraction.
|
|
187
|
+
self.x_n = None
|
|
188
|
+
#: Attribute the proton fraction.
|
|
189
|
+
self.x_p = None
|
|
190
|
+
#: Attribute the electron fraction.
|
|
191
|
+
self.x_el = None
|
|
192
|
+
#: Attribute the muon fraction.
|
|
193
|
+
self.x_mu = None
|
|
194
|
+
#: Attribute the matter asymmetry parameter (n_n-n_p)/(n_n+n_p).
|
|
195
|
+
self.asy = None
|
|
196
|
+
#: Attribute the neutron density
|
|
197
|
+
self.n_n = None
|
|
198
|
+
#: Attribute the proton density.
|
|
199
|
+
self.n_p = None
|
|
200
|
+
#: Attribute the neutron Fermi momentum.
|
|
201
|
+
self.kfn = None
|
|
202
|
+
|
|
203
|
+
#: Attribute the energy per particle (nucleon contribution).
|
|
204
|
+
self.e2a_nuc = None
|
|
205
|
+
#: Attribute the energy per particle (lepton contribution).
|
|
206
|
+
self.e2a_lep = None
|
|
207
|
+
#: Attribute the energy per particle (total).
|
|
208
|
+
self.e2a = None
|
|
209
|
+
#: Attribute the energy per unit volume.
|
|
210
|
+
self.e2v = None
|
|
211
|
+
#: Attribute the enthalpy per particle.
|
|
212
|
+
self.h2a = None
|
|
213
|
+
#: Attribute the enthalpy per unit volume.
|
|
214
|
+
self.h2v = None
|
|
215
|
+
#: Attribute the pressure.
|
|
216
|
+
self.pre = None
|
|
217
|
+
#: Attribute the sound speed.
|
|
218
|
+
self.cs2 = None
|
|
219
|
+
#self.chempot_n
|
|
220
|
+
#self.chempot_p
|
|
221
|
+
#: Attribute the neutron matter effective mass.
|
|
222
|
+
#self.effmass_n = None
|
|
223
|
+
#: Attribute the symmetric matter effective mass.
|
|
224
|
+
#self.effmass_p = None
|
|
225
|
+
|
|
226
|
+
#: Attribute the plot linestyle.
|
|
227
|
+
self.linestyle = None
|
|
228
|
+
#: Attribute the plot to discriminate True uncertainties from False ones.
|
|
229
|
+
self.err = False
|
|
230
|
+
#: Attribute the plot label data.
|
|
231
|
+
self.label = ''
|
|
232
|
+
#: Attribute the plot marker.
|
|
233
|
+
self.marker = None
|
|
234
|
+
#: Attribute the plot every data.
|
|
235
|
+
self.every = 1
|
|
236
|
+
#
|
|
237
|
+
if nuda.env.verb: print("Exit init_self()")
|
|
238
|
+
#
|
|
239
|
+
return self
|
|
240
|
+
|
|
@@ -0,0 +1,229 @@
|
|
|
1
|
+
import math
|
|
2
|
+
import numpy as np # 1.15.0
|
|
3
|
+
from scipy.optimize import fsolve
|
|
4
|
+
from scipy.interpolate import CubicSpline
|
|
5
|
+
from scipy.optimize import curve_fit
|
|
6
|
+
import random
|
|
7
|
+
|
|
8
|
+
import nucleardatapy as nuda
|
|
9
|
+
|
|
10
|
+
def func_am(var,*args):
|
|
11
|
+
x_mu = var
|
|
12
|
+
den, x_p = args
|
|
13
|
+
x_el = x_p - x_mu
|
|
14
|
+
n_el = x_el * den
|
|
15
|
+
kFel = ( 3 * nuda.cst.pi2 * n_el )**nuda.cst.third
|
|
16
|
+
mu_el = nuda.cst.hbc * kFel
|
|
17
|
+
if mu_el < nuda.cst.mmuc2:
|
|
18
|
+
x_mu = 0.0
|
|
19
|
+
eq = 0.0
|
|
20
|
+
else:
|
|
21
|
+
n_mu = x_mu * den
|
|
22
|
+
kFmu = ( 3 * nuda.cst.pi2 * n_mu )**nuda.cst.third
|
|
23
|
+
eq = kFmu - math.sqrt( kFel**2 - (nuda.cst.mmuc2/nuda.cst.hbc)**2 )
|
|
24
|
+
return eq
|
|
25
|
+
|
|
26
|
+
class setupAMLeq():
|
|
27
|
+
"""
|
|
28
|
+
Instantiate the object with microscopic results choosen \
|
|
29
|
+
by the toolkit practitioner.
|
|
30
|
+
|
|
31
|
+
:param model: Fix the name of model. Default value: '1998-VAR-AM-APR'.
|
|
32
|
+
:type model: str, optional.
|
|
33
|
+
:param kind: chose between 'micro' and 'pheno'.
|
|
34
|
+
:type kind: str, optional.
|
|
35
|
+
|
|
36
|
+
**Attributes:**
|
|
37
|
+
"""
|
|
38
|
+
#
|
|
39
|
+
def __init__( self, model = '1998-VAR-AM-APR', param = None, kind = 'micro', asy = 0.0 ):
|
|
40
|
+
"""
|
|
41
|
+
Parameters
|
|
42
|
+
----------
|
|
43
|
+
model : str, optional
|
|
44
|
+
The model to consider. Choose between: 1998-VAR-AM-APR (default), 2008-AFDMC-NM, ...
|
|
45
|
+
kind : chose between 'micro' or 'pheno'.
|
|
46
|
+
var1 and var2 : densities (array) and isospin asymmetry (scalar) if necessary (for interpolation function in APRfit for instance)
|
|
47
|
+
var1 = np.array([0.1,0.15,0.16,0.17,0.2,0.25])
|
|
48
|
+
"""
|
|
49
|
+
#
|
|
50
|
+
if nuda.env.verb: print("Enter setupAMLeq()")
|
|
51
|
+
#
|
|
52
|
+
#: Attribute model.
|
|
53
|
+
self.model = model
|
|
54
|
+
if nuda.env.verb: print("model:",model)
|
|
55
|
+
#
|
|
56
|
+
self = setupAMLeq.init_self( self )
|
|
57
|
+
#
|
|
58
|
+
# read var and define den, asy and xpr:
|
|
59
|
+
#self.den = np.array( var1, dtype=float ) # density n_b=n_n+n_p
|
|
60
|
+
self.asy = float(asy)
|
|
61
|
+
#
|
|
62
|
+
if kind == 'micro':
|
|
63
|
+
models, models_lower = nuda.matter.micro_esym_models()
|
|
64
|
+
models.remove('1998-VAR-AM-APR-fit')
|
|
65
|
+
models_lower.remove('1998-var-am-apr-fit')
|
|
66
|
+
elif kind == 'pheno':
|
|
67
|
+
models, models_lower = nuda.matter.pheno_esym_models()
|
|
68
|
+
#
|
|
69
|
+
if model.lower() not in models_lower:
|
|
70
|
+
print('The model name ',model,' is not in the list of models.')
|
|
71
|
+
print('list of models:',models)
|
|
72
|
+
print('-- Exit the code --')
|
|
73
|
+
exit()
|
|
74
|
+
#
|
|
75
|
+
if kind == 'micro':
|
|
76
|
+
esym = nuda.matter.setupMicroEsym( model = model )
|
|
77
|
+
#eos.print_outputs( )
|
|
78
|
+
elif kind == 'pheno':
|
|
79
|
+
esym = nuda.matter.setupPhenoEsym( model = model, param = param )
|
|
80
|
+
#eos.print_outputs( )
|
|
81
|
+
else:
|
|
82
|
+
print('Issue with variable kind=',kind)
|
|
83
|
+
exit()
|
|
84
|
+
self.label = esym.label
|
|
85
|
+
self.every = esym.every
|
|
86
|
+
self.linestyle = esym.linestyle
|
|
87
|
+
self.marker = esym.marker
|
|
88
|
+
#print('type esym:',type(esym.esym))
|
|
89
|
+
self.den = esym.den
|
|
90
|
+
self.esym = esym.esym
|
|
91
|
+
#print('esym:',self.esym)
|
|
92
|
+
self.x_n = ( 1.0 + self.asy ) / 2.0
|
|
93
|
+
self.x_p = ( 1.0 - self.asy ) / 2.0
|
|
94
|
+
self.n_n = self.x_n * self.den
|
|
95
|
+
self.n_p = self.x_p * self.den
|
|
96
|
+
#print('n_n:',self.n_n)
|
|
97
|
+
self.kfn = nuda.kf_n( self.n_n )
|
|
98
|
+
self.x_el = []
|
|
99
|
+
self.x_mu = []
|
|
100
|
+
x_mu = 0.0
|
|
101
|
+
#print('den:',self.den)
|
|
102
|
+
#print('x_p:',self.x_p)
|
|
103
|
+
for ind,den in enumerate(esym.den):
|
|
104
|
+
x_mu = fsolve(func_am, (x_mu), args=(self.den[ind],self.x_p) )
|
|
105
|
+
#print('x_mu:',x_mu[0])
|
|
106
|
+
#print(f' ind:{ind}, den:{den:.3f}, x_p:{self.x_p:.3f}, x_e:{self.x_p-x_mu[0]:.3f}, x_mu:{x_mu[0]:.3f}')
|
|
107
|
+
self.x_mu.append( x_mu[0] )
|
|
108
|
+
self.x_el.append( self.x_p - x_mu[0] )
|
|
109
|
+
self.x_el = np.array( self.x_el, dtype = float )
|
|
110
|
+
self.x_mu = np.array( self.x_mu, dtype = float )
|
|
111
|
+
#print('x_e:',self.x_e)
|
|
112
|
+
#print('x_mu:',self.x_mu)
|
|
113
|
+
self.n_el = self.x_el * self.den
|
|
114
|
+
self.n_mu = self.x_mu * self.den
|
|
115
|
+
#
|
|
116
|
+
# Thermodynamical variables
|
|
117
|
+
self.e2a_nuc = esym.e2a_sm + esym.esym * self.asy**2
|
|
118
|
+
self.e2v_nuc = self.e2a_nuc * self.den
|
|
119
|
+
self.pre_nuc = esym.sm_pre + esym.sym_pre * self.asy**2
|
|
120
|
+
lep = nuda.matter.setupFFGLep( den_el = self.n_el, den_mu = self.n_mu )
|
|
121
|
+
self.e2a_el = lep.e2a_el
|
|
122
|
+
self.e2a_mu = lep.e2a_mu
|
|
123
|
+
self.e2a_lep = lep.e2a_lep
|
|
124
|
+
self.e2v_lep = lep.e2v_lep
|
|
125
|
+
self.pre_el = lep.pre_el
|
|
126
|
+
self.pre_mu = lep.pre_mu
|
|
127
|
+
self.pre_lep = lep.pre_lep
|
|
128
|
+
#
|
|
129
|
+
self.e2a_tot = self.e2a_nuc + self.e2a_lep
|
|
130
|
+
self.e2v_tot = self.e2v_nuc + self.e2v_lep
|
|
131
|
+
self.pre_tot = self.pre_nuc + self.pre_lep
|
|
132
|
+
# self.h2a
|
|
133
|
+
# self.h2v
|
|
134
|
+
# self.cs2
|
|
135
|
+
|
|
136
|
+
self.den_unit = 'fm$^{-3}$'
|
|
137
|
+
self.kf_unit = 'fm$^{-1}$'
|
|
138
|
+
self.e2a_unit = 'MeV'
|
|
139
|
+
self.e2v_unit = 'MeV fm$^{-3}$'
|
|
140
|
+
self.pre_unit = 'MeV fm$^{-3}$'
|
|
141
|
+
self.gap_unit = 'MeV'
|
|
142
|
+
#
|
|
143
|
+
if nuda.env.verb: print("Exit setupAMLeq()")
|
|
144
|
+
#
|
|
145
|
+
def print_outputs( self ):
|
|
146
|
+
"""
|
|
147
|
+
Method which print outputs on terminal's screen.
|
|
148
|
+
"""
|
|
149
|
+
#
|
|
150
|
+
if nuda.env.verb: print("Enter print_outputs()")
|
|
151
|
+
#
|
|
152
|
+
print("- Print output:")
|
|
153
|
+
print(" model:",self.model)
|
|
154
|
+
print(" ref: ",self.ref)
|
|
155
|
+
print(" label:",self.label)
|
|
156
|
+
print(" note: ",self.note)
|
|
157
|
+
#if any(self.sm_den): print(f" sm_den: {np.round(self.sm_den,3)} in {self.den_unit}")
|
|
158
|
+
if self.den is not None: print(f" den: {np.round(self.den,3)} in {self.den_unit}")
|
|
159
|
+
if self.kfn is not None: print(f" kfn: {np.round(self.den,3)} in {self.kf_unit}")
|
|
160
|
+
if self.asy is not None: print(f" asy: {np.round(self.asy,3)}")
|
|
161
|
+
if self.e2a is not None: print(f" e2a: {np.round(self.e2a,3)} in {self.e2a_unit}")
|
|
162
|
+
if self.e2v is not None: print(f" e2v: {np.round(self.e2v,3)} in {self.e2v_unit}")
|
|
163
|
+
if self.pre is not None: print(f" pre: {np.round(self.pre,3)} in {self.pre_unit}")
|
|
164
|
+
if self.cs2 is not None: print(f" cs2: {np.round(self.cs2,2)}")
|
|
165
|
+
#
|
|
166
|
+
if nuda.env.verb: print("Exit print_outputs()")
|
|
167
|
+
#
|
|
168
|
+
def init_self( self ):
|
|
169
|
+
"""
|
|
170
|
+
Initialize variables in self.
|
|
171
|
+
"""
|
|
172
|
+
#
|
|
173
|
+
if nuda.env.verb: print("Enter init_self()")
|
|
174
|
+
#
|
|
175
|
+
#: Attribute providing the full reference to the paper to be citted.
|
|
176
|
+
self.ref = ''
|
|
177
|
+
#: Attribute providing additional notes about the data.
|
|
178
|
+
self.note = ''
|
|
179
|
+
#: Attribute the matter asymmetry parameter (n_n-n_p)/(n_n+n_p).
|
|
180
|
+
self.asy = None
|
|
181
|
+
#: Attribute the matter density.
|
|
182
|
+
self.den = None
|
|
183
|
+
#: Attribute the symmetry energy.
|
|
184
|
+
self.esym = None
|
|
185
|
+
#: Attribute the neutron fraction.
|
|
186
|
+
self.x_n = None
|
|
187
|
+
#: Attribute the proton fraction.
|
|
188
|
+
self.x_p = None
|
|
189
|
+
#: Attribute the neutron density
|
|
190
|
+
self.n_n = None
|
|
191
|
+
#: Attribute the proton density.
|
|
192
|
+
self.n_p = None
|
|
193
|
+
#: Attribute the neutron Fermi momentum.
|
|
194
|
+
self.kfn = None
|
|
195
|
+
|
|
196
|
+
#: Attribute the energy per particle.
|
|
197
|
+
self.e2a = None
|
|
198
|
+
#: Attribute the energy per unit volume.
|
|
199
|
+
self.e2v = None
|
|
200
|
+
#: Attribute the enthalpy per particle.
|
|
201
|
+
self.h2a = None
|
|
202
|
+
#: Attribute the enthalpy per unit volume.
|
|
203
|
+
self.h2v = None
|
|
204
|
+
#: Attribute the pressure.
|
|
205
|
+
self.pre = None
|
|
206
|
+
#: Attribute the sound speed.
|
|
207
|
+
self.cs2 = None
|
|
208
|
+
#self.chempot_n
|
|
209
|
+
#self.chempot_p
|
|
210
|
+
#: Attribute the neutron matter effective mass.
|
|
211
|
+
#self.effmass_n = None
|
|
212
|
+
#: Attribute the symmetric matter effective mass.
|
|
213
|
+
#self.effmass_p = None
|
|
214
|
+
|
|
215
|
+
#: Attribute the plot linestyle.
|
|
216
|
+
self.linestyle = None
|
|
217
|
+
#: Attribute the plot to discriminate True uncertainties from False ones.
|
|
218
|
+
self.err = False
|
|
219
|
+
#: Attribute the plot label data.
|
|
220
|
+
self.label = ''
|
|
221
|
+
#: Attribute the plot marker.
|
|
222
|
+
self.marker = None
|
|
223
|
+
#: Attribute the plot every data.
|
|
224
|
+
self.every = 1
|
|
225
|
+
#
|
|
226
|
+
if nuda.env.verb: print("Exit init_self()")
|
|
227
|
+
#
|
|
228
|
+
return self
|
|
229
|
+
|