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
@@ -173,10 +173,10 @@ class setupMicroBand():
173
173
  #?? esym = nuda.matter.setupMicroEsym( model = model )
174
174
  # Prepare spline for E/A and E/A_err
175
175
  if matter.lower() == 'nm':
176
- cs_e2a = CubicSpline( mic.nm_den, mic.nm_e2a )
176
+ cs_e2a = CubicSpline( mic.nm_den, mic.nm_e2a_int )
177
177
  cs_e2a_err = CubicSpline( mic.nm_den, mic.nm_e2a_err )
178
178
  elif matter.lower() == 'sm':
179
- cs_e2a = CubicSpline( mic.sm_den, mic.sm_e2a )
179
+ cs_e2a = CubicSpline( mic.sm_den, mic.sm_e2a_int )
180
180
  cs_e2a_err = CubicSpline( mic.sm_den, mic.sm_e2a_err )
181
181
  elif matter.lower() == 'esym':
182
182
  esym = nuda.matter.setupMicroEsym( model = model )
@@ -193,12 +193,12 @@ class setupMicroBand():
193
193
  #
194
194
  # compute centroid and standard deviation as function of the density
195
195
  #
196
- self.e2a = []; self.e2a_std = [];
196
+ self.e2a_int = []; self.e2a_std = [];
197
197
  for k,kfn in enumerate(self.kfn):
198
- self.e2a.append( np.mean(mat[k,:]*e2a)/np.mean(mat[k,:]) )
198
+ self.e2a_int.append( np.mean(mat[k,:]*e2a)/np.mean(mat[k,:]) )
199
199
  self.e2a_std.append( np.mean(mat[k,:]*e2a**2)/np.mean(mat[k,:]) )
200
- self.e2a = np.array(self.e2a, dtype=float )
201
- self.e2a_std = xfac * np.sqrt( np.array(self.e2a_std, dtype=float ) - self.e2a**2 )
200
+ self.e2a_int = np.array(self.e2a_int, dtype=float )
201
+ self.e2a_std = xfac * np.sqrt( np.array(self.e2a_std, dtype=float ) - self.e2a_int**2 )
202
202
  #
203
203
  if nuda.env.verb: print("Exit setupMicroBand()")
204
204
  #
@@ -1,5 +1,3 @@
1
- import os
2
- import sys
3
1
  import math
4
2
  import numpy as np # 1.15.0
5
3
  from scipy.interpolate import CubicSpline
@@ -24,7 +22,7 @@ def micro_esym_mbs():
24
22
  #
25
23
  if nuda.env.verb: print("\nEnter micro_mbs()")
26
24
  #
27
- mbs = [ 'VAR', 'BHF2', 'BHF23', 'MBPT', 'NLEFT' ]
25
+ mbs = [ 'VAR', 'BHF2', 'BHF23', 'MBPT', 'NLEFT', 'SCGF', 'CC' ]
28
26
  mbs_lower = [ item.lower() for item in mbs ]
29
27
  #
30
28
  if nuda.env.verb: print("Exit micro_mbs()")
@@ -55,8 +53,13 @@ def micro_esym_models_mb( mb ):
55
53
  '2024-BHF-AM-23BFmicro-Av18', '2024-BHF-AM-23BFmicro-BONNB', '2024-BHF-AM-23BFmicro-NSC93',\
56
54
  If `mb` == 'MBPT': \
57
55
  '2010-MBPT-NM', '2020-MBPT-AM', '2019-MBPT-AM-L59', '2019-MBPT-AM-L69'
56
+ If `mb` == 'SCGF': \
57
+ "2020-SCGF-AM-N3LO-414", "2020-SCGF-AM-N3LO-450", "2020-SCGF-AM-N3LO-500", "2024-SCGF-AM-DN2LO-450",\
58
+ "2024-SCGF-AM-DN2LO-500", "2024-SCGF-AM-DN2LOgo-394", "2024-SCGF-AM-DN2LOgo-450", "2024-SCGF-AM-N2LOsat",\
58
59
  If `mb` == 'NLEFT': \
59
60
  '2024-NLEFT-AM', \
61
+ If `mb` == 'CC': \
62
+ "2024-CC-AM-DN2LO-450", "2024-CC-AM-DN2LO-500", "2024-CC-AM-DN2LOgo-394", "2024-CC-AM-DN2LOgo-450", "2024-CC-AM-N2LOsat",\
60
63
  """
61
64
  #
62
65
  if nuda.env.verb: print("\nEnter micro_models_mb()")
@@ -79,9 +82,29 @@ def micro_esym_models_mb( mb ):
79
82
  # '2024-BHF-AM-23BF-CDBONN', '2024-BHF-AM-23BF-NSC97a', '2024-BHF-AM-23BF-NSC97b', '2024-BHF-AM-23BF-NSC97c', \
80
83
  # '2024-BHF-AM-23BF-NSC97d', '2024-BHF-AM-23BF-NSC97e', '2024-BHF-AM-23BF-NSC97f', '2024-BHF-AM-23BF-SSCV14' ]
81
84
  elif mb.lower() == 'mbpt':
82
- models = [ '2019-MBPT-AM-L59', '2016-MBPT-AM', '2019-MBPT-AM-L69', '2020-MBPT-AM' ]
85
+ models = [ '2019-MBPT-AM-L59', '2016-MBPT-AM', '2019-MBPT-AM-L69', '2020-MBPT-AM', "2024-MBPT-AM-DN2LO-450",
86
+ "2024-MBPT-AM-DN2LO-500", "2024-MBPT-AM-DN2LOgo-394", "2024-MBPT-AM-DN2LOgo-450", "2024-MBPT-AM-N2LOsat" ]
83
87
  elif mb.lower() == 'nleft':
84
88
  models = [ '2024-NLEFT-AM' ]
89
+ elif mb.lower() == 'scgf':
90
+ models = [
91
+ "2020-SCGF-AM-N3LO-414",
92
+ "2020-SCGF-AM-N3LO-450",
93
+ "2020-SCGF-AM-N3LO-500",
94
+ "2024-SCGF-AM-DN2LO-450",
95
+ "2024-SCGF-AM-DN2LO-500",
96
+ "2024-SCGF-AM-DN2LOgo-394",
97
+ "2024-SCGF-AM-DN2LOgo-450",
98
+ "2024-SCGF-AM-N2LOsat",
99
+ ]
100
+ elif mb.lower() == 'cc':
101
+ models = [
102
+ "2024-CC-AM-DN2LO-450",
103
+ "2024-CC-AM-DN2LO-500",
104
+ "2024-CC-AM-DN2LOgo-394",
105
+ "2024-CC-AM-DN2LOgo-450",
106
+ "2024-CC-AM-N2LOsat",
107
+ ]
85
108
  #
86
109
  if nuda.env.verb: print('models available in the toolkit:',models)
87
110
  #
@@ -123,43 +146,6 @@ def micro_esym_models():
123
146
  #
124
147
  return models, models_lower
125
148
 
126
- def micro_esym_models_old():
127
- """
128
- Return a list with the name of the models available in this toolkit and \
129
- print them all on the prompt. These models are the following ones: \
130
- '1981-VAR-AM-FP', '1998-VAR-AM-APR', '1998-VAR-AM-APR-fit', '2006-BHF-AM*', \
131
- 2016-MBPT-AM', 2019-MBPT-AM-L59', '2019-MBPT-AM-L69', \
132
- '2020-MBPT-AM', '2024-NLEFT-AM', \
133
- '2024-BHF-AM-2BF-Av8p', '2024-BHF-AM-2BF-Av18', '2024-BHF-AM-2BF-BONN', '2024-BHF-AM-2BF-CDBONN', \
134
- '2024-BHF-AM-2BF-NSC97a', '2024-BHF-AM-2BF-NSC97b', '2024-BHF-AM-2BF-NSC97c', '2024-BHF-AM-2BF-NSC97d', \
135
- '2024-BHF-AM-2BF-NSC97e', '2024-BHF-AM-2BF-NSC97f', '2024-BHF-AM-2BF-SSCV14',\
136
- '2024-BHF-AM-23BF-Av8p', '2024-BHF-AM-23BF-Av18', '2024-BHF-AM-23BF-BONN', '2024-BHF-AM-23BF-CDBONN', \
137
- '2024-BHF-AM-23BF-NSC97a', '2024-BHF-AM-23BF-NSC97b', '2024-BHF-AM-23BF-NSC97c', '2024-BHF-AM-23BF-NSC97d', \
138
- '2024-BHF-AM-23BF-NSC97e', '2024-BHF-AM-23BF-NSC97f', '2024-BHF-AM-23BF-SSCV14',\
139
- '2024-BHF-AM-23BFmicro-Av18', '2024-BHF-AM-23BFmicro-BONNB', '2024-BHF-AM-23BFmicro-NSC93'\
140
-
141
- :return: The list of models.
142
- :rtype: list[str].
143
- """
144
- #
145
- if nuda.env.verb: print("\nEnter micro_esym_models()")
146
- #
147
- models = [ '1981-VAR-AM-FP', '1998-VAR-AM-APR', '1998-VAR-AM-APR-fit', \
148
- '2016-MBPT-AM', '2019-MBPT-AM-L59', '2019-MBPT-AM-L69', \
149
- '2020-MBPT-AM', '2024-NLEFT-AM', \
150
- '2024-BHF-AM-2BF-Av8p', '2024-BHF-AM-2BF-Av18', '2024-BHF-AM-2BF-BONN', '2024-BHF-AM-2BF-CDBONN', \
151
- '2024-BHF-AM-2BF-NSC97a', '2024-BHF-AM-2BF-NSC97b', '2024-BHF-AM-2BF-NSC97c', '2024-BHF-AM-2BF-NSC97d', \
152
- '2024-BHF-AM-2BF-NSC97e', '2024-BHF-AM-2BF-NSC97f', '2024-BHF-AM-2BF-SSCV14',\
153
- '2024-BHF-AM-23BF-Av8p', '2024-BHF-AM-23BF-Av18', '2024-BHF-AM-23BF-BONN', '2024-BHF-AM-23BF-CDBONN', \
154
- '2024-BHF-AM-23BF-NSC97a', '2024-BHF-AM-23BF-NSC97b', '2024-BHF-AM-23BF-NSC97c', '2024-BHF-AM-23BF-NSC97d', \
155
- '2024-BHF-AM-23BF-NSC97e', '2024-BHF-AM-23BF-NSC97f', '2024-BHF-AM-23BF-SSCV14' ]
156
- if nuda.env.verb: print('models available in the toolkit:',models)
157
- models_lower = [ item.lower() for item in models ]
158
- #
159
- if nuda.env.verb: print("Exit micro_esym_models()")
160
- #
161
- return models, models_lower
162
-
163
149
  class setupMicroEsym():
164
150
  """
165
151
  Instantiate the object with microscopic results choosen \
@@ -220,25 +206,41 @@ class setupMicroEsym():
220
206
  #
221
207
  mic = nuda.matter.setupMicro( model = model, var1 = var1, var2 = 0.0 )
222
208
  self.sm_den = mic.den
223
- self.sm_e2a = mic.e2a
209
+ self.sm_e2a_int = mic.e2a_int
224
210
  self.sm_e2a_err = mic.e2a_err
225
211
  #
226
212
  # NM
227
213
  #
228
214
  mic = nuda.matter.setupMicro( model = model, var1 = var1, var2 = 1.0 )
229
215
  self.nm_den = mic.den
230
- self.nm_e2a = mic.e2a
216
+ self.nm_e2a_int = mic.e2a_int
231
217
  self.nm_e2a_err = mic.e2a_err
232
218
  #
233
219
  else:
234
220
  #
235
221
  mic = nuda.matter.setupMicro( model = model )
222
+ self.e_err = mic.e_err
223
+ self.p_err = mic.p_err
224
+ self.cs2_err = mic.cs2_err
236
225
  self.sm_den = mic.sm_den
237
- self.sm_e2a = mic.sm_e2a
238
- self.sm_e2a_err = mic.sm_e2a_err
239
226
  self.nm_den = mic.nm_den
240
- self.nm_e2a = mic.nm_e2a
241
- self.nm_e2a_err = mic.nm_e2a_err
227
+ self.sm_e2a_int = mic.sm_e2a_int
228
+ self.nm_e2a_int = mic.nm_e2a_int
229
+ self.sm_e2a_err = np.zeros(np.size(mic.sm_e2a_int))
230
+ self.nm_e2a_err = np.zeros(np.size(mic.nm_e2a_int))
231
+ self.sm_pre_err = np.zeros(np.size(mic.sm_e2a_int))
232
+ self.nm_pre_err = np.zeros(np.size(mic.nm_e2a_int))
233
+ self.sm_cs2_err = np.zeros(np.size(mic.sm_e2a_int))
234
+ self.nm_cs2_err = np.zeros(np.size(mic.nm_e2a_int))
235
+ if self.e_err:
236
+ self.sm_e2a_err = mic.sm_e2a_err
237
+ self.nm_e2a_err = mic.nm_e2a_err
238
+ if self.p_err:
239
+ self.sm_pre_err = mic.sm_pre_err
240
+ self.nm_pre_err = mic.nm_pre_err
241
+ if self.cs2_err:
242
+ self.sm_cs2_err = mic.sm_cs2_err
243
+ self.nm_cs2_err = mic.nm_cs2_err
242
244
  #mic.print_outputs( )
243
245
  #
244
246
  #
@@ -250,20 +252,20 @@ class setupMicroEsym():
250
252
  self.note = mic.note
251
253
  self.label = mic.label
252
254
  self.marker = mic.marker
253
- self.every = 2*mic.every
255
+ self.every = mic.every
254
256
  self.linestyle = mic.linestyle
255
257
  self.err = True
256
258
  #
257
259
  # E/A in SM (cubic spline)
258
260
  #
259
- x = np.insert( self.sm_den, 0, 0.0 ); y = np.insert( self.sm_e2a, 0, 0.0 )
261
+ x = np.insert( self.sm_den, 0, 0.0 ); y = np.insert( self.sm_e2a_int, 0, 0.0 )
260
262
  cs_sm_e2a = CubicSpline( x, y )
261
263
  y_err = np.insert( self.sm_e2a_err, 0, 0.0 )
262
264
  cs_sm_e2a_err = CubicSpline( x, y_err )
263
265
  #
264
266
  # E/A in NM (cubic spline)
265
267
  #
266
- x = np.insert( self.nm_den, 0, 0.0 ); y = np.insert( self.nm_e2a, 0, 0.0 )
268
+ x = np.insert( self.nm_den, 0, 0.0 ); y = np.insert( self.nm_e2a_int, 0, 0.0 )
267
269
  cs_nm_e2a = CubicSpline( x, y )
268
270
  y_err = np.insert( self.nm_e2a_err, 0, 0.0 )
269
271
  cs_nm_e2a_err = CubicSpline( x, y_err )
@@ -279,9 +281,9 @@ class setupMicroEsym():
279
281
  #
280
282
  # Symmetry energy for the densities defined in self.den
281
283
  #
282
- self.esym_sm_e2a = cs_sm_e2a( self.den )
283
- self.esym_nm_e2a = cs_nm_e2a( self.den )
284
- self.esym = self.esym_nm_e2a - self.esym_sm_e2a
284
+ self.esym_sm_e2a_int = cs_sm_e2a( self.den )
285
+ self.esym_nm_e2a_int = cs_nm_e2a( self.den )
286
+ self.esym = self.esym_nm_e2a_int - self.esym_sm_e2a_int
285
287
  self.esym_err = np.sqrt( cs_nm_e2a_err( self.den )**2 + cs_sm_e2a_err( self.den )**2 )
286
288
  self.esym_sm_pre = self.den**2 * cs_sm_e2a( self.den, 1 )
287
289
  self.esym_sym_pre = self.den**2 * cs_nm_e2a( self.den, 1 ) - self.esym_sm_pre
@@ -289,7 +291,7 @@ class setupMicroEsym():
289
291
  self.den_unit = 'fm$^{-3}$'
290
292
  self.kf_unit = 'fm$^{-1}$'
291
293
  self.esym_unit = 'MeV'
292
- self.e2v_unit = 'MeV fm$^{-3}$'
294
+ self.eps_unit = 'MeV fm$^{-3}$'
293
295
  self.pre_unit = 'MeV fm$^{-3}$'
294
296
  #
295
297
  if nuda.env.verb: print("Exit setupMicroEsym()")
@@ -28,7 +28,7 @@ def micro_gap_models( matter = 'NM' ):
28
28
  #
29
29
  if nuda.env.verb: print("\nEnter micro_gap_models()")
30
30
  #
31
- models_all = [ '2006-BHF-Av18-NM', '2006-BHF-Av18-SM', '2008-BCS-NM', '2008-QMC-NM-swave', '2009-DLQMC-NM', '2010-QMC-NM-AV4', \
31
+ models_all = [ '2006-BHF-NM-Av18', '2006-BHF-SM-Av18', '2008-BCS-NM', '2008-QMC-NM-swave', '2009-DLQMC-NM', '2010-QMC-NM-AV4', \
32
32
  '2017-MBPT-NM-GAP-EMG-450-500-N2LO', '2017-MBPT-NM-GAP-EMG-450-500-N3LO', '2017-MBPT-NM-GAP-EMG-450-700-N2LO', \
33
33
  '2017-MBPT-NM-GAP-EMG-450-700-N3LO', '2017-MBPT-NM-GAP-EM-500-N2LO', '2017-MBPT-NM-GAP-EM-500-N3LO', \
34
34
  '2022-AFDMC-NM' ]
@@ -90,18 +90,18 @@ class setupMicroGap():
90
90
  print('setup_micro_gap: -- Exit the code --')
91
91
  exit()
92
92
  #
93
- if model.lower() == '2006-bhf-nm':
93
+ if model.lower() == '2006-bhf-nm-av18':
94
94
  #
95
- file_in_fs = os.path.join(nuda.param.path_data,'matter/micro/2006-BHF/2006-BHF-GAP-NM-FreeSpectrum.dat')
95
+ file_in_fs = os.path.join(nuda.param.path_data,'matter/micro/2006-BHF/2006-BHF-Av18-GAP-NM-FreeSpectrum.dat')
96
96
  if nuda.env.verb: print('Reads file (free spectrum):',file_in_fs)
97
- file_in_se = os.path.join(nuda.param.path_data,'matter/micro/2006-BHF/2006-BHF-GAP-NM-SelfEnergy.dat')
97
+ file_in_se = os.path.join(nuda.param.path_data,'matter/micro/2006-BHF/2006-BHF-Av18-GAP-NM-SelfEnergy.dat')
98
98
  if nuda.env.verb: print('Reads file (self energy):',file_in_se)
99
99
  self.ref = 'L.G. Cao, U. Lombardo, and P. Schuck, Phys. Rev. C 74, 64301 (2006)'
100
100
  self.note = ""
101
101
  self.label = 'EBHF-Av18-2006'
102
102
  self.marker = 'o'
103
103
  self.every = 1
104
- #self.linestyle = 'dotted'
104
+ self.lstyle = 'solid'
105
105
  self.gap_err = False
106
106
  self.nm_kfn_1s0_fs, self.nm_gap_bare_1s0_fs, self.nm_gap_bare_onebubble_1s0_fs, self.nm_gap_bare_full_1s0_fs \
107
107
  = np.loadtxt( file_in_fs, usecols=(0,1,2,3), unpack = True )
@@ -110,18 +110,18 @@ class setupMicroGap():
110
110
  = np.loadtxt( file_in_se, usecols=(0,1,2), unpack = True )
111
111
  self.nm_den_1s0 = nuda.den_n( self.nm_kfn_1s0 )
112
112
  #
113
- elif model.lower() == '2006-bhf-sm':
113
+ elif model.lower() == '2006-bhf-sm-av18':
114
114
  #
115
- file_in_fs = os.path.join(nuda.param.path_data,'matter/micro/2006-BHF/2006-BHF-GAP-SM-FreeSpectrum.dat')
115
+ file_in_fs = os.path.join(nuda.param.path_data,'matter/micro/2006-BHF/2006-BHF-Av18-GAP-SM-FreeSpectrum.dat')
116
116
  if nuda.env.verb: print('Reads file (free spectrum):',file_in_fs)
117
- file_in_se = os.path.join(nuda.param.path_data,'matter/micro/2006-BHF/2006-BHF-GAP-SM-SelfEnergy.dat')
117
+ file_in_se = os.path.join(nuda.param.path_data,'matter/micro/2006-BHF/2006-BHF-Av18-GAP-SM-SelfEnergy.dat')
118
118
  if nuda.env.verb: print('Reads file (self energy):',file_in_se)
119
119
  self.ref = 'L.G. Cao, U. Lombardo, and P. Schuck, Phys. Rev. C 74, 64301 (2006)'
120
120
  self.note = ""
121
121
  self.label = 'EBHF-Av18-2006'
122
122
  self.marker = 'o'
123
123
  self.every = 1
124
- #self.linestyle = 'dotted'
124
+ self.lstyle = 'solid'
125
125
  self.gap_err = False
126
126
  self.sm_kfn_1s0_fs, self.sm_gap_bare_1s0_fs, self.sm_gap_bare_onebubble_1s0_fs, self.sm_gap_bare_full_1s0_fs \
127
127
  = np.loadtxt( file_in_fs, usecols=(0,1,2,3), unpack = True )
@@ -139,7 +139,7 @@ class setupMicroGap():
139
139
  self.label = 'BCS-2008'
140
140
  self.marker = 'o'
141
141
  self.every = 1
142
- #self.linestyle = 'dotted'
142
+ self.lstyle = 'dashed'
143
143
  self.gap_err = False
144
144
  self.nm_kfn_1s0, self.nm_gap_1s0, self.nm_chempot, self.nm_effmass \
145
145
  = np.loadtxt( file_in, usecols=(0,1,2,3), unpack = True )
@@ -156,7 +156,7 @@ class setupMicroGap():
156
156
  self.label = 'AFDMC-2008'
157
157
  self.marker = 'D'
158
158
  self.every = 1
159
- #self.linestyle = 'solid'
159
+ self.lstyle = 'solid'
160
160
  self.gap_err = False
161
161
  self.nm_kfn_1s0, self.nm_gap_1s0, self.nm_chempot, self.nm_effmass \
162
162
  = np.loadtxt( file_in, usecols=(0,1,2,3), unpack = True )
@@ -173,7 +173,7 @@ class setupMicroGap():
173
173
  self.label = 'QMC-swave-2008'
174
174
  self.marker = 'o'
175
175
  self.every = 1
176
- #self.linestyle = 'solid'
176
+ self.lstyle = 'solid'
177
177
  self.gap_err = True
178
178
  self.nm_kfn_1s0, gap2ef, gap2ef_err, e2effg, e2effg_err \
179
179
  = np.loadtxt( file_in, usecols=(0,1,2,3,4), unpack = True )
@@ -190,7 +190,7 @@ class setupMicroGap():
190
190
  self.label = 'dLQMC-2009'
191
191
  self.marker = 'v'
192
192
  self.every = 1
193
- #self.linestyle = 'solid'
193
+ self.lstyle = 'solid'
194
194
  self.gap_err = True
195
195
  self.nm_kfn_1s0, gap2ef, gap2ef_err, e2effg, e2effg_err \
196
196
  = np.loadtxt( file_in, usecols=(0,1,2,3,4), unpack = True )
@@ -207,7 +207,7 @@ class setupMicroGap():
207
207
  self.label = 'QMC-AV4-2008'
208
208
  self.marker = 's'
209
209
  self.every = 1
210
- #self.linestyle = 'solid'
210
+ self.lstyle = 'solid'
211
211
  self.gap_err = True
212
212
  self.nm_kfn_1s0, gap2ef, gap2ef_err, e2effg, e2effg_err \
213
213
  = np.loadtxt( file_in, usecols=(0,1,2,3,4), unpack = True )
@@ -220,7 +220,7 @@ class setupMicroGap():
220
220
  self.ref = 'C. Drischler, T. Kr\"uger, K. Hebeler, and A. Schwenk, Phys. Rev. C 95, 024302 (2017).'
221
221
  self.note = ""
222
222
  self.marker = 's'
223
- #self.linestyle = 'solid'
223
+ self.lstyle = 'dashed'
224
224
  self.every = 2
225
225
  self.err = True
226
226
  if model.lower() == '2017-mbpt-nm-gap-emg-450-500-n2lo':
@@ -280,9 +280,8 @@ class setupMicroGap():
280
280
  self.ref = 'S. Gandolfi, G. Palkanoglou, J. Carlson, A. Gezerlis, K.E. Schmidt, Condensed Matter 7(1) (2022).'
281
281
  self.note = ""
282
282
  self.label = 'AFDMC+corr.-2022'
283
- self.linestyle = 'solid'
284
283
  self.marker = 'o'
285
- #self.linestyle = 'solid'
284
+ self.lstyle = 'solid'
286
285
  self.every = 1
287
286
  self.gap_err = True
288
287
  # read gap
@@ -310,6 +309,7 @@ class setupMicroGap():
310
309
  print(" label: ",self.label)
311
310
  print(" marker:",self.marker)
312
311
  print(" every: ",self.every)
312
+ # NM
313
313
  if self.nm_den_effmass is not None: print(f" nm_den_effmass: {np.round(self.nm_den_effmass,3)} in {self.den_unit}")
314
314
  if self.nm_kfn_effmass is not None: print(f" nm_kfn_effmass: {np.round(self.nm_kfn_effmass,3)} in {self.kf_unit}")
315
315
  if self.nm_den_1s0 is not None: print(f" nm_den_1s0: {np.round(self.nm_den_1s0,3)} in {self.den_unit}")
@@ -321,6 +321,11 @@ class setupMicroGap():
321
321
  if self.nm_gap_1s0_err is not None: print(f" nm_gap_1s0_err: {np.round(self.nm_gap_1s0_err,3)} in {self.gap_unit}")
322
322
  if self.nm_gap_3pf2 is not None: print(f" nm_gap_3pf2: {np.round(self.nm_gap_3pf2,3)} in {self.gap_unit}")
323
323
  if self.nm_gap_3pf2_err is not None: print(f" nm_gap_3pf2_err: {np.round(self.nm_gap_3pf2_err,3)} in {self.gap_unit}")
324
+ # SM
325
+ if self.sm_den_1s0 is not None: print(f" sm_den_1s0: {np.round(self.sm_den_1s0,3)} in {self.den_unit}")
326
+ if self.sm_kfn_1s0 is not None: print(f" sm_kfn_1s0: {np.round(self.sm_kfn_1s0,3)} in {self.kf_unit}")
327
+ if self.sm_gap_1s0 is not None: print(f" sm_gap_1s0: {np.round(self.sm_gap_1s0,3)} in {self.gap_unit}")
328
+ if self.sm_gap_1s0_err is not None: print(f" sm_gap_1s0_err: {np.round(self.sm_gap_1s0_err,3)} in {self.gap_unit}")
324
329
  #
325
330
  if nuda.env.verb: print("Exit print_outputs()")
326
331
  #
@@ -370,6 +375,8 @@ class setupMicroGap():
370
375
  self.sm_gap_3pf2_err = None
371
376
  #: Attribute the plot label data.
372
377
  self.label = ''
378
+ #: Attribute the plot linestyle.
379
+ self.lstyle = None
373
380
  #: Attribute the plot marker.
374
381
  self.marker = None
375
382
  #: Attribute the plot every data.
@@ -212,7 +212,7 @@ class setupMicroLP():
212
212
  #
213
213
  elif model.lower() == '2006-ebhf-sm-av18':
214
214
  #
215
- file_in = os.path.join(nuda.param.path_data,'LandauParameters/micro/2006-IBHF-SM-AV18.dat')
215
+ file_in = os.path.join(nuda.param.path_data,'LandauParameters/micro/2006-EBHF-SM-AV18.dat')
216
216
  if nuda.env.verb: print('Reads file:',file_in)
217
217
  self.ref = 'L.G. Cao, U. Lombardo, and P. Schuck, Phys Rev C 74, 064301 (2006)'
218
218
  self.note = "write here notes about this EOS."
@@ -225,7 +225,7 @@ class setupMicroLP():
225
225
  #
226
226
  elif model.lower() == '2006-ebhf-nm-av18':
227
227
  #
228
- file_in = os.path.join(nuda.param.path_data,'LandauParameters/micro/2006-IBHF-NM-AV18.dat')
228
+ file_in = os.path.join(nuda.param.path_data,'LandauParameters/micro/2006-EBHF-NM-AV18.dat')
229
229
  if nuda.env.verb: print('Reads file:',file_in)
230
230
  self.ref = 'L.G. Cao, U. Lombardo, and P. Schuck, Phys Rev C 74, 064301 (2006)'
231
231
  self.note = "write here notes about this EOS."