nucleardatapy 0.2.1__py3-none-any.whl → 1.0.1__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 (172) hide show
  1. nucleardatapy/__init__.py +3 -1
  2. nucleardatapy/astro/setup_gw.py +18 -18
  3. nucleardatapy/astro/setup_mr.py +123 -33
  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/create_folder.py +2 -2
  9. nucleardatapy/crust/setup_crust.py +364 -126
  10. nucleardatapy/data/astro/HESS/J1731-347.dat +4 -0
  11. nucleardatapy/data/astro/NICER/J0030+0451.dat +6 -6
  12. nucleardatapy/data/astro/NICER/J0437-4715.dat +4 -3
  13. nucleardatapy/data/astro/NICER/J0614-3329.dat +4 -0
  14. nucleardatapy/data/astro/NICER/J0740+6620.dat +5 -4
  15. nucleardatapy/data/hnuclei/1991-2L-Yamamoto.csv +6 -0
  16. nucleardatapy/data/hnuclei/2013-2L-Ahn.csv +1 -1
  17. nucleardatapy/data/hnuclei/2019-2L-Ekawa.csv +7 -0
  18. nucleardatapy/data/matter/micro/2006-BHF/2006-BHF-Av18-E2A-NM.dat +8 -8
  19. nucleardatapy/data/matter/micro/2020-SCGF-NM-N3LO-414-E2A.dat +21 -0
  20. nucleardatapy/data/matter/micro/2020-SCGF-NM-N3LO-414-TD.dat +22 -0
  21. nucleardatapy/data/matter/micro/2020-SCGF-NM-N3LO-450-E2A.dat +20 -0
  22. nucleardatapy/data/matter/micro/2020-SCGF-NM-N3LO-450-TD.dat +22 -0
  23. nucleardatapy/data/matter/micro/2020-SCGF-NM-N3LO-500-E2A.dat +23 -0
  24. nucleardatapy/data/matter/micro/2020-SCGF-NM-N3LO-500-TD.dat +22 -0
  25. nucleardatapy/data/matter/micro/2020-SCGF-SM-N3LO-414-E2A.dat +15 -0
  26. nucleardatapy/data/matter/micro/2020-SCGF-SM-N3LO-414-TD.dat +21 -0
  27. nucleardatapy/data/matter/micro/2020-SCGF-SM-N3LO-450-E2A.dat +15 -0
  28. nucleardatapy/data/matter/micro/2020-SCGF-SM-N3LO-450-TD.dat +21 -0
  29. nucleardatapy/data/matter/micro/2020-SCGF-SM-N3LO-500-E2A.dat +20 -0
  30. nucleardatapy/data/matter/micro/2020-SCGF-SM-N3LO-500-TD.dat +20 -0
  31. nucleardatapy/data/matter/micro/2024-ABI-NM-DeltaNNLO450.dat +28 -0
  32. nucleardatapy/data/matter/micro/2024-ABI-NM-DeltaNNLO500.dat +28 -0
  33. nucleardatapy/data/matter/micro/2024-ABI-NM-DeltaNNLOgo394.dat +28 -0
  34. nucleardatapy/data/matter/micro/2024-ABI-NM-DeltaNNLOgo450.dat +28 -0
  35. nucleardatapy/data/matter/micro/2024-ABI-NM-NNLOsat.dat +28 -0
  36. nucleardatapy/data/matter/micro/2024-ABI-SM-DeltaNNLO450.dat +28 -0
  37. nucleardatapy/data/matter/micro/2024-ABI-SM-DeltaNNLO500.dat +28 -0
  38. nucleardatapy/data/matter/micro/2024-ABI-SM-DeltaNNLOgo394.dat +28 -0
  39. nucleardatapy/data/matter/micro/2024-ABI-SM-DeltaNNLOgo450.dat +28 -0
  40. nucleardatapy/data/matter/micro/2024-ABI-SM-NNLOsat.dat +28 -0
  41. nucleardatapy/data/matter/nep/NEPESkyrme.dat +2 -3
  42. nucleardatapy/data/matter/nep/NEPGSkyrme.dat +7 -0
  43. nucleardatapy/data/matter/nep/NEPSkyrme.dat +4 -2
  44. nucleardatapy/data/matter/nep/NEPxEFT.dat +8 -0
  45. nucleardatapy/data/matter/nep/best67DDSkyrme.dat +28 -0
  46. nucleardatapy/data/matter/nep/best90DDSkyrme.dat +46 -0
  47. nucleardatapy/data/matter/nep/best95DDSkyrme.dat +54 -0
  48. nucleardatapy/data/matter/pheno/ESkyrme/BSk31-NM.dat +996 -996
  49. nucleardatapy/data/matter/pheno/ESkyrme/BSk31-SM.dat +991 -991
  50. nucleardatapy/data/matter/pheno/ESkyrme/BSkG4-NM.dat +1002 -0
  51. nucleardatapy/data/matter/pheno/ESkyrme/BSkG4-SM.dat +1002 -0
  52. nucleardatapy/data/matter/pheno/Skyrme/BSkG1-NM.dat +102 -0
  53. nucleardatapy/data/matter/pheno/Skyrme/BSkG1-SM.dat +102 -0
  54. nucleardatapy/data/matter/pheno/Skyrme/BSkG2-NM.dat +102 -0
  55. nucleardatapy/data/matter/pheno/Skyrme/BSkG2-SM.dat +102 -0
  56. nucleardatapy/env.py +1 -1
  57. nucleardatapy/eos/__init__.py +4 -3
  58. nucleardatapy/eos/setupCC.py +429 -0
  59. nucleardatapy/eos/setup_am.py +39 -14
  60. nucleardatapy/eos/setup_am_Beq.py +40 -15
  61. nucleardatapy/eos/setup_am_Leq.py +40 -15
  62. nucleardatapy/fig/__init__.py +24 -15
  63. nucleardatapy/fig/astro_setupGW_fig.py +9 -7
  64. nucleardatapy/fig/astro_setupMR_fig.py +26 -18
  65. nucleardatapy/fig/astro_setupMasses_fig.py +8 -6
  66. nucleardatapy/fig/astro_setupMtov_fig.py +10 -6
  67. nucleardatapy/fig/astro_setupMup_fig.py +9 -7
  68. nucleardatapy/fig/corr_setupEsymDen_fig.py +22 -9
  69. nucleardatapy/fig/corr_setupEsymLsym_fig.py +25 -8
  70. nucleardatapy/fig/corr_setupKsatQsat_fig.py +23 -17
  71. nucleardatapy/fig/crust_setupCrust_fig.py +11 -9
  72. nucleardatapy/fig/eos_setupAMBeq_fig.py +641 -156
  73. nucleardatapy/fig/eos_setupAMLeq_fig.py +53 -50
  74. nucleardatapy/fig/eos_setupAM_asy_lep_fig.py +373 -0
  75. nucleardatapy/fig/eos_setupAM_asy_nuc_fig.py +346 -0
  76. nucleardatapy/fig/eos_setupAM_asy_tot_fig.py +352 -0
  77. nucleardatapy/fig/eos_setupAM_fig.py +519 -0
  78. nucleardatapy/fig/eos_setupCC_fig.py +270 -0
  79. nucleardatapy/fig/hnuc_setupChart_fig.py +19 -16
  80. nucleardatapy/fig/hnuc_setupRE1LExp_fig.py +15 -5
  81. nucleardatapy/fig/matter_all_fig.py +971 -0
  82. nucleardatapy/fig/matter_setupCheck_fig.py +106 -0
  83. nucleardatapy/fig/matter_setupFFGLep_fig.py +74 -0
  84. nucleardatapy/fig/matter_setupFFGNuc_fig.py +286 -115
  85. nucleardatapy/fig/matter_setupHIC_fig.py +107 -67
  86. nucleardatapy/fig/matter_setupMicroEsym_fig.py +259 -73
  87. nucleardatapy/fig/matter_setupMicro_LP_fig.py +185 -82
  88. nucleardatapy/fig/matter_setupMicro_band_fig.py +126 -53
  89. nucleardatapy/fig/matter_setupMicro_effmass_fig.py +253 -77
  90. nucleardatapy/fig/matter_setupMicro_err_NM_fig.py +45 -20
  91. nucleardatapy/fig/matter_setupMicro_fig.py +317 -77
  92. nucleardatapy/fig/matter_setupMicro_gap_fig.py +237 -100
  93. nucleardatapy/fig/matter_setupNEPStats_fig.py +106 -0
  94. nucleardatapy/fig/matter_setupPhenoEsym_fig.py +204 -65
  95. nucleardatapy/fig/matter_setupPheno_fig.py +395 -93
  96. nucleardatapy/fig/nuc_setupBEExp_chart_fig.py +93 -73
  97. nucleardatapy/fig/nuc_setupBEExp_fig.py +97 -87
  98. nucleardatapy/fig/nuc_setupBETheo_fig.py +114 -81
  99. nucleardatapy/fig/nuc_setupISGMRExp_fig.py +12 -15
  100. nucleardatapy/fig/nuc_setupRchExp_fig.py +14 -22
  101. nucleardatapy/fig/nuc_setupRchTheo_fig.py +37 -40
  102. nucleardatapy/fig/nuc_setupRnpExp_fig.py +86 -106
  103. nucleardatapy/fig/nuc_setupRnpTheo_fig.py +105 -94
  104. nucleardatapy/hello.py +6 -0
  105. nucleardatapy/hnuc/setup_re1L_exp.py +6 -6
  106. nucleardatapy/hnuc/setup_re1Xi_exp.py +5 -5
  107. nucleardatapy/hnuc/setup_re2L_exp.py +36 -13
  108. nucleardatapy/matter/__init__.py +14 -14
  109. nucleardatapy/matter/setup_check.py +6 -6
  110. nucleardatapy/matter/setup_ffg.py +66 -39
  111. nucleardatapy/matter/setup_hic.py +91 -74
  112. nucleardatapy/matter/setup_micro.py +2033 -1007
  113. nucleardatapy/matter/setup_micro_band.py +6 -6
  114. nucleardatapy/matter/setup_micro_esym.py +56 -54
  115. nucleardatapy/matter/setup_micro_gap.py +24 -17
  116. nucleardatapy/matter/setup_micro_lp.py +2 -2
  117. nucleardatapy/matter/setup_nep.py +175 -92
  118. nucleardatapy/matter/{setup_nep_model_dist.py → setup_nep_stat_model.py} +13 -8
  119. nucleardatapy/matter/{setup_nep_dist.py → setup_nep_stat_models.py} +12 -8
  120. nucleardatapy/matter/setup_pheno.py +129 -49
  121. nucleardatapy/matter/setup_pheno_esym.py +22 -19
  122. nucleardatapy/nuc/setup_be_exp.py +306 -292
  123. nucleardatapy/nuc/setup_be_theo.py +288 -105
  124. nucleardatapy/nuc/setup_isgmr_exp.py +4 -4
  125. nucleardatapy/nuc/setup_rnp_exp.py +1 -0
  126. nucleardatapy/nuc/setup_rnp_theo.py +2 -1
  127. {nucleardatapy-0.2.1.dist-info → nucleardatapy-1.0.1.dist-info}/METADATA +48 -16
  128. {nucleardatapy-0.2.1.dist-info → nucleardatapy-1.0.1.dist-info}/RECORD +157 -124
  129. {nucleardatapy-0.2.1.dist-info → nucleardatapy-1.0.1.dist-info}/WHEEL +1 -1
  130. tests/test_corr_setupKsatQsat.py +3 -1
  131. tests/test_matter_setupMicro.py +37 -10
  132. nucleardatapy/data/matter/pheno/ESkyrme/BSkG1-NM.dat +0 -1002
  133. nucleardatapy/data/matter/pheno/ESkyrme/BSkG1-SM.dat +0 -1002
  134. nucleardatapy/data/matter/pheno/ESkyrme/BSkG2-NM.dat +0 -1002
  135. nucleardatapy/data/matter/pheno/ESkyrme/BSkG2-SM.dat +0 -1002
  136. nucleardatapy/fig/eos_setupAM_e_asy_lep_fig.py +0 -125
  137. nucleardatapy/fig/eos_setupAM_e_asy_nuc_fig.py +0 -115
  138. nucleardatapy/fig/eos_setupAM_e_asy_tot_fig.py +0 -117
  139. nucleardatapy/fig/eos_setupAM_e_fig.py +0 -173
  140. nucleardatapy/fig/matter_ENM_fig.py +0 -128
  141. nucleardatapy/fig/matter_ESM_fig.py +0 -140
  142. nucleardatapy/fig/matter_Esym_fig.py +0 -134
  143. nucleardatapy/fig/matter_cs2_fig.py +0 -83
  144. nucleardatapy/fig/matter_preNM_fig.py +0 -146
  145. nucleardatapy/fig/matter_preSM_fig.py +0 -144
  146. nucleardatapy/fig/matter_setupNEPModelDist_fig.py +0 -68
  147. /nucleardatapy/data/LandauParameters/micro/{2006-IBHF-NM-AV18.dat → 2006-EBHF-NM-AV18.dat} +0 -0
  148. /nucleardatapy/data/LandauParameters/micro/{2006-IBHF-SM-AV18.dat → 2006-EBHF-SM-AV18.dat} +0 -0
  149. /nucleardatapy/data/crust/{2022-crustGMRS-BSK14.dat → 2022-GMRS-BSK14.dat} +0 -0
  150. /nucleardatapy/data/crust/{2022-crustGMRS-BSK16.dat → 2022-GMRS-BSK16.dat} +0 -0
  151. /nucleardatapy/data/crust/{2022-crustGMRS-DHSL59.dat → 2022-GMRS-DHSL59.dat} +0 -0
  152. /nucleardatapy/data/crust/{2022-crustGMRS-DHSL69.dat → 2022-GMRS-DHSL69.dat} +0 -0
  153. /nucleardatapy/data/crust/{2022-crustGMRS-F0.dat → 2022-GMRS-F0.dat} +0 -0
  154. /nucleardatapy/data/crust/{2022-crustGMRS-H1.dat → 2022-GMRS-H1.dat} +0 -0
  155. /nucleardatapy/data/crust/{2022-crustGMRS-H2.dat → 2022-GMRS-H2.dat} +0 -0
  156. /nucleardatapy/data/crust/{2022-crustGMRS-H3.dat → 2022-GMRS-H3.dat} +0 -0
  157. /nucleardatapy/data/crust/{2022-crustGMRS-H4.dat → 2022-GMRS-H4.dat} +0 -0
  158. /nucleardatapy/data/crust/{2022-crustGMRS-H5.dat → 2022-GMRS-H5.dat} +0 -0
  159. /nucleardatapy/data/crust/{2022-crustGMRS-H7.dat → 2022-GMRS-H7.dat} +0 -0
  160. /nucleardatapy/data/crust/{2022-crustGMRS-LNS5.dat → 2022-GMRS-LNS5.dat} +0 -0
  161. /nucleardatapy/data/crust/{2022-crustGMRS-RATP.dat → 2022-GMRS-RATP.dat} +0 -0
  162. /nucleardatapy/data/crust/{2022-crustGMRS-SGII.dat → 2022-GMRS-SGII.dat} +0 -0
  163. /nucleardatapy/data/crust/{2022-crustGMRS-SLY5.dat → 2022-GMRS-SLY5.dat} +0 -0
  164. /nucleardatapy/data/matter/micro/{2013-QMC-NM.dat → 2013-MBPT-NM.dat} +0 -0
  165. /nucleardatapy/data/{NeutronSkin/ddrhNskin-208Pb.dat → rnp/ddrhrnp-208Pb.dat} +0 -0
  166. /nucleardatapy/data/{NeutronSkin/ddrhNskin-48Ca.dat → rnp/ddrhrnp-48Ca.dat} +0 -0
  167. /nucleardatapy/data/{NeutronSkin/nlrhNskin-208Pb.dat → rnp/nlrhrnp-208Pb.dat} +0 -0
  168. /nucleardatapy/data/{NeutronSkin/nlrhNskin-48Ca.dat → rnp/nlrhrnp-48Ca.dat} +0 -0
  169. /nucleardatapy/data/{NeutronSkin/skyrmeNskin-208Pb.dat → rnp/skyrmernp-208Pb.dat} +0 -0
  170. /nucleardatapy/data/{NeutronSkin/skyrmeNskin-48Ca.dat → rnp/skyrmernp-48Ca.dat} +0 -0
  171. {nucleardatapy-0.2.1.dist-info → nucleardatapy-1.0.1.dist-info}/licenses/LICENSE +0 -0
  172. {nucleardatapy-0.2.1.dist-info → nucleardatapy-1.0.1.dist-info}/top_level.txt +0 -0
@@ -3,12 +3,15 @@ import matplotlib.pyplot as plt
3
3
 
4
4
  import nucleardatapy as nuda
5
5
 
6
- def matter_setupMicro_E_fig( pname, mb, models, band ):
6
+ def matter_setupMicro_e2a_fig( pname, mb, models, band, matter ):
7
7
  """
8
- Plot nucleonic energy per particle E/A in matter.\
9
- The plot is 2x2 with:\
10
- [0,0]: E/A versus den. [0,1]: E/A versus kfn.\
11
- [1,0]: E/E_NRFFG versus den. [1,1]: E/E_NRFFG versus kfn.\
8
+ Plot nucleonic energy per particle E/A in matter.
9
+
10
+ The plot is 2x2 with:
11
+
12
+ [0,0]: E/A versus den. [0,1]: E/A versus kfn.
13
+
14
+ [1,0]: E/E_NRFFG versus den. [1,1]: E/E_NRFFG versus kfn.
12
15
 
13
16
  :param pname: name of the figure (*.png)
14
17
  :type pname: str.
@@ -28,33 +31,33 @@ def matter_setupMicro_E_fig( pname, mb, models, band ):
28
31
  #
29
32
  fig, axs = plt.subplots(2,2)
30
33
  fig.tight_layout() # Or equivalently, "plt.tight_layout()"
31
- fig.subplots_adjust(left=0.10, bottom=0.12, right=None, top=0.85, wspace=0.05, hspace=0.05 )
34
+ fig.subplots_adjust(left=0.12, bottom=0.12, right=0.95, top=0.85, wspace=0.05, hspace=0.05 )
32
35
  #
33
- axs[1,0].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)')
34
- axs[1,1].set_xlabel(r'$k_{F_n}$ (fm$^{-1}$)')
36
+ axs[1,0].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)', fontsize = '14' )
37
+ axs[1,1].set_xlabel(r'$k_{F}$ (fm$^{-1}$)', fontsize = '14' )
35
38
  axs[0,1].tick_params('y', labelleft=False)
36
39
  axs[1,1].tick_params('y', labelleft=False)
37
40
  axs[0,0].tick_params('x', labelbottom=False)
38
41
  axs[0,1].tick_params('x', labelbottom=False)
39
- axs[0,0].set_xlim([0, 0.33])
40
- axs[1,0].set_xlim([0, 0.33])
41
- axs[0,1].set_xlim([0.5, 1.9])
42
- axs[1,1].set_xlim([0.5, 1.9])
42
+ axs[0,0].set_xlim([0,0.33]) #([0.06, 0.28]) #[0, 0.33]
43
+ axs[1,0].set_xlim([0,0.33]) #([0.06, 0.28]) #[0, 0.33]
44
+ axs[0,1].set_xlim([0,1.9]) #([0.8, 1.6]) #[0, 1.9]
45
+ axs[1,1].set_xlim([0,1.9]) #([0.8, 1.6]) #[0, 1.9]
43
46
  if matter.lower() == 'nm':
44
- axs[0,0].set_ylabel(r'$E_\text{NM}/A$ (MeV)')
45
- axs[1,0].set_ylabel(r'$E_\text{NM}/E_\text{NRFFG}$')
47
+ axs[0,0].set_ylabel(r'$E_\text{int,NM}/A$ (MeV)', fontsize = '14' )
48
+ axs[1,0].set_ylabel(r'$E_\text{int,NM}/E_\text{int,NM}^\text{NRFFG}$', fontsize = '14' )
46
49
  axs[0,0].set_ylim([0, 30])
47
50
  axs[0,1].set_ylim([0, 30])
48
51
  axs[1,0].set_ylim([0.2, 0.84])
49
52
  axs[1,1].set_ylim([0.2, 0.84])
50
53
  delta = 1.0
51
54
  elif matter.lower() == 'sm':
52
- axs[0,0].set_ylabel(r'$E_\text{SM}/A$ (MeV)')
53
- axs[1,0].set_ylabel(r'$E_\text{SM}/E_\text{NRFFG}$')
54
- axs[0,0].set_ylim([-20, 10])
55
- axs[0,1].set_ylim([-20, 10])
56
- axs[1,0].set_ylim([-1.2, 0.5])
57
- axs[1,1].set_ylim([-1.2, 0.5])
55
+ axs[0,0].set_ylabel(r'$E_\text{int,SM}/A$ (MeV)', fontsize = '14' )
56
+ axs[1,0].set_ylabel(r'$E_\text{int,SM}/E_\text{int,SM}^\text{NRFFG}$', fontsize = '14' )
57
+ axs[0,0].set_ylim([-20,10]) #([-18, -8]) #[-20, 10]
58
+ axs[0,1].set_ylim([-20,10]) #([-18, -8]) #[-20, 10]
59
+ axs[1,0].set_ylim([-1.2, 0.5]) #([-1.0, -0.5]) #[-1.2, 0.5]
60
+ axs[1,1].set_ylim([-1.2, 0.5]) #([-1.0, -0.5]) #[-1.2, 0.5]
58
61
  delta = 0.0
59
62
  #
60
63
  for model in models:
@@ -78,82 +81,319 @@ def matter_setupMicro_E_fig( pname, mb, models, band ):
78
81
  #
79
82
  print(' => model (NLEFT):',model)
80
83
  if matter.lower() == 'nm':
81
- axs[0,0].errorbar( mic.nm_den, mic.nm_e2adata, yerr=mic.nm_e2adata_err, linestyle = 'dotted', markevery=mic.every, linewidth = 1, alpha=0.6 )
82
- axs[0,0].fill_between( mic.nm_den, y1=(mic.nm_e2a-mic.nm_e2a_err), y2=(mic.nm_e2a+mic.nm_e2a_err), alpha=0.3 )
83
- axs[0,1].errorbar( mic.nm_kfn, mic.nm_e2adata, yerr=mic.nm_e2adata_err, linestyle = 'dotted', markevery=mic.every, linewidth = 1, alpha=0.6 )
84
- axs[0,1].fill_between( mic.nm_kfn, y1=(mic.nm_e2a-mic.nm_e2a_err), y2=(mic.nm_e2a+mic.nm_e2a_err), alpha=0.3 )
85
- axs[1,0].errorbar( mic.nm_den, mic.nm_e2adata/nuda.effg_nr(mic.nm_kfn), yerr=mic.nm_e2adata_err/nuda.effg_nr(mic.nm_kfn), linestyle = 'dotted', markevery=mic.every, linewidth = 1, alpha=0.6 )
86
- axs[1,0].fill_between( mic.nm_den, y1=(mic.nm_e2a-mic.nm_e2a_err)/nuda.effg_nr(mic.nm_kfn), y2=(mic.nm_e2a+mic.nm_e2a_err)/nuda.effg_nr(mic.nm_kfn), alpha=0.3 )
87
- axs[1,1].errorbar( mic.nm_kfn, mic.nm_e2adata/nuda.effg_nr(mic.nm_kfn), yerr=mic.nm_e2adata_err/nuda.effg_nr(mic.nm_kfn), linestyle = 'dotted', markevery=mic.every, linewidth = 1, alpha=0.6 )
88
- axs[1,1].fill_between( mic.nm_kfn, y1=(mic.nm_e2a-mic.nm_e2a_err)/nuda.effg_nr(mic.nm_kfn), y2=(mic.nm_e2a+mic.nm_e2a_err)/nuda.effg_nr(mic.nm_kfn), alpha=0.3 )
84
+ axs[0,0].errorbar( mic.nm_den, mic.nm_e2a_int_data, yerr=mic.nm_e2a_err_data, linestyle = 'dotted', markevery=mic.every, linewidth = 1, alpha=0.6 )
85
+ axs[0,0].fill_between( mic.nm_den, y1=(mic.nm_e2a_int-mic.nm_e2a_err), y2=(mic.nm_e2a_int+mic.nm_e2a_err), alpha=0.3 )
86
+ axs[0,1].errorbar( mic.nm_kfn, mic.nm_e2a_int_data, yerr=mic.nm_e2a_err_data, linestyle = 'dotted', markevery=mic.every, linewidth = 1, alpha=0.6 )
87
+ axs[0,1].fill_between( mic.nm_kfn, y1=(mic.nm_e2a_int-mic.nm_e2a_err), y2=(mic.nm_e2a_int+mic.nm_e2a_err), alpha=0.3 )
88
+ axs[1,0].errorbar( mic.nm_den, mic.nm_e2a_int_data/nuda.effg_nr(mic.nm_kfn), yerr=mic.nm_e2a_err_data/nuda.effg_nr(mic.nm_kfn), linestyle = 'dotted', markevery=mic.every, linewidth = 1, alpha=0.6 )
89
+ axs[1,0].fill_between( mic.nm_den, y1=(mic.nm_e2a_int-mic.nm_e2a_err)/nuda.effg_nr(mic.nm_kfn), y2=(mic.nm_e2a_int+mic.nm_e2a_err)/nuda.effg_nr(mic.nm_kfn), alpha=0.3 )
90
+ axs[1,1].errorbar( mic.nm_kfn, mic.nm_e2a_int_data/nuda.effg_nr(mic.nm_kfn), yerr=mic.nm_e2a_err_data/nuda.effg_nr(mic.nm_kfn), linestyle = 'dotted', markevery=mic.every, linewidth = 1, alpha=0.6 )
91
+ axs[1,1].fill_between( mic.nm_kfn, y1=(mic.nm_e2a_int-mic.nm_e2a_err)/nuda.effg_nr(mic.nm_kfn), y2=(mic.nm_e2a_int+mic.nm_e2a_err)/nuda.effg_nr(mic.nm_kfn), alpha=0.3 )
89
92
  elif matter.lower() == 'sm':
90
- axs[0,0].errorbar( mic.sm_den, mic.sm_e2adata, yerr=mic.sm_e2adata_err, linestyle = 'dotted', markevery=mic.every, linewidth = 1, alpha=0.6 )
91
- axs[0,0].fill_between( mic.sm_den, y1=(mic.sm_e2a-mic.sm_e2a_err), y2=(mic.sm_e2a+mic.sm_e2a_err), alpha=0.3 )
92
- axs[0,1].errorbar( mic.sm_kfn, mic.sm_e2adata, yerr=mic.sm_e2adata_err, linestyle = 'dotted', markevery=mic.every, linewidth = 1, alpha=0.6 )
93
- axs[0,1].fill_between( mic.sm_kfn, y1=(mic.sm_e2a-mic.sm_e2a_err), y2=(mic.sm_e2a+mic.sm_e2a_err), alpha=0.3 )
94
- axs[1,0].errorbar( mic.sm_den, mic.sm_e2adata/nuda.effg_nr(mic.sm_kfn), yerr=mic.sm_e2adata_err/nuda.effg_nr(mic.sm_kfn), linestyle = 'dotted', markevery=mic.every, linewidth = 1, alpha=0.6 )
95
- axs[1,0].fill_between( mic.sm_den, y1=(mic.sm_e2a-mic.sm_e2a_err)/nuda.effg_nr(mic.sm_kfn), y2=(mic.sm_e2a+mic.sm_e2a_err)/nuda.effg_nr(mic.sm_kfn), alpha=0.3 )
96
- axs[1,1].errorbar( mic.sm_kfn, mic.sm_e2adata/nuda.effg_nr(mic.sm_kfn), yerr=mic.sm_e2adata_err/nuda.effg_nr(mic.sm_kfn), linestyle = 'dotted', markevery=mic.every, linewidth = 1, alpha=0.6 )
97
- axs[1,1].fill_between( mic.sm_kfn, y1=(mic.sm_e2a-mic.sm_e2a_err)/nuda.effg_nr(mic.sm_kfn), y2=(mic.sm_e2a+mic.sm_e2a_err)/nuda.effg_nr(mic.sm_kfn), alpha=0.3 )
93
+ axs[0,0].errorbar( mic.sm_den, mic.sm_e2a_int_data, yerr=mic.sm_e2a_err_data, linestyle = 'dotted', markevery=mic.every, linewidth = 1, alpha=0.6 )
94
+ axs[0,0].fill_between( mic.sm_den, y1=(mic.sm_e2a_int-mic.sm_e2a_err), y2=(mic.sm_e2a_int+mic.sm_e2a_err), alpha=0.3 )
95
+ axs[0,1].errorbar( mic.sm_kfn, mic.sm_e2a_int_data, yerr=mic.sm_e2a_err_data, linestyle = 'dotted', markevery=mic.every, linewidth = 1, alpha=0.6 )
96
+ axs[0,1].fill_between( mic.sm_kfn, y1=(mic.sm_e2a_int-mic.sm_e2a_err), y2=(mic.sm_e2a_int+mic.sm_e2a_err), alpha=0.3 )
97
+ axs[1,0].errorbar( mic.sm_den, mic.sm_e2a_int_data/nuda.effg_nr(mic.sm_kfn), yerr=mic.sm_e2a_err_data/nuda.effg_nr(mic.sm_kfn), linestyle = 'dotted', markevery=mic.every, linewidth = 1, alpha=0.6 )
98
+ axs[1,0].fill_between( mic.sm_den, y1=(mic.sm_e2a_int-mic.sm_e2a_err)/nuda.effg_nr(mic.sm_kfn), y2=(mic.sm_e2a_int+mic.sm_e2a_err)/nuda.effg_nr(mic.sm_kfn), alpha=0.3 )
99
+ axs[1,1].errorbar( mic.sm_kfn, mic.sm_e2a_int_data/nuda.effg_nr(mic.sm_kfn), yerr=mic.sm_e2a_err_data/nuda.effg_nr(mic.sm_kfn), linestyle = 'dotted', markevery=mic.every, linewidth = 1, alpha=0.6 )
100
+ axs[1,1].fill_between( mic.sm_kfn, y1=(mic.sm_e2a_int-mic.sm_e2a_err)/nuda.effg_nr(mic.sm_kfn), y2=(mic.sm_e2a_int+mic.sm_e2a_err)/nuda.effg_nr(mic.sm_kfn), alpha=0.3 )
98
101
  #
99
102
  if mic.marker:
100
103
  #
101
104
  print('with marker:',mic.marker)
102
105
  if matter.lower() == 'nm':
103
- axs[0,0].errorbar( mic.nm_den, mic.nm_e2a, yerr=mic.nm_e2a_err, marker=mic.marker, markevery=mic.every, linestyle=lstyle, label=mic.label, errorevery=mic.every )
104
- axs[0,1].errorbar( mic.nm_kfn, mic.nm_e2a, yerr=mic.nm_e2a_err, marker=mic.marker, markevery=mic.every, linestyle=lstyle, errorevery=mic.every )
105
- axs[1,0].errorbar( mic.nm_den, mic.nm_e2a/nuda.effg_nr(mic.nm_kfn), yerr=mic.nm_e2a_err/nuda.effg_nr(mic.nm_kfn), marker=mic.marker, markevery=mic.every, linestyle=lstyle, errorevery=mic.every )
106
- axs[1,1].errorbar( mic.nm_kfn, mic.nm_e2a/nuda.effg_nr(mic.nm_kfn), yerr=mic.nm_e2a_err/nuda.effg_nr(mic.nm_kfn), marker=mic.marker, markevery=mic.every, linestyle=lstyle, errorevery=mic.every )
106
+ axs[0,0].errorbar( mic.nm_den, mic.nm_e2a_int, yerr=mic.nm_e2a_err, marker=mic.marker, markevery=mic.every, linestyle=lstyle, label=mic.label, errorevery=mic.every )
107
+ axs[0,1].errorbar( mic.nm_kfn, mic.nm_e2a_int, yerr=mic.nm_e2a_err, marker=mic.marker, markevery=mic.every, linestyle=lstyle, errorevery=mic.every )
108
+ axs[1,0].errorbar( mic.nm_den, mic.nm_e2a_int/nuda.effg_nr(mic.nm_kfn), yerr=mic.nm_e2a_err/nuda.effg_nr(mic.nm_kfn), marker=mic.marker, markevery=mic.every, linestyle=lstyle, errorevery=mic.every )
109
+ axs[1,1].errorbar( mic.nm_kfn, mic.nm_e2a_int/nuda.effg_nr(mic.nm_kfn), yerr=mic.nm_e2a_err/nuda.effg_nr(mic.nm_kfn), marker=mic.marker, markevery=mic.every, linestyle=lstyle, errorevery=mic.every )
107
110
  elif matter.lower() == 'sm':
108
- axs[0,0].errorbar( mic.sm_den, mic.sm_e2a, yerr=mic.sm_e2a_err, marker=mic.marker, markevery=mic.every, linestyle=lstyle, label=mic.label, errorevery=mic.every )
109
- axs[0,1].errorbar( mic.sm_kfn, mic.sm_e2a, yerr=mic.sm_e2a_err, marker=mic.marker, markevery=mic.every, linestyle=lstyle, errorevery=mic.every )
110
- axs[1,0].errorbar( mic.sm_den, mic.sm_e2a/nuda.effg_nr(mic.sm_kfn), yerr=mic.sm_e2a_err/nuda.effg_nr(mic.sm_kfn), marker=mic.marker, markevery=mic.every, linestyle=lstyle, errorevery=mic.every )
111
- axs[1,1].errorbar( mic.sm_kfn, mic.sm_e2a/nuda.effg_nr(mic.sm_kfn), yerr=mic.sm_e2a_err/nuda.effg_nr(mic.sm_kfn), marker=mic.marker, markevery=mic.every, linestyle=lstyle, errorevery=mic.every )
111
+ axs[0,0].errorbar( mic.sm_den, mic.sm_e2a_int, yerr=mic.sm_e2a_err, marker=mic.marker, markevery=mic.every, linestyle=lstyle, label=mic.label, errorevery=mic.every )
112
+ axs[0,1].errorbar( mic.sm_kfn, mic.sm_e2a_int, yerr=mic.sm_e2a_err, marker=mic.marker, markevery=mic.every, linestyle=lstyle, errorevery=mic.every )
113
+ axs[1,0].errorbar( mic.sm_den, mic.sm_e2a_int/nuda.effg_nr(mic.sm_kfn), yerr=mic.sm_e2a_err/nuda.effg_nr(mic.sm_kfn), marker=mic.marker, markevery=mic.every, linestyle=lstyle, errorevery=mic.every )
114
+ axs[1,1].errorbar( mic.sm_kfn, mic.sm_e2a_int/nuda.effg_nr(mic.sm_kfn), yerr=mic.sm_e2a_err/nuda.effg_nr(mic.sm_kfn), marker=mic.marker, markevery=mic.every, linestyle=lstyle, errorevery=mic.every )
112
115
  #
113
116
  else:
114
117
  #
115
118
  print('with no marker:',mic.marker)
116
119
  if matter.lower() == 'nm':
117
- axs[0,0].errorbar( mic.nm_den, mic.nm_e2a, yerr=mic.nm_e2a_err, marker=mic.marker, markevery=mic.every, linestyle=lstyle, label=mic.label, errorevery=mic.every )
118
- axs[0,1].errorbar( mic.nm_kfn, mic.nm_e2a, yerr=mic.nm_e2a_err, marker=mic.marker, markevery=mic.every, linestyle=lstyle, errorevery=mic.every )
119
- axs[1,0].errorbar( mic.nm_den, mic.nm_e2a/nuda.effg_nr(mic.nm_kfn), yerr=mic.nm_e2a_err/nuda.effg_nr(mic.nm_kfn), marker=mic.marker, markevery=mic.every, linestyle=lstyle, errorevery=mic.every )
120
- axs[1,1].errorbar( mic.nm_kfn, mic.nm_e2a/nuda.effg_nr(mic.nm_kfn), yerr=mic.nm_e2a_err/nuda.effg_nr(mic.nm_kfn), marker=mic.marker, markevery=mic.every, linestyle=lstyle, errorevery=mic.every )
120
+ axs[0,0].errorbar( mic.nm_den, mic.nm_e2a_int, yerr=mic.nm_e2a_err, marker=mic.marker, markevery=mic.every, linestyle=lstyle, label=mic.label, errorevery=mic.every )
121
+ axs[0,1].errorbar( mic.nm_kfn, mic.nm_e2a_int, yerr=mic.nm_e2a_err, marker=mic.marker, markevery=mic.every, linestyle=lstyle, errorevery=mic.every )
122
+ axs[1,0].errorbar( mic.nm_den, mic.nm_e2a_int/nuda.effg_nr(mic.nm_kfn), yerr=mic.nm_e2a_err/nuda.effg_nr(mic.nm_kfn), marker=mic.marker, markevery=mic.every, linestyle=lstyle, errorevery=mic.every )
123
+ axs[1,1].errorbar( mic.nm_kfn, mic.nm_e2a_int/nuda.effg_nr(mic.nm_kfn), yerr=mic.nm_e2a_err/nuda.effg_nr(mic.nm_kfn), marker=mic.marker, markevery=mic.every, linestyle=lstyle, errorevery=mic.every )
121
124
  elif matter.lower() == 'sm':
122
- axs[0,0].errorbar( mic.sm_den, mic.sm_e2a, yerr=mic.sm_e2a_err, marker=mic.marker, markevery=mic.every, linestyle=lstyle, label=mic.label, errorevery=mic.every )
123
- axs[0,1].errorbar( mic.sm_kfn, mic.sm_e2a, yerr=mic.sm_e2a_err, marker=mic.marker, markevery=mic.every, linestyle=lstyle, errorevery=mic.every )
124
- axs[1,0].errorbar( mic.sm_den, mic.sm_e2a/nuda.effg_nr(mic.sm_kfn), yerr=mic.sm_e2a_err/nuda.effg_nr(mic.sm_kfn), marker=mic.marker, markevery=mic.every, linestyle=lstyle, errorevery=mic.every )
125
- axs[1,1].errorbar( mic.sm_kfn, mic.sm_e2a/nuda.effg_nr(mic.sm_kfn), yerr=mic.sm_e2a_err/nuda.effg_nr(mic.sm_kfn), marker=mic.marker, markevery=mic.every, linestyle=lstyle, errorevery=mic.every )
125
+ axs[0,0].errorbar( mic.sm_den, mic.sm_e2a_int, yerr=mic.sm_e2a_err, marker=mic.marker, markevery=mic.every, linestyle=lstyle, label=mic.label, errorevery=mic.every )
126
+ axs[0,1].errorbar( mic.sm_kfn, mic.sm_e2a_int, yerr=mic.sm_e2a_err, marker=mic.marker, markevery=mic.every, linestyle=lstyle, errorevery=mic.every )
127
+ axs[1,0].errorbar( mic.sm_den, mic.sm_e2a_int/nuda.effg_nr(mic.sm_kfn), yerr=mic.sm_e2a_err/nuda.effg_nr(mic.sm_kfn), marker=mic.marker, markevery=mic.every, linestyle=lstyle, errorevery=mic.every )
128
+ axs[1,1].errorbar( mic.sm_kfn, mic.sm_e2a_int/nuda.effg_nr(mic.sm_kfn), yerr=mic.sm_e2a_err/nuda.effg_nr(mic.sm_kfn), marker=mic.marker, markevery=mic.every, linestyle=lstyle, errorevery=mic.every )
126
129
  else:
127
130
  print('=> model (no err):',model,mic.e_err)
128
131
  if 'fit' in model:
129
- axs[0,0].plot( mic.den, mic.e2a, marker=mic.marker, linestyle=lstyle, markevery=mic.every, label=mic.label )
130
- axs[0,1].plot( mic.kfn, mic.e2a, marker=mic.marker, linestyle=lstyle )
131
- axs[1,0].plot( mic.den, mic.e2a/nuda.effg_nr(mic.kfn), marker=mic.marker, linestyle=lstyle )
132
- axs[1,1].plot( mic.kfn, mic.e2a/nuda.effg_nr(mic.kfn), marker=mic.marker, linestyle=lstyle )
132
+ axs[0,0].plot( mic.den, mic.e2a_int, marker=mic.marker, linestyle=lstyle, markevery=mic.every, label=mic.label )
133
+ axs[0,1].plot( mic.kfn, mic.e2a_int, marker=mic.marker, linestyle=lstyle )
134
+ axs[1,0].plot( mic.den, mic.e2a_int/nuda.effg_nr(mic.kfn), marker=mic.marker, linestyle=lstyle )
135
+ axs[1,1].plot( mic.kfn, mic.e2a_int/nuda.effg_nr(mic.kfn), marker=mic.marker, linestyle=lstyle )
133
136
  else:
134
137
  if matter.lower() == 'nm':
135
- axs[0,0].plot( mic.nm_den, mic.nm_e2a, marker=mic.marker, linestyle=lstyle, markevery=mic.every, label=mic.label )
136
- axs[0,1].plot( mic.nm_kfn, mic.nm_e2a, marker=mic.marker, linestyle=lstyle, markevery=mic.every )
137
- axs[1,0].plot( mic.nm_den, mic.nm_e2a/nuda.effg_nr(mic.nm_kfn), marker=mic.marker, linestyle=lstyle, markevery=mic.every )
138
- axs[1,1].plot( mic.nm_kfn, mic.nm_e2a/nuda.effg_nr(mic.nm_kfn), marker=mic.marker, linestyle=lstyle, markevery=mic.every )
138
+ axs[0,0].plot( mic.nm_den, mic.nm_e2a_int, marker=mic.marker, linestyle=lstyle, markevery=mic.every, label=mic.label )
139
+ axs[0,1].plot( mic.nm_kfn, mic.nm_e2a_int, marker=mic.marker, linestyle=lstyle, markevery=mic.every )
140
+ axs[1,0].plot( mic.nm_den, mic.nm_e2a_int/nuda.effg_nr(mic.nm_kfn), marker=mic.marker, linestyle=lstyle, markevery=mic.every )
141
+ axs[1,1].plot( mic.nm_kfn, mic.nm_e2a_int/nuda.effg_nr(mic.nm_kfn), marker=mic.marker, linestyle=lstyle, markevery=mic.every )
139
142
  elif matter.lower() == 'sm':
140
- axs[0,0].plot( mic.sm_den, mic.sm_e2a, marker=mic.marker, linestyle=lstyle, markevery=mic.every, label=mic.label )
141
- axs[0,1].plot( mic.sm_kfn, mic.sm_e2a, marker=mic.marker, linestyle=lstyle, markevery=mic.every )
142
- axs[1,0].plot( mic.sm_den, mic.sm_e2a/nuda.effg_nr(mic.sm_kfn), marker=mic.marker, linestyle=lstyle, markevery=mic.every )
143
- axs[1,1].plot( mic.sm_kfn, mic.sm_e2a/nuda.effg_nr(mic.sm_kfn), marker=mic.marker, linestyle=lstyle, markevery=mic.every )
144
- #
145
- axs[0,0].fill_between( band.den, y1=(band.e2a-band.e2a_std), y2=(band.e2a+band.e2a_std), color=band.color, alpha=band.alpha, visible=True )
146
- axs[0,0].plot( band.den, (band.e2a-band.e2a_std), color='k', linestyle='dashed' )
147
- axs[0,0].plot( band.den, (band.e2a+band.e2a_std), color='k', linestyle='dashed' )
148
- axs[0,1].fill_between( band.kfn, y1=(band.e2a-band.e2a_std), y2=(band.e2a+band.e2a_std), color=band.color, alpha=band.alpha, visible=True )
149
- axs[0,1].plot( band.kfn, (band.e2a-band.e2a_std), color='k', linestyle='dashed' )
150
- axs[0,1].plot( band.kfn, (band.e2a+band.e2a_std), color='k', linestyle='dashed' )
151
- axs[1,0].fill_between( band.den, y1=(band.e2a-band.e2a_std)/nuda.effg_nr(band.kfn), y2=(band.e2a+band.e2a_std)/nuda.effg_nr(band.kfn), color=band.color, alpha=band.alpha, visible=True )
152
- axs[1,0].plot( band.den, (band.e2a-band.e2a_std)/nuda.effg_nr(band.kfn), color='k', linestyle='dashed' )
153
- axs[1,0].plot( band.den, (band.e2a+band.e2a_std)/nuda.effg_nr(band.kfn), color='k', linestyle='dashed' )
154
- axs[1,1].fill_between( band.kfn, y1=(band.e2a-band.e2a_std)/nuda.effg_nr(band.kfn), y2=(band.e2a+band.e2a_std)/nuda.effg_nr(band.kfn), color=band.color, alpha=band.alpha, visible=True )
155
- axs[1,1].plot( band.kfn, (band.e2a-band.e2a_std)/nuda.effg_nr(band.kfn), color='k', linestyle='dashed' )
156
- axs[1,1].plot( band.kfn, (band.e2a+band.e2a_std)/nuda.effg_nr(band.kfn), color='k', linestyle='dashed' )
143
+ axs[0,0].plot( mic.sm_den, mic.sm_e2a_int, marker=mic.marker, linestyle=lstyle, markevery=mic.every, label=mic.label )
144
+ axs[0,1].plot( mic.sm_kfn, mic.sm_e2a_int, marker=mic.marker, linestyle=lstyle, markevery=mic.every )
145
+ axs[1,0].plot( mic.sm_den, mic.sm_e2a_int/nuda.effg_nr(mic.sm_kfn), marker=mic.marker, linestyle=lstyle, markevery=mic.every )
146
+ axs[1,1].plot( mic.sm_kfn, mic.sm_e2a_int/nuda.effg_nr(mic.sm_kfn), marker=mic.marker, linestyle=lstyle, markevery=mic.every )
147
+ #
148
+ axs[0,0].fill_between( band.den, y1=(band.e2a_int-band.e2a_std), y2=(band.e2a_int+band.e2a_std), color=band.color, alpha=band.alpha, visible=True )
149
+ axs[0,0].plot( band.den, (band.e2a_int-band.e2a_std), color='k', linestyle='dashed' )
150
+ axs[0,0].plot( band.den, (band.e2a_int+band.e2a_std), color='k', linestyle='dashed' )
151
+ axs[0,1].fill_between( band.kfn, y1=(band.e2a_int-band.e2a_std), y2=(band.e2a_int+band.e2a_std), color=band.color, alpha=band.alpha, visible=True )
152
+ axs[0,1].plot( band.kfn, (band.e2a_int-band.e2a_std), color='k', linestyle='dashed' )
153
+ axs[0,1].plot( band.kfn, (band.e2a_int+band.e2a_std), color='k', linestyle='dashed' )
154
+ axs[1,0].fill_between( band.den, y1=(band.e2a_int-band.e2a_std)/nuda.effg_nr(band.kfn), y2=(band.e2a_int+band.e2a_std)/nuda.effg_nr(band.kfn), color=band.color, alpha=band.alpha, visible=True )
155
+ axs[1,0].plot( band.den, (band.e2a_int-band.e2a_std)/nuda.effg_nr(band.kfn), color='k', linestyle='dashed' )
156
+ axs[1,0].plot( band.den, (band.e2a_int+band.e2a_std)/nuda.effg_nr(band.kfn), color='k', linestyle='dashed' )
157
+ axs[1,1].fill_between( band.kfn, y1=(band.e2a_int-band.e2a_std)/nuda.effg_nr(band.kfn), y2=(band.e2a_int+band.e2a_std)/nuda.effg_nr(band.kfn), color=band.color, alpha=band.alpha, visible=True )
158
+ axs[1,1].plot( band.kfn, (band.e2a_int-band.e2a_std)/nuda.effg_nr(band.kfn), color='k', linestyle='dashed' )
159
+ axs[1,1].plot( band.kfn, (band.e2a_int+band.e2a_std)/nuda.effg_nr(band.kfn), color='k', linestyle='dashed' )
160
+ #
161
+ #axs[0,1].legend(loc='upper left',fontsize='8', ncol=2)
162
+ #if mb not in 'BHF':
163
+ # axs[0,1].legend(loc='upper left',fontsize='8', ncol=2)
164
+ #
165
+ #plt.tight_layout(pad=3.0)
166
+ fig.legend(loc='upper left',bbox_to_anchor=(0.1,1.0),fontsize='8',ncol=3,frameon=False)
167
+ #
168
+ if pname is not None:
169
+ plt.savefig(pname, dpi=300)
170
+ plt.close()
171
+
172
+ def matter_setupMicro_pre_fig( pname, mb, models, band, matter ):
173
+ """
174
+ Plot nucleonic pressure in matter.
175
+
176
+ The plot is 2x2 with:
177
+
178
+ [0,0]: pre versus den. [0,1]: pre versus kfn.
179
+
180
+ [1,0]: pre/pre_NRFFG versus den. [1,1]: pre/pre_NRFFG versus kfn.
181
+
182
+ :param pname: name of the figure (*.png)
183
+ :type pname: str.
184
+ :param mb: many-body (mb) approach considered.
185
+ :type mb: str.
186
+ :param models: models to run on.
187
+ :type models: array of str.
188
+ :param band: object instantiated on the reference band.
189
+ :type band: object.
190
+ :param matter: can be 'SM' or 'NM'.
191
+ :type matter: str.
192
+
193
+ """
194
+ #
195
+ print(f'Plot name: {pname}')
196
+ matter = band.matter
197
+ #
198
+ fig, axs = plt.subplots(2,2)
199
+ fig.tight_layout() # Or equivalently, "plt.tight_layout()"
200
+ fig.subplots_adjust(left=0.12, bottom=0.12, right=0.95, top=0.85, wspace=0.05, hspace=0.05 )
201
+ #
202
+ axs[1,0].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)', fontsize = '14' )
203
+ axs[1,1].set_xlabel(r'$k_{F}$ (fm$^{-1}$)', fontsize = '14' )
204
+ axs[0,1].tick_params('y', labelleft=False)
205
+ axs[1,1].tick_params('y', labelleft=False)
206
+ axs[0,0].tick_params('x', labelbottom=False)
207
+ axs[0,1].tick_params('x', labelbottom=False)
208
+ axs[0,0].set_xlim([0, 0.33])
209
+ axs[1,0].set_xlim([0, 0.33])
210
+ axs[0,1].set_xlim([0.5, 1.9])
211
+ axs[1,1].set_xlim([0.5, 1.9])
212
+ if matter.lower() == 'nm':
213
+ axs[0,0].set_ylabel(r'$p_\text{NM}$ (MeV)', fontsize = '14' )
214
+ axs[1,0].set_ylabel(r'$p_\text{NM}/p_\text{NRFFG}$', fontsize = '14' )
215
+ axs[0,0].set_ylim([-2, 30])
216
+ axs[0,1].set_ylim([-2, 30])
217
+ axs[1,0].set_ylim([-0.2, 0.84])
218
+ axs[1,1].set_ylim([-0.2, 0.84])
219
+ delta = 1.0
220
+ elif matter.lower() == 'sm':
221
+ axs[0,0].set_ylabel(r'$p_\text{SM}$ (MeV)', fontsize = '14' )
222
+ axs[1,0].set_ylabel(r'$p_\text{SM}/p_\text{NRFFG}$', fontsize = '14' )
223
+ axs[0,0].set_ylim([-5, 10])
224
+ axs[0,1].set_ylim([-5, 10])
225
+ axs[1,0].set_ylim([-1.2, 0.5])
226
+ axs[1,1].set_ylim([-1.2, 0.5])
227
+ delta = 0.0
228
+ #
229
+ for model in models:
230
+ #
231
+ mic = nuda.matter.setupMicro( model = model, var2 = delta )
232
+ if nuda.env.verb_output: mic.print_outputs( )
233
+ #
234
+ print('model:',model,' delta:',delta)
235
+ #
236
+ check = nuda.matter.setupCheck( eos = mic, band = band )
237
+ #
238
+ if check.isInside:
239
+ lstyle = 'solid'
240
+ else:
241
+ lstyle = 'dashed'
242
+ #
243
+ if mic.p_err:
244
+ #
245
+ print('=> model (with err):',model,mic.pre_err)
246
+ if mic.marker:
247
+ #
248
+ print('with marker:',mic.marker)
249
+ if matter.lower() == 'nm':
250
+ axs[0,0].errorbar( mic.nm_den, mic.nm_pre, yerr=mic.nm_pre_err, marker=mic.marker, markevery=mic.every, linestyle=lstyle, label=mic.label, errorevery=mic.every )
251
+ axs[0,1].errorbar( mic.nm_kfn, mic.nm_pre, yerr=mic.nm_pre_err, marker=mic.marker, markevery=mic.every, linestyle=lstyle, errorevery=mic.every )
252
+ axs[1,0].errorbar( mic.nm_den, mic.nm_pre/nuda.pre_nr(mic.nm_kfn), yerr=mic.nm_pre_err/nuda.pre_nr(mic.nm_kfn), marker=mic.marker, markevery=mic.every, linestyle=lstyle, errorevery=mic.every )
253
+ axs[1,1].errorbar( mic.nm_kfn, mic.nm_pre/nuda.pre_nr(mic.nm_kfn), yerr=mic.nm_pre_err/nuda.pre_nr(mic.nm_kfn), marker=mic.marker, markevery=mic.every, linestyle=lstyle, errorevery=mic.every )
254
+ elif matter.lower() == 'sm':
255
+ axs[0,0].errorbar( mic.sm_den, mic.sm_pre, yerr=mic.sm_pre_err, marker=mic.marker, markevery=mic.every, linestyle=lstyle, label=mic.label, errorevery=mic.every )
256
+ axs[0,1].errorbar( mic.sm_kfn, mic.sm_pre, yerr=mic.sm_pre_err, marker=mic.marker, markevery=mic.every, linestyle=lstyle, errorevery=mic.every )
257
+ axs[1,0].errorbar( mic.sm_den, mic.sm_pre/nuda.pre_nr(mic.sm_kfn), yerr=mic.sm_pre_err/nuda.pre_nr(mic.sm_kfn), marker=mic.marker, markevery=mic.every, linestyle=lstyle, errorevery=mic.every )
258
+ axs[1,1].errorbar( mic.sm_kfn, mic.sm_pre/nuda.pre_nr(mic.sm_kfn), yerr=mic.sm_pre_err/nuda.pre_nr(mic.sm_kfn), marker=mic.marker, markevery=mic.every, linestyle=lstyle, errorevery=mic.every )
259
+ #
260
+ else:
261
+ #
262
+ print('with no marker:',mic.marker)
263
+ if matter.lower() == 'nm':
264
+ axs[0,0].errorbar( mic.nm_den, mic.nm_pre, yerr=mic.nm_pre_err, marker=mic.marker, markevery=mic.every, linestyle=lstyle, label=mic.label, errorevery=mic.every )
265
+ axs[0,1].errorbar( mic.nm_kfn, mic.nm_pre, yerr=mic.nm_pre_err, marker=mic.marker, markevery=mic.every, linestyle=lstyle, errorevery=mic.every )
266
+ axs[1,0].errorbar( mic.nm_den, mic.nm_pre/nuda.pre_nr(mic.nm_kfn), yerr=mic.nm_pre_err/nuda.pre_nr(mic.nm_kfn), marker=mic.marker, markevery=mic.every, linestyle=lstyle, errorevery=mic.every )
267
+ axs[1,1].errorbar( mic.nm_kfn, mic.nm_pre/nuda.pre_nr(mic.nm_kfn), yerr=mic.nm_pre_err/nuda.pre_nr(mic.nm_kfn), marker=mic.marker, markevery=mic.every, linestyle=lstyle, errorevery=mic.every )
268
+ elif matter.lower() == 'sm':
269
+ axs[0,0].errorbar( mic.sm_den, mic.sm_pre, yerr=mic.sm_pre_err, marker=mic.marker, markevery=mic.every, linestyle=lstyle, label=mic.label, errorevery=mic.every )
270
+ axs[0,1].errorbar( mic.sm_kfn, mic.sm_pre, yerr=mic.sm_pre_err, marker=mic.marker, markevery=mic.every, linestyle=lstyle, errorevery=mic.every )
271
+ axs[1,0].errorbar( mic.sm_den, mic.sm_pre/nuda.pre_nr(mic.sm_kfn), yerr=mic.sm_pre_err/nuda.pre_nr(mic.sm_kfn), marker=mic.marker, markevery=mic.every, linestyle=lstyle, errorevery=mic.every )
272
+ axs[1,1].errorbar( mic.sm_kfn, mic.sm_pre/nuda.pre_nr(mic.sm_kfn), yerr=mic.sm_pre_err/nuda.pre_nr(mic.sm_kfn), marker=mic.marker, markevery=mic.every, linestyle=lstyle, errorevery=mic.every )
273
+ else:
274
+ print('=> model (no err):',model,mic.e_err)
275
+ if 'fit' in model:
276
+ axs[0,0].plot( mic.den, mic.pre, marker=mic.marker, linestyle=lstyle, markevery=mic.every, label=mic.label )
277
+ axs[0,1].plot( mic.kfn, mic.pre, marker=mic.marker, linestyle=lstyle )
278
+ axs[1,0].plot( mic.den, mic.pre/nuda.pre_nr(mic.kfn), marker=mic.marker, linestyle=lstyle )
279
+ axs[1,1].plot( mic.kfn, mic.pre/nuda.pre_nr(mic.kfn), marker=mic.marker, linestyle=lstyle )
280
+ else:
281
+ if matter.lower() == 'nm':
282
+ axs[0,0].plot( mic.nm_den, mic.nm_pre, marker=mic.marker, linestyle=lstyle, markevery=mic.every, label=mic.label )
283
+ axs[0,1].plot( mic.nm_kfn, mic.nm_pre, marker=mic.marker, linestyle=lstyle, markevery=mic.every )
284
+ axs[1,0].plot( mic.nm_den, mic.nm_pre/nuda.pre_nr(mic.nm_kfn), marker=mic.marker, linestyle=lstyle, markevery=mic.every )
285
+ axs[1,1].plot( mic.nm_kfn, mic.nm_pre/nuda.pre_nr(mic.nm_kfn), marker=mic.marker, linestyle=lstyle, markevery=mic.every )
286
+ elif matter.lower() == 'sm':
287
+ axs[0,0].plot( mic.sm_den, mic.sm_pre, marker=mic.marker, linestyle=lstyle, markevery=mic.every, label=mic.label )
288
+ axs[0,1].plot( mic.sm_kfn, mic.sm_pre, marker=mic.marker, linestyle=lstyle, markevery=mic.every )
289
+ axs[1,0].plot( mic.sm_den, mic.sm_pre/nuda.pre_nr(mic.sm_kfn), marker=mic.marker, linestyle=lstyle, markevery=mic.every )
290
+ axs[1,1].plot( mic.sm_kfn, mic.sm_pre/nuda.pre_nr(mic.sm_kfn), marker=mic.marker, linestyle=lstyle, markevery=mic.every )
291
+ #
292
+ #
293
+ #axs[0,1].legend(loc='upper left',fontsize='8', ncol=2)
294
+ #if mb not in 'BHF':
295
+ # axs[0,1].legend(loc='upper left',fontsize='8', ncol=2)
296
+ #
297
+ #plt.tight_layout(pad=3.0)
298
+ fig.legend(loc='upper left',bbox_to_anchor=(0.1,1.0),fontsize='8',ncol=3,frameon=False)
299
+ #
300
+ if pname is not None:
301
+ plt.savefig(pname, dpi=300)
302
+ plt.close()
303
+
304
+ def matter_setupMicro_cs2_fig( pname, mb, models, band, matter ):
305
+ """
306
+ Plot nucleonic pressure in matter.
307
+
308
+ The plot is 1x2 with:
309
+
310
+ [0]: cs2 versus den. [1]: cs2 versus kfn.
311
+
312
+ :param pname: name of the figure (*.png)
313
+ :type pname: str.
314
+ :param mb: many-body (mb) approach considered.
315
+ :type mb: str.
316
+ :param models: models to run on.
317
+ :type models: array of str.
318
+ :param band: object instantiated on the reference band.
319
+ :type band: object.
320
+ :param matter: can be 'SM' or 'NM'.
321
+ :type matter: str.
322
+
323
+ """
324
+ #
325
+ print(f'Plot name: {pname}')
326
+ matter = band.matter
327
+ #
328
+ fig, axs = plt.subplots(1,2)
329
+ fig.tight_layout() # Or equivalently, "plt.tight_layout()"
330
+ fig.subplots_adjust(left=0.12, bottom=0.12, right=0.95, top=0.85, wspace=0.05, hspace=0.05 )
331
+ #
332
+ axs[0].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)', fontsize = '14' )
333
+ axs[1].set_xlabel(r'$k_{F}$ (fm$^{-1}$)')
334
+ axs[1].tick_params('y', labelleft=False)
335
+ axs[0].set_xlim([0, 0.33])
336
+ axs[1].set_xlim([0.5, 1.9])
337
+ if matter.lower() == 'nm':
338
+ axs[0].set_ylabel(r'$c_\text{s,NM}^2/c^2$', fontsize = '14' )
339
+ axs[0].set_ylim([-0.05, 0.3])
340
+ axs[1].set_ylim([-0.05, 0.3])
341
+ delta = 1.0
342
+ elif matter.lower() == 'sm':
343
+ axs[0].set_ylabel(r'$c_\text{s,SM}^2/c^2$', fontsize = '14' )
344
+ axs[0].set_ylim([-0.05, 0.2])
345
+ axs[1].set_ylim([-0.05, 0.2])
346
+ delta = 0.0
347
+ #
348
+ for model in models:
349
+ #
350
+ mic = nuda.matter.setupMicro( model = model, var2 = delta )
351
+ if nuda.env.verb_output: mic.print_outputs( )
352
+ #
353
+ print('model:',model,' delta:',delta)
354
+ #
355
+ check = nuda.matter.setupCheck( eos = mic, band = band )
356
+ #
357
+ if check.isInside:
358
+ lstyle = 'solid'
359
+ else:
360
+ lstyle = 'dashed'
361
+ #
362
+ if mic.cs2_err:
363
+ #
364
+ print('=> model (with err):',model,mic.cs2_err)
365
+ if mic.marker:
366
+ #
367
+ print('with marker:',mic.marker)
368
+ if matter.lower() == 'nm':
369
+ axs[0].errorbar( mic.nm_den[:-1], mic.nm_cs2[:-1], yerr=mic.nm_cs2_err[:-1], marker=mic.marker, markevery=mic.every, linestyle=lstyle, label=mic.label, errorevery=mic.every )
370
+ axs[1].errorbar( mic.nm_kfn[:-1], mic.nm_cs2[:-1], yerr=mic.nm_cs2_err[:-1], marker=mic.marker, markevery=mic.every, linestyle=lstyle, errorevery=mic.every )
371
+ elif matter.lower() == 'sm':
372
+ axs[0].errorbar( mic.sm_den[:-1], mic.sm_cs2[:-1], yerr=mic.sm_cs2_err[:-1], marker=mic.marker, markevery=mic.every, linestyle=lstyle, label=mic.label, errorevery=mic.every )
373
+ axs[1].errorbar( mic.sm_kfn[:-1], mic.sm_cs2[:-1], yerr=mic.sm_cs2_err[:-1], marker=mic.marker, markevery=mic.every, linestyle=lstyle, errorevery=mic.every )
374
+ #
375
+ else:
376
+ #
377
+ print('with no marker:',mic.marker)
378
+ if matter.lower() == 'nm':
379
+ axs[0].errorbar( mic.nm_den[:-1], mic.nm_cs2[:-1], yerr=mic.nm_cs2_err[:-1], marker=mic.marker, markevery=mic.every, linestyle=lstyle, label=mic.label, errorevery=mic.every )
380
+ axs[1].errorbar( mic.nm_kfn[:-1], mic.nm_cs2[:-1], yerr=mic.nm_cs2_err[:-1], marker=mic.marker, markevery=mic.every, linestyle=lstyle, errorevery=mic.every )
381
+ elif matter.lower() == 'sm':
382
+ axs[0].errorbar( mic.sm_den[:-1], mic.sm_cs2[:-1], yerr=mic.sm_cs2_err[:-1], marker=mic.marker, markevery=mic.every, linestyle=lstyle, label=mic.label, errorevery=mic.every )
383
+ axs[1].errorbar( mic.sm_kfn[:-1], mic.sm_cs2[:-1], yerr=mic.sm_cs2_err[:-1], marker=mic.marker, markevery=mic.every, linestyle=lstyle, errorevery=mic.every )
384
+ else:
385
+ print('=> model (no err):',model,mic.cs2_err)
386
+ if 'fit' in model:
387
+ axs[0].plot( mic.den[:-1], mic.cs2[:-1], marker=mic.marker, linestyle=lstyle, markevery=mic.every, label=mic.label )
388
+ axs[1].plot( mic.kfn[:-1], mic.cs2[:-1], marker=mic.marker, linestyle=lstyle )
389
+ else:
390
+ if matter.lower() == 'nm':
391
+ axs[0].plot( mic.nm_den[:-1], mic.nm_cs2[:-1], marker=mic.marker, linestyle=lstyle, markevery=mic.every, label=mic.label )
392
+ axs[1].plot( mic.nm_kfn[:-1], mic.nm_cs2[:-1], marker=mic.marker, linestyle=lstyle, markevery=mic.every )
393
+ elif matter.lower() == 'sm':
394
+ axs[0].plot( mic.sm_den[:-1], mic.sm_cs2[:-1], marker=mic.marker, linestyle=lstyle, markevery=mic.every, label=mic.label )
395
+ axs[1].plot( mic.sm_kfn[:-1], mic.sm_cs2[:-1], marker=mic.marker, linestyle=lstyle, markevery=mic.every )
396
+ #
157
397
  #
158
398
  #axs[0,1].legend(loc='upper left',fontsize='8', ncol=2)
159
399
  #if mb not in 'BHF':