Skip to content

Doublon-only Sampling via NExUpdatePath=6 #85

Description

@tmisawa

Summary

This change adds a new update path, NExUpdatePath=6, for real-space VMC sampling in a doublon-only Hilbert sector.

  • Allowed on each site: (n_up, n_dn) = (1,1) (doublon) or (0,0) (empty)
  • Local MC move: pair hopping only (move up/down together from one site to another)

For the actual implementation, see the following branch:

https://github.com/issp-center-dev/mVMC/tree/only_doublon

Motivation

Some studies require variational calculations restricted to a doublon sector. This adds the doublon-side counterpart to existing spin-oriented update modes.

Usage

Set in modpara.def:

NExUpdatePath  6

Use Orbital (not OrbitalGeneral) in namelist.def.

Current Constraints (fail-fast)

The run stops at startup unless all are satisfied:

  • 0 < Ne < Nsite
  • NlocalSpin = 0 in locspn.def
  • NBackFlowIdx = 0
  • No RBM inputs
  • No FSZ (OrbitalGeneral / iFlgOrbitalGeneral=1)

Validation

Normal

  • Hubbard chain (6 sites, Ne=3) with NExUpdatePath=6 runs to completion and outputs physical quantities.

Invalid inputs (representative)

Case Exit code Representative error
Ne=0 1 NExUpdatePath=6 (doublon-only) requires Ne > 0.
Ne=Nsite 1 NExUpdatePath=6 (doublon-only) requires Ne < Nsite (need empty sites for pair hopping).
NLocalSpin>0 1 NExUpdatePath=6 (doublon-only) is not compatible with NLocalSpin > 0.
BackFlow enabled 1 Back Flow is not supported. (when built with _NOTBACKFLOW)
RBM enabled 1 NExUpdatePath=6 (doublon-only) is not compatible with RBM (current implementation).
FSZ enabled 1 NExUpdatePath=6 (doublon-only) is not compatible with iFlgOrbitalGeneral=1 (FSZ).

Notes

  • We reserve NExUpdatePath=6 to avoid collision with our local tJ validation branch (path=4,5, unpublished).
  • Depending on build options, BackFlow may fail with a generic error before the dedicated NExUpdatePath=6 check.

Files touched

  • src/mVMC/readdef.c
  • src/mVMC/vmcmake.c
  • src/mVMC/vmcmake_real.c
  • src/mVMC/locgrn.c
  • src/mVMC/locgrn_real.c
  • src/mVMC/include/vmcmake.h
  • src/mVMC/include/global.h
  • doc/en/source/expert.rst
  • doc/ja/source/expert.rst

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions