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
@@ -5,36 +5,37 @@ import nucleardatapy as nuda
5
5
 
6
6
  def eos_setupAMBeq_e2a_nuc_fig( pname, micro_mbs, pheno_models, band ):
7
7
  """
8
- Plot nuclear chart (N versus Z).\
9
- The plot is 1x2 with:\
10
- [0]: nuclear chart.
8
+ Plot the nucleon contribution to the energy per nucleon in asymmetric matter at beta equilibrium.
9
+
10
+ The plot is 2x1 with:
11
+
12
+ [0]: microscopic models. [1]: phenomenologic models.
11
13
 
12
14
  :param pname: name of the figure (*.png)
13
15
  :type pname: str.
14
- :param table: table.
15
- :type table: str.
16
- :param version: version of table to run on.
17
- :type version: str.
18
- :param theo_tables: object instantiated on the reference band.
19
- :type theo_tables: object.
20
-
16
+ :param micro_mbs: array with names of many-body framework for microscopic interactions.
17
+ :type micro_mbs: array of str.
18
+ :param pheno_models: array of interaction names for phenomenologic interactions.
19
+ :type pheno_models: array of str.
20
+ :param band: object instantiated on the reference band.
21
+ :type band: object.
21
22
  """
22
23
  #
23
24
  print(f'Plot name: {pname}')
24
25
  #
25
26
  fig, axs = plt.subplots(1,2)
26
27
  fig.tight_layout() # Or equivalently, "plt.tight_layout()"
27
- fig.subplots_adjust(left=0.10, bottom=0.12, right=None, top=0.90, wspace=0.05, hspace=0.05 )
28
+ fig.subplots_adjust(left=0.12, bottom=0.12, right=0.95, top=0.90, wspace=0.05, hspace=0.05 )
28
29
  #
29
- axs[0].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)')
30
- axs[0].set_ylabel(r'$E_\text{nuc}/A$')
31
- axs[0].set_xlim([0, 0.28])
30
+ axs[0].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)',fontsize='14')
31
+ axs[0].set_ylabel(r'$e_\text{nuc}^\text{int}$ (MeV)',fontsize='14')
32
+ axs[0].set_xlim([0, 0.33])
32
33
  axs[0].set_ylim([-2, 27])
33
34
  #axs[0].set_tick_params('y', right=True)
34
35
  #axs[0].set_tick_params('x', top=True)
35
36
  #
36
- axs[1].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)')
37
- axs[1].set_xlim([0, 0.28])
37
+ axs[1].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)',fontsize='14')
38
+ axs[1].set_xlim([0, 0.33])
38
39
  axs[1].set_ylim([-2, 27])
39
40
  axs[1].tick_params('y', labelleft=False)
40
41
  #
@@ -68,10 +69,10 @@ def eos_setupAMBeq_e2a_nuc_fig( pname, micro_mbs, pheno_models, band ):
68
69
  if micro.e2a_nuc is not None:
69
70
  print('model:',model)
70
71
  if mb in mb_check:
71
- axs[0].plot( micro.den, micro.e2a_nuc, marker='o', linestyle=lstyle, markevery=micro.every, color=nuda.param.col[kmb] )
72
+ axs[0].plot( micro.den, micro.e2a_int_nuc, marker='o', linestyle=lstyle, markevery=micro.every, color=nuda.param.col[kmb] )
72
73
  else:
73
74
  mb_check.append(mb)
74
- axs[0].plot( micro.den, micro.e2a_nuc, marker='o', linestyle=lstyle, label=mb, markevery=micro.every, color=nuda.param.col[kmb] )
75
+ axs[0].plot( micro.den, micro.e2a_int_nuc, marker='o', linestyle=lstyle, label=mb, markevery=micro.every, color=nuda.param.col[kmb] )
75
76
  # end of model
76
77
  # end of mb
77
78
  #
@@ -99,16 +100,16 @@ def eos_setupAMBeq_e2a_nuc_fig( pname, micro_mbs, pheno_models, band ):
99
100
  if pheno.e2a_nuc is not None:
100
101
  print('model:',model,' param:',param)
101
102
  if model in model_check:
102
- axs[1].plot( pheno.den, pheno.e2a_nuc, linestyle=lstyle, markevery=pheno.every, color=nuda.param.col[kmodel] )
103
+ axs[1].plot( pheno.den, pheno.e2a_int_nuc, linestyle=lstyle, markevery=pheno.every, color=nuda.param.col[kmodel] )
103
104
  else:
104
105
  model_check.append(model)
105
- axs[1].plot( pheno.den, pheno.e2a_nuc, linestyle=lstyle, label=model, markevery=pheno.every, color=nuda.param.col[kmodel] )
106
+ axs[1].plot( pheno.den, pheno.e2a_int_nuc, linestyle=lstyle, label=model, markevery=pheno.every, color=nuda.param.col[kmodel] )
106
107
  # end of param
107
108
  # end of model
108
109
  #
109
110
  axs[1].text(0.02,20,'phenomenological models',fontsize='10')
110
111
  #
111
- fig.legend(loc='upper left',bbox_to_anchor=(0.15,1.0),columnspacing=2,fontsize='8',ncol=5,frameon=False)
112
+ fig.legend(loc='upper left',bbox_to_anchor=(0.15,1.0),columnspacing=2,fontsize='8',ncol=6,frameon=False)
112
113
  #
113
114
  if pname is not None:
114
115
  plt.savefig(pname, dpi=200)
@@ -116,37 +117,38 @@ def eos_setupAMBeq_e2a_nuc_fig( pname, micro_mbs, pheno_models, band ):
116
117
 
117
118
  def eos_setupAMBeq_pre_nuc_fig( pname, micro_mbs, pheno_models, band ):
118
119
  """
119
- Plot nuclear chart (N versus Z).\
120
- The plot is 1x2 with:\
121
- [0]: nuclear chart.
120
+ Plot the nucleon contribution to the pressure in asymmetric matter at beta equilibrium.
121
+
122
+ The plot is 2x1 with:
123
+
124
+ [0]: microscopic models. [1]: phenomenologic models.
122
125
 
123
126
  :param pname: name of the figure (*.png)
124
127
  :type pname: str.
125
- :param table: table.
126
- :type table: str.
127
- :param version: version of table to run on.
128
- :type version: str.
129
- :param theo_tables: object instantiated on the reference band.
130
- :type theo_tables: object.
131
-
128
+ :param micro_mbs: array with names of many-body framework for microscopic interactions.
129
+ :type micro_mbs: array of str.
130
+ :param pheno_models: array of interaction names for phenomenologic interactions.
131
+ :type pheno_models: array of str.
132
+ :param band: object instantiated on the reference band.
133
+ :type band: object.
132
134
  """
133
135
  #
134
136
  print(f'Plot name: {pname}')
135
137
  #
136
138
  fig, axs = plt.subplots(1,2)
137
139
  fig.tight_layout() # Or equivalently, "plt.tight_layout()"
138
- fig.subplots_adjust(left=0.10, bottom=0.12, right=None, top=0.90, wspace=0.05, hspace=0.05 )
140
+ fig.subplots_adjust(left=0.12, bottom=0.12, right=0.95, top=0.90, wspace=0.05, hspace=0.05 )
139
141
  #
140
- axs[0].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)')
141
- axs[0].set_ylabel(r'$P_\text{nuc}$ (fm$^{-3}$)')
142
+ axs[0].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)',fontsize='14')
143
+ axs[0].set_ylabel(r'$p_\text{nuc}$ (MeV fm$^{-3}$)',fontsize='14')
142
144
  axs[0].set_xlim([0, 0.35])
143
- axs[0].set_ylim([-2, 80])
145
+ axs[0].set_ylim([-2, 60])
144
146
  #axs[0].set_tick_params('y', right=True)
145
147
  #axs[0].set_tick_params('x', top=True)
146
148
  #
147
- axs[1].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)')
149
+ axs[1].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)',fontsize='14')
148
150
  axs[1].set_xlim([0, 0.35])
149
- axs[1].set_ylim([-2, 80])
151
+ axs[1].set_ylim([-2, 60])
150
152
  axs[1].tick_params('y', labelleft=False)
151
153
  #
152
154
  mb_check = []
@@ -218,44 +220,156 @@ def eos_setupAMBeq_pre_nuc_fig( pname, micro_mbs, pheno_models, band ):
218
220
  #
219
221
  axs[1].text(0.02,20,'phenomenological models',fontsize='10')
220
222
  #
221
- fig.legend(loc='upper left',bbox_to_anchor=(0.15,1.0),columnspacing=2,fontsize='8',ncol=5,frameon=False)
223
+ fig.legend(loc='upper left',bbox_to_anchor=(0.15,1.0),columnspacing=2,fontsize='8',ncol=6,frameon=False)
222
224
  #
223
225
  if pname is not None:
224
226
  plt.savefig(pname, dpi=200)
225
227
  plt.close()
226
228
 
227
- def eos_setupAMBeq_e2a_lep_fig( pname, micro_mbs, pheno_models, band ):
229
+ def eos_setupAMBeq_cs2_nuc_fig( pname, micro_mbs, pheno_models, band ):
228
230
  """
229
- Plot nuclear chart (N versus Z).\
230
- The plot is 1x2 with:\
231
- [0]: nuclear chart.
231
+ Plot the nucleon contribution to the square of the sound speed in asymmetric matter at beta equilibrium.
232
+
233
+ The plot is 2x1 with:
234
+
235
+ [0]: microscopic models. [1]: phenomenologic models.
232
236
 
233
237
  :param pname: name of the figure (*.png)
234
238
  :type pname: str.
235
- :param table: table.
236
- :type table: str.
237
- :param version: version of table to run on.
238
- :type version: str.
239
- :param theo_tables: object instantiated on the reference band.
240
- :type theo_tables: object.
239
+ :param micro_mbs: array with names of many-body framework for microscopic interactions.
240
+ :type micro_mbs: array of str.
241
+ :param pheno_models: array of interaction names for phenomenologic interactions.
242
+ :type pheno_models: array of str.
243
+ :param band: object instantiated on the reference band.
244
+ :type band: object.
245
+ """
246
+ #
247
+ print(f'Plot name: {pname}')
248
+ #
249
+ fig, axs = plt.subplots(1,2)
250
+ fig.tight_layout() # Or equivalently, "plt.tight_layout()"
251
+ fig.subplots_adjust(left=0.12, bottom=0.12, right=0.95, top=0.90, wspace=0.05, hspace=0.05 )
252
+ #
253
+ axs[0].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)',fontsize='14')
254
+ axs[0].set_ylabel(r'$c_\text{s,nuc}^2/c^2$',fontsize='14')
255
+ axs[0].set_xlim([0, 0.35])
256
+ axs[0].set_ylim([-0.05, 0.25])
257
+ #axs[0].set_tick_params('y', right=True)
258
+ #axs[0].set_tick_params('x', top=True)
259
+ #
260
+ axs[1].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)',fontsize='14')
261
+ axs[1].set_xlim([0, 0.35])
262
+ axs[1].set_ylim([-0.05, 0.25])
263
+ axs[1].tick_params('y', labelleft=False)
264
+ #
265
+ mb_check = []
266
+ #
267
+ for kmb,mb in enumerate(micro_mbs):
268
+ #
269
+ print('mb:',mb,kmb)
270
+ #
271
+ models, models_lower = nuda.matter.micro_esym_models_mb( mb )
272
+ #
273
+ print('models:',models)
274
+ #
275
+ if mb == 'VAR':
276
+ models.remove('1998-VAR-AM-APR-fit')
277
+ models_lower.remove('1998-var-am-apr-fit')
278
+ #
279
+ for model in models:
280
+ #
281
+ micro = nuda.eos.setupAMBeq( model = model, kind = 'micro' )
282
+ if nuda.env.verb_output: micro.print_outputs( )
283
+ #
284
+ check = nuda.matter.setupCheck( eos = micro, band = band )
285
+ #
286
+ if check.isInside:
287
+ lstyle = 'solid'
288
+ else:
289
+ lstyle = 'dashed'
290
+ #continue
291
+ #
292
+ if micro.cs2_nuc is not None:
293
+ print('model:',model)
294
+ if mb in mb_check:
295
+ axs[0].plot( micro.den, micro.cs2_nuc, marker='o', linestyle=lstyle, markevery=micro.every, color=nuda.param.col[kmb] )
296
+ else:
297
+ mb_check.append(mb)
298
+ axs[0].plot( micro.den, micro.cs2_nuc, marker='o', linestyle=lstyle, label=mb, markevery=micro.every, color=nuda.param.col[kmb] )
299
+ # end of model
300
+ # end of mb
301
+ axs[0].text(0.02,0.2,'microscopic models',fontsize='10')
302
+ #
303
+ model_check = []
304
+ #
305
+ for kmodel,model in enumerate(pheno_models):
306
+ #
307
+ params, params_lower = nuda.matter.pheno_esym_params( model = model )
308
+ #
309
+ for param in params:
310
+ #
311
+ pheno = nuda.eos.setupAMBeq( model = model, param = param, kind = 'pheno' )
312
+ if nuda.env.verb_output: pheno.print_outputs( )
313
+ #
314
+ check = nuda.matter.setupCheck( eos = pheno, band = band )
315
+ #
316
+ if check.isInside:
317
+ lstyle = 'solid'
318
+ else:
319
+ lstyle = 'dashed'
320
+ #continue
321
+ #
322
+ if pheno.cs2_nuc is not None:
323
+ print('model:',model,' param:',param)
324
+ if model in model_check:
325
+ axs[1].plot( pheno.den, pheno.cs2_nuc, linestyle=lstyle, markevery=pheno.every, color=nuda.param.col[kmodel] )
326
+ else:
327
+ model_check.append(model)
328
+ axs[1].plot( pheno.den, pheno.cs2_nuc, linestyle=lstyle, label=model, markevery=pheno.every, color=nuda.param.col[kmodel] )
329
+ # end of param
330
+ # end of model
331
+ #
332
+ axs[1].text(0.02,0.2,'phenomenological models',fontsize='10')
333
+ #
334
+ fig.legend(loc='upper left',bbox_to_anchor=(0.15,1.0),columnspacing=2,fontsize='8',ncol=6,frameon=False)
335
+ #
336
+ if pname is not None:
337
+ plt.savefig(pname, dpi=200)
338
+ plt.close()
241
339
 
340
+ def eos_setupAMBeq_e2a_lep_fig( pname, micro_mbs, pheno_models, band ):
341
+ """
342
+ Plot the lepton contribution to the energy per nucleon in asymmetric matter at beta equilibrium.
343
+
344
+ The plot is 2x1 with:
345
+
346
+ [0]: microscopic models. [1]: phenomenologic models.
347
+
348
+ :param pname: name of the figure (*.png)
349
+ :type pname: str.
350
+ :param micro_mbs: array with names of many-body framework for microscopic interactions.
351
+ :type micro_mbs: array of str.
352
+ :param pheno_models: array of interaction names for phenomenologic interactions.
353
+ :type pheno_models: array of str.
354
+ :param band: object instantiated on the reference band.
355
+ :type band: object.
242
356
  """
243
357
  #
244
358
  print(f'Plot name: {pname}')
245
359
  #
246
360
  fig, axs = plt.subplots(1,2)
247
361
  fig.tight_layout() # Or equivalently, "plt.tight_layout()"
248
- fig.subplots_adjust(left=0.10, bottom=0.12, right=None, top=0.90, wspace=0.05, hspace=0.05 )
362
+ fig.subplots_adjust(left=0.12, bottom=0.12, right=0.95, top=0.90, wspace=0.05, hspace=0.05 )
249
363
  #
250
- axs[0].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)')
251
- axs[0].set_ylabel(r'$E_\text{lep}/A$')
252
- axs[0].set_xlim([0, 0.28])
364
+ axs[0].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)',fontsize='14')
365
+ axs[0].set_ylabel(r'$e_\text{lep}^\text{int}$ (MeV)',fontsize='14')
366
+ axs[0].set_xlim([0, 0.33])
253
367
  axs[0].set_ylim([-2, 27])
254
368
  #axs[0].set_tick_params('y', right=True)
255
369
  #axs[0].set_tick_params('x', top=True)
256
370
  #
257
- axs[1].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)')
258
- axs[1].set_xlim([0, 0.28])
371
+ axs[1].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)',fontsize='14')
372
+ axs[1].set_xlim([0, 0.33])
259
373
  axs[1].set_ylim([-2, 27])
260
374
  axs[1].tick_params('y', labelleft=False)
261
375
  #
@@ -331,7 +445,7 @@ def eos_setupAMBeq_e2a_lep_fig( pname, micro_mbs, pheno_models, band ):
331
445
  #
332
446
  axs[1].text(0.02,20,'phenomenological models',fontsize='10')
333
447
  #
334
- fig.legend(loc='upper left',bbox_to_anchor=(0.15,1.0),columnspacing=2,fontsize='8',ncol=5,frameon=False)
448
+ fig.legend(loc='upper left',bbox_to_anchor=(0.15,1.0),columnspacing=2,fontsize='8',ncol=6,frameon=False)
335
449
  #
336
450
  if pname is not None:
337
451
  plt.savefig(pname, dpi=200)
@@ -339,37 +453,38 @@ def eos_setupAMBeq_e2a_lep_fig( pname, micro_mbs, pheno_models, band ):
339
453
 
340
454
  def eos_setupAMBeq_pre_lep_fig( pname, micro_mbs, pheno_models, band ):
341
455
  """
342
- Plot nuclear chart (N versus Z).\
343
- The plot is 1x2 with:\
344
- [0]: nuclear chart.
456
+ Plot the lepton contribution to the pressure in asymmetric matter at beta equilibrium.
457
+
458
+ The plot is 2x1 with:
459
+
460
+ [0]: microscopic models. [1]: phenomenologic models.
345
461
 
346
462
  :param pname: name of the figure (*.png)
347
463
  :type pname: str.
348
- :param table: table.
349
- :type table: str.
350
- :param version: version of table to run on.
351
- :type version: str.
352
- :param theo_tables: object instantiated on the reference band.
353
- :type theo_tables: object.
354
-
464
+ :param micro_mbs: array with names of many-body framework for microscopic interactions.
465
+ :type micro_mbs: array of str.
466
+ :param pheno_models: array of interaction names for phenomenologic interactions.
467
+ :type pheno_models: array of str.
468
+ :param band: object instantiated on the reference band.
469
+ :type band: object.
355
470
  """
356
471
  #
357
472
  print(f'Plot name: {pname}')
358
473
  #
359
474
  fig, axs = plt.subplots(1,2)
360
475
  fig.tight_layout() # Or equivalently, "plt.tight_layout()"
361
- fig.subplots_adjust(left=0.10, bottom=0.12, right=None, top=0.90, wspace=0.05, hspace=0.05 )
476
+ fig.subplots_adjust(left=0.12, bottom=0.12, right=0.95, top=0.90, wspace=0.05, hspace=0.05 )
362
477
  #
363
- axs[0].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)')
364
- axs[0].set_ylabel(r'$P_\text{lep}$ (fm$^{-3}$)')
478
+ axs[0].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)',fontsize='14')
479
+ axs[0].set_ylabel(r'$p_\text{lep}$ (MeV fm$^{-3}$)',fontsize='14')
365
480
  axs[0].set_xlim([0, 0.35])
366
- axs[0].set_ylim([-2, 80])
481
+ axs[0].set_ylim([-2, 60])
367
482
  #axs[0].set_tick_params('y', right=True)
368
483
  #axs[0].set_tick_params('x', top=True)
369
484
  #
370
- axs[1].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)')
485
+ axs[1].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)',fontsize='14')
371
486
  axs[1].set_xlim([0, 0.35])
372
- axs[1].set_ylim([-2, 80])
487
+ axs[1].set_ylim([-2, 60])
373
488
  axs[1].tick_params('y', labelleft=False)
374
489
  #
375
490
  mb_check = []
@@ -443,44 +558,159 @@ def eos_setupAMBeq_pre_lep_fig( pname, micro_mbs, pheno_models, band ):
443
558
  #
444
559
  axs[1].text(0.02,20,'phenomenological models',fontsize='10')
445
560
  #
446
- fig.legend(loc='upper left',bbox_to_anchor=(0.15,1.0),columnspacing=2,fontsize='8',ncol=5,frameon=False)
561
+ fig.legend(loc='upper left',bbox_to_anchor=(0.15,1.0),columnspacing=2,fontsize='8',ncol=6,frameon=False)
447
562
  #
448
563
  if pname is not None:
449
564
  plt.savefig(pname, dpi=200)
450
565
  plt.close()
451
566
 
452
- def eos_setupAMBeq_e2a_tot_fig( pname, micro_mbs, pheno_models, band ):
567
+ def eos_setupAMBeq_cs2_lep_fig( pname, micro_mbs, pheno_models, band ):
453
568
  """
454
- Plot nuclear chart (N versus Z).\
455
- The plot is 1x2 with:\
456
- [0]: nuclear chart.
569
+ Plot the lepton contribution to the square of the sound speed in asymmetric matter at beta equilibrium.
570
+
571
+ The plot is 2x1 with:
572
+
573
+ [0]: microscopic models. [1]: phenomenologic models.
457
574
 
458
575
  :param pname: name of the figure (*.png)
459
576
  :type pname: str.
460
- :param table: table.
461
- :type table: str.
462
- :param version: version of table to run on.
463
- :type version: str.
464
- :param theo_tables: object instantiated on the reference band.
465
- :type theo_tables: object.
577
+ :param micro_mbs: array with names of many-body framework for microscopic interactions.
578
+ :type micro_mbs: array of str.
579
+ :param pheno_models: array of interaction names for phenomenologic interactions.
580
+ :type pheno_models: array of str.
581
+ :param band: object instantiated on the reference band.
582
+ :type band: object.
583
+ """
584
+ #
585
+ print(f'Plot name: {pname}')
586
+ #
587
+ fig, axs = plt.subplots(1,2)
588
+ fig.tight_layout() # Or equivalently, "plt.tight_layout()"
589
+ fig.subplots_adjust(left=0.12, bottom=0.12, right=0.95, top=0.90, wspace=0.05, hspace=0.05 )
590
+ #
591
+ axs[0].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)',fontsize='14')
592
+ axs[0].set_ylabel(r'$c_\text{s,lep}^2/c^2$',fontsize='14')
593
+ axs[0].set_xlim([0, 0.35])
594
+ axs[0].set_ylim([0.2, 0.5])
595
+ #axs[0].set_tick_params('y', right=True)
596
+ #axs[0].set_tick_params('x', top=True)
597
+ #
598
+ axs[1].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)',fontsize='14')
599
+ axs[1].set_xlim([0, 0.35])
600
+ axs[1].set_ylim([0.2, 0.5])
601
+ axs[1].tick_params('y', labelleft=False)
602
+ #
603
+ mb_check = []
604
+ #
605
+ for kmb,mb in enumerate(micro_mbs):
606
+ #
607
+ print('mb:',mb,kmb)
608
+ #
609
+ models, models_lower = nuda.matter.micro_esym_models_mb( mb )
610
+ #
611
+ print('models:',models)
612
+ #
613
+ if mb == 'VAR':
614
+ models.remove('1998-VAR-AM-APR-fit')
615
+ models_lower.remove('1998-var-am-apr-fit')
616
+ #
617
+ for model in models:
618
+ #
619
+ micro = nuda.eos.setupAMBeq( model = model, kind = 'micro' )
620
+ if nuda.env.verb_output: micro.print_outputs( )
621
+ #
622
+ check = nuda.matter.setupCheck( eos = micro, band = band )
623
+ #
624
+ if check.isInside:
625
+ lstyle = 'solid'
626
+ else:
627
+ lstyle = 'dashed'
628
+ #continue
629
+ #
630
+ #
631
+ if micro.cs2_lep is not None:
632
+ print('model:',model)
633
+ if mb in mb_check:
634
+ axs[0].plot( micro.den, micro.cs2_lep, marker='o', linestyle=lstyle, markevery=micro.every, color=nuda.param.col[kmb] )
635
+ else:
636
+ mb_check.append(mb)
637
+ axs[0].plot( micro.den, micro.cs2_lep, marker='o', linestyle=lstyle, label=mb, markevery=micro.every, color=nuda.param.col[kmb] )
638
+ # end of model
639
+ # end of mb
640
+ #
641
+ axs[0].text(0.02,0.45,'microscopic models',fontsize='10')
642
+ #
643
+ model_check = []
644
+ #
645
+ for kmodel,model in enumerate(pheno_models):
646
+ #
647
+ params, params_lower = nuda.matter.pheno_esym_params( model = model )
648
+ #
649
+ for param in params:
650
+ #
651
+ pheno = nuda.eos.setupAMBeq( model = model, param = param, kind = 'pheno' )
652
+ #
653
+ check = nuda.matter.setupCheck( eos = pheno, band = band )
654
+ #
655
+ if check.isInside:
656
+ lstyle = 'solid'
657
+ else:
658
+ lstyle = 'dashed'
659
+ #continue
660
+ #
661
+ if micro.cs2_lep is not None:
662
+ print('model:',model,' param:',param)
663
+ if model in model_check:
664
+ axs[1].plot( pheno.den, pheno.cs2_lep, linestyle=lstyle, markevery=pheno.every, color=nuda.param.col[kmodel] )
665
+ else:
666
+ model_check.append(model)
667
+ axs[1].plot( pheno.den, pheno.cs2_lep, linestyle=lstyle, label=model, markevery=pheno.every, color=nuda.param.col[kmodel] )
668
+ if nuda.env.verb_output: pheno.print_outputs( )
669
+ # end of param
670
+ # end of model
671
+ #
672
+ axs[1].text(0.02,0.45,'phenomenological models',fontsize='10')
673
+ #
674
+ fig.legend(loc='upper left',bbox_to_anchor=(0.15,1.0),columnspacing=2,fontsize='8',ncol=6,frameon=False)
675
+ #
676
+ if pname is not None:
677
+ plt.savefig(pname, dpi=200)
678
+ plt.close()
466
679
 
680
+
681
+ def eos_setupAMBeq_e2a_tot_fig( pname, micro_mbs, pheno_models, band ):
682
+ """
683
+ Plot the total (=nucleon+lepton) contribution to the energy per nucleon in asymmetric matter at beta equilibrium.
684
+
685
+ The plot is 2x1 with:
686
+
687
+ [0]: microscopic models. [1]: phenomenologic models.
688
+
689
+ :param pname: name of the figure (*.png)
690
+ :type pname: str.
691
+ :param micro_mbs: array with names of many-body framework for microscopic interactions.
692
+ :type micro_mbs: array of str.
693
+ :param pheno_models: array of interaction names for phenomenologic interactions.
694
+ :type pheno_models: array of str.
695
+ :param band: object instantiated on the reference band.
696
+ :type band: object.
467
697
  """
468
698
  #
469
699
  print(f'Plot name: {pname}')
470
700
  #
471
701
  fig, axs = plt.subplots(1,2)
472
702
  fig.tight_layout() # Or equivalently, "plt.tight_layout()"
473
- fig.subplots_adjust(left=0.10, bottom=0.12, right=None, top=0.90, wspace=0.05, hspace=0.05 )
703
+ fig.subplots_adjust(left=0.12, bottom=0.12, right=0.95, top=0.90, wspace=0.05, hspace=0.05 )
474
704
  #
475
- axs[0].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)')
476
- axs[0].set_ylabel(r'$E_\text{tot}/A$')
477
- axs[0].set_xlim([0, 0.28])
705
+ axs[0].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)',fontsize='14')
706
+ axs[0].set_ylabel(r'$e_\text{tot}^\text{int}$ (MeV)',fontsize='14')
707
+ axs[0].set_xlim([0, 0.33])
478
708
  axs[0].set_ylim([-2, 27])
479
709
  #axs[0].set_tick_params('y', right=True)
480
710
  #axs[0].set_tick_params('x', top=True)
481
711
  #
482
- axs[1].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)')
483
- axs[1].set_xlim([0, 0.28])
712
+ axs[1].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)',fontsize='14')
713
+ axs[1].set_xlim([0, 0.33])
484
714
  axs[1].set_ylim([-2, 27])
485
715
  axs[1].tick_params('y', labelleft=False)
486
716
  #
@@ -514,10 +744,10 @@ def eos_setupAMBeq_e2a_tot_fig( pname, micro_mbs, pheno_models, band ):
514
744
  if micro.e2a_tot is not None:
515
745
  print('model:',model)
516
746
  if mb in mb_check:
517
- axs[0].plot( micro.den, micro.e2a_tot, marker='o', linestyle=lstyle, markevery=micro.every, color=nuda.param.col[kmb] )
747
+ axs[0].plot( micro.den, micro.e2a_int_tot, marker='o', linestyle=lstyle, markevery=micro.every, color=nuda.param.col[kmb] )
518
748
  else:
519
749
  mb_check.append(mb)
520
- axs[0].plot( micro.den, micro.e2a_tot, marker='o', linestyle=lstyle, label=mb, markevery=micro.every, color=nuda.param.col[kmb] )
750
+ axs[0].plot( micro.den, micro.e2a_int_tot, marker='o', linestyle=lstyle, label=mb, markevery=micro.every, color=nuda.param.col[kmb] )
521
751
  # end of model
522
752
  # end of mb
523
753
  #
@@ -545,16 +775,16 @@ def eos_setupAMBeq_e2a_tot_fig( pname, micro_mbs, pheno_models, band ):
545
775
  if pheno.e2a_tot is not None:
546
776
  print('model:',model,' param:',param)
547
777
  if model in model_check:
548
- axs[1].plot( pheno.den, pheno.e2a_tot, linestyle=lstyle, markevery=pheno.every, color=nuda.param.col[kmodel] )
778
+ axs[1].plot( pheno.den, pheno.e2a_int_tot, linestyle=lstyle, markevery=pheno.every, color=nuda.param.col[kmodel] )
549
779
  else:
550
780
  model_check.append(model)
551
- axs[1].plot( pheno.den, pheno.e2a_tot, linestyle=lstyle, label=model, markevery=pheno.every, color=nuda.param.col[kmodel] )
781
+ axs[1].plot( pheno.den, pheno.e2a_int_tot, linestyle=lstyle, label=model, markevery=pheno.every, color=nuda.param.col[kmodel] )
552
782
  # end of param
553
783
  # end of model
554
784
  #
555
785
  axs[1].text(0.02,20,'phenomenological models',fontsize='10')
556
786
  #
557
- fig.legend(loc='upper left',bbox_to_anchor=(0.15,1.0),columnspacing=2,fontsize='8',ncol=5,frameon=False)
787
+ fig.legend(loc='upper left',bbox_to_anchor=(0.15,1.0),columnspacing=2,fontsize='8',ncol=6,frameon=False)
558
788
  #
559
789
  if pname is not None:
560
790
  plt.savefig(pname, dpi=200)
@@ -562,45 +792,46 @@ def eos_setupAMBeq_e2a_tot_fig( pname, micro_mbs, pheno_models, band ):
562
792
 
563
793
  def eos_setupAMBeq_pre_tot_fig( pname, micro_mbs, pheno_models, band ):
564
794
  """
565
- Plot nuclear chart (N versus Z).\
566
- The plot is 1x2 with:\
567
- [0]: nuclear chart.
795
+ Plot the total (=nucleon+lepton) contribution to the pressure in asymmetric matter at beta equilibrium.
796
+
797
+ The plot is 2x1 with:
798
+
799
+ [0]: microscopic models. [1]: phenomenologic models.
568
800
 
569
801
  :param pname: name of the figure (*.png)
570
802
  :type pname: str.
571
- :param table: table.
572
- :type table: str.
573
- :param version: version of table to run on.
574
- :type version: str.
575
- :param theo_tables: object instantiated on the reference band.
576
- :type theo_tables: object.
577
-
803
+ :param micro_mbs: array with names of many-body framework for microscopic interactions.
804
+ :type micro_mbs: array of str.
805
+ :param pheno_models: array of interaction names for phenomenologic interactions.
806
+ :type pheno_models: array of str.
807
+ :param band: object instantiated on the reference band.
808
+ :type band: object.
578
809
  """
579
810
  #
580
811
  print(f'Plot name: {pname}')
581
812
  #
582
813
  p_den = 0.32
583
- p_cen = 20.0
584
- p_std = 11.0
814
+ p_cen = 23.0
815
+ p_std = 14.0
585
816
  p_micro_cen = 16.3
586
817
  p_micro_std = 3.0
587
- p_pheno_cen = 20.0
588
- p_pheno_std = 11.0
818
+ p_pheno_cen = 23.0
819
+ p_pheno_std = 14.0
589
820
  #
590
821
  fig, axs = plt.subplots(1,2)
591
822
  fig.tight_layout() # Or equivalently, "plt.tight_layout()"
592
- fig.subplots_adjust(left=0.10, bottom=0.12, right=None, top=0.90, wspace=0.05, hspace=0.05 )
823
+ fig.subplots_adjust(left=0.12, bottom=0.12, right=0.95, top=0.90, wspace=0.05, hspace=0.05 )
593
824
  #
594
- axs[0].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)')
595
- axs[0].set_ylabel(r'$P_\text{tot}$ (fm$^{-3}$)')
825
+ axs[0].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)',fontsize='14')
826
+ axs[0].set_ylabel(r'$p_\text{tot}$ (MeV fm$^{-3}$)',fontsize='14')
596
827
  axs[0].set_xlim([0, 0.35])
597
- axs[0].set_ylim([-2, 80])
828
+ axs[0].set_ylim([-2, 60])
598
829
  #axs[0].set_tick_params('y', right=True)
599
830
  #axs[0].set_tick_params('x', top=True)
600
831
  #
601
- axs[1].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)')
832
+ axs[1].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)',fontsize='14')
602
833
  axs[1].set_xlim([0, 0.35])
603
- axs[1].set_ylim([-2, 80])
834
+ axs[1].set_ylim([-2, 60])
604
835
  axs[1].tick_params('y', labelleft=False)
605
836
  #
606
837
  mb_check = []
@@ -678,14 +909,141 @@ def eos_setupAMBeq_pre_tot_fig( pname, micro_mbs, pheno_models, band ):
678
909
  axs[1].errorbar( p_den+0.005, p_pheno_cen, yerr=p_pheno_std, color='r' )
679
910
  axs[1].text(0.02,20,'phenomenological models',fontsize='10')
680
911
  #
681
- fig.legend(loc='upper left',bbox_to_anchor=(0.15,1.0),columnspacing=2,fontsize='8',ncol=5,frameon=False)
912
+ fig.legend(loc='upper left',bbox_to_anchor=(0.15,1.0),columnspacing=2,fontsize='8',ncol=6,frameon=False)
682
913
  #
683
914
  if pname is not None:
684
915
  plt.savefig(pname, dpi=200)
685
916
  plt.close()
686
917
 
687
- def eos_setupAMBeq_xp_fig( pname, micro_mbs, pheno_models, band ):
918
+ def eos_setupAMBeq_cs2_tot_fig( pname, micro_mbs, pheno_models, band ):
919
+ """
920
+ Plot the total (=nucleon+lepton) contribution to the square of the sound speed in asymmetric matter at beta equilibrium.
921
+
922
+ The plot is 2x1 with:
923
+
924
+ [0]: microscopic models. [1]: phenomenologic models.
925
+
926
+ :param pname: name of the figure (*.png)
927
+ :type pname: str.
928
+ :param micro_mbs: array with names of many-body framework for microscopic interactions.
929
+ :type micro_mbs: array of str.
930
+ :param pheno_models: array of interaction names for phenomenologic interactions.
931
+ :type pheno_models: array of str.
932
+ :param band: object instantiated on the reference band.
933
+ :type band: object.
688
934
  """
935
+ #
936
+ print(f'Plot name: {pname}')
937
+ #
938
+ fig, axs = plt.subplots(1,2)
939
+ fig.tight_layout() # Or equivalently, "plt.tight_layout()"
940
+ fig.subplots_adjust(left=0.12, bottom=0.12, right=0.95, top=0.90, wspace=0.05, hspace=0.05 )
941
+ #
942
+ axs[0].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)',fontsize='14')
943
+ axs[0].set_ylabel(r'$c_\text{s,tot}^2/c^2$',fontsize='14')
944
+ axs[0].set_xlim([0, 0.35])
945
+ axs[0].set_ylim([-0.05, 0.25])
946
+ #axs[0].set_tick_params('y', right=True)
947
+ #axs[0].set_tick_params('x', top=True)
948
+ #
949
+ axs[1].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)',fontsize='14')
950
+ axs[1].set_xlim([0, 0.35])
951
+ axs[1].set_ylim([-0.05, 0.25])
952
+ axs[1].tick_params('y', labelleft=False)
953
+ #
954
+ mb_check = []
955
+ #
956
+ for kmb,mb in enumerate(micro_mbs):
957
+ #
958
+ print('mb:',mb,kmb)
959
+ #
960
+ models, models_lower = nuda.matter.micro_esym_models_mb( mb )
961
+ #
962
+ print('models:',models)
963
+ #
964
+ if mb == 'VAR':
965
+ models.remove('1998-VAR-AM-APR-fit')
966
+ models_lower.remove('1998-var-am-apr-fit')
967
+ #
968
+ for model in models:
969
+ #
970
+ micro = nuda.eos.setupAMBeq( model = model, kind = 'micro' )
971
+ if nuda.env.verb_output: micro.print_outputs( )
972
+ #
973
+ check = nuda.matter.setupCheck( eos = micro, band = band )
974
+ #
975
+ if check.isInside:
976
+ lstyle = 'solid'
977
+ else:
978
+ lstyle = 'dashed'
979
+ #continue
980
+ #
981
+ #
982
+ if micro.cs2_tot is not None:
983
+ print('model:',model)
984
+ if mb in mb_check:
985
+ axs[0].plot( micro.den, micro.cs2_tot, marker='o', linestyle=micro.linestyle, markevery=micro.every, color=nuda.param.col[kmb] )
986
+ else:
987
+ mb_check.append(mb)
988
+ axs[0].plot( micro.den, micro.cs2_tot, marker='o', linestyle=micro.linestyle, label=mb, markevery=micro.every, color=nuda.param.col[kmb] )
989
+ # end of model
990
+ # end of mb
991
+ axs[0].text(0.02,0.2,'microscopic models',fontsize='10')
992
+ #
993
+ model_check = []
994
+ #
995
+ for kmodel,model in enumerate(pheno_models):
996
+ #
997
+ params, params_lower = nuda.matter.pheno_esym_params( model = model )
998
+ #
999
+ for param in params:
1000
+ #
1001
+ pheno = nuda.eos.setupAMBeq( model = model, param = param, kind = 'pheno' )
1002
+ if nuda.env.verb_output: pheno.print_outputs( )
1003
+ #
1004
+ check = nuda.matter.setupCheck( eos = pheno, band = band )
1005
+ #
1006
+ if check.isInside:
1007
+ lstyle = 'solid'
1008
+ else:
1009
+ lstyle = 'dashed'
1010
+ #continue
1011
+ #
1012
+ if pheno.cs2_tot is not None:
1013
+ print('model:',model,' param:',param)
1014
+ if model in model_check:
1015
+ axs[1].plot( pheno.den, pheno.cs2_tot, linestyle=lstyle, markevery=pheno.every, color=nuda.param.col[kmodel] )
1016
+ else:
1017
+ model_check.append(model)
1018
+ axs[1].plot( pheno.den, pheno.cs2_tot, linestyle=lstyle, label=model, markevery=pheno.every, color=nuda.param.col[kmodel] )
1019
+ # end of param
1020
+ # end of model
1021
+ axs[1].text(0.02,0.2,'phenomenological models',fontsize='10')
1022
+ #
1023
+ fig.legend(loc='upper left',bbox_to_anchor=(0.15,1.0),columnspacing=2,fontsize='8',ncol=6,frameon=False)
1024
+ #
1025
+ if pname is not None:
1026
+ plt.savefig(pname, dpi=200)
1027
+ plt.close()
1028
+
1029
+ def eos_setupAMBeq_eos_fig( pname, micro_mbs, pheno_models, band ):
1030
+ """
1031
+ Plot the equation of state in asymmetric matter at beta equilibrium.
1032
+
1033
+ The plot is 2x1 with:
1034
+
1035
+ [0]: microscopic models. [1]: phenomenologic models.
1036
+
1037
+ :param pname: name of the figure (*.png)
1038
+ :type pname: str.
1039
+ :param micro_mbs: array with names of many-body framework for microscopic interactions.
1040
+ :type micro_mbs: array of str.
1041
+ :param pheno_models: array of interaction names for phenomenologic interactions.
1042
+ :type pheno_models: array of str.
1043
+ :param band: object instantiated on the reference band.
1044
+ :type band: object.
1045
+
1046
+
689
1047
  Plot nuclear chart (N versus Z).\
690
1048
  The plot is 1x2 with:\
691
1049
  [0]: nuclear chart.
@@ -699,24 +1057,149 @@ def eos_setupAMBeq_xp_fig( pname, micro_mbs, pheno_models, band ):
699
1057
  :param theo_tables: object instantiated on the reference band.
700
1058
  :type theo_tables: object.
701
1059
 
1060
+ """
1061
+ #
1062
+ print(f'Plot name: {pname}')
1063
+ #
1064
+ p_den = 312.0
1065
+ p_cen = 12.5
1066
+ p_std = 11.0
1067
+ p_micro_cen = 14.0
1068
+ p_micro_std = 2.5
1069
+ p_pheno_cen = 12.5
1070
+ p_pheno_std = 11.0
1071
+ #
1072
+ fig, axs = plt.subplots(1,2)
1073
+ fig.tight_layout() # Or equivalently, "plt.tight_layout()"
1074
+ fig.subplots_adjust(left=0.12, bottom=0.12, right=0.95, top=0.90, wspace=0.05, hspace=0.05 )
1075
+ #
1076
+ axs[0].set_xlabel(r'$\epsilon_\text{tot}$ (MeV fm$^{-3}$)',fontsize='14')
1077
+ axs[0].set_ylabel(r'$p_\text{tot}$ (MeV fm$^{-3}$)',fontsize='14')
1078
+ axs[0].set_xlim([0, 350])
1079
+ axs[0].set_ylim([-2, 30])
1080
+ #axs[0].set_tick_params('y', right=True)
1081
+ #axs[0].set_tick_params('x', top=True)
1082
+ #
1083
+ axs[1].set_xlabel(r'$\epsilon_\text{tot}$ (MeV fm$^{-3}$)',fontsize='14')
1084
+ axs[1].set_xlim([0, 350])
1085
+ axs[1].set_ylim([-2, 30])
1086
+ axs[1].tick_params('y', labelleft=False)
1087
+ #
1088
+ mb_check = []
1089
+ #
1090
+ for kmb,mb in enumerate(micro_mbs):
1091
+ #
1092
+ print('mb:',mb,kmb)
1093
+ #
1094
+ models, models_lower = nuda.matter.micro_esym_models_mb( mb )
1095
+ #
1096
+ print('models:',models)
1097
+ #
1098
+ if mb == 'VAR':
1099
+ models.remove('1998-VAR-AM-APR-fit')
1100
+ models_lower.remove('1998-var-am-apr-fit')
1101
+ #
1102
+ for model in models:
1103
+ #
1104
+ micro = nuda.eos.setupAMBeq( model = model, kind = 'micro' )
1105
+ if nuda.env.verb_output: micro.print_outputs( )
1106
+ #
1107
+ check = nuda.matter.setupCheck( eos = micro, band = band )
1108
+ #
1109
+ if check.isInside:
1110
+ lstyle = 'solid'
1111
+ else:
1112
+ lstyle = 'dashed'
1113
+ #continue
1114
+ #
1115
+ #
1116
+ if micro.pre_tot is not None:
1117
+ print('model:',model)
1118
+ if mb in mb_check:
1119
+ axs[0].plot( micro.eps_tot, micro.pre_tot, marker='o', linestyle=micro.linestyle, markevery=micro.every, color=nuda.param.col[kmb] )
1120
+ else:
1121
+ mb_check.append(mb)
1122
+ axs[0].plot( micro.eps_tot, micro.pre_tot, marker='o', linestyle=micro.linestyle, label=mb, markevery=micro.every, color=nuda.param.col[kmb] )
1123
+ # end of model
1124
+ # end of mb
1125
+ #
1126
+ axs[0].errorbar( p_den, p_cen, yerr=p_std, color='k', linewidth = 3 )
1127
+ axs[0].errorbar( p_den+5.0, p_micro_cen, yerr=p_micro_std, color='r', linewidth = 3 )
1128
+ axs[0].text(10,20,'microscopic models',fontsize='10')
1129
+ #
1130
+ model_check = []
1131
+ #
1132
+ for kmodel,model in enumerate(pheno_models):
1133
+ #
1134
+ params, params_lower = nuda.matter.pheno_esym_params( model = model )
1135
+ #
1136
+ for param in params:
1137
+ #
1138
+ pheno = nuda.eos.setupAMBeq( model = model, param = param, kind = 'pheno' )
1139
+ if nuda.env.verb_output: pheno.print_outputs( )
1140
+ #
1141
+ check = nuda.matter.setupCheck( eos = pheno, band = band )
1142
+ #
1143
+ if check.isInside:
1144
+ lstyle = 'solid'
1145
+ else:
1146
+ lstyle = 'dashed'
1147
+ #continue
1148
+ #
1149
+ if pheno.pre_tot is not None:
1150
+ print('model:',model,' param:',param)
1151
+ if model in model_check:
1152
+ axs[1].plot( pheno.eps_tot, pheno.pre_tot, linestyle=lstyle, markevery=pheno.every, color=nuda.param.col[kmodel] )
1153
+ else:
1154
+ model_check.append(model)
1155
+ axs[1].plot( pheno.eps_tot, pheno.pre_tot, linestyle=lstyle, label=model, markevery=pheno.every, color=nuda.param.col[kmodel] )
1156
+ # end of param
1157
+ # end of model
1158
+ #
1159
+ axs[1].errorbar( p_den, p_cen, yerr=p_std, color='k', linewidth = 3 )
1160
+ axs[1].errorbar( p_den+5.0, p_pheno_cen, yerr=p_pheno_std, color='r', linewidth = 3 )
1161
+ axs[1].text(10,20,'phenomenological models',fontsize='10')
1162
+ #
1163
+ fig.legend(loc='upper left',bbox_to_anchor=(0.15,1.0),columnspacing=2,fontsize='8',ncol=6,frameon=False)
1164
+ #
1165
+ if pname is not None:
1166
+ plt.savefig(pname, dpi=200)
1167
+ plt.close()
1168
+
1169
+ def eos_setupAMBeq_xp_fig( pname, micro_mbs, pheno_models, band ):
1170
+ """
1171
+ Plot the proton fraction (=xp) in asymmetric matter at beta equilibrium.
1172
+
1173
+ The plot is 2x1 with:
1174
+
1175
+ [0]: microscopic models. [1]: phenomenologic models.
1176
+
1177
+ :param pname: name of the figure (*.png)
1178
+ :type pname: str.
1179
+ :param micro_mbs: array with names of many-body framework for microscopic interactions.
1180
+ :type micro_mbs: array of str.
1181
+ :param pheno_models: array of interaction names for phenomenologic interactions.
1182
+ :type pheno_models: array of str.
1183
+ :param band: object instantiated on the reference band.
1184
+ :type band: object.
702
1185
  """
703
1186
  #
704
1187
  print(f'Plot name: {pname}')
705
1188
  #
706
1189
  fig, axs = plt.subplots(1,2)
707
1190
  fig.tight_layout() # Or equivalently, "plt.tight_layout()"
708
- fig.subplots_adjust(left=0.12, bottom=0.12, right=None, top=0.90, wspace=0.05, hspace=0.3 )
1191
+ fig.subplots_adjust(left=0.12, bottom=0.12, right=0.95, top=0.90, wspace=0.05, hspace=0.3 )
709
1192
  #
710
- axs[0].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)')
711
- axs[0].set_ylabel(r'proton fraction $x_p$')
712
- axs[0].set_xlim([0, 0.28])
1193
+ axs[0].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)',fontsize='14')
1194
+ axs[0].set_ylabel(r'proton fraction $x_p$',fontsize='14')
1195
+ axs[0].set_xlim([0, 0.33])
713
1196
  axs[0].set_ylim([0, 0.2])
714
1197
  #axs[0].set_tick_params('y', right=True)
715
1198
  #axs[0].set_tick_params('x', top=True)
716
1199
  #
717
- axs[1].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)')
1200
+ axs[1].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)',fontsize='14')
718
1201
  #axs[1].set_ylabel(r'proton fraction $x_p$')
719
- axs[1].set_xlim([0, 0.28])
1202
+ axs[1].set_xlim([0, 0.33])
720
1203
  axs[1].set_ylim([0, 0.2])
721
1204
  #setp(axs[1].get_yticklabels(), visible=False)
722
1205
  axs[1].tick_params('y', labelleft=False)
@@ -791,7 +1274,7 @@ def eos_setupAMBeq_xp_fig( pname, micro_mbs, pheno_models, band ):
791
1274
  #
792
1275
  axs[1].text(0.02,0.18,'phenomenological models',fontsize='10')
793
1276
  #
794
- fig.legend(loc='upper left',bbox_to_anchor=(0.15,1.0),columnspacing=2,fontsize='8',ncol=5,frameon=False)
1277
+ fig.legend(loc='upper left',bbox_to_anchor=(0.15,1.0),columnspacing=2,fontsize='8',ncol=6,frameon=False)
795
1278
  #
796
1279
  if pname is not None:
797
1280
  plt.savefig(pname, dpi=200)
@@ -799,35 +1282,36 @@ def eos_setupAMBeq_xp_fig( pname, micro_mbs, pheno_models, band ):
799
1282
 
800
1283
  def eos_setupAMBeq_xe_fig( pname, micro_mbs, pheno_models, band ):
801
1284
  """
802
- Plot nuclear chart (N versus Z).\
803
- The plot is 1x2 with:\
804
- [0]: nuclear chart.
1285
+ Plot the electron fraction (=xe) in asymmetric matter at beta equilibrium.
1286
+
1287
+ The plot is 2x1 with:
1288
+
1289
+ [0]: microscopic models. [1]: phenomenologic models.
805
1290
 
806
1291
  :param pname: name of the figure (*.png)
807
1292
  :type pname: str.
808
- :param table: table.
809
- :type table: str.
810
- :param version: version of table to run on.
811
- :type version: str.
812
- :param theo_tables: object instantiated on the reference band.
813
- :type theo_tables: object.
814
-
1293
+ :param micro_mbs: array with names of many-body framework for microscopic interactions.
1294
+ :type micro_mbs: array of str.
1295
+ :param pheno_models: array of interaction names for phenomenologic interactions.
1296
+ :type pheno_models: array of str.
1297
+ :param band: object instantiated on the reference band.
1298
+ :type band: object.
815
1299
  """
816
1300
  #
817
1301
  print(f'Plot name: {pname}')
818
1302
  #
819
1303
  fig, axs = plt.subplots(1,2)
820
1304
  fig.tight_layout() # Or equivalently, "plt.tight_layout()"
821
- fig.subplots_adjust(left=0.12, bottom=0.12, right=None, top=0.90, wspace=0.05, hspace=0.3 )
1305
+ fig.subplots_adjust(left=0.12, bottom=0.12, right=0.95, top=0.90, wspace=0.05, hspace=0.3 )
822
1306
  #
823
- axs[0].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)')
824
- axs[0].set_ylabel(r'electron fraction $x_e$')
825
- axs[0].set_xlim([0, 0.28])
1307
+ axs[0].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)',fontsize='14')
1308
+ axs[0].set_ylabel(r'electron fraction $x_e$',fontsize='14')
1309
+ axs[0].set_xlim([0, 0.33])
826
1310
  axs[0].set_ylim([0, 0.2])
827
1311
  #
828
- axs[1].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)')
1312
+ axs[1].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)',fontsize='14')
829
1313
  #axs[1].set_ylabel(r'electron fraction $x_e$')
830
- axs[1].set_xlim([0, 0.28])
1314
+ axs[1].set_xlim([0, 0.33])
831
1315
  axs[1].set_ylim([0, 0.2])
832
1316
  axs[1].tick_params('y', labelleft=False)
833
1317
  #
@@ -903,7 +1387,7 @@ def eos_setupAMBeq_xe_fig( pname, micro_mbs, pheno_models, band ):
903
1387
  #
904
1388
  axs[1].text(0.02,0.18,'phenomenological models',fontsize='10')
905
1389
  #
906
- fig.legend(loc='upper left',bbox_to_anchor=(0.15,1.0),columnspacing=2,fontsize='8',ncol=5,frameon=False)
1390
+ fig.legend(loc='upper left',bbox_to_anchor=(0.15,1.0),columnspacing=2,fontsize='8',ncol=6,frameon=False)
907
1391
  #
908
1392
  if pname is not None:
909
1393
  plt.savefig(pname, dpi=200)
@@ -911,35 +1395,36 @@ def eos_setupAMBeq_xe_fig( pname, micro_mbs, pheno_models, band ):
911
1395
 
912
1396
  def eos_setupAMBeq_xmu_fig( pname, micro_mbs, pheno_models, band ):
913
1397
  """
914
- Plot nuclear chart (N versus Z).\
915
- The plot is 1x2 with:\
916
- [0]: nuclear chart.
1398
+ Plot the muon fraction (=xmu) in asymmetric matter at beta equilibrium.
1399
+
1400
+ The plot is 2x1 with:
1401
+
1402
+ [0]: microscopic models. [1]: phenomenologic models.
917
1403
 
918
1404
  :param pname: name of the figure (*.png)
919
1405
  :type pname: str.
920
- :param table: table.
921
- :type table: str.
922
- :param version: version of table to run on.
923
- :type version: str.
924
- :param theo_tables: object instantiated on the reference band.
925
- :type theo_tables: object.
926
-
1406
+ :param micro_mbs: array with names of many-body framework for microscopic interactions.
1407
+ :type micro_mbs: array of str.
1408
+ :param pheno_models: array of interaction names for phenomenologic interactions.
1409
+ :type pheno_models: array of str.
1410
+ :param band: object instantiated on the reference band.
1411
+ :type band: object.
927
1412
  """
928
1413
  #
929
1414
  print(f'Plot name: {pname}')
930
1415
  #
931
1416
  fig, axs = plt.subplots(1,2)
932
1417
  fig.tight_layout() # Or equivalently, "plt.tight_layout()"
933
- fig.subplots_adjust(left=0.12, bottom=0.12, right=None, top=0.90, wspace=0.05, hspace=0.3 )
1418
+ fig.subplots_adjust(left=0.12, bottom=0.12, right=0.95, top=0.90, wspace=0.05, hspace=0.3 )
934
1419
  #
935
- axs[0].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)')
936
- axs[0].set_ylabel(r'muon fraction $x_\mu$')
937
- axs[0].set_xlim([0, 0.28])
1420
+ axs[0].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)',fontsize='14')
1421
+ axs[0].set_ylabel(r'muon fraction $x_\mu$',fontsize='14')
1422
+ axs[0].set_xlim([0, 0.33])
938
1423
  axs[0].set_ylim([0, 0.2])
939
1424
  #
940
- axs[1].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)')
1425
+ axs[1].set_xlabel(r'$n_\text{nuc}$ (fm$^{-3}$)',fontsize='14')
941
1426
  #axs[1].set_ylabel(r'muon fraction $x_\mu$')
942
- axs[1].set_xlim([0, 0.28])
1427
+ axs[1].set_xlim([0, 0.33])
943
1428
  axs[1].set_ylim([0, 0.2])
944
1429
  axs[1].tick_params('y', labelleft=False)
945
1430
  #
@@ -1013,7 +1498,7 @@ def eos_setupAMBeq_xmu_fig( pname, micro_mbs, pheno_models, band ):
1013
1498
  #
1014
1499
  axs[1].text(0.02,0.18,'phenomenological models',fontsize='10')
1015
1500
  #
1016
- fig.legend(loc='upper left',bbox_to_anchor=(0.15,1.0),columnspacing=2,fontsize='8',ncol=5,frameon=False)
1501
+ fig.legend(loc='upper left',bbox_to_anchor=(0.15,1.0),columnspacing=2,fontsize='8',ncol=6,frameon=False)
1017
1502
  #
1018
1503
  if pname is not None:
1019
1504
  plt.savefig(pname, dpi=200)