def test3_wf_opt(self): self.solver.sampler = self.sampler self.solver.configure(track=['local_energy', 'parameters'], loss='energy', grad='auto') obs = self.solver.run(5) if __PLOT__: plot_energy(obs.local_energy, e0=-1.1645, show_variance=True)
# scheduler scheduler = optim.lr_scheduler.StepLR(opt, step_size=100, gamma=0.90) # QMC solver solver = SolverSlaterJastrowHorovod(wf=wf, sampler=sampler, optimizer=opt, scheduler=scheduler, rank=hvd.rank()) # configure the solver solver.configure(track=['local_energy'], freeze=['ao', 'mo'], loss='energy', grad='auto', ortho_mo=False, clip_loss=False, resampling={ 'mode': 'update', 'resample_every': 1, 'nstep_update': 50 }) # optimize the wave function obs = solver.run(250) if hvd.rank() == 0: plot_energy(obs.local_energy, e0=-1.1645, show_variance=True) plot_data(solver.observable, obsname='jastrow.weight')