nucleardatapy 0.2.0__py3-none-any.whl → 1.0.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.
Files changed (165) hide show
  1. nucleardatapy/__init__.py +3 -1
  2. nucleardatapy/astro/setup_gw.py +18 -18
  3. nucleardatapy/astro/setup_mr.py +9 -1
  4. nucleardatapy/astro/setup_mup.py +10 -10
  5. nucleardatapy/corr/setup_EsymDen.py +0 -5
  6. nucleardatapy/corr/setup_EsymLsym.py +50 -17
  7. nucleardatapy/corr/setup_KsatQsat.py +170 -69
  8. nucleardatapy/crust/setup_crust.py +403 -120
  9. nucleardatapy/data/astro/NICER/J0740+6620.dat +1 -0
  10. nucleardatapy/data/crust/2018-PCPFDDG-BSK22.dat +83 -0
  11. nucleardatapy/data/crust/2018-PCPFDDG-BSK24.dat +74 -0
  12. nucleardatapy/data/crust/2018-PCPFDDG-BSK25.dat +130 -0
  13. nucleardatapy/data/crust/2018-PCPFDDG-BSK26.dat +81 -0
  14. nucleardatapy/data/matter/micro/2006-BHF/{2006-BHF-E2A-NM.dat → 2006-BHF-Av18-E2A-NM.dat} +8 -8
  15. nucleardatapy/data/matter/micro/2006-BHF/2006-BHF-Av18-effmass-SM.dat +11 -0
  16. nucleardatapy/data/matter/micro/2006-BHF/2006-BHF-Av18-effmass-beta0.2.dat +11 -0
  17. nucleardatapy/data/matter/micro/2006-BHF/2006-BHF-Av18-effmass-beta0.4.dat +11 -0
  18. nucleardatapy/data/matter/nep/NEPESkyrme.dat +2 -3
  19. nucleardatapy/data/matter/nep/NEPGSkyrme.dat +7 -0
  20. nucleardatapy/data/matter/nep/NEPSkyrme.dat +4 -2
  21. nucleardatapy/data/matter/nep/NEPxEFT.dat +8 -0
  22. nucleardatapy/data/matter/nep/best67DDSkyrme.dat +28 -0
  23. nucleardatapy/data/matter/nep/best90DDSkyrme.dat +46 -0
  24. nucleardatapy/data/matter/nep/best95DDSkyrme.dat +54 -0
  25. nucleardatapy/data/matter/pheno/ESkyrme/BSk31-NM.dat +996 -996
  26. nucleardatapy/data/matter/pheno/ESkyrme/BSk31-SM.dat +991 -991
  27. nucleardatapy/data/matter/pheno/ESkyrme/BSkG4-NM.dat +1002 -0
  28. nucleardatapy/data/matter/pheno/ESkyrme/BSkG4-SM.dat +1002 -0
  29. nucleardatapy/data/matter/pheno/Skyrme/BSkG1-NM.dat +102 -0
  30. nucleardatapy/data/matter/pheno/Skyrme/BSkG1-SM.dat +102 -0
  31. nucleardatapy/data/matter/pheno/Skyrme/BSkG2-NM.dat +102 -0
  32. nucleardatapy/data/matter/pheno/Skyrme/BSkG2-SM.dat +102 -0
  33. nucleardatapy/data/nuclei/masses/Theory/2023-BSkG3.txt +0 -4
  34. nucleardatapy/data/nuclei/masses/Theory/2025-BSkG4.txt +0 -1
  35. nucleardatapy/env.py +1 -1
  36. nucleardatapy/eos/__init__.py +4 -3
  37. nucleardatapy/eos/setupCC.py +429 -0
  38. nucleardatapy/eos/setup_am.py +71 -34
  39. nucleardatapy/eos/setup_am_Beq.py +48 -17
  40. nucleardatapy/eos/setup_am_Leq.py +81 -50
  41. nucleardatapy/fig/__init__.py +29 -7
  42. nucleardatapy/fig/astro_setupGW_fig.py +5 -5
  43. nucleardatapy/fig/astro_setupMR_fig.py +12 -10
  44. nucleardatapy/fig/astro_setupMasses_fig.py +4 -4
  45. nucleardatapy/fig/astro_setupMtov_fig.py +4 -4
  46. nucleardatapy/fig/astro_setupMup_fig.py +5 -5
  47. nucleardatapy/fig/corr_setupEsymDen_fig.py +12 -5
  48. nucleardatapy/fig/corr_setupEsymLsym_fig.py +18 -5
  49. nucleardatapy/fig/corr_setupKsatQsat_fig.py +19 -15
  50. nucleardatapy/fig/crust_setupCrust_fig.py +7 -7
  51. nucleardatapy/fig/eos_setupAMBeq_fig.py +1338 -64
  52. nucleardatapy/fig/eos_setupAMLeq_fig.py +200 -68
  53. nucleardatapy/fig/eos_setupAM_asy_lep_fig.py +364 -0
  54. nucleardatapy/fig/eos_setupAM_asy_nuc_fig.py +337 -0
  55. nucleardatapy/fig/eos_setupAM_asy_tot_fig.py +343 -0
  56. nucleardatapy/fig/eos_setupAM_fig.py +470 -47
  57. nucleardatapy/fig/eos_setupCC_fig.py +240 -0
  58. nucleardatapy/fig/hnuc_setupChart_fig.py +2 -2
  59. nucleardatapy/fig/hnuc_setupRE1LExp_fig.py +4 -4
  60. nucleardatapy/fig/matter_all_fig.py +954 -0
  61. nucleardatapy/fig/matter_setupCheck_fig.py +103 -0
  62. nucleardatapy/fig/matter_setupFFGLep_fig.py +70 -0
  63. nucleardatapy/fig/matter_setupFFGNuc_fig.py +268 -104
  64. nucleardatapy/fig/matter_setupHIC_fig.py +98 -58
  65. nucleardatapy/fig/matter_setupMicroEsym_fig.py +267 -51
  66. nucleardatapy/fig/matter_setupMicro_LP_fig.py +175 -78
  67. nucleardatapy/fig/matter_setupMicro_band_fig.py +116 -47
  68. nucleardatapy/fig/matter_setupMicro_effmass_fig.py +264 -34
  69. nucleardatapy/fig/matter_setupMicro_err_NM_fig.py +41 -18
  70. nucleardatapy/fig/matter_setupMicro_fig.py +332 -98
  71. nucleardatapy/fig/matter_setupMicro_gap_fig.py +219 -92
  72. nucleardatapy/fig/matter_setupNEPStats_fig.py +96 -0
  73. nucleardatapy/fig/matter_setupPhenoEsym_fig.py +201 -61
  74. nucleardatapy/fig/matter_setupPheno_fig.py +392 -85
  75. nucleardatapy/fig/nuc_setupBEExp_chart_fig.py +286 -0
  76. nucleardatapy/fig/nuc_setupBEExp_fig.py +232 -70
  77. nucleardatapy/fig/nuc_setupBETheo_fig.py +344 -0
  78. nucleardatapy/fig/nuc_setupISGMRExp_fig.py +59 -0
  79. nucleardatapy/fig/nuc_setupRchExp_fig.py +139 -0
  80. nucleardatapy/fig/nuc_setupRchTheo_fig.py +143 -0
  81. nucleardatapy/fig/nuc_setupRnpExp_fig.py +88 -0
  82. nucleardatapy/fig/nuc_setupRnpTheo_fig.py +133 -0
  83. nucleardatapy/hello.py +6 -0
  84. nucleardatapy/hnuc/__init__.py +3 -3
  85. nucleardatapy/hnuc/{setup_be1L_exp.py → setup_re1L_exp.py} +6 -6
  86. nucleardatapy/hnuc/{setup_be1Xi_exp.py → setup_re1Xi_exp.py} +5 -5
  87. nucleardatapy/hnuc/{setup_be2L_exp.py → setup_re2L_exp.py} +6 -6
  88. nucleardatapy/matter/__init__.py +14 -13
  89. nucleardatapy/matter/setup_check.py +97 -0
  90. nucleardatapy/matter/setup_ffg.py +72 -38
  91. nucleardatapy/matter/setup_hic.py +91 -74
  92. nucleardatapy/matter/setup_micro.py +1698 -1019
  93. nucleardatapy/matter/setup_micro_band.py +11 -6
  94. nucleardatapy/matter/setup_micro_effmass.py +55 -2
  95. nucleardatapy/matter/setup_micro_esym.py +39 -34
  96. nucleardatapy/matter/setup_micro_gap.py +26 -19
  97. nucleardatapy/matter/setup_micro_lp.py +20 -19
  98. nucleardatapy/matter/setup_nep.py +175 -92
  99. nucleardatapy/matter/{setup_nep_model_dist.py → setup_nep_stat_model.py} +13 -8
  100. nucleardatapy/matter/{setup_nep_dist.py → setup_nep_stat_models.py} +12 -8
  101. nucleardatapy/matter/setup_pheno.py +121 -45
  102. nucleardatapy/matter/setup_pheno_esym.py +14 -19
  103. nucleardatapy/nuc/__init__.py +2 -2
  104. nucleardatapy/nuc/setup_be_exp.py +345 -333
  105. nucleardatapy/nuc/setup_be_theo.py +366 -178
  106. nucleardatapy/nuc/setup_isgmr_exp.py +4 -4
  107. nucleardatapy/nuc/setup_rch_exp.py +49 -6
  108. nucleardatapy/nuc/setup_rch_theo.py +72 -3
  109. nucleardatapy/nuc/{setup_nskin_exp.py → setup_rnp_exp.py} +59 -65
  110. nucleardatapy/nuc/{setup_nskin_theo.py → setup_rnp_theo.py} +35 -39
  111. nucleardatapy-1.0.0.dist-info/METADATA +553 -0
  112. {nucleardatapy-0.2.0.dist-info → nucleardatapy-1.0.0.dist-info}/RECORD +156 -128
  113. {nucleardatapy-0.2.0.dist-info → nucleardatapy-1.0.0.dist-info}/WHEEL +1 -1
  114. tests/test_corr_setupKsatQsat.py +3 -1
  115. tests/test_matter_setupMicro.py +37 -10
  116. nucleardatapy/data/matter/pheno/ESkyrme/BSkG1-NM.dat +0 -1002
  117. nucleardatapy/data/matter/pheno/ESkyrme/BSkG1-SM.dat +0 -1002
  118. nucleardatapy/data/matter/pheno/ESkyrme/BSkG2-NM.dat +0 -1002
  119. nucleardatapy/data/matter/pheno/ESkyrme/BSkG2-SM.dat +0 -1002
  120. nucleardatapy/fig/matter_ENM_fig.py +0 -119
  121. nucleardatapy/fig/matter_ESM_fig.py +0 -119
  122. nucleardatapy/fig/matter_Esym_fig.py +0 -122
  123. nucleardatapy/fig/matter_setupNEPModelDist_fig.py +0 -68
  124. nucleardatapy-0.2.0.dist-info/METADATA +0 -115
  125. /nucleardatapy/data/LandauParameters/micro/{2006-IBHF-NM-AV18.dat → 2006-EBHF-NM-AV18.dat} +0 -0
  126. /nucleardatapy/data/LandauParameters/micro/{2006-IBHF-SM-AV18.dat → 2006-EBHF-SM-AV18.dat} +0 -0
  127. /nucleardatapy/data/crust/{2022-crustGMRS-BSK14.dat → 2022-GMRS-BSK14.dat} +0 -0
  128. /nucleardatapy/data/crust/{2022-crustGMRS-BSK16.dat → 2022-GMRS-BSK16.dat} +0 -0
  129. /nucleardatapy/data/crust/{2022-crustGMRS-DHSL59.dat → 2022-GMRS-DHSL59.dat} +0 -0
  130. /nucleardatapy/data/crust/{2022-crustGMRS-DHSL69.dat → 2022-GMRS-DHSL69.dat} +0 -0
  131. /nucleardatapy/data/crust/{2022-crustGMRS-F0.dat → 2022-GMRS-F0.dat} +0 -0
  132. /nucleardatapy/data/crust/{2022-crustGMRS-H1.dat → 2022-GMRS-H1.dat} +0 -0
  133. /nucleardatapy/data/crust/{2022-crustGMRS-H2.dat → 2022-GMRS-H2.dat} +0 -0
  134. /nucleardatapy/data/crust/{2022-crustGMRS-H3.dat → 2022-GMRS-H3.dat} +0 -0
  135. /nucleardatapy/data/crust/{2022-crustGMRS-H4.dat → 2022-GMRS-H4.dat} +0 -0
  136. /nucleardatapy/data/crust/{2022-crustGMRS-H5.dat → 2022-GMRS-H5.dat} +0 -0
  137. /nucleardatapy/data/crust/{2022-crustGMRS-H7.dat → 2022-GMRS-H7.dat} +0 -0
  138. /nucleardatapy/data/crust/{2022-crustGMRS-LNS5.dat → 2022-GMRS-LNS5.dat} +0 -0
  139. /nucleardatapy/data/crust/{2022-crustGMRS-RATP.dat → 2022-GMRS-RATP.dat} +0 -0
  140. /nucleardatapy/data/crust/{2022-crustGMRS-SGII.dat → 2022-GMRS-SGII.dat} +0 -0
  141. /nucleardatapy/data/crust/{2022-crustGMRS-SLY5.dat → 2022-GMRS-SLY5.dat} +0 -0
  142. /nucleardatapy/data/matter/micro/2006-BHF/{2006-BHF-E2A-AM.dat → 2006-BHF-Av18-E2A-AM.dat} +0 -0
  143. /nucleardatapy/data/matter/micro/2006-BHF/{2006-BHF-E2A-SM.dat → 2006-BHF-Av18-E2A-SM.dat} +0 -0
  144. /nucleardatapy/data/matter/micro/2006-BHF/{2006-BHF-Esym2-SM.dat → 2006-BHF-Av18-Esym2-SM.dat} +0 -0
  145. /nucleardatapy/data/matter/micro/2006-BHF/{2006-BHF-GAP-NM-FreeSpectrum.dat → 2006-BHF-Av18-GAP-NM-FreeSpectrum.dat} +0 -0
  146. /nucleardatapy/data/matter/micro/2006-BHF/{2006-BHF-GAP-NM-SelfEnergy.dat → 2006-BHF-Av18-GAP-NM-SelfEnergy.dat} +0 -0
  147. /nucleardatapy/data/matter/micro/2006-BHF/{2006-BHF-GAP-SM-FreeSpectrum.dat → 2006-BHF-Av18-GAP-SM-FreeSpectrum.dat} +0 -0
  148. /nucleardatapy/data/matter/micro/2006-BHF/{2006-BHF-GAP-SM-SelfEnergy.dat → 2006-BHF-Av18-GAP-SM-SelfEnergy.dat} +0 -0
  149. /nucleardatapy/data/matter/micro/{2013-QMC-NM.dat → 2013-MBPT-NM.dat} +0 -0
  150. /nucleardatapy/data/matter/micro/{2020-MBPT-NM-DHSL59.dat → 2019-MBPT-NM-DHSL59.dat} +0 -0
  151. /nucleardatapy/data/matter/micro/{2020-MBPT-NM-DHSL69.dat → 2019-MBPT-NM-DHSL69.dat} +0 -0
  152. /nucleardatapy/data/matter/micro/{2020-MBPT-SM-DHSL59.dat → 2019-MBPT-SM-DHSL59.dat} +0 -0
  153. /nucleardatapy/data/matter/micro/{2020-MBPT-SM-DHSL69.dat → 2019-MBPT-SM-DHSL69.dat} +0 -0
  154. /nucleardatapy/data/matter/micro/{2023-MBPT-NM.csv → 2020-MBPT-NM.csv} +0 -0
  155. /nucleardatapy/data/matter/micro/{2023-MBPT-SM.csv → 2020-MBPT-SM.csv} +0 -0
  156. /nucleardatapy/data/nuclei/{nskin → rnp}/208Pb.dat +0 -0
  157. /nucleardatapy/data/nuclei/{nskin → rnp}/48Ca.dat +0 -0
  158. /nucleardatapy/data/{NeutronSkin/ddrhNskin-208Pb.dat → rnp/ddrhrnp-208Pb.dat} +0 -0
  159. /nucleardatapy/data/{NeutronSkin/ddrhNskin-48Ca.dat → rnp/ddrhrnp-48Ca.dat} +0 -0
  160. /nucleardatapy/data/{NeutronSkin/nlrhNskin-208Pb.dat → rnp/nlrhrnp-208Pb.dat} +0 -0
  161. /nucleardatapy/data/{NeutronSkin/nlrhNskin-48Ca.dat → rnp/nlrhrnp-48Ca.dat} +0 -0
  162. /nucleardatapy/data/{NeutronSkin/skyrmeNskin-208Pb.dat → rnp/skyrmernp-208Pb.dat} +0 -0
  163. /nucleardatapy/data/{NeutronSkin/skyrmeNskin-48Ca.dat → rnp/skyrmernp-48Ca.dat} +0 -0
  164. {nucleardatapy-0.2.0.dist-info → nucleardatapy-1.0.0.dist-info/licenses}/LICENSE +0 -0
  165. {nucleardatapy-0.2.0.dist-info → nucleardatapy-1.0.0.dist-info}/top_level.txt +0 -0
@@ -3,7 +3,8 @@ import matplotlib.pyplot as plt
3
3
 
4
4
  import nucleardatapy as nuda
5
5
 
6
- def matter_setupMicro_effmass_fig( pname, models, matter = 'NM' ):
6
+
7
+ def matter_setupMicro_effmass_fig(pname, models, matter="NM"):
7
8
  """
8
9
  Plot the effective mass as function of the density and Fermi momentum.\
9
10
  The plot is 1x2 with:\
@@ -18,53 +19,282 @@ def matter_setupMicro_effmass_fig( pname, models, matter = 'NM' ):
18
19
  :type matter: str.
19
20
  """
20
21
  #
21
- print(f'Plot name: {pname}')
22
- print('models:',models)
23
- print('matter:',matter)
22
+ print(f"Plot name: {pname}")
23
+ print("models:", models)
24
+ print("matter:", matter)
25
+ #
26
+ fig, axs = plt.subplots(1, 2)
27
+ fig.tight_layout() # Or equivalently, "plt.tight_layout()"
28
+ fig.subplots_adjust( left=0.12, bottom=0.12, right=0.95, top=0.85, wspace=0.05, hspace=0.05 )
24
29
  #
25
- fig, axs = plt.subplots(1,2)
26
- fig.tight_layout() # Or equivalently, "plt.tight_layout()"
27
- fig.subplots_adjust(left=0.12, bottom=0.12, right=None, top=0.8, wspace=0.05, hspace=0.05 )
30
+ axs[0].set_ylabel(r"Landau effective mass $m^*/m$", fontsize='14')
31
+ axs[0].set_xlabel(r"$n_\text{nuc}$ (fm$^{-3}$)", fontsize='14')
32
+ # axs[0].tick_params('x', labelbottom=False)
28
33
  #
29
- axs[0].set_ylabel(r'Landau effective mass $m^*/m$')
30
- axs[0].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)')
31
- axs[0].set_xlim([0, 0.34])
32
- axs[0].set_ylim([0.4, 1.2])
33
- #axs[0].tick_params('x', labelbottom=False)
34
+ # axs[1].tick_params('x', labelbottom=False)
35
+ axs[1].tick_params("y", labelleft=False)
36
+ axs[1].set_xlabel(r"$k_{F}$ (fm$^{-1}$)", fontsize='14')
34
37
  #
35
- axs[1].set_xlim([0, 2.0])
36
- axs[1].set_ylim([0.4, 1.2])
37
- #axs[1].tick_params('x', labelbottom=False)
38
- axs[1].tick_params('y', labelleft=False)
39
- axs[1].set_xlabel(r'$k_{F_n}$ (fm$^{-1}$)')
38
+ if matter.lower() == "nm":
39
+ axs[0].set_xlim([0, 0.34])
40
+ axs[0].set_ylim([0.6, 1.1])
41
+ axs[1].set_xlim([0, 2.0])
42
+ axs[1].set_ylim([0.6, 1.1])
43
+ elif matter.lower() == "sm":
44
+ axs[0].set_xlim([0, 0.34])
45
+ axs[0].set_ylim([0.6, 1.1])
46
+ axs[1].set_xlim([0, 2.0])
47
+ axs[1].set_ylim([0.6, 1.1])
48
+ elif matter.lower() == "am":
49
+ axs[0].set_xlim([0.05, 0.27])
50
+ axs[0].set_ylim([0.7, 1.0])
51
+ axs[1].set_xlim([0.7, 1.8])
52
+ axs[1].set_ylim([0.7, 1.0])
40
53
  #
41
- #axs[1,0].set_ylabel(r'$\Delta_{1S0}/E_F$')
54
+ # axs[1,0].set_ylabel(r'$\Delta_{1S0}/E_F$')
42
55
  #
43
56
  for model in models:
44
57
  #
45
- ms = nuda.matter.setupMicroEffmass( model = model, matter = matter )
58
+ ms = nuda.matter.setupMicroEffmass(model=model, matter=matter)
59
+ #
60
+ lstyle = None
46
61
  #
47
- if matter.lower() == 'nm':
62
+ axs[0].text(0.08, 0.75, "in " + matter)
63
+ axs[1].text(0.90, 0.75, "in " + matter)
64
+ if matter.lower() == "nm":
48
65
  if ms.nm_effmass is not None:
49
66
  if ms.nm_effmass_err is not None:
50
- axs[0].errorbar( ms.nm_den, ms.nm_effmass, yerr=ms.nm_effmass_err, marker=ms.marker, markevery=ms.every, linestyle='none', label=ms.label )
51
- axs[1].errorbar( ms.nm_kfn, ms.nm_effmass, yerr=ms.nm_effmass_err, marker=ms.marker, markevery=ms.every, linestyle='none' )
67
+ axs[0].errorbar(
68
+ ms.nm_den,
69
+ ms.nm_effmass,
70
+ yerr=ms.nm_effmass_err,
71
+ marker=ms.marker,
72
+ markevery=ms.every,
73
+ linestyle=lstyle,
74
+ label=ms.label,
75
+ )
76
+ axs[1].errorbar(
77
+ ms.nm_kfn,
78
+ ms.nm_effmass,
79
+ yerr=ms.nm_effmass_err,
80
+ marker=ms.marker,
81
+ markevery=ms.every,
82
+ linestyle=lstyle,
83
+ )
52
84
  else:
53
- axs[0].plot( ms.nm_den, ms.nm_effmass, marker=ms.marker, markevery=ms.every, linestyle='none', label=ms.label )
54
- axs[1].plot( ms.nm_kfn, ms.nm_effmass, marker=ms.marker, markevery=ms.every, linestyle='none' )
55
- elif matter.lower() == 'sm':
85
+ axs[0].plot(
86
+ ms.nm_den,
87
+ ms.nm_effmass,
88
+ marker=ms.marker,
89
+ markevery=ms.every,
90
+ linestyle=lstyle,
91
+ label=ms.label,
92
+ )
93
+ axs[1].plot(
94
+ ms.nm_kfn,
95
+ ms.nm_effmass,
96
+ marker=ms.marker,
97
+ markevery=ms.every,
98
+ linestyle=lstyle,
99
+ )
100
+ elif matter.lower() == "sm":
56
101
  if ms.sm_effmass is not None:
57
102
  if ms.sm_effmass_err is not None:
58
- axs[0].errorbar( ms.sm_den, ms.sm_effmass, yerr=ms.sm_effmass_err, marker=ms.marker, markevery=ms.every, linestyle='none', label=ms.label )
59
- axs[1].errorbar( ms.sm_kfn, ms.sm_effmass, yerr=ms.sm_effmass_err, marker=ms.marker, markevery=ms.every, linestyle='none' )
103
+ axs[0].errorbar(
104
+ ms.sm_den,
105
+ ms.sm_effmass,
106
+ yerr=ms.sm_effmass_err,
107
+ marker=ms.marker,
108
+ markevery=ms.every,
109
+ linestyle=lstyle,
110
+ label=ms.label,
111
+ )
112
+ axs[1].errorbar(
113
+ ms.sm_kfn,
114
+ ms.sm_effmass,
115
+ yerr=ms.sm_effmass_err,
116
+ marker=ms.marker,
117
+ markevery=ms.every,
118
+ linestyle=lstyle,
119
+ )
120
+ else:
121
+ axs[0].plot(
122
+ ms.sm_den,
123
+ ms.sm_effmass,
124
+ marker=ms.marker,
125
+ markevery=ms.every,
126
+ linestyle=lstyle,
127
+ label=ms.label,
128
+ )
129
+ axs[1].plot(
130
+ ms.sm_kfn,
131
+ ms.sm_effmass,
132
+ marker=ms.marker,
133
+ markevery=ms.every,
134
+ linestyle=lstyle,
135
+ )
136
+ elif matter.lower() == "am":
137
+ if ms.sm_effmass_n is not None:
138
+ if ms.sm_effmass_err is not None:
139
+ axs[0].errorbar(
140
+ ms.sm_den,
141
+ ms.sm_effmass,
142
+ yerr=ms.sm_effmass_err,
143
+ marker=ms.marker,
144
+ markevery=ms.every,
145
+ linestyle=lstyle,
146
+ label=ms.label,
147
+ )
148
+ axs[1].errorbar(
149
+ ms.sm_kfn,
150
+ ms.sm_effmass,
151
+ yerr=ms.sm_effmass_err,
152
+ marker=ms.marker,
153
+ markevery=ms.every,
154
+ linestyle=lstyle,
155
+ )
60
156
  else:
61
- axs[0].plot( ms.sm_den, ms.sm_effmass, marker=ms.marker, markevery=ms.every, linestyle='none', label=ms.label )
62
- axs[1].plot( ms.sm_kfn, ms.sm_effmass, marker=ms.marker, markevery=ms.every, linestyle='none' )
63
- if nuda.env.verb_output: ms.print_outputs( )
157
+ ms_n_00, ms_p_00 = nuda.matter.effmass_emp( ms.sm_den, 0.0, mb="BHF" )
158
+ ms_n_02, ms_p_02 = nuda.matter.effmass_emp( ms.am02_den, 0.2, mb="BHF" )
159
+ ms_n_04, ms_p_04 = nuda.matter.effmass_emp( ms.am04_den, 0.4, mb="BHF" )
160
+ axs[0].plot(
161
+ ms.sm_den,
162
+ ms.sm_effmass_n,
163
+ marker="^",
164
+ color=nuda.param.col[1],
165
+ markevery=ms.every,
166
+ linestyle=lstyle,
167
+ label=ms.label + "(neutrons)",
168
+ )
169
+ axs[0].plot(
170
+ ms.am02_den,
171
+ ms.am02_effmass_n,
172
+ marker="^",
173
+ color=nuda.param.col[1],
174
+ markevery=ms.every,
175
+ linestyle=lstyle,
176
+ )
177
+ axs[0].plot(
178
+ ms.am04_den,
179
+ ms.am04_effmass_n,
180
+ marker="^",
181
+ color=nuda.param.col[1],
182
+ markevery=ms.every,
183
+ linestyle=lstyle,
184
+ )
185
+ axs[0].plot(
186
+ ms.sm_den,
187
+ ms.sm_effmass_p,
188
+ marker="v",
189
+ color=nuda.param.col[2],
190
+ markevery=ms.every,
191
+ linestyle=lstyle,
192
+ label=ms.label + "(protons)",
193
+ )
194
+ axs[0].plot(
195
+ ms.am02_den,
196
+ ms.am02_effmass_p,
197
+ marker="v",
198
+ color=nuda.param.col[2],
199
+ markevery=ms.every,
200
+ linestyle=lstyle,
201
+ )
202
+ axs[0].plot(
203
+ ms.am04_den,
204
+ ms.am04_effmass_p,
205
+ marker="v",
206
+ color=nuda.param.col[2],
207
+ markevery=ms.every,
208
+ linestyle=lstyle,
209
+ )
210
+ axs[0].plot(
211
+ ms.sm_den,
212
+ ms_n_00,
213
+ color=nuda.param.col[1],
214
+ linestyle="dotted",
215
+ label="Fit(neutrons)",
216
+ )
217
+ axs[0].plot( ms.am02_den, ms_n_02, color=nuda.param.col[1], linestyle="dotted" )
218
+ axs[0].plot( ms.am04_den, ms_n_04, color=nuda.param.col[1], linestyle="dotted" )
219
+ axs[0].plot( ms.sm_den, ms_p_00, color=nuda.param.col[2], linestyle="dotted", label="Fit(protons)" )
220
+ axs[0].plot( ms.am02_den, ms_p_02, color=nuda.param.col[2], linestyle="dotted" )
221
+ axs[0].plot( ms.am04_den, ms_p_04, color=nuda.param.col[2], linestyle="dotted" )
222
+ axs[1].plot(
223
+ ms.sm_kfn,
224
+ ms.sm_effmass_n,
225
+ marker="^",
226
+ color=nuda.param.col[1],
227
+ markevery=ms.every,
228
+ linestyle=lstyle,
229
+ )
230
+ axs[1].plot(
231
+ ms.am02_kfn,
232
+ ms.am02_effmass_n,
233
+ marker="^",
234
+ color=nuda.param.col[1],
235
+ markevery=ms.every,
236
+ linestyle=lstyle,
237
+ )
238
+ axs[1].plot(
239
+ ms.am04_kfn,
240
+ ms.am04_effmass_n,
241
+ marker="^",
242
+ color=nuda.param.col[1],
243
+ markevery=ms.every,
244
+ linestyle=lstyle,
245
+ )
246
+ axs[1].plot(
247
+ ms.sm_kfn,
248
+ ms.sm_effmass_p,
249
+ marker="v",
250
+ color=nuda.param.col[2],
251
+ markevery=ms.every,
252
+ linestyle=lstyle,
253
+ )
254
+ axs[1].plot(
255
+ ms.am02_kfn,
256
+ ms.am02_effmass_p,
257
+ marker="v",
258
+ color=nuda.param.col[2],
259
+ markevery=ms.every,
260
+ linestyle=lstyle,
261
+ )
262
+ axs[1].plot(
263
+ ms.am04_kfn,
264
+ ms.am04_effmass_p,
265
+ marker="v",
266
+ color=nuda.param.col[2],
267
+ markevery=ms.every,
268
+ linestyle=lstyle,
269
+ )
270
+ axs[1].plot( ms.sm_kfn, ms_n_00, color=nuda.param.col[1], linestyle="dotted" )
271
+ axs[1].plot( ms.am02_kfn, ms_n_02, color=nuda.param.col[1], linestyle="dotted" )
272
+ axs[1].plot( ms.am04_kfn, ms_n_04, color=nuda.param.col[1], linestyle="dotted" )
273
+ axs[1].plot( ms.sm_kfn, ms_p_00, color=nuda.param.col[2], linestyle="dotted" )
274
+ axs[1].plot( ms.am02_kfn, ms_p_02, color=nuda.param.col[2], linestyle="dotted" )
275
+ axs[1].plot( ms.am04_kfn, ms_p_04, color=nuda.param.col[2], linestyle="dotted" )
276
+ axs[0].text(0.23, 0.84, r"$\delta=0.4$", rotation=0)
277
+ axs[0].text(0.23, 0.81, r"$\delta=0.2$", rotation=0)
278
+ axs[0].text(0.23, 0.785, "SM", rotation=0)
279
+ axs[0].text(0.23, 0.76, r"$\delta=0.2$", rotation=0)
280
+ axs[0].text(0.23, 0.74, r"$\delta=0.4$", rotation=0)
281
+ axs[1].text(0.90, 0.92, "SM", rotation=0)
282
+ axs[1].text(0.90, 0.94, r"$\delta=0.2$", rotation=0)
283
+ axs[1].text(0.95, 0.96, r"$\delta=0.4$", rotation=0)
284
+ if nuda.env.verb_output:
285
+ ms.print_outputs()
64
286
  #
65
- #axs[1,0].legend(loc='upper right',fontsize='8')
66
- fig.legend(loc='upper left',bbox_to_anchor=(0.08,1.0),columnspacing=2,fontsize='8',ncol=3,frameon=False)
287
+ # axs[1,0].legend(loc='upper right',fontsize='8')
288
+ fig.legend(
289
+ loc="upper left",
290
+ bbox_to_anchor=(0.08, 1.0),
291
+ columnspacing=2,
292
+ fontsize="8",
293
+ ncol=3,
294
+ frameon=False,
295
+ )
67
296
  #
68
297
  if pname is not None:
69
- plt.savefig(pname, dpi=300)
70
- plt.close()
298
+ plt.savefig(pname, dpi=300)
299
+ plt.close()
300
+ #
@@ -3,7 +3,8 @@ import matplotlib.pyplot as plt
3
3
 
4
4
  import nucleardatapy as nuda
5
5
 
6
- def matter_setupMicro_err_NM_fig( pname, models ):
6
+
7
+ def matter_setupMicro_err_NM_fig(pname, models):
7
8
  """
8
9
  Plot uncertainties (err) estimated by different authors in NM.\
9
10
  The plot is 1x1 with:\
@@ -16,31 +17,53 @@ def matter_setupMicro_err_NM_fig( pname, models ):
16
17
 
17
18
  """
18
19
  #
19
- print(f'Plot name: {pname}')
20
+ print(f"Plot name: {pname}")
20
21
  #
21
- den = 0.03*np.arange(13)
22
+ den = 0.03 * np.arange(13)
22
23
  #
23
- fig, axs = plt.subplots(1,1)
24
- fig.tight_layout() # Or equivalently, "plt.tight_layout()"
25
- fig.subplots_adjust(left=0.12, bottom=0.12, right=None, top=0.98, wspace=0.2, hspace=0.2 )
24
+ fig, axs = plt.subplots(1, 1)
25
+ fig.tight_layout() # Or equivalently, "plt.tight_layout()"
26
+ fig.subplots_adjust(
27
+ left=0.12, bottom=0.12, right=None, top=0.98, wspace=0.2, hspace=0.2
28
+ )
26
29
  #
27
- axs.set_xlabel(r'n (fm$^{-3}$)',fontsize='12')
28
- axs.set_ylabel(r'$\Delta E_{NM}/E_{NM}$',fontsize='12')
29
- axs.set_xlim([0, 0.4])
30
- axs.set_ylim([0, 0.3])
30
+ axs.set_xlabel(r"$n_\text{nuc}$ (fm$^{-3}$)", fontsize="14")
31
+ axs.set_ylabel(r"$\Delta E_{int,NM}/E_{int,NM}$", fontsize="14")
32
+ axs.set_xlim([0, 0.37])
33
+ axs.set_ylim([0, 0.5])
31
34
  #
32
35
  for model in models:
33
36
  #
34
- mic = nuda.matter.setupMicro( model = model )
35
- if nuda.env.verb_output: mic.print_outputs( )
37
+ mic = nuda.matter.setupMicro(model=model)
38
+ if nuda.env.verb_output:
39
+ mic.print_outputs()
36
40
  if mic.nm_e2a is not None:
37
- print('model:',model)
38
- axs.plot( mic.nm_den, mic.nm_e2a_err/mic.nm_e2a, marker=mic.marker, markevery=mic.every, linestyle=mic.linestyle, label=mic.label )
39
- #axs.plot( den, nuda.matter.uncertainty_stat(den), linestyle='dashed', linewidth=3, label='fit (MBPT)' )
40
- axs.plot( den, nuda.matter.uncertainty_stat(den,err='MBPT'), linestyle='dashed', linewidth=3, label='fit (MBPT)' )
41
- axs.plot( den, nuda.matter.uncertainty_stat(den,err='QMC'), linestyle='dashed', linewidth=3, label='fit (QMC)' )
41
+ print("model:", model)
42
+ axs.plot(
43
+ mic.nm_den,
44
+ mic.nm_e2a_err / mic.nm_e2a_int,
45
+ marker=mic.marker,
46
+ markevery=mic.every,
47
+ linestyle=mic.linestyle,
48
+ label=mic.label,
49
+ )
50
+ # axs.plot( den, nuda.matter.uncertainty_stat(den), linestyle='dashed', linewidth=3, label='fit (MBPT)' )
51
+ axs.plot(
52
+ den,
53
+ nuda.matter.uncertainty_stat(den, err="MBPT"),
54
+ linestyle="dashed",
55
+ linewidth=3,
56
+ label="fit (MBPT)",
57
+ )
58
+ axs.plot(
59
+ den,
60
+ nuda.matter.uncertainty_stat(den, err="QMC"),
61
+ linestyle="dashed",
62
+ linewidth=3,
63
+ label="fit (QMC)",
64
+ )
42
65
  #
43
- axs.legend(loc='upper left',fontsize='12', ncol=3)
66
+ axs.legend(loc="upper left", fontsize="12", ncol=3)
44
67
  #
45
68
  if pname is not None:
46
69
  plt.savefig(pname, dpi=200)