From f262f960045f662ab421ce15cd077aee8ee7feb4 Mon Sep 17 00:00:00 2001 From: Sylvain Tricot Date: Wed, 9 Feb 2022 13:08:06 +0100 Subject: [PATCH] Added and updated corexp.f The file corexp.f was updated to be compatible with Python bindings. --- .../fortran/phd_ce_noso_nosp_nosym/corexp.f | 47 +++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 src/msspec/spec/fortran/phd_ce_noso_nosp_nosym/corexp.f diff --git a/src/msspec/spec/fortran/phd_ce_noso_nosp_nosym/corexp.f b/src/msspec/spec/fortran/phd_ce_noso_nosp_nosym/corexp.f new file mode 100644 index 0000000..fe6cc49 --- /dev/null +++ b/src/msspec/spec/fortran/phd_ce_noso_nosp_nosym/corexp.f @@ -0,0 +1,47 @@ +C +C====================================================================== +C + SUBROUTINE COREXP_SAVM(JE,IGR,NGR,NLM,ITYPE,IGS,TAU) +C +C This subroutine call the correlation matrices calculations +C for a given order IGR +C +C H.-F. Zhao : 2007 +C + USE DIM_MOD + USE COOR_MOD + USE Q_ARRAY_MOD + USE TRANS_MOD +C + INTEGER NLM(NGR_M),ITYPE(NGR_M),IGS(NGR_M) +C + REAL QI +C + COMPLEX*16 TAU(LINMAX,LINFMAX,NATCLU_M) +C +C + DO ITYP=1,N_PROT + NBTYP=NATYP(ITYP) + NLM(IGR)=LMAX(ITYP,JE) + ITYPE(IGR)=ITYP + DO NUM=1,NBTYP + IGS(IGR)=NCORR(NUM,ITYP) +C + IF(IGS(IGR).GT.IGS(IGR-1)) THEN + QI=Q(IGR) + CALL MPIS(IGR,NLM,ITYPE,IGS,JE,QI,TAU) +C + IGR=IGR+1 + IF(IGR.LE.NGR) THEN + CALL COREXP_SAVM1(JE,IGR,NGR,NLM,ITYPE,IGS,TAU) + ENDIF + IGR=IGR-1 +C + ENDIF +C + ENDDO + ENDDO +C + RETURN +C + END