WIP: NetKet v3.0
Created by: gcarleo
This is a WIP pull request for version 3.0
Major goals for this release:
-
Remove all C++ code -
Improve documentation and tutorials -
Define and efficiently use models and samplers in JAX -
Define and use models in PyTorch -
GPU support
Breaking changes:
-
netket.optimizerobjects (includingSR) are now constructed passing also an explicitnetket.machine.AbstractMachineobject for example
machine=nk.machine.Rbm(alpha=1,hilbert=hi)
opt=nk.optimizer.Sgd(machine,learning_rate=0.01)
-
log_valandder_logmethods in machines derived fromnetket.machine.AbstractMachinenow accept only batched inputs (matrices) -
netket.utils.seedis now innetket.random.seedtogether with all other random methods
Main Remaining Tasks :
-
Rewrite graph.Latticein python #405 -
Make machine.Torchcompatible with the latest Jacobian Vector function #363 -
Add missing samplers in sampler.jax.*#416 (closed) -
Make dispatching over optimal sampling/optimizer backends automatic #413 (closed) -
Write tutorials on the use of backends and GPU #410 (closed) -
MPS wave-functions in JAX #390 (closed)