Git Product home page Git Product logo

mvmc's People

Contributors

aoymt avatar k-ido avatar k-yoshimi avatar masakiyama avatar mitsuaki1987 avatar ohgoe avatar smorita avatar takai125 avatar takeokato719 avatar tmisawa avatar xrq-phys avatar yomichi avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

mvmc's Issues

Complex transition matrix?

Dear mVMC developers,

I am interested if one could include complex hoppings in mVMC. Is that possible?

Best wishes,
Nikita

We Should Fix Traditional Makefile Compilation

An easy workaround would be:

In src/StdFace/makefile_StdFace:

StdFace_OBJS = StdFace_main.o StdFace_ModelUtil.o
Lattice_OBJS = SquareLattice.o ChainLattice.o TriangularLattice.o \
        HoneycombLattice.o Ladder.o Kagome.o Orthorhombic.o FCOrtho.o \
        Pyrochlore.o Wannier90.o setmemory.o # <<< Add this

In src/ComplexUHF/makefile_uhf:

include ../make.sys

SFMT = ../sfmt/SFMT.o

OBJS = \
../common/setmemory.c \ # <<< Add this
cal_energy.o \
diag.o \
green.o \
initial.o \
makeham.o \
matrixlapack.o \
output.o \
readdef.o \
UHFmain.o

and delete all lines related to mfmemory.c.

To be honest, after experiencing many CMake-related problems, I'm beginning to doubt that CMake might not be a good toolset for us:

  • CMake is designed to work on both *nix and Windows but we only need previous one (and this CMakeFiles.txt won't work on Windows);
  • CMake's quite obstinate when doing cross-compilation but we need flexible cross-compiling on, e.g. Fugaku's assessing environment (「富岳」前期評価環境);
  • CMake's also stubborn on BLAS/LAPACK finding which might make it hard to feed alternative implementations (e.g. flame/BLIS).

As a result, I guess we should at least continue to support old makefile and remove that makefile is deprecated warning.
BTW adding -x permission to mVMCconfig.sh might also be a good idea :)

Best,
RuQing

Progress of Optimization: 0 % error

Dear mVMC developers

I'm a beginner to learn mVMC-1.2.0 code. I tried to use the sample in /mVMC-tutorial/HandsOn/2022_1128/Samples/1D_Hubbard, but the following error occurred:

...
Start: Optimize VMC parameters.
Progress of Optimization: 0 %.
{ 0, 1}: On entry to
{ 1, 0}: On entry to
{ 1, 1}: On entry to
{ 4, 0}: On entry to
{ 2, 0}: On entry to
{ 2, 1}: On entry to
{ 3, 0}: On entry to
{ 3, 1}: On entry to
{ 4, 1}: On entry to
DESCINIT parameter number 7 had an illegal value
DESCINIT parameter number 7 had an illegal value
...

How do I deal with the problem?
Thanks!

No spin projection?

Dear mVMC team,

I would like to simulate the Hamiltonian with only S_z conserved, but SU(2)--nonsymmetric (only U(1)--symmetric). This means, that the exchange term is multiplied by some lambda != 1.

Is it possible to switch off completely the S_tot projector in the expert mode? By reading the docs I could not understand if it is really possible.

Setting NSPGaussLeg 0 leads to the errors of the kind
warning: VMCMainCal rank:0 sample:999 e=-nan StcOpt: r[0]=-nan Error: StcOpt info=1 step=0

Thanks a lot!

problem with many sites

Dear developers of the mVMC,

my problem is as follows. I consider a spin system with many sites (6^3 x 4 = O(800)). Not questioning the validity of the method with so many sites, my problem is that mVMC fails to make even one single optimization step.

The number of parameters is 1740 (jastrow) + 3456 (orbitals) + 4 (Gutzwiller). I use Nstore = 0, NSRCG = 1.

In order to make the code not fail, I had to comment out lines like

    //if(loop>100) {
    //  if(rank==0) fprintf(stderr, "error: makeInitialSample: Too many loops\n");
    //  MPI_Abort(MPI_COMM_WORLD,EXIT_FAILURE);
    //} 

in the files like vmcmake.c.

The code run at 36 skylake cores fails to make 1 iteration with 10(!!!) samples. So it seems like it is stuck somewhere.
I investigated a bit and the code is stuck at this loop and simply can not initialize the initial spin configuration. Meaning, the result of
flag = CalculateMAll_fcmp(eleIdx,qpStart,qpEnd);
is always False. But the reason for that is unclear to me.
Could you please help me resolve this issue?

Doping level in bilayer Hubbard model.

Dear developers of mVMC,

I want to use mVMC to calculate the dopped bilayer Hubbard model. In mVMC, we set “ncon” to fix the number of electrons (i.e. the doping level). I have two questions about it.

  1. If the top layer and bottom layer have equal doping levels, is it enough to set ncon to obtain that each layer has nocn/2 electrons? For example, 4x4x2 Hubbard model, we set ncon=28 to obtain a 1/8 hole doping level. Does this mean 14 electrons in each layer?
  2. If the top layer and bottom layer have different doping levels, for example, 4 electrons in the top layer and 12 electrons in the bottom layer. How can I set the input file to achieve my target?

Best wishes

m_z > 0?

Dear mVMC developers,

I am trying my system away from the SU(2)--symmetric point. I know, that in order to switch off total spin projection, I need to apply NSPGaussLeg 1.

Now I want to consider total magnetization m_z > 0. I try to employ the Modpara.def file like this:

--------------------
Model_Parameters   0
--------------------
VMC_Cal_Parameters
--------------------
CDataFileHead  zvo
CParaFileHead  zqp
--------------------
NVMCCalMode    0
--------------------
NDataIdxStart  1
NDataQtySmp    1
--------------------
Nsite          ...
Ncond         0
2Sz            2
NSPGaussLeg    1
NSPStot        2
NMPTrans       ...
NSROptItrStep  1000
DSROptRedCut   0.0010000000
DSROptStaDel   0.0200000000
DSROptStepDt   0.0200000000
NVMCWarmUp     10
NVMCInterval   1
NVMCSample     3000
NExUpdatePath  2
RndSeed        1
NSplitSize     1
NExUpdatePath  2
NExUpdatePath  2
NStore         0
NSRCG          1

But the code crushes saying the file is incomplete. But it works perfectly if I set 2 Sz = 0.

Could you please clarify, what parameters should I employ in this case to obtain non-zero magnetization sector? Thanks a lot!

Best wishes,
Nikita

complex symmetry eigenvalues?

Dear mVMC team,

I would like to use C_3z rotation symmetry with complex eigenvalues 1, \omega and \omega^*. If I project onto the \omega quantum number, then I will have complex p_{\alpha}, in notations of the tutorial. However, the qptransidx.def expects p_{\alpha} cos k as double, i.e. as real number. Is it really possible to have translation symmerry in addition to point-group symmetry with complex eigenvalue? If so, how should I fill the file?

Thanks a lot!

Best wishes,
Nikita Astrakhantsev

StcOpt Error

Dear mVMC developers,

I'm trying to use mVMC-1.2.0 code. In some of my calculations, mVMC raised Error: StcOpt info=1 step=XXX after warning: VMCMainCal rank:0 sample:XXXX e=-nan. (PS: There are also some calculations of different interaction parameters that are finished normally)
These calculations are performed on a 6x6x3 Hubbard system, and typically NVMCSample=1600, NVMCWarmUp=100 are used with 64 cores. Could you give me some advice on how to prevent this error? (BTW, I find sometimes this error can be prevented by using more warm-up steps)
Thanks !

4-point correlation functions?

Dear mVMC developers,

in a recent paper https://arxiv.org/pdf/2005.14142.pdf mVMC was used to compute dimer-dimer correlations order, which is a 4-point spin and 8-point fermion correlation function.

However, in current public version of mVMC this functionality is absent (at least not mentioned in Documentation).

Is it possible that 4-point correlations are already available? If not, perhaps you could push this commit (even though probably not very well tested) and briefly explain how to use it?

Thanks a lot!

Best wishes,
Nikita

Non-periodic BC?

Dear mVMC developers,

I have a question about how one could employ periodic boundary conditions with a twist. I am interested in (a) general twist, (b) twist \pi (antiperiodic).

In case of (b), there is just a special flag in mVMC, that switches on the APBC mode. I have a question on how to use this mode, namely

  1. This would modify the T_ij (kineric term elements) that go over the boundary, by multiplying by -1. Should I do it myself when I fill-in the trans.def file, or this will be done automatically?
  2. how I shall define the variational parameters (say, orbitals), if I use the APBC mode? In the PBC case, I would employ translational invariance, namely, f_{i, j} = f_{G(i), G(j)} where G is translation. Now, I need to introduce two "families" of f_ij: one for those f_ij that connect sites without crossing [in terms of shortest distance] the boundary and other family that goes over the boundary. Within each family I can use translational invariance?

Basically, there are several references, for instance https://journals.aps.org/prb/pdf/10.1103/PhysRevB.90.115137, where mVMC was used with APBC. I wonder, how one defines the variational parameters in this case?

Thanks a lot for your help!
Best wishes,
Nikita

lda unitialized

Dear mVMC developers,

as I tried to apply the GreenFuncN function I encountered several errors connected to invalid memory reads/writes. It seems like in the current mVMC release, in the src/mVMC/locgrn.c:325 function calculateNewPfMN_child the parameter lda is unitialized, which causes unexpected behavior of Pfaffian computation M_ZSKPFA(&uplo, &mthd, &n, mat, &lda, &pfaff, iwork, work, &lwork, rwork, &info);

Could you please comment on that? Should I set lda = 2 * n; somewhere before applying M_ZSKPFA?

It seems to me that this very function could not probably be used in a recent paper https://arxiv.org/pdf/2005.14142.pdf, at least since this bug (?) is present. Would mind to please commit the properly and surely working version?

Thanks a lot!

Best wishes,
Nikita

incorrect offdiagonal Green's functions

Hi,

I check the physical quantities of several nonmagnetic wave functions (translational invariant singlet wave functions) and find unexpected behavior.
I attach the minimal code.
minimal_code.tar.gz
As the simplest case, I use the exact wave function (4 sites) of J1-J2 Heisenberg chain at J2/J1=0.5, known as a Majumdar-Ghosh point.
(See, for example, p.6 in https://arxiv.org/abs/0905.4854 .)
Spin projection is turned off on purpose since the wave function is already in the singlet sector.

The ground state should be nonmagnetic but the expectation values
<S_{i}^{+}> = <c_{i,up}^{dagger} c_{i,down}>
<S_{i}^{-}> = <c_{i,down}^{dagger} c_{i,up}>
give nonzero values ~0.5, which results in FM order along the x direction.
Similarly, <S_i^z S_j^z>!=<S_i^x S_j^x>, so the expected SU(2) symmetry is broken.

The calculated energy itself is consistent with the exact result, and the calculated energy variance is exactly 0.

Best,
Ryui Kaneko

understanding symmetries

Dear MVMC developers,

I am trying to understand how to use your package and came with the following problem. When I use
test_HubbardTetragonal.py

if generates the file with translations qptransidx.def:

=============================================
NQPTrans          4
=============================================
======== TrIdx_TrWeight_and_TrIdx_i_xi ======
=============================================
0    1.00000
1    1.00000
2    1.00000
3    1.00000
    0      0      0
    0      1      1
    0      2      2
    0      3      3
    0      4      4
    0      5      5
    0      6      6
    0      7      7
    1      0      1
    1      1      2
    1      2      3
    1      3      0
    1      4      5
    1      5      6
    1      6      7
    1      7      4
    2      0      4
    2      1      5
    2      2      6
    2      3      7
    2      4      0
    2      5      1
    2      6      2
    2      7      3
    3      0      5
    3      1      6
    3      2      7
    3      3      4
    3      4      1
    3      5      2
    3      6      3
    3      7      0

It consists of 4 symmetries: identity, Tx, Ty and TxTy. I do not understand why adding TxTy? Does your code probe symmetries combinations? Or if I want any combination of two symmetries A and B, I need to explicitly state how AB acts?

Thanks!

MacBookでのmake、cmakeについて

担当者様

MacBook(macOS Montery Version 12.4)でのmake、cmakeでエラーが出てしまうのですが、MacBookはサポート外でしょうか?
また、昨日不適切なissueを出してしまい、申し訳ありません。

宮原

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.