whizard is hosted by Hepforge, IPPP Durham

Opened 14 years ago

Closed 13 years ago

#376 closed defect (fixed)

Scan over varying cuts doesn't work.

Reported by: kilian Owned by: kilian
Priority: P2 Milestone: v2.0.5
Component: core Version: 2.0.3
Severity: normal Keywords:
Cc:

Description

A construct such as

scan real ptcut = (10, 20, 30) {
   integrate (foo) { cuts = all Pt > ptcut [...] }
}

doesnt' work; the r.h.s. of the cuts assignment is evaluated only once.

(This needs to be checked!)

Change History (8)

comment:1 Changed 14 years ago by Juergen Reuter

Priority: P4P1

Since this is a possible bug, should be the next one.

comment:2 Changed 14 years ago by Juergen Reuter

Priority: P1P2

comment:3 Changed 14 years ago by Juergen Reuter

Milestone: v2.0.4v2.0.5

comment:4 Changed 13 years ago by Juergen Reuter

Confirmed this. Take the example:

model = SM

process foo = e1, E1 => e2, E2

compile 

sqrts = 500 GeV

 scan real ptcut = (200,220,240) {
      integrate (foo) { cuts = all Pt > ptcut [e2] }
 }

The values for the cross sections are 215 fb, 164 and 92 fb. Only the first value of the cuts is taken in the scan loop.

comment:5 Changed 13 years ago by Juergen Reuter

Funnily, this works as intended:

model = SM

process foo = e1, E1 => e2, E2

compile 

sqrts = 500 GeV

 scan real ptcut = (200,220,240) {
      cuts = all Pt > ptcut [e2]
      integrate (foo) 
 }

comment:6 Changed 13 years ago by kilian

Status: newassigned

That was a red herring.

It doesn't matter whether it's a scan or an explicit list, or where the cut assignment is located.

The real point is: in the first run, all is well, but when the results are read from file, the system doesn't notice the change of cuts and just repeats the last result over and over. It's clear why: The expression defining the cuts doesn't change, and this is used for determining whether cuts have changed. The numerical value ptcut is not part of the cut definition.

So, we learn that the MD5sum for cuts has to include the numerical values. It would also be helpful to have tags for individual runs.

comment:7 Changed 13 years ago by Juergen Reuter

I also recognized that recently that even without a scan changing the cuts is not recognized by WHIZARD and the grids are not redone.

comment:8 Changed 13 years ago by kilian

Resolution: fixed
Status: assignedclosed

OK, the immediate fix turned out to be simple. Done in r3112.

Independently, it would be useful to store/retrieve grids for individual runs, not just one per process.

Note: See TracTickets for help on using tickets.