NetKet 3.22.2__tar.gz → 3.22.3__tar.gz

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 (437) hide show
  1. {netket-3.22.2 → netket-3.22.3}/PKG-INFO +1 -1
  2. {netket-3.22.2 → netket-3.22.3}/netket/_version.py +2 -2
  3. {netket-3.22.2 → netket-3.22.3}/netket/utils/_tips.py +2 -0
  4. {netket-3.22.2 → netket-3.22.3}/netket/utils/model_frameworks/base.py +17 -0
  5. {netket-3.22.2 → netket-3.22.3}/netket/utils/model_frameworks/equinox.py +13 -1
  6. {netket-3.22.2 → netket-3.22.3}/netket/utils/model_frameworks/nnx.py +5 -0
  7. {netket-3.22.2 → netket-3.22.3}/.gitignore +0 -0
  8. {netket-3.22.2 → netket-3.22.3}/LICENSE +0 -0
  9. {netket-3.22.2 → netket-3.22.3}/README.md +0 -0
  10. {netket-3.22.2 → netket-3.22.3}/docs/sphinx_extensions/netket_citations.py +0 -0
  11. {netket-3.22.2 → netket-3.22.3}/netket/__init__.py +0 -0
  12. {netket-3.22.2 → netket-3.22.3}/netket/_src/callbacks/auto_chunk_size.py +0 -0
  13. {netket-3.22.2 → netket-3.22.3}/netket/_src/callbacks/auto_slurm_requeue.py +0 -0
  14. {netket-3.22.2 → netket-3.22.3}/netket/_src/callbacks/base.py +0 -0
  15. {netket-3.22.2 → netket-3.22.3}/netket/_src/callbacks/callback_list.py +0 -0
  16. {netket-3.22.2 → netket-3.22.3}/netket/_src/callbacks/convergence_stopping.py +0 -0
  17. {netket-3.22.2 → netket-3.22.3}/netket/_src/callbacks/early_stopping.py +0 -0
  18. {netket-3.22.2 → netket-3.22.3}/netket/_src/callbacks/invalid_loss_stopping.py +0 -0
  19. {netket-3.22.2 → netket-3.22.3}/netket/_src/callbacks/legacy_wrappers.py +0 -0
  20. {netket-3.22.2 → netket-3.22.3}/netket/_src/callbacks/observables.py +0 -0
  21. {netket-3.22.2 → netket-3.22.3}/netket/_src/callbacks/progressbar.py +0 -0
  22. {netket-3.22.2 → netket-3.22.3}/netket/_src/callbacks/save_state.py +0 -0
  23. {netket-3.22.2 → netket-3.22.3}/netket/_src/callbacks/stop_at_time.py +0 -0
  24. {netket-3.22.2 → netket-3.22.3}/netket/_src/callbacks/timeout.py +0 -0
  25. {netket-3.22.2 → netket-3.22.3}/netket/_src/driver/abstract_dynamics_driver.py +0 -0
  26. {netket-3.22.2 → netket-3.22.3}/netket/_src/driver/abstract_optimization_driver.py +0 -0
  27. {netket-3.22.2 → netket-3.22.3}/netket/_src/driver/abstract_variational_driver.py +0 -0
  28. {netket-3.22.2 → netket-3.22.3}/netket/_src/driver/abstract_variational_driver_old.py +0 -0
  29. {netket-3.22.2 → netket-3.22.3}/netket/_src/driver/infidelity_sr.py +0 -0
  30. {netket-3.22.2 → netket-3.22.3}/netket/_src/driver/vmc_sr.py +0 -0
  31. {netket-3.22.2 → netket-3.22.3}/netket/_src/logging/base.py +0 -0
  32. {netket-3.22.2 → netket-3.22.3}/netket/_src/logging/hdf5_log.py +0 -0
  33. {netket-3.22.2 → netket-3.22.3}/netket/_src/logging/json_log.py +0 -0
  34. {netket-3.22.2 → netket-3.22.3}/netket/_src/logging/mlflow_log.py +0 -0
  35. {netket-3.22.2 → netket-3.22.3}/netket/_src/logging/runtime_log.py +0 -0
  36. {netket-3.22.2 → netket-3.22.3}/netket/_src/logging/state_log.py +0 -0
  37. {netket-3.22.2 → netket-3.22.3}/netket/_src/logging/tensorboard.py +0 -0
  38. {netket-3.22.2 → netket-3.22.3}/netket/_src/ngd/kwargs.py +0 -0
  39. {netket-3.22.2 → netket-3.22.3}/netket/_src/ngd/sr.py +0 -0
  40. {netket-3.22.2 → netket-3.22.3}/netket/_src/ngd/sr_srt_common.py +0 -0
  41. {netket-3.22.2 → netket-3.22.3}/netket/_src/ngd/srt.py +0 -0
  42. {netket-3.22.2 → netket-3.22.3}/netket/_src/ngd/srt_onthefly.py +0 -0
  43. {netket-3.22.2 → netket-3.22.3}/netket/_src/nn/apply_operator/functional.py +0 -0
  44. {netket-3.22.2 → netket-3.22.3}/netket/_src/nn/apply_operator/linen.py +0 -0
  45. {netket-3.22.2 → netket-3.22.3}/netket/_src/nn/apply_operator/nnx.py +0 -0
  46. {netket-3.22.2 → netket-3.22.3}/netket/_src/nn/freeze/api.py +0 -0
  47. {netket-3.22.2 → netket-3.22.3}/netket/_src/nn/freeze/common.py +0 -0
  48. {netket-3.22.2 → netket-3.22.3}/netket/_src/nn/freeze/functional.py +0 -0
  49. {netket-3.22.2 → netket-3.22.3}/netket/_src/nn/freeze/linen.py +0 -0
  50. {netket-3.22.2 → netket-3.22.3}/netket/_src/nn/freeze/nnx.py +0 -0
  51. {netket-3.22.2 → netket-3.22.3}/netket/_src/observable/correlator/__init__.py +0 -0
  52. {netket-3.22.2 → netket-3.22.3}/netket/_src/observable/correlator/correlator.py +0 -0
  53. {netket-3.22.2 → netket-3.22.3}/netket/_src/observable/correlator/expect.py +0 -0
  54. {netket-3.22.2 → netket-3.22.3}/netket/_src/observable/infidelity/__init__.py +0 -0
  55. {netket-3.22.2 → netket-3.22.3}/netket/_src/observable/infidelity/exact.py +0 -0
  56. {netket-3.22.2 → netket-3.22.3}/netket/_src/observable/infidelity/expect.py +0 -0
  57. {netket-3.22.2 → netket-3.22.3}/netket/_src/observable/infidelity/infidelity_operator.py +0 -0
  58. {netket-3.22.2 → netket-3.22.3}/netket/_src/observable/renyi2/S2_operator.py +0 -0
  59. {netket-3.22.2 → netket-3.22.3}/netket/_src/observable/renyi2/__init__.py +0 -0
  60. {netket-3.22.2 → netket-3.22.3}/netket/_src/observable/renyi2/exact.py +0 -0
  61. {netket-3.22.2 → netket-3.22.3}/netket/_src/observable/renyi2/expect.py +0 -0
  62. {netket-3.22.2 → netket-3.22.3}/netket/_src/observable/variance/__init__.py +0 -0
  63. {netket-3.22.2 → netket-3.22.3}/netket/_src/observable/variance/exact.py +0 -0
  64. {netket-3.22.2 → netket-3.22.3}/netket/_src/observable/variance/expect.py +0 -0
  65. {netket-3.22.2 → netket-3.22.3}/netket/_src/observable/variance/variance_operator.py +0 -0
  66. {netket-3.22.2 → netket-3.22.3}/netket/_src/observable/vscore.py +0 -0
  67. {netket-3.22.2 → netket-3.22.3}/netket/_src/operator/normal_order_utils.py +0 -0
  68. {netket-3.22.2 → netket-3.22.3}/netket/_src/operator/particle_number_conserving_fermionic/conversion.py +0 -0
  69. {netket-3.22.2 → netket-3.22.3}/netket/_src/operator/particle_number_conserving_fermionic/fermihubbard.py +0 -0
  70. {netket-3.22.2 → netket-3.22.3}/netket/_src/operator/particle_number_conserving_fermionic/kernels.py +0 -0
  71. {netket-3.22.2 → netket-3.22.3}/netket/_src/operator/particle_number_conserving_fermionic/operator_data.py +0 -0
  72. {netket-3.22.2 → netket-3.22.3}/netket/_src/operator/particle_number_conserving_fermionic/operators.py +0 -0
  73. {netket-3.22.2 → netket-3.22.3}/netket/_src/operator/permutation/base.py +0 -0
  74. {netket-3.22.2 → netket-3.22.3}/netket/_src/operator/permutation/construct.py +0 -0
  75. {netket-3.22.2 → netket-3.22.3}/netket/_src/operator/permutation/fermion.py +0 -0
  76. {netket-3.22.2 → netket-3.22.3}/netket/_src/operator/permutation/spin.py +0 -0
  77. {netket-3.22.2 → netket-3.22.3}/netket/_src/operator/permutation/trace_utils.py +0 -0
  78. {netket-3.22.2 → netket-3.22.3}/netket/_src/operator/pyscf_api.py +0 -0
  79. {netket-3.22.2 → netket-3.22.3}/netket/_src/operator/pyscf_utils.py +0 -0
  80. {netket-3.22.2 → netket-3.22.3}/netket/_src/operator/spin_flip.py +0 -0
  81. {netket-3.22.2 → netket-3.22.3}/netket/_src/solvers/nan_fallback.py +0 -0
  82. {netket-3.22.2 → netket-3.22.3}/netket/_src/stats/local_estimators.py +0 -0
  83. {netket-3.22.2 → netket-3.22.3}/netket/_src/stats/online_stats/__init__.py +0 -0
  84. {netket-3.22.2 → netket-3.22.3}/netket/_src/stats/online_stats/accumulator.py +0 -0
  85. {netket-3.22.2 → netket-3.22.3}/netket/_src/stats/online_stats/accumulator_batch.py +0 -0
  86. {netket-3.22.2 → netket-3.22.3}/netket/_src/stats/online_stats/kernels.py +0 -0
  87. {netket-3.22.2 → netket-3.22.3}/netket/_src/stats/online_stats/operations.py +0 -0
  88. {netket-3.22.2 → netket-3.22.3}/netket/_src/symmetry/canonical_representation.py +0 -0
  89. {netket-3.22.2 → netket-3.22.3}/netket/_src/symmetry/labeled_representation.py +0 -0
  90. {netket-3.22.2 → netket-3.22.3}/netket/_src/symmetry/labeled_representation_coset_filter.py +0 -0
  91. {netket-3.22.2 → netket-3.22.3}/netket/_src/symmetry/representation.py +0 -0
  92. {netket-3.22.2 → netket-3.22.3}/netket/_src/symmetry/representation_construction.py +0 -0
  93. {netket-3.22.2 → netket-3.22.3}/netket/_src/symmetry/spin_flip_representation.py +0 -0
  94. {netket-3.22.2 → netket-3.22.3}/netket/_src/symmetry/translation_coset_filter.py +0 -0
  95. {netket-3.22.2 → netket-3.22.3}/netket/_src/symmetry/translation_representation.py +0 -0
  96. {netket-3.22.2 → netket-3.22.3}/netket/_src/vqs/check_mc_convergence.py +0 -0
  97. {netket-3.22.2 → netket-3.22.3}/netket/_src/vqs/expect_to_precision.py +0 -0
  98. {netket-3.22.2 → netket-3.22.3}/netket/_src/vqs/fermion_mf/__init__.py +0 -0
  99. {netket-3.22.2 → netket-3.22.3}/netket/_src/vqs/fermion_mf/expectation.py +0 -0
  100. {netket-3.22.2 → netket-3.22.3}/netket/_src/vqs/fermion_mf/qgt.py +0 -0
  101. {netket-3.22.2 → netket-3.22.3}/netket/_src/vqs/fermion_mf/state.py +0 -0
  102. {netket-3.22.2 → netket-3.22.3}/netket/_src/vqs/freeze_vstate.py +0 -0
  103. {netket-3.22.2 → netket-3.22.3}/netket/_src/vqs/plot_mc_convergence.py +0 -0
  104. {netket-3.22.2 → netket-3.22.3}/netket/_src/vqs/transformed_vstate.py +0 -0
  105. {netket-3.22.2 → netket-3.22.3}/netket/callbacks.py +0 -0
  106. {netket-3.22.2 → netket-3.22.3}/netket/driver/__init__.py +0 -0
  107. {netket-3.22.2 → netket-3.22.3}/netket/driver/steady_state.py +0 -0
  108. {netket-3.22.2 → netket-3.22.3}/netket/driver/vmc.py +0 -0
  109. {netket-3.22.2 → netket-3.22.3}/netket/errors.py +0 -0
  110. {netket-3.22.2 → netket-3.22.3}/netket/exact.py +0 -0
  111. {netket-3.22.2 → netket-3.22.3}/netket/experimental/__init__.py +0 -0
  112. {netket-3.22.2 → netket-3.22.3}/netket/experimental/driver/__init__.py +0 -0
  113. {netket-3.22.2 → netket-3.22.3}/netket/experimental/driver/tdvp.py +0 -0
  114. {netket-3.22.2 → netket-3.22.3}/netket/experimental/driver/tdvp_common.py +0 -0
  115. {netket-3.22.2 → netket-3.22.3}/netket/experimental/driver/tdvp_schmitt.py +0 -0
  116. {netket-3.22.2 → netket-3.22.3}/netket/experimental/dynamics/__init__.py +0 -0
  117. {netket-3.22.2 → netket-3.22.3}/netket/experimental/dynamics/_integrator.py +0 -0
  118. {netket-3.22.2 → netket-3.22.3}/netket/experimental/dynamics/_integrator_params.py +0 -0
  119. {netket-3.22.2 → netket-3.22.3}/netket/experimental/dynamics/_integrator_state.py +0 -0
  120. {netket-3.22.2 → netket-3.22.3}/netket/experimental/dynamics/_rk/__init__.py +0 -0
  121. {netket-3.22.2 → netket-3.22.3}/netket/experimental/dynamics/_rk/_solver.py +0 -0
  122. {netket-3.22.2 → netket-3.22.3}/netket/experimental/dynamics/_rk/_tableau.py +0 -0
  123. {netket-3.22.2 → netket-3.22.3}/netket/experimental/dynamics/_solver.py +0 -0
  124. {netket-3.22.2 → netket-3.22.3}/netket/experimental/dynamics/_utils.py +0 -0
  125. {netket-3.22.2 → netket-3.22.3}/netket/experimental/geometry/__init__.py +0 -0
  126. {netket-3.22.2 → netket-3.22.3}/netket/experimental/geometry/cell.py +0 -0
  127. {netket-3.22.2 → netket-3.22.3}/netket/experimental/hilbert/__init__.py +0 -0
  128. {netket-3.22.2 → netket-3.22.3}/netket/experimental/hilbert/continuous_hilbert.py +0 -0
  129. {netket-3.22.2 → netket-3.22.3}/netket/experimental/hilbert/particle.py +0 -0
  130. {netket-3.22.2 → netket-3.22.3}/netket/experimental/hilbert/random/__init__.py +0 -0
  131. {netket-3.22.2 → netket-3.22.3}/netket/experimental/hilbert/random/particle.py +0 -0
  132. {netket-3.22.2 → netket-3.22.3}/netket/experimental/logging/__init__.py +0 -0
  133. {netket-3.22.2 → netket-3.22.3}/netket/experimental/models/__init__.py +0 -0
  134. {netket-3.22.2 → netket-3.22.3}/netket/experimental/models/fast_rnn.py +0 -0
  135. {netket-3.22.2 → netket-3.22.3}/netket/experimental/models/rnn.py +0 -0
  136. {netket-3.22.2 → netket-3.22.3}/netket/experimental/nn/__init__.py +0 -0
  137. {netket-3.22.2 → netket-3.22.3}/netket/experimental/nn/rnn/__init__.py +0 -0
  138. {netket-3.22.2 → netket-3.22.3}/netket/experimental/nn/rnn/cells.py +0 -0
  139. {netket-3.22.2 → netket-3.22.3}/netket/experimental/nn/rnn/layers.py +0 -0
  140. {netket-3.22.2 → netket-3.22.3}/netket/experimental/nn/rnn/layers_fast.py +0 -0
  141. {netket-3.22.2 → netket-3.22.3}/netket/experimental/nn/rnn/ordering.py +0 -0
  142. {netket-3.22.2 → netket-3.22.3}/netket/experimental/observable/__init__.py +0 -0
  143. {netket-3.22.2 → netket-3.22.3}/netket/experimental/operator/__init__.py +0 -0
  144. {netket-3.22.2 → netket-3.22.3}/netket/experimental/operator/pyscf.py +0 -0
  145. {netket-3.22.2 → netket-3.22.3}/netket/experimental/qsr/__init__.py +0 -0
  146. {netket-3.22.2 → netket-3.22.3}/netket/experimental/qsr/dataset.py +0 -0
  147. {netket-3.22.2 → netket-3.22.3}/netket/experimental/qsr/driver.py +0 -0
  148. {netket-3.22.2 → netket-3.22.3}/netket/experimental/qsr/logic_helpers.py +0 -0
  149. {netket-3.22.2 → netket-3.22.3}/netket/experimental/vqs/__init__.py +0 -0
  150. {netket-3.22.2 → netket-3.22.3}/netket/experimental/vqs/io.py +0 -0
  151. {netket-3.22.2 → netket-3.22.3}/netket/graph/__init__.py +0 -0
  152. {netket-3.22.2 → netket-3.22.3}/netket/graph/_lattice_draw.py +0 -0
  153. {netket-3.22.2 → netket-3.22.3}/netket/graph/_lattice_edge_logic.py +0 -0
  154. {netket-3.22.2 → netket-3.22.3}/netket/graph/abstract_graph.py +0 -0
  155. {netket-3.22.2 → netket-3.22.3}/netket/graph/common_lattices.py +0 -0
  156. {netket-3.22.2 → netket-3.22.3}/netket/graph/graph.py +0 -0
  157. {netket-3.22.2 → netket-3.22.3}/netket/graph/lattice.py +0 -0
  158. {netket-3.22.2 → netket-3.22.3}/netket/graph/space_group.py +0 -0
  159. {netket-3.22.2 → netket-3.22.3}/netket/hilbert/__init__.py +0 -0
  160. {netket-3.22.2 → netket-3.22.3}/netket/hilbert/abstract_hilbert.py +0 -0
  161. {netket-3.22.2 → netket-3.22.3}/netket/hilbert/constraint/__init__.py +0 -0
  162. {netket-3.22.2 → netket-3.22.3}/netket/hilbert/constraint/base.py +0 -0
  163. {netket-3.22.2 → netket-3.22.3}/netket/hilbert/constraint/multiple.py +0 -0
  164. {netket-3.22.2 → netket-3.22.3}/netket/hilbert/constraint/sum.py +0 -0
  165. {netket-3.22.2 → netket-3.22.3}/netket/hilbert/constraint/sum_partition.py +0 -0
  166. {netket-3.22.2 → netket-3.22.3}/netket/hilbert/discrete_hilbert.py +0 -0
  167. {netket-3.22.2 → netket-3.22.3}/netket/hilbert/doubled_hilbert.py +0 -0
  168. {netket-3.22.2 → netket-3.22.3}/netket/hilbert/fock.py +0 -0
  169. {netket-3.22.2 → netket-3.22.3}/netket/hilbert/homogeneous.py +0 -0
  170. {netket-3.22.2 → netket-3.22.3}/netket/hilbert/index/__init__.py +0 -0
  171. {netket-3.22.2 → netket-3.22.3}/netket/hilbert/index/base.py +0 -0
  172. {netket-3.22.2 → netket-3.22.3}/netket/hilbert/index/constrained_generic.py +0 -0
  173. {netket-3.22.2 → netket-3.22.3}/netket/hilbert/index/constrained_sum.py +0 -0
  174. {netket-3.22.2 → netket-3.22.3}/netket/hilbert/index/constrained_sum_partitions.py +0 -0
  175. {netket-3.22.2 → netket-3.22.3}/netket/hilbert/index/unconstrained.py +0 -0
  176. {netket-3.22.2 → netket-3.22.3}/netket/hilbert/index/uniform_tensor.py +0 -0
  177. {netket-3.22.2 → netket-3.22.3}/netket/hilbert/qubit.py +0 -0
  178. {netket-3.22.2 → netket-3.22.3}/netket/hilbert/random/__init__.py +0 -0
  179. {netket-3.22.2 → netket-3.22.3}/netket/hilbert/random/base.py +0 -0
  180. {netket-3.22.2 → netket-3.22.3}/netket/hilbert/random/doubled.py +0 -0
  181. {netket-3.22.2 → netket-3.22.3}/netket/hilbert/random/fock.py +0 -0
  182. {netket-3.22.2 → netket-3.22.3}/netket/hilbert/random/homogeneous.py +0 -0
  183. {netket-3.22.2 → netket-3.22.3}/netket/hilbert/random/qubit.py +0 -0
  184. {netket-3.22.2 → netket-3.22.3}/netket/hilbert/random/tensor_hilbert.py +0 -0
  185. {netket-3.22.2 → netket-3.22.3}/netket/hilbert/spin.py +0 -0
  186. {netket-3.22.2 → netket-3.22.3}/netket/hilbert/spin_orbital_fermions.py +0 -0
  187. {netket-3.22.2 → netket-3.22.3}/netket/hilbert/tensor_hilbert.py +0 -0
  188. {netket-3.22.2 → netket-3.22.3}/netket/hilbert/tensor_hilbert_discrete.py +0 -0
  189. {netket-3.22.2 → netket-3.22.3}/netket/jax/__init__.py +0 -0
  190. {netket-3.22.2 → netket-3.22.3}/netket/jax/_chunk_utils.py +0 -0
  191. {netket-3.22.2 → netket-3.22.3}/netket/jax/_compat.py +0 -0
  192. {netket-3.22.2 → netket-3.22.3}/netket/jax/_expect.py +0 -0
  193. {netket-3.22.2 → netket-3.22.3}/netket/jax/_grad.py +0 -0
  194. {netket-3.22.2 → netket-3.22.3}/netket/jax/_jacobian/__init__.py +0 -0
  195. {netket-3.22.2 → netket-3.22.3}/netket/jax/_jacobian/default_mode.py +0 -0
  196. {netket-3.22.2 → netket-3.22.3}/netket/jax/_jacobian/jacobian_dense.py +0 -0
  197. {netket-3.22.2 → netket-3.22.3}/netket/jax/_jacobian/jacobian_pytree.py +0 -0
  198. {netket-3.22.2 → netket-3.22.3}/netket/jax/_jacobian/logic.py +0 -0
  199. {netket-3.22.2 → netket-3.22.3}/netket/jax/_math.py +0 -0
  200. {netket-3.22.2 → netket-3.22.3}/netket/jax/_ntk/__init__.py +0 -0
  201. {netket-3.22.2 → netket-3.22.3}/netket/jax/_ntk/logic.py +0 -0
  202. {netket-3.22.2 → netket-3.22.3}/netket/jax/_ntk/utils.py +0 -0
  203. {netket-3.22.2 → netket-3.22.3}/netket/jax/_scanmap.py +0 -0
  204. {netket-3.22.2 → netket-3.22.3}/netket/jax/_sort.py +0 -0
  205. {netket-3.22.2 → netket-3.22.3}/netket/jax/_sparse.py +0 -0
  206. {netket-3.22.2 → netket-3.22.3}/netket/jax/_utils_dtype.py +0 -0
  207. {netket-3.22.2 → netket-3.22.3}/netket/jax/_utils_random.py +0 -0
  208. {netket-3.22.2 → netket-3.22.3}/netket/jax/_utils_tree.py +0 -0
  209. {netket-3.22.2 → netket-3.22.3}/netket/jax/_vjp.py +0 -0
  210. {netket-3.22.2 → netket-3.22.3}/netket/jax/_vjp_chunked.py +0 -0
  211. {netket-3.22.2 → netket-3.22.3}/netket/jax/_vmap_chunked.py +0 -0
  212. {netket-3.22.2 → netket-3.22.3}/netket/jax/lax.py +0 -0
  213. {netket-3.22.2 → netket-3.22.3}/netket/jax/sharding/__init__.py +0 -0
  214. {netket-3.22.2 → netket-3.22.3}/netket/jax/sharding/debug.py +0 -0
  215. {netket-3.22.2 → netket-3.22.3}/netket/jax/sharding/fixed_sharding_decorator.py +0 -0
  216. {netket-3.22.2 → netket-3.22.3}/netket/jax/sharding/fixed_sharding_utils.py +0 -0
  217. {netket-3.22.2 → netket-3.22.3}/netket/jax/sharding/flexible_sharding.py +0 -0
  218. {netket-3.22.2 → netket-3.22.3}/netket/logging.py +0 -0
  219. {netket-3.22.2 → netket-3.22.3}/netket/models/README.md +0 -0
  220. {netket-3.22.2 → netket-3.22.3}/netket/models/__init__.py +0 -0
  221. {netket-3.22.2 → netket-3.22.3}/netket/models/autoreg.py +0 -0
  222. {netket-3.22.2 → netket-3.22.3}/netket/models/deepset.py +0 -0
  223. {netket-3.22.2 → netket-3.22.3}/netket/models/equivariant.py +0 -0
  224. {netket-3.22.2 → netket-3.22.3}/netket/models/fast_autoreg.py +0 -0
  225. {netket-3.22.2 → netket-3.22.3}/netket/models/full_space.py +0 -0
  226. {netket-3.22.2 → netket-3.22.3}/netket/models/gaussian.py +0 -0
  227. {netket-3.22.2 → netket-3.22.3}/netket/models/jastrow.py +0 -0
  228. {netket-3.22.2 → netket-3.22.3}/netket/models/mlp.py +0 -0
  229. {netket-3.22.2 → netket-3.22.3}/netket/models/ndm.py +0 -0
  230. {netket-3.22.2 → netket-3.22.3}/netket/models/rbm.py +0 -0
  231. {netket-3.22.2 → netket-3.22.3}/netket/models/slater.py +0 -0
  232. {netket-3.22.2 → netket-3.22.3}/netket/models/tensor_networks/__init__.py +0 -0
  233. {netket-3.22.2 → netket-3.22.3}/netket/models/tensor_networks/mpdo.py +0 -0
  234. {netket-3.22.2 → netket-3.22.3}/netket/models/tensor_networks/mps.py +0 -0
  235. {netket-3.22.2 → netket-3.22.3}/netket/models/utils.py +0 -0
  236. {netket-3.22.2 → netket-3.22.3}/netket/nn/__init__.py +0 -0
  237. {netket-3.22.2 → netket-3.22.3}/netket/nn/activation.py +0 -0
  238. {netket-3.22.2 → netket-3.22.3}/netket/nn/apply_operator.py +0 -0
  239. {netket-3.22.2 → netket-3.22.3}/netket/nn/blocks/__init__.py +0 -0
  240. {netket-3.22.2 → netket-3.22.3}/netket/nn/blocks/deepset.py +0 -0
  241. {netket-3.22.2 → netket-3.22.3}/netket/nn/blocks/mlp.py +0 -0
  242. {netket-3.22.2 → netket-3.22.3}/netket/nn/blocks/symmetry_sum.py +0 -0
  243. {netket-3.22.2 → netket-3.22.3}/netket/nn/fast_masked_linear.py +0 -0
  244. {netket-3.22.2 → netket-3.22.3}/netket/nn/masked_linear.py +0 -0
  245. {netket-3.22.2 → netket-3.22.3}/netket/nn/symmetric_linear.py +0 -0
  246. {netket-3.22.2 → netket-3.22.3}/netket/nn/utils.py +0 -0
  247. {netket-3.22.2 → netket-3.22.3}/netket/observable.py +0 -0
  248. {netket-3.22.2 → netket-3.22.3}/netket/operator/__init__.py +0 -0
  249. {netket-3.22.2 → netket-3.22.3}/netket/operator/_abstract_observable.py +0 -0
  250. {netket-3.22.2 → netket-3.22.3}/netket/operator/_abstract_operator.py +0 -0
  251. {netket-3.22.2 → netket-3.22.3}/netket/operator/_abstract_super_operator.py +0 -0
  252. {netket-3.22.2 → netket-3.22.3}/netket/operator/_bose_hubbard/__init__.py +0 -0
  253. {netket-3.22.2 → netket-3.22.3}/netket/operator/_bose_hubbard/base.py +0 -0
  254. {netket-3.22.2 → netket-3.22.3}/netket/operator/_bose_hubbard/jax.py +0 -0
  255. {netket-3.22.2 → netket-3.22.3}/netket/operator/_bose_hubbard/numba.py +0 -0
  256. {netket-3.22.2 → netket-3.22.3}/netket/operator/_continuous_operator.py +0 -0
  257. {netket-3.22.2 → netket-3.22.3}/netket/operator/_discrete_operator.py +0 -0
  258. {netket-3.22.2 → netket-3.22.3}/netket/operator/_discrete_operator_jax.py +0 -0
  259. {netket-3.22.2 → netket-3.22.3}/netket/operator/_embed/__init__.py +0 -0
  260. {netket-3.22.2 → netket-3.22.3}/netket/operator/_embed/base.py +0 -0
  261. {netket-3.22.2 → netket-3.22.3}/netket/operator/_embed/discrete_jax_operator.py +0 -0
  262. {netket-3.22.2 → netket-3.22.3}/netket/operator/_embed/discrete_operator.py +0 -0
  263. {netket-3.22.2 → netket-3.22.3}/netket/operator/_embed/operator.py +0 -0
  264. {netket-3.22.2 → netket-3.22.3}/netket/operator/_fermion2nd/__init__.py +0 -0
  265. {netket-3.22.2 → netket-3.22.3}/netket/operator/_fermion2nd/base.py +0 -0
  266. {netket-3.22.2 → netket-3.22.3}/netket/operator/_fermion2nd/jax.py +0 -0
  267. {netket-3.22.2 → netket-3.22.3}/netket/operator/_fermion2nd/numba.py +0 -0
  268. {netket-3.22.2 → netket-3.22.3}/netket/operator/_fermion2nd/utils.py +0 -0
  269. {netket-3.22.2 → netket-3.22.3}/netket/operator/_graph_operator.py +0 -0
  270. {netket-3.22.2 → netket-3.22.3}/netket/operator/_hamiltonian.py +0 -0
  271. {netket-3.22.2 → netket-3.22.3}/netket/operator/_heisenberg.py +0 -0
  272. {netket-3.22.2 → netket-3.22.3}/netket/operator/_ising/__init__.py +0 -0
  273. {netket-3.22.2 → netket-3.22.3}/netket/operator/_ising/base.py +0 -0
  274. {netket-3.22.2 → netket-3.22.3}/netket/operator/_ising/jax.py +0 -0
  275. {netket-3.22.2 → netket-3.22.3}/netket/operator/_ising/numba.py +0 -0
  276. {netket-3.22.2 → netket-3.22.3}/netket/operator/_kinetic.py +0 -0
  277. {netket-3.22.2 → netket-3.22.3}/netket/operator/_lazy.py +0 -0
  278. {netket-3.22.2 → netket-3.22.3}/netket/operator/_local_liouvillian.py +0 -0
  279. {netket-3.22.2 → netket-3.22.3}/netket/operator/_local_operator/__init__.py +0 -0
  280. {netket-3.22.2 → netket-3.22.3}/netket/operator/_local_operator/base.py +0 -0
  281. {netket-3.22.2 → netket-3.22.3}/netket/operator/_local_operator/compile_helpers.py +0 -0
  282. {netket-3.22.2 → netket-3.22.3}/netket/operator/_local_operator/convert.py +0 -0
  283. {netket-3.22.2 → netket-3.22.3}/netket/operator/_local_operator/helpers.py +0 -0
  284. {netket-3.22.2 → netket-3.22.3}/netket/operator/_local_operator/jax.py +0 -0
  285. {netket-3.22.2 → netket-3.22.3}/netket/operator/_local_operator/numba.py +0 -0
  286. {netket-3.22.2 → netket-3.22.3}/netket/operator/_pauli_strings/__init__.py +0 -0
  287. {netket-3.22.2 → netket-3.22.3}/netket/operator/_pauli_strings/base.py +0 -0
  288. {netket-3.22.2 → netket-3.22.3}/netket/operator/_pauli_strings/jax.py +0 -0
  289. {netket-3.22.2 → netket-3.22.3}/netket/operator/_pauli_strings/numba.py +0 -0
  290. {netket-3.22.2 → netket-3.22.3}/netket/operator/_potential.py +0 -0
  291. {netket-3.22.2 → netket-3.22.3}/netket/operator/_prod/__init__.py +0 -0
  292. {netket-3.22.2 → netket-3.22.3}/netket/operator/_prod/base.py +0 -0
  293. {netket-3.22.2 → netket-3.22.3}/netket/operator/_prod/discrete_jax_operator.py +0 -0
  294. {netket-3.22.2 → netket-3.22.3}/netket/operator/_prod/discrete_operator.py +0 -0
  295. {netket-3.22.2 → netket-3.22.3}/netket/operator/_prod/operator.py +0 -0
  296. {netket-3.22.2 → netket-3.22.3}/netket/operator/_sum/__init__.py +0 -0
  297. {netket-3.22.2 → netket-3.22.3}/netket/operator/_sum/base.py +0 -0
  298. {netket-3.22.2 → netket-3.22.3}/netket/operator/_sum/continuous.py +0 -0
  299. {netket-3.22.2 → netket-3.22.3}/netket/operator/_sum/discrete_jax_operator.py +0 -0
  300. {netket-3.22.2 → netket-3.22.3}/netket/operator/_sum/discrete_operator.py +0 -0
  301. {netket-3.22.2 → netket-3.22.3}/netket/operator/_sum/operator.py +0 -0
  302. {netket-3.22.2 → netket-3.22.3}/netket/operator/boson.py +0 -0
  303. {netket-3.22.2 → netket-3.22.3}/netket/operator/fermion.py +0 -0
  304. {netket-3.22.2 → netket-3.22.3}/netket/operator/permutation.py +0 -0
  305. {netket-3.22.2 → netket-3.22.3}/netket/operator/spin.py +0 -0
  306. {netket-3.22.2 → netket-3.22.3}/netket/optimizer/__init__.py +0 -0
  307. {netket-3.22.2 → netket-3.22.3}/netket/optimizer/linear_operator.py +0 -0
  308. {netket-3.22.2 → netket-3.22.3}/netket/optimizer/preconditioner.py +0 -0
  309. {netket-3.22.2 → netket-3.22.3}/netket/optimizer/qgt/__init__.py +0 -0
  310. {netket-3.22.2 → netket-3.22.3}/netket/optimizer/qgt/common.py +0 -0
  311. {netket-3.22.2 → netket-3.22.3}/netket/optimizer/qgt/default.py +0 -0
  312. {netket-3.22.2 → netket-3.22.3}/netket/optimizer/qgt/qgt_jacobian.py +0 -0
  313. {netket-3.22.2 → netket-3.22.3}/netket/optimizer/qgt/qgt_jacobian_common.py +0 -0
  314. {netket-3.22.2 → netket-3.22.3}/netket/optimizer/qgt/qgt_jacobian_dense.py +0 -0
  315. {netket-3.22.2 → netket-3.22.3}/netket/optimizer/qgt/qgt_jacobian_pytree.py +0 -0
  316. {netket-3.22.2 → netket-3.22.3}/netket/optimizer/qgt/qgt_onthefly.py +0 -0
  317. {netket-3.22.2 → netket-3.22.3}/netket/optimizer/qgt/qgt_onthefly_logic.py +0 -0
  318. {netket-3.22.2 → netket-3.22.3}/netket/optimizer/solver/__init__.py +0 -0
  319. {netket-3.22.2 → netket-3.22.3}/netket/optimizer/solver/solvers.py +0 -0
  320. {netket-3.22.2 → netket-3.22.3}/netket/optimizer/sr.py +0 -0
  321. {netket-3.22.2 → netket-3.22.3}/netket/sampler/__init__.py +0 -0
  322. {netket-3.22.2 → netket-3.22.3}/netket/sampler/autoreg.py +0 -0
  323. {netket-3.22.2 → netket-3.22.3}/netket/sampler/base.py +0 -0
  324. {netket-3.22.2 → netket-3.22.3}/netket/sampler/exact.py +0 -0
  325. {netket-3.22.2 → netket-3.22.3}/netket/sampler/metropolis.py +0 -0
  326. {netket-3.22.2 → netket-3.22.3}/netket/sampler/metropolis_numpy.py +0 -0
  327. {netket-3.22.2 → netket-3.22.3}/netket/sampler/parallel_tempering.py +0 -0
  328. {netket-3.22.2 → netket-3.22.3}/netket/sampler/rules/__init__.py +0 -0
  329. {netket-3.22.2 → netket-3.22.3}/netket/sampler/rules/base.py +0 -0
  330. {netket-3.22.2 → netket-3.22.3}/netket/sampler/rules/continuous_gaussian.py +0 -0
  331. {netket-3.22.2 → netket-3.22.3}/netket/sampler/rules/custom_numpy.py +0 -0
  332. {netket-3.22.2 → netket-3.22.3}/netket/sampler/rules/exchange.py +0 -0
  333. {netket-3.22.2 → netket-3.22.3}/netket/sampler/rules/fermion_2nd.py +0 -0
  334. {netket-3.22.2 → netket-3.22.3}/netket/sampler/rules/fixed.py +0 -0
  335. {netket-3.22.2 → netket-3.22.3}/netket/sampler/rules/global_flip_rule.py +0 -0
  336. {netket-3.22.2 → netket-3.22.3}/netket/sampler/rules/hamiltonian.py +0 -0
  337. {netket-3.22.2 → netket-3.22.3}/netket/sampler/rules/hamiltonian_numpy.py +0 -0
  338. {netket-3.22.2 → netket-3.22.3}/netket/sampler/rules/langevin.py +0 -0
  339. {netket-3.22.2 → netket-3.22.3}/netket/sampler/rules/local.py +0 -0
  340. {netket-3.22.2 → netket-3.22.3}/netket/sampler/rules/local_numpy.py +0 -0
  341. {netket-3.22.2 → netket-3.22.3}/netket/sampler/rules/multiple.py +0 -0
  342. {netket-3.22.2 → netket-3.22.3}/netket/sampler/rules/tensor.py +0 -0
  343. {netket-3.22.2 → netket-3.22.3}/netket/stats/__init__.py +0 -0
  344. {netket-3.22.2 → netket-3.22.3}/netket/stats/_autocorr.py +0 -0
  345. {netket-3.22.2 → netket-3.22.3}/netket/stats/mc_stats.py +0 -0
  346. {netket-3.22.2 → netket-3.22.3}/netket/stats/mc_stats_old.py +0 -0
  347. {netket-3.22.2 → netket-3.22.3}/netket/stats/mpi_stats.py +0 -0
  348. {netket-3.22.2 → netket-3.22.3}/netket/symmetry/__init__.py +0 -0
  349. {netket-3.22.2 → netket-3.22.3}/netket/symmetry/group/__init__.py +0 -0
  350. {netket-3.22.2 → netket-3.22.3}/netket/tools/__init__.py +0 -0
  351. {netket-3.22.2 → netket-3.22.3}/netket/tools/_common.py +0 -0
  352. {netket-3.22.2 → netket-3.22.3}/netket/tools/_cpu_info.py +0 -0
  353. {netket-3.22.2 → netket-3.22.3}/netket/tools/check_mpi.py +0 -0
  354. {netket-3.22.2 → netket-3.22.3}/netket/tools/djaxrun.py +0 -0
  355. {netket-3.22.2 → netket-3.22.3}/netket/tools/info.py +0 -0
  356. {netket-3.22.2 → netket-3.22.3}/netket/utils/__init__.py +0 -0
  357. {netket-3.22.2 → netket-3.22.3}/netket/utils/_dependencies_check.py +0 -0
  358. {netket-3.22.2 → netket-3.22.3}/netket/utils/_serialization.py +0 -0
  359. {netket-3.22.2 → netket-3.22.3}/netket/utils/api_utils.py +0 -0
  360. {netket-3.22.2 → netket-3.22.3}/netket/utils/array.py +0 -0
  361. {netket-3.22.2 → netket-3.22.3}/netket/utils/citations/__init__.py +0 -0
  362. {netket-3.22.2 → netket-3.22.3}/netket/utils/citations/cli.py +0 -0
  363. {netket-3.22.2 → netket-3.22.3}/netket/utils/citations/core.py +0 -0
  364. {netket-3.22.2 → netket-3.22.3}/netket/utils/citations/docs.py +0 -0
  365. {netket-3.22.2 → netket-3.22.3}/netket/utils/citations/internal_citations.bib +0 -0
  366. {netket-3.22.2 → netket-3.22.3}/netket/utils/config_flags.py +0 -0
  367. {netket-3.22.2 → netket-3.22.3}/netket/utils/deprecation.py +0 -0
  368. {netket-3.22.2 → netket-3.22.3}/netket/utils/dispatch.py +0 -0
  369. {netket-3.22.2 → netket-3.22.3}/netket/utils/display/__init__.py +0 -0
  370. {netket-3.22.2 → netket-3.22.3}/netket/utils/display/repr.py +0 -0
  371. {netket-3.22.2 → netket-3.22.3}/netket/utils/float.py +0 -0
  372. {netket-3.22.2 → netket-3.22.3}/netket/utils/group/__init__.py +0 -0
  373. {netket-3.22.2 → netket-3.22.3}/netket/utils/group/_group.py +0 -0
  374. {netket-3.22.2 → netket-3.22.3}/netket/utils/group/_permutation_group.py +0 -0
  375. {netket-3.22.2 → netket-3.22.3}/netket/utils/group/_point_group.py +0 -0
  376. {netket-3.22.2 → netket-3.22.3}/netket/utils/group/_semigroup.py +0 -0
  377. {netket-3.22.2 → netket-3.22.3}/netket/utils/group/axial.py +0 -0
  378. {netket-3.22.2 → netket-3.22.3}/netket/utils/group/cubic.py +0 -0
  379. {netket-3.22.2 → netket-3.22.3}/netket/utils/group/icosa.py +0 -0
  380. {netket-3.22.2 → netket-3.22.3}/netket/utils/group/planar.py +0 -0
  381. {netket-3.22.2 → netket-3.22.3}/netket/utils/history/__init__.py +0 -0
  382. {netket-3.22.2 → netket-3.22.3}/netket/utils/history/accum.py +0 -0
  383. {netket-3.22.2 → netket-3.22.3}/netket/utils/history/history.py +0 -0
  384. {netket-3.22.2 → netket-3.22.3}/netket/utils/history/history_dict.py +0 -0
  385. {netket-3.22.2 → netket-3.22.3}/netket/utils/holomorphic.py +0 -0
  386. {netket-3.22.2 → netket-3.22.3}/netket/utils/iterators.py +0 -0
  387. {netket-3.22.2 → netket-3.22.3}/netket/utils/jax.py +0 -0
  388. {netket-3.22.2 → netket-3.22.3}/netket/utils/model_frameworks/__init__.py +0 -0
  389. {netket-3.22.2 → netket-3.22.3}/netket/utils/model_frameworks/flax.py +0 -0
  390. {netket-3.22.2 → netket-3.22.3}/netket/utils/model_frameworks/flax_bound.py +0 -0
  391. {netket-3.22.2 → netket-3.22.3}/netket/utils/model_frameworks/haiku.py +0 -0
  392. {netket-3.22.2 → netket-3.22.3}/netket/utils/model_frameworks/jax.py +0 -0
  393. {netket-3.22.2 → netket-3.22.3}/netket/utils/model_frameworks/nnx_wrapped.py +0 -0
  394. {netket-3.22.2 → netket-3.22.3}/netket/utils/moduletools.py +0 -0
  395. {netket-3.22.2 → netket-3.22.3}/netket/utils/mpi/__init__.py +0 -0
  396. {netket-3.22.2 → netket-3.22.3}/netket/utils/mpi/mpi.py +0 -0
  397. {netket-3.22.2 → netket-3.22.3}/netket/utils/mpi/primitives.py +0 -0
  398. {netket-3.22.2 → netket-3.22.3}/netket/utils/numbers.py +0 -0
  399. {netket-3.22.2 → netket-3.22.3}/netket/utils/optional_deps.py +0 -0
  400. {netket-3.22.2 → netket-3.22.3}/netket/utils/partial.py +0 -0
  401. {netket-3.22.2 → netket-3.22.3}/netket/utils/seed.py +0 -0
  402. {netket-3.22.2 → netket-3.22.3}/netket/utils/static_number.py +0 -0
  403. {netket-3.22.2 → netket-3.22.3}/netket/utils/static_range.py +0 -0
  404. {netket-3.22.2 → netket-3.22.3}/netket/utils/struct/__init__.py +0 -0
  405. {netket-3.22.2 → netket-3.22.3}/netket/utils/struct/dataclass.py +0 -0
  406. {netket-3.22.2 → netket-3.22.3}/netket/utils/struct/fields.py +0 -0
  407. {netket-3.22.2 → netket-3.22.3}/netket/utils/struct/pytree.py +0 -0
  408. {netket-3.22.2 → netket-3.22.3}/netket/utils/struct/pytree_serialization_sharding.py +0 -0
  409. {netket-3.22.2 → netket-3.22.3}/netket/utils/struct/utils.py +0 -0
  410. {netket-3.22.2 → netket-3.22.3}/netket/utils/summation.py +0 -0
  411. {netket-3.22.2 → netket-3.22.3}/netket/utils/timing.py +0 -0
  412. {netket-3.22.2 → netket-3.22.3}/netket/utils/tree_walk.py +0 -0
  413. {netket-3.22.2 → netket-3.22.3}/netket/utils/types.py +0 -0
  414. {netket-3.22.2 → netket-3.22.3}/netket/utils/version_check.py +0 -0
  415. {netket-3.22.2 → netket-3.22.3}/netket/vqs/__init__.py +0 -0
  416. {netket-3.22.2 → netket-3.22.3}/netket/vqs/base.py +0 -0
  417. {netket-3.22.2 → netket-3.22.3}/netket/vqs/full_summ/__init__.py +0 -0
  418. {netket-3.22.2 → netket-3.22.3}/netket/vqs/full_summ/expect.py +0 -0
  419. {netket-3.22.2 → netket-3.22.3}/netket/vqs/full_summ/state.py +0 -0
  420. {netket-3.22.2 → netket-3.22.3}/netket/vqs/mc/__init__.py +0 -0
  421. {netket-3.22.2 → netket-3.22.3}/netket/vqs/mc/common.py +0 -0
  422. {netket-3.22.2 → netket-3.22.3}/netket/vqs/mc/kernels.py +0 -0
  423. {netket-3.22.2 → netket-3.22.3}/netket/vqs/mc/mc_mixed_state/__init__.py +0 -0
  424. {netket-3.22.2 → netket-3.22.3}/netket/vqs/mc/mc_mixed_state/expect.py +0 -0
  425. {netket-3.22.2 → netket-3.22.3}/netket/vqs/mc/mc_mixed_state/expect_chunked.py +0 -0
  426. {netket-3.22.2 → netket-3.22.3}/netket/vqs/mc/mc_mixed_state/expect_grad.py +0 -0
  427. {netket-3.22.2 → netket-3.22.3}/netket/vqs/mc/mc_mixed_state/state.py +0 -0
  428. {netket-3.22.2 → netket-3.22.3}/netket/vqs/mc/mc_state/__init__.py +0 -0
  429. {netket-3.22.2 → netket-3.22.3}/netket/vqs/mc/mc_state/expect.py +0 -0
  430. {netket-3.22.2 → netket-3.22.3}/netket/vqs/mc/mc_state/expect_chunked.py +0 -0
  431. {netket-3.22.2 → netket-3.22.3}/netket/vqs/mc/mc_state/expect_forces.py +0 -0
  432. {netket-3.22.2 → netket-3.22.3}/netket/vqs/mc/mc_state/expect_forces_chunked.py +0 -0
  433. {netket-3.22.2 → netket-3.22.3}/netket/vqs/mc/mc_state/expect_grad.py +0 -0
  434. {netket-3.22.2 → netket-3.22.3}/netket/vqs/mc/mc_state/expect_grad_chunked.py +0 -0
  435. {netket-3.22.2 → netket-3.22.3}/netket/vqs/mc/mc_state/local_estimators.py +0 -0
  436. {netket-3.22.2 → netket-3.22.3}/netket/vqs/mc/mc_state/state.py +0 -0
  437. {netket-3.22.2 → netket-3.22.3}/pyproject.toml +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: NetKet
3
- Version: 3.22.2
3
+ Version: 3.22.3
4
4
  Summary: Netket : Machine Learning toolbox for many-body quantum systems.
5
5
  Project-URL: homepage, https://www.netket.org
6
6
  Project-URL: documentation, https://netket.readthedocs.io/en/latest/#
@@ -18,7 +18,7 @@ version_tuple: tuple[int | str, ...]
18
18
  commit_id: str | None
19
19
  __commit_id__: str | None
20
20
 
21
- __version__ = version = '3.22.2'
22
- __version_tuple__ = version_tuple = (3, 22, 2)
21
+ __version__ = version = '3.22.3'
22
+ __version_tuple__ = version_tuple = (3, 22, 3)
23
23
 
24
24
  __commit_id__ = commit_id = None
@@ -18,6 +18,8 @@ import random
18
18
  import sys
19
19
 
20
20
  TIPS = [
21
+ # News
22
+ "NetKet 3.22 has plenty of new stuff! Check it out at https://www.netket.org/posts/07-netket322/",
21
23
  # Drivers
22
24
  "Prefer the new nk.driver.VMC_SR over VMC which supports minSR and SPRING.",
23
25
  "Use driver.run(..., timeit=True) to know where your dominant cost is.",
@@ -31,6 +31,23 @@ class ModuleFramework(abc.ABC):
31
31
  """
32
32
  return False
33
33
 
34
+ @staticmethod
35
+ def wrapped_model_class(static_model: Any) -> type:
36
+ """
37
+ Returns the concrete user-defined model class, given the (possibly wrapped)
38
+ static module stored in :attr:`MCState._model`.
39
+
40
+ For flax-like frameworks the static module *is* the model, so this returns
41
+ its type. Frameworks that wrap the model into a static container (such as
42
+ ``flax.nnx`` or ``equinox``) override this to peek inside the wrapper and
43
+ return the original class.
44
+
45
+ This lets serialization code recover the original model class without
46
+ unwrapping (which would require the variables), e.g. to dispatch on whether
47
+ a custom serializer is registered for that class.
48
+ """
49
+ return type(static_model)
50
+
34
51
  @staticmethod
35
52
  @abc.abstractmethod
36
53
  def is_loaded() -> bool:
@@ -56,7 +56,14 @@ class EquinoxWrapper:
56
56
  module = self.recompose(variables)
57
57
  fun = getattr(module, method)
58
58
 
59
- return fun(*args, key=rngs, **kwargs)
59
+ # Only forward a `key` to the model if one was actually provided.
60
+ # Passing `key=None` unconditionally breaks Equinox modules whose
61
+ # `__call__` does not declare a `key` argument (e.g. simple models
62
+ # that do not use randomness).
63
+ if rngs is not None:
64
+ kwargs["key"] = rngs
65
+
66
+ return fun(*args, **kwargs)
60
67
 
61
68
  def recompose(self, variables):
62
69
  import equinox as eqx
@@ -94,6 +101,11 @@ class EquinoxFramework(ModuleFramework):
94
101
  """
95
102
  return True
96
103
 
104
+ @staticmethod
105
+ def wrapped_model_class(static_model: "EquinoxWrapper") -> type:
106
+ # The static partition is an instance of the original equinox.Module class.
107
+ return type(static_model.static_module)
108
+
97
109
  @staticmethod
98
110
  def is_loaded() -> bool:
99
111
  return "equinox" in sys.modules
@@ -107,6 +107,11 @@ class NNXFramework(ModuleFramework):
107
107
  """
108
108
  return True
109
109
 
110
+ @staticmethod
111
+ def wrapped_model_class(static_model: "NNXWrapper") -> type:
112
+ # The original nnx.Module class is recorded in the graphdef.
113
+ return _get_graphdef_type(static_model.graphdef)
114
+
110
115
  @staticmethod
111
116
  def is_loaded() -> bool:
112
117
  # this should be not necessary, as netket requires and loads
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes