Output name can now contain a run id.

This commit is contained in:
Yggdrasil 2026-04-24 12:39:48 +02:00
parent 57f4ad36d0
commit 132f091802
1 changed files with 44 additions and 32 deletions

View File

@ -201,9 +201,10 @@ C-----------------------------------------------------------------------
SUBROUTINE READCARD SUBROUTINE READCARD
implicit none implicit none
integer :: stat,n,nl,i,iline,ichar integer :: stat,n,nl,i,iline,ichar
character(3) :: flag(1:4) character(3) :: flag(1:5)
character(40) :: val(1:4) character(40) :: val(1:5)
character(20) :: fname character(20) :: fname
character(5) :: RID
character(72) :: line character(72) :: line
character(12) :: keys(20),settings(20) character(12) :: keys(20),settings(20)
logical fexists logical fexists
@ -224,6 +225,7 @@ C-----------------------------------------------------------------------
CHARACTER*40 PATH CHARACTER*40 PATH
DATA fname/'card.input'/ DATA fname/'card.input'/
DATA RID /'00000'/
DATA ISEEDIN/123450,678900/ DATA ISEEDIN/123450,678900/
COMMON /PARAMS/ NFL,NEV,EM COMMON /PARAMS/ NFL,NEV,EM
@ -232,6 +234,7 @@ C-----------------------------------------------------------------------
COMMON /GBINS/CB1,CB2,DB,TB,YB,EB COMMON /GBINS/CB1,CB2,DB,TB,YB,EB
COMMON /GBINS/CL1,CL2,DL,TL,YL,EL,CH1,CH2,DH,TH,YH,EH COMMON /GBINS/CL1,CL2,DL,TL,YL,EL,CH1,CH2,DH,TH,YH,EH
COMMON /GBINS/CBS1,CBS2,DBS,TBS,YBS,EBS COMMON /GBINS/CBS1,CBS2,DBS,TBS,YBS,EBS
COMMON /ID/ RID
common /runcard/keys,settings common /runcard/keys,settings
PATH = './results/' PATH = './results/'
@ -258,6 +261,11 @@ C-----------------------------------------------------------------------
call getarg(8,val(4)) call getarg(8,val(4))
nl = 4 nl = 4
endif endif
if (n.ge.10)then
call getarg(9,flag(5))
call getarg(10,val(5))
nl = 5
endif
C TODO: need to add a proper info page and maybe change the input parameter handling. C TODO: need to add a proper info page and maybe change the input parameter handling.
@ -270,6 +278,8 @@ C TODO: need to add a proper info page and maybe change the input para
read(val(i), *) ISEEDIN(1) read(val(i), *) ISEEDIN(1)
elseif (flag(i).eq.'-sb') then elseif (flag(i).eq.'-sb') then
read(val(i), *) ISEEDIN(2) read(val(i), *) ISEEDIN(2)
elseif (flag(i).eq.'-c') then
RID = val(i)
else else
CALL PRINTHEADER CALL PRINTHEADER
print *, 'Option ', flag(i), print *, 'Option ', flag(i),
@ -521,6 +531,7 @@ c Auxiliary helper subroutine to create output folder
C----------------------------------------------------------------------- C-----------------------------------------------------------------------
SUBROUTINE DEMOIN SUBROUTINE DEMOIN
IMPLICIT NONE IMPLICIT NONE
CHARACTER(5) RID
INTEGER I INTEGER I
INTEGER CB1,CB2,DB,TB,YB,EB INTEGER CB1,CB2,DB,TB,YB,EB
DOUBLE PRECISION CL1,CL2,DL,TL,YL,EL,CH1,CH2,DH,TH,YH,EH DOUBLE PRECISION CL1,CL2,DL,TL,YL,EL,CH1,CH2,DH,TH,YH,EH
@ -530,6 +541,7 @@ C-----------------------------------------------------------------------
COMMON /GBINS/CB1,CB2,DB,TB,YB,EB COMMON /GBINS/CB1,CB2,DB,TB,YB,EB
COMMON /GBINS/CL1,CL2,DL,TL,YL,EL,CH1,CH2,DH,TH,YH,EH COMMON /GBINS/CL1,CL2,DL,TL,YL,EL,CH1,CH2,DH,TH,YH,EH
COMMON /GBINS/CBS1,CBS2,DBS,TBS,YBS,EBS COMMON /GBINS/CBS1,CBS2,DBS,TBS,YBS,EBS
COMMON /ID/ RID
CBS1=(CH1-CL1)/CB1 CBS1=(CH1-CL1)/CB1
CBS2=(CH2-CL2)/CB2 CBS2=(CH2-CL2)/CB2
@ -548,36 +560,36 @@ C-----------------------------------------------------------------------
BSQR(2,I)=0 BSQR(2,I)=0
ENDIF ENDIF
ENDDO ENDDO
CALL GBOOK1( 1,'C-PARAMETER',CB1,CL1,CH1) CALL GBOOK1( 1,'C-PARAMETER_'//RID,CB1,CL1,CH1)
CALL GBOOK1(101,'C-PARAMETER',CB1,CL1,CH1) CALL GBOOK1(101,'C-PARAMETER_'//RID,CB1,CL1,CH1)
CALL GBOOK1(201,'C-PARAMETER',CB1,CL1,CH1) CALL GBOOK1(201,'C-PARAMETER_'//RID,CB1,CL1,CH1)
CALL GBOOK1( 11,'C-PARAMETER',CB2,CL2,CH2) CALL GBOOK1( 11,'C-PARAMETER_'//RID,CB2,CL2,CH2)
CALL GBOOK1(111,'C-PARAMETER',CB2,CL2,CH2) CALL GBOOK1(111,'C-PARAMETER_'//RID,CB2,CL2,CH2)
CALL GBOOK1(211,'C-PARAMETER',CB2,CL2,CH2) CALL GBOOK1(211,'C-PARAMETER_'//RID,CB2,CL2,CH2)
CALL GBOOK1( 2,'D-PARAMETER',DB,DL,DH) CALL GBOOK1( 2,'D-PARAMETER_'//RID,DB,DL,DH)
CALL GBOOK1(102,'D-PARAMETER',DB,DL,DH) CALL GBOOK1(102,'D-PARAMETER_'//RID,DB,DL,DH)
CALL GBOOK1(202,'D-PARAMETER',DB,DL,DH) CALL GBOOK1(202,'D-PARAMETER_'//RID,DB,DL,DH)
CALL GBOOK1( 12,'D-PARAMETER',DB,DL,DH) CALL GBOOK1( 12,'D-PARAMETER_'//RID,DB,DL,DH)
CALL GBOOK1(112,'D-PARAMETER',DB,DL,DH) CALL GBOOK1(112,'D-PARAMETER_'//RID,DB,DL,DH)
CALL GBOOK1(212,'D-PARAMETER',DB,DL,DH) CALL GBOOK1(212,'D-PARAMETER_'//RID,DB,DL,DH)
CALL GBOOK1( 3,'THRUST',TB,TL,TH) CALL GBOOK1( 3,'THRUST_'//RID,TB,TL,TH)
CALL GBOOK1(103,'THRUST',TB,TL,TH) CALL GBOOK1(103,'THRUST_'//RID,TB,TL,TH)
CALL GBOOK1(203,'THRUST',TB,TL,TH) CALL GBOOK1(203,'THRUST_'//RID,TB,TL,TH)
CALL GBOOK1( 13,'THRUST',TB,TL,TH) CALL GBOOK1( 13,'THRUST_'//RID,TB,TL,TH)
CALL GBOOK1(113,'THRUST',TB,TL,TH) CALL GBOOK1(113,'THRUST_'//RID,TB,TL,TH)
CALL GBOOK1(213,'THRUST',TB,TL,TH) CALL GBOOK1(213,'THRUST_'//RID,TB,TL,TH)
CALL GBOOK1( 4,'y3(JADE,P)',YB,YL,YH) CALL GBOOK1( 4,'y3(JADE,P)_'//RID,YB,YL,YH)
CALL GBOOK1(104,'y3(JADE,P)',YB,YL,YH) CALL GBOOK1(104,'y3(JADE,P)_'//RID,YB,YL,YH)
CALL GBOOK1(204,'y3(JADE,P)',YB,YL,YH) CALL GBOOK1(204,'y3(JADE,P)_'//RID,YB,YL,YH)
CALL GBOOK1( 14,'y3(JADE,P)',YB,YL,YH) CALL GBOOK1( 14,'y3(JADE,P)_'//RID,YB,YL,YH)
CALL GBOOK1(114,'y3(JADE,P)',YB,YL,YH) CALL GBOOK1(114,'y3(JADE,P)_'//RID,YB,YL,YH)
CALL GBOOK1(214,'y3(JADE,P)',YB,YL,YH) CALL GBOOK1(214,'y3(JADE,P)_'//RID,YB,YL,YH)
CALL GBOOK1( 5,'EEC',EB,EL,EH) CALL GBOOK1( 5,'EEC_'//RID,EB,EL,EH)
CALL GBOOK1(105,'EEC',EB,EL,EH) CALL GBOOK1(105,'EEC_'//RID,EB,EL,EH)
CALL GBOOK1(205,'EEC',EB,EL,EH) CALL GBOOK1(205,'EEC_'//RID,EB,EL,EH)
CALL GBOOK1( 15,'EEC',EB,EL,EH) CALL GBOOK1( 15,'EEC_'//RID,EB,EL,EH)
CALL GBOOK1(115,'EEC',EB,EL,EH) CALL GBOOK1(115,'EEC_'//RID,EB,EL,EH)
CALL GBOOK1(215,'EEC',EB,EL,EH) CALL GBOOK1(215,'EEC_'//RID,EB,EL,EH)
END END
C----------------------------------------------------------------------- C-----------------------------------------------------------------------
SUBROUTINE DEMOUT(NEV) SUBROUTINE DEMOUT(NEV)