filippi-claudia / champ

The Cornell-Holland Ab-initio Materials Package (CHAMP) is a quantum Monte Carlo suite of programs for electronic structure calculations of atomic and molecular systems.
GNU General Public License v3.0
18 stars 7 forks source link

Double check common blocs with different variable names #176

Closed NicoRenaud closed 11 months ago

NicoRenaud commented 2 years ago

The output of grep -h common *.f | sort --unique on the reference branch gives :

c common block variables:
c     common /gradhess_orb/ grad_orb(MXORBOP),h_orb(MXMATDIM),s_orb(MXMATDIM)
c     common /kinet/ dtdx2o(MELEC),dtdx2n(MELEC)
c$$$      common /periodic/ rlatt(3,3),glatt(3,3),rlatt_sim(3,3),glatt_sim(3,3)
c     common /pseudo_fahy/ potl(MPS_GRID,MCTYPE),ptnlc(MPS_GRID,MCTYPE,MPS_L)
c     common /rnyucm/ m1,m2,m3,m4,l1,l2,l3,l4
      common /atom/ znuc(MCTYPE),cent(3,MCENT),pecent
      common /atom/ znuc(MCTYPE),cent(3,MCENT),pecent,
        common /atom/ znuc(MCTYPE),cent(3,MCENT),pecent,iwctype(MCENT),nctype,ncent
      common /atom/ znuc(MCTYPE),cent(3,MCENT),pecent,iwctype(MCENT),nctype,ncent
      common /Bloc/ b(MORB,MELEC),xmat(MELEC**2,2)
      common /Bloc/ b(MORB,MELEC),xmatu(MELEC**2),xmatd(MELEC**2)
      common /Bloc_da/ b_da(3,MELEC,MORB,MCENT)
      common /Bloc_da/ db(3,MELEC,MORB,MCENT)
      common /Bloc_dj/ b_dj(MORB,MELEC,MPARMJ)
      common /bparm/ nspin2b,nocuspb
      common /b_tmove/ b_t(MORB,MPS_QUAD,MCENT,MELEC),iskip(MELEC,MCENT)
      common /casula/ t_vpsp(MCENT,MPS_QUAD,MELEC),icasula,i_vpsp
      common /chck/ bot
      common /coefs/ coef(MBASIS,MORB,MWF),nbasis,norb
      common /config/ xold(3,MELEC),xnew(3,MELEC),vold(3,MELEC)
      common /const2/ deltar,deltat
      common /constant/ twopi
      common /const/ pi,hb,etrial,delta,deltai,fbias,nelec,imetro,ipr
      common /contr2/ ijas,icusp,icusp2,isc,ianalyt_lap
      common /contr3/ mode
      common /contrldmc/ tau,rttau,taueff(MFORCE),tautot,nfprod,idmc,ipq
      common /contrl/ nstep,nblk,nblkeq,nconf,nconf_new,isite,idump
      common /contrl/ nstep,nblk,nblkeq,nconf,nconf_new,isite,idump,irstar
      common /contrl/ nstep,nblk,nblkeq,nconf_old,nconf_new,isite,idump,irstar
      common /contrl_per/ iperiodic,ibasis
      common /csfs/ ccsf(MDET,MSTATES,MWF),cxdet(MDET*MDETCSFX)
      common /cuspmat4/ d(NEQSX,MTERMS),icusp(NEQSX),nterms
      common /cuspmat4/ d(NEQSX,MTERMS),iwc4(NEQSX),nterms
      common /cuspmat/ cm(NEQSX,NEQSX),iwc3(NEQSX),neqs,ishe
      common /da_energy_ave/ da_energy_sum(3,MCENT),da_psi_sum(3,MCENT),
      common /da_energy_now/ da_energy(3,MCENT),da_psi(3,MCENT)
      common /da_jastrow4val/ da_j(3,MELEC,MCENT),da_d2j(3,MELEC,MCENT),da_vj(3,3,MELEC,MCENT)
      common /da_orbval/ da_orb(3,MELEC,MORB,MCENT)
      common /da_orbval/ da_orb(3,MELEC,MORB,MCENT),da_d2orb(3,MELEC,MORB,MCENT),da_dorb(3,3,MELEC,MORB,MCENT)
      common /da_pseudo/ da_pecent(3,MCENT),da_vps(3,MELEC,MCENT,MPS_L),
      common /deloc_dj/ denergy(MPARMJ,MSTATES)
      common /denergy_det/ denergy_det(MDET,2)
      common /denupdn/ rprobup(nrad),rprobdn(nrad)
      common /derivjas/ gvalue(MPARMJ),g(3,MELEC,MPARMJ)
      common /dets/ cdet(MDET,MSTATES,MWF),ndet
      common /dets/ cdet(MDET,MSTATES,MWF),ndet 
      common /dets_equiv/ cdet_equiv(MDET),dcdet_equiv(MDET)
      common /distance/ rshift(3,MELEC,MCENT),rvec_en(3,MELEC,MCENT)
      common /distance/ rshift(3,MELEC,MCENT),rvec_en(3,MELEC,MCENT),r_en(MELEC,MCENT),rvec_ee(3,MMAT_DIM2),r_ee(MMAT_DIM2)
      common /distances_sav/ rshift_sav(3,MCENT),rvec_en_sav(3,MCENT),r_en_sav(MCENT),rvec_ee_sav(3,MELEC),r_ee_sav(MELEC)
      common /dorb/ iworbd(MELEC,MDET)
      common /elec/ nup,ndn
      common /est2cm/ ecm21(MSTATES),ecm2(MSTATES,MFORCE),avcm2(MSTATES*3),r2cm2
      common /est2cm/ ecm21(MSTATES),ecm2(MSTATES,MFORCE),pecm2(MSTATES),tpbcm2(MSTATES),tjfcm2(MSTATES),r2cm2
      common /estcum/ ecum1(MSTATES),ecum(MSTATES,MFORCE),avcum(MSTATES*3),r2cum,iblk
      common /estcum/ ecum1(MSTATES),ecum(MSTATES,MFORCE),pecum(MSTATES),tpbcum(MSTATES),tjfcum(MSTATES),r2cum,iblk
      common /estpsi/ detref(2),apsi(MSTATES),aref
      common /estsig/ ecum1s(MSTATES),ecm21s(MSTATES)
      common /estsum/ esum1(MSTATES),esum(MSTATES,MFORCE),pesum(MSTATES),tpbsum(MSTATES),tjfsum(MSTATES),r2sum,acc
      common /ewald_basis/ vps_basis_fourier(NGNORM_BIGX)
      common /ewald/ b_coul(NCOEFX),y_coul(NGNORMX)
      common /force_analy/ iforce_analy
      common /force_analy/ iforce_analy,iuse_zmat
        common /force_analy/ iforce_analy,iuse_zmat,alfgeo
      common /force_analy/ iforce_analy,iuse_zmat,alfgeo
      common /force_dmc/ itausec,nwprod
        common /force_fin/ da_energy_ave(3,MCENT),da_energy_err(3)
      common /force_fin/ da_energy_ave(3,MCENT),da_energy_err(3)
      common /force_mat_n/ force_o(6*MCENT,MCONF)
      common /forcepar/ deltot(MFORCE),nforce,istrech
      common /forcest/ fcum(MSTATES,MFORCE),fcm2(MSTATES,MFORCE)
      common /forcestr/ delc(3,MCENT,MFORCE)
      common /forcewt/ wsum(MSTATES,MFORCE),wcum(MSTATES,MFORCE)
      common /gauss_ecp/ necp_term(MPS_L,MCTYPE),necp_power(MGAUSS
      common /ghostatom/ newghostype,nghostcent
      common /gradhess_all/ grad(MPARMALL),h(MPARMALL,MPARMALL),s(MPARMALL,MPARMALL)
      common /gradhess_ci/  grad_ci(MXCITERM),h_ci(MXCITERM,MXCIREDUCED),s_ci(MXCITERM,MXCIREDUCED)
      common /gradhess_ci/ grad_ci(MXCITERM),h_ci(MXCITERM,MXCIREDUCED),s_ci(MXCITERM,MXCIREDUCED)
      common /gradhess_jas/ grad_jas(MPARMJ),h_jas(MPARMJ,MPARMJ),s_jas(MPARMJ,MPARMJ)
      common /gradhessj/ dj(MPARMJ,MSTATES),dj_e(MPARMJ,MSTATES),dj_de(MPARMJ,MPARMJ,MSTATES)
      common /gradhessjo/ gvalue_old(MPARMJ),denergy_old(MPARMJ,MSTATES)
      common /gradhess_mix_jas_ci/  h_mix_jas_ci(2*MPARMJ,MXCITERM),s_mix_jas_ci(MPARMJ,MXCITERM)
      common /gradhess_mix_jas_orb/  h_mix_jas_orb(2*MPARMJ,MXREDUCED),s_mix_jas_orb(MPARMJ,MXREDUCED)
      common /gradhess_mix_jas_orb/ h_mix_jas_orb(2*MPARMJ,MXREDUCED),s_mix_jas_orb(MPARMJ,MXREDUCED)
      common /gradhess_mix_orb_ci/  h_mix_ci_orb(2*MXCITERM,MXREDUCED),s_mix_ci_orb(MXCITERM,MXREDUCED)
      common /gradjerrb/ ngrad_jas_blocks,ngrad_jas_bcum,nb_current
      common /gradjerrb/ ngrad_jas_blocks,ngrad_jas_bcum,nbj_current
      common /gradjerrb/ ngrad_jas_blocks,ngrad_jas_bcum,njb_current
      common /gradjerr/ grad_jas_bcum(MPARMJ,MSTATES),grad_jas_bcm2(MPARMJ,MSTATES),
      common /grdnthes/ hessian_zmat(3,MCENT)
      common /grdntsmv/ igrdmv(3,MCENT),igrdaidx(MFORCE),
      common /grdntspar/ delgrdxyz,delgrdbl,delgrdba,delgrdda,
      common /header/ title,date
      common /icount_ci/ icount
      common /icount_ci/ icount_ci
      common /icount_orb/ icount_orb
      common /icount_prop/ icount
      common /icount_prop/ icount_prop
      common /ijasnonlin/ d1d2a(MCTYPE),d2d2a(MCTYPE),d1d2b(2),d2d2b(2)
      common /insout/ inside,inout  
      common /jasn/ fsn(MELEC,MELEC),fijn(3,MELEC,MELEC)
      common /jaso/ fso(MELEC,MELEC),fijo(3,MELEC,MELEC)
      common /jaspar1/ cjas1(MWF),cjas2(MWF)
      common /jaspar2/ a1(83,3,MWF),a2(83,3,MWF)
      common /jaspar3/ a(MORDJ1,MWF),b(MORDJ1,2,MWF),c(83,MCTYPE,MWF)
      common /jaspar4/ a4(MORDJ1,MCTYPE,MWF),norda,nordb,nordc
      common /jaspar6/ cutjas,cutjasi,c1_jas6i,c1_jas6,c2_jas6,
      common /jaspar/ nspin1,nspin2,sspin,sspinn,is
      common /jaspointer/ npoint(MCTYP3X),npointa(3*MCTYP3X)
      common /jd_scratch/ qr(MPARM),rr(MPARM)
      common /kinet/ dtdx2o(MELEC),dtdx2n(MELEC)
      common /linear_norm/ ci_oav(MXCITERM)
      common /linear_norm/ oav(MXCITERM)
      common /mix_jas_ci/ dj_o_ci(MPARMJ,MDET),dj_de_ci(MPARMJ,MDET),
      common /mix_jas_orb/ dj_o(MPARMJ,MXREDUCED,MSTATES),dj_oe(MPARMJ,MXREDUCED,MSTATES),
      common /mix_orb_ci/ ci_o_o(MXCITERM,MXREDUCED),ci_o_oe(MXCITERM,MXREDUCED),
      common /mmpol_hpsi/ peQMdp,peQMq,eek_pol(3,MCHMM)
      common /mmpol_hpsi/QMdp,QMq,eek_pol(3,MCHMM)
      common /mmpolo/ dmmpolo,cmmpolo,eeko(3,MCHMM)
      common /mpiconf/ idtask,nproc
      common /mpiconf/ idtask,nproc,wid
      common /multidet/ kref,numrep_det(MDET,2),irepcol_det(MELEC,MDET,2),ireporb_det(MELEC,MDET,2)
      common /multimat/ aa(MELEC,MORB,2),wfmat(MEXCIT**2,MDET,2)
      common /multimatn/ aan(MELEC,MORB),wfmatn(MEXCIT**2,MDET)
      common /multislater/ detiab(MDET,2)
      common /multislater/detiab(MDET,2)
      common /multislater/ detu(MDET),detd(MDET)
      common /multislatern/ detn(MDET)
      common /ncusp/ norbc,ncuspc,nfockc,nfock,ncnstr
      common /numbas1/ nbastyp(MCTYPE), iwlbas(MBASIS,MCTYPE)
      common /numbas2/ ibas0(MCENT),ibas1(MCENT)
      common /numbas/ arg(MCTYPE),r0(MCTYPE)
      common /numexp/ce(NCOEF,MRWF,MCTYPE,MFORCE),ae(2,MRWF,MCTYPE,MFORCE)
      common /optorb_mix/ norbopt,norbvirt,iwmix_virt(MORB,MORB)
      common /optorb/ orb_energy(MORB),dmat_diag(MORB),irrep(MORB)
      common /optwf_contrl/ ioptjas,ioptorb,ioptci,nparm
      common /optwf_contrl/ ioptjas,ioptorb,ioptci,nparmsav
      common /optwf_contrl/ ioptjas,ioptorb,ioptci,nparm_sav
      common /optwf_contrl/ ioptjas,ioptorb,ioptci,nparm_save
      common /optwf_corsam/ add_diag(MFORCE),energy(MFORCE),energy_err(MFORCE),force(MFORCE),force_err(MFORCE)
      common /optwf_corsam/ add_diag(MFORCE),energy(MFORCE),energy_err(MFORCE),force(MFORCE),force_err(MFORCE),sigma
      common /optwf_corsam/ add_diag_tmp(MFORCE),energy(MFORCE),energy_err(MFORCE),force(MFORCE),force_err(MFORCE)
      common /optwf_func/ omega,omega_hes,ifunc_omega
      common /optwf_nparmj/ nparma(MCTYP3X),nparmb(3),nparmc(MCTYPE),nparmf(MCTYPE)
      common /optwf_parms/ nparml,nparme,nparmd,nparms,nparmg,nparmj
      common /optwf_wjas/ iwjasa(83,MCTYP3X),iwjasb(83,3),iwjasc(83,MCTYPE),iwjasf(15,MCTYPE)
      common /orbital_num_spl2/ bc, wk
      common /orbval/ orb(MELEC,MORB),dorb(3,MELEC,MORB),ddorb(MELEC,MORB),ndetorb,nadorb
      common /orbval/ orbo(MELEC,MORB),dorbo(3,MELEC,MORB),ddorbo(MELEC,MORB),ndetorb,nadorb
      common /pars/ a00,a20,a21,eps_fock,c0000,c1110,c2000,
      common /pcm_force/ sch_s(MCHS,MFORCE)
      common /pcm_hpsi/ pcms,pcmv,qopcm,enfpcm(MCHS)
      common /pcm_hpsi/ pepcms,pepcmv,qopcm,enfpcm(MCHS)
      common /pcm_num_spl2/ bc, wk
      common /pcmo/ spcmo,vpcmo,qopcmo,enfpcmo(MCHS)
      common /pcm_xv_new/ xv_new(3,MCHV)
      common /periodic/ rlatt(3,3),glatt(3,3),rlatt_sim(3,3),glatt_sim(3,3)
      common /phifun/ phin(MBASIS,MELEC),dphin(3,MBASIS,MELEC)
      common /pseudo_champ/ rmax_coul(MCTYPE),rmax_nloc(MCTYPE),igrid_ps(MCTYPE)
      common /pseudo_fahy/ potl(MPS_GRID,MCTYPE),ptnlc(MPS_GRID,MCTYPE,MPS_L)
      common /pseudo_tm/ rmax(MCTYPE),arg(MCTYPE),r0(MCTYPE)
      common /pseudo_tm/ rmax_ps(MCTYPE),arg_ps(MCTYPE),r0_ps(MCTYPE)
      common /pseudo/ vps(MELEC,MCENT,MPS_L),vpso(MELEC,MCENT,MPS_L,MFORCE)
      common /pworbital/c_rp(NGVECX,MORB),c_rm(NGVECX,MORB),c_ip(NGVECX,MORB)
      common /qua/ xq0(MPS_QUAD),yq0(MPS_QUAD),zq0(MPS_QUAD)
    common /qua/ xq0(MPS_QUAD),yq0(MPS_QUAD),zq0(MPS_QUAD)
      common /rlobxy/ rlobx(nsplin), rloby(nsplin), rloby2(nsplin)
      common /rnyucm/ m1,m2,m3,m4,l1,l2,l3,l4
      common /rnyucm/ m(4),l(4)
      common /sa_check/ energy_all(MSTATES), energy_err_all(MSTATES)
      common /sa_check/ energy_all(MSTATES),energy_err_all(MSTATES) 
      common /sa_weights/ weights(MSTATES),iweight(MSTATES),nweight
      common /scale_more/ dd3
      common /scratch/ dtildem(MELEC,MORB,2),denergy_det(MDET,2)
      common /slater/ slmi(MMAT_DIM,2)
      common /slater/ slmui(MMAT_DIM),slmdi(MMAT_DIM)
      common /slatn/ slmin(MMAT_DIM)
      common/spc1/rsf(50),qsf(50,3),csf(750,4,50)
      common/spc2/sfxyz(5000,4),usf(5000,3),nxyz
      common/spc/nsf,num(50)
      common /sr_index/ jelo,jelo2,jelohfj
      common /sr_mat_n/ sr_o(MPARM,MCONF),sr_ho(MPARM,MCONF),obs(MOBS,MSTATES),s_diag(MPARM,MSTATES)
      common /sr_mat_n/ sr_o(MPARM,MCONF),sr_ho(MPARM,MCONF),obs_tot(MOBS,MSTATES),s_diag(MPARM,MSTATES)
      common /stats/ rejmax
      common /step/try(nrad),suc(nrad),trunfb(nrad),rprob(nrad)
      common /step/try(nrad),suc(nrad),trunfb(nrad),rprob(nrad),
      common /tempor/ dist_nn
      common /tempor_test/ igvec_dft(3,NGVEC_BIGX),iwgvec(NGVEC_BIGX),c_real(NGVEC_BIGX),c_imag(NGVEC_BIGX)
      common /test/ f,vbare_coul(NGNORM_SIM_BIGX),vbare_jas(NGNORM_SIM_BIGX)
      common /tmpnode/ distance_node_sum
      common /vardep/ nvdepend(NEQSX,MCTYPE),iwdepend(NEQSX,83,MCTYPE)
      common /velocity_jastrow/vj(3,MELEC),vjn(3,MELEC)
      common /wfsec/ iwftype(MFORCE),iwf,nwftype
      common /ycompactn/ ymatn(MORB,MELEC,MSTATES)
      common /ycompact/ ymat(MORB,MELEC,2,MSTATES),dymat(MORB,MELEC,2,MSTATES)
      common /zcompact/ zmat(MORB,MELEC,2,MSTATES),dzmat(MORB,MELEC,2,MSTATES)
        common /zmatrix/ czcart(3,MCENT),czint(3,MCENT),
      common /zmatrix/ czcart(3,MCENT),czint(3,MCENT),
      common /zmatrix/ czcart(3,MCENT),czint(3,MCENT),         
      common /zmatrix_grad/ transform_grd(MCENT3,MCENT3)
NicoRenaud commented 2 years ago
      common /Bloc/ b(MORB,MELEC),xmat(MELEC**2,2)
      common /Bloc/ b(MORB,MELEC),xmatu(MELEC**2),xmatd(MELEC**2)

All matrices are called xmat in the module Bloc on the main branch

NicoRenaud commented 2 years ago
      common /Bloc_da/ b_da(3,MELEC,MORB,MCENT)
      common /Bloc_da/ db(3,MELEC,MORB,MCENT)

Fixed by Claudia

NicoRenaud commented 2 years ago
      common /contrl/ nstep,nblk,nblkeq,nconf,nconf_new,isite,idump
      common /contrl/ nstep,nblk,nblkeq,nconf,nconf_new,isite,idump,irstar
      common /contrl/ nstep,nblk,nblkeq,nconf_old,nconf_new,isite,idump,irstar

nconf_old has been removed from module control The variables have been renamed vmc_nconf and vmc_nconf_new. Warning there is a nconf variable in module sr

NicoRenaud commented 2 years ago
      common /cuspmat4/ d(NEQSX,MTERMS),icusp(NEQSX),nterms
      common /cuspmat4/ d(NEQSX,MTERMS),iwc4(NEQSX),nterms

icusp has been remplaced by iwc4

NicoRenaud commented 2 years ago
common /est2cm/ ecm21(MSTATES),ecm2(MSTATES,MFORCE),avcm2(MSTATES*3),r2cm2
common /est2cm/ ecm21(MSTATES),ecm2(MSTATES,MFORCE),pecm2(MSTATES),tpbcm2(MSTATES),tjfcm2(MSTATES),r2cm2

avcm2 has been replaced by the different arrays (pecm2, tpbcm2, tjfcm2) I removed allocation of avcm2 in m_estimators

NicoRenaud commented 2 years ago
common /estcum/ ecum1(MSTATES),ecum(MSTATES,MFORCE),avcum(MSTATES*3),r2cum,iblk
 common /estcum/ ecum1(MSTATES),ecum(MSTATES,MFORCE),pecum(MSTATES),tpbcum(MSTATES),tjfcum(MSTATES),r2cum,iblk

avcum has been replaced by the individual arrays I removed allocation/deallocation of avcum in m_estimators

NicoRenaud commented 2 years ago
      common /gradjerrb/ ngrad_jas_blocks,ngrad_jas_bcum,nb_current
      common /gradjerrb/ ngrad_jas_blocks,ngrad_jas_bcum,nbj_current
      common /gradjerrb/ ngrad_jas_blocks,ngrad_jas_bcum,njb_current

We only use nbj_current I removed the definition of njb_current in module gradjerrb

NicoRenaud commented 2 years ago
      common /icount_ci/ icount
      common /icount_ci/ icount_ci

We only use icount_ci

NicoRenaud commented 2 years ago
      common /icount_prop/ icount
      common /icount_prop/ icount_prop

we only use icount_prop

NicoRenaud commented 2 years ago
      common /linear_norm/ ci_oav(MXCITERM)
      common /linear_norm/ oav(MXCITERM)

That's a weird one: oav was a local variable and is now a member of the linear_norm module. I think it's ok but needs to be double checked. @filippi-claudia

NicoRenaud commented 2 years ago
      common /mmpol_hpsi/ peQMdp,peQMq,eek_pol(3,MCHMM)
      common /mmpol_hpsi/QMdp,QMq,eek_pol(3,MCHMM)

Only 'peQMdp' and 'peQMq' have been kept

NicoRenaud commented 2 years ago
      common /multislater/ detiab(MDET,2)
      common /multislater/detiab(MDET,2)
      common /multislater/ detu(MDET),detd(MDET)

I think we don't ever use detu and detd but they are still allocated I removed their allocation

NicoRenaud commented 2 years ago
      common /optwf_contrl/ ioptjas,ioptorb,ioptci,nparm
      common /optwf_contrl/ ioptjas,ioptorb,ioptci,nparmsav
      common /optwf_contrl/ ioptjas,ioptorb,ioptci,nparm_sav
      common /optwf_contrl/ ioptjas,ioptorb,ioptci,nparm_save

Only nparm remains

NicoRenaud commented 2 years ago
common /optwf_corsam/ add_diag(MFORCE),energy(MFORCE),energy_err(MFORCE),force(MFORCE),force_err(MFORCE)
common /optwf_corsam/ add_diag(MFORCE),energy(MFORCE),energy_err(MFORCE),force(MFORCE),force_err(MFORCE),sigma
common /optwf_corsam/ add_diag_tmp(MFORCE),energy(MFORCE),energy_err(MFORCE),force(MFORCE),force_err(MFORCE)

add_diag_tmp is never used I removed the allocation/deallocation of it

NicoRenaud commented 2 years ago
      common /orbval/ orb(MELEC,MORB),dorb(3,MELEC,MORB),ddorb(MELEC,MORB),ndetorb,nadorb
      common /orbval/ orbo(MELEC,MORB),dorbo(3,MELEC,MORB),ddorbo(MELEC,MORB),ndetorb,nadorb

orbo, dorbom, ddorbo have been removed

NicoRenaud commented 2 years ago
      common /pcm_hpsi/ pcms,pcmv,qopcm,enfpcm(MCHS)
      common /pcm_hpsi/ pepcms,pepcmv,qopcm,enfpcm(MCHS)

We still have both. pcms seems to be used in DMC while pepcms is used in VMC. Are we still supporting PCM ? @filippi-claudia

NicoRenaud commented 2 years ago
      common /pseudo_tm/ rmax(MCTYPE),arg(MCTYPE),r0(MCTYPE)
      common /pseudo_tm/ rmax_ps(MCTYPE),arg_ps(MCTYPE),r0_ps(MCTYPE)

rmax_ps and r0_ps are never used. I removed their allocation/deallocation

NicoRenaud commented 2 years ago
      common /rnyucm/ m1,m2,m3,m4,l1,l2,l3,l4
      common /rnyucm/ m(4),l(4)

We only use m and l now. And we might use another RNG anyway

NicoRenaud commented 2 years ago
      common /slater/ slmi(MMAT_DIM,2)
      common /slater/ slmui(MMAT_DIM),slmdi(MMAT_DIM)

smlui and slmdi are not used anymore. I removed their allocation from m_common

NicoRenaud commented 2 years ago
common /sr_mat_n/ sr_o(MPARM,MCONF),sr_ho(MPARM,MCONF),obs(MOBS,MSTATES),s_diag(MPARM,MSTATES)
 common /sr_mat_n/ sr_o(MPARM,MCONF),sr_ho(MPARM,MCONF),obs_tot(MOBS,MSTATES),s_diag(MPARM,MSTATES)

Both obs and obs_tot are used. obs is only used on optwf_sr.f90. Should we replace that by obs_tot ? @filippi-claudia I think I fixed that as well. obs is no longer par of module sr_mat_n and is simply a local variable in function sr_hs in optwf_sr.f90

filippi-claudia commented 2 years ago
      common /linear_norm/ ci_oav(MXCITERM)
      common /linear_norm/ oav(MXCITERM)

That's a weird one: oav was a local variable and is now a member of the linear_norm module. I think it's ok but needs to be double checked. @filippi-claudia

As far as I can see they both point to the same memory, so oav should be called ci_oav in setup_optimization (optwf_lin_matrix.f). This should be changed.

      common /pcm_hpsi/ pcms,pcmv,qopcm,enfpcm(MCHS)
      common /pcm_hpsi/ pepcms,pepcmv,qopcm,enfpcm(MCHS)

We still have both. pcms seems to be used in DMC while pepcms is used in VMC. Are we still supporting PCM ? @filippi-claudia

We should use 'pcms'. It seems to me that if we change it in hpsi.f, we are ok. The other places is a local variable passed through the call of a subroutine. Do you agree?

I agree with all other changes.

NicoRenaud commented 2 years ago
      common /linear_norm/ ci_oav(MXCITERM)
      common /linear_norm/ oav(MXCITERM)

That's a weird one: oav was a local variable and is now a member of the linear_norm module. I think it's ok but needs to be double checked. @filippi-claudia

As far as I can see they both point to the same memory, so oav should be called ci_oav in setup_optimization (optwf_lin_matrix.f). This should be changed.

      common /pcm_hpsi/ pcms,pcmv,qopcm,enfpcm(MCHS)
      common /pcm_hpsi/ pepcms,pepcmv,qopcm,enfpcm(MCHS)

We still have both. pcms seems to be used in DMC while pepcms is used in VMC. Are we still supporting PCM ? @filippi-claudia

We should use 'pcms'. It seems to me that if we change it in hpsi.f, we are ok. The other places is a local variable passed through the call of a subroutine. Do you agree?

I agree with all other changes.

I agree, I've changed all of that now.