parameter file errors

Issue #552 resolved
Frank Löffler created an issue

Cactus should not abort when parameter is set twice in parameter file, to the same value.

Currently, Cactus aborts when that happens. While this is most certainly an oversight by the user, aborting is just annoying the user by stealing queue-time. I propose to make this a lvl-1 warning instead. If I set a parameter twice, to the same value, I certainly would like to have that parameter set to that value. Cactus should complain, but not abort because of that.

This would have to be changed most certainly in src/main/SetParams.c in a couple of places.

Keyword:

Comments (4)

  1. Erik Schnetter
    • removed comment

    Cactus has three levels of parameter checking -- strict, normal, and relaxed. Since this level needs to be chosen before the parameter file is parsed, it is a command line option. A while ago we changed the default to "strict" because the other options turned out to be confusing, and thus were stealing queue-time from users.

    If you set your parameter checking level to "normal", you can set parameters twice to the same value without aborting the simulation.

    I assume you will want to define a new level between "strict" and "normal", or change the behaviour of "normal" to disallow certain things that are currently allowed.

  2. Frank Löffler reporter
    • removed comment

    I suppose it would be better to change the 'normal' setting to something most users would actually want, and make this the default. What that exactly is might be different for different people. For me, it would be the current strict setting, with the modifications:

    - parameter has already been set to the same value in the parfile -> lvl 1 warning

    This is because I think the 'normal' mode should abort with errors in a parameter file, but I don't consider a repitition a real error here. 'strict' would then be for cases which should be picky, like running testsuites.

    It's probably best to bring to issue to the Cactus users mailing list.

  3. Roland Haas repo owner
    • removed comment

    I have to admit that I have had quite a number of times where I copied and pasted a section of the parameter file (say a detector radius or something similar) wanting to add a new detector. More often than I like to admit I forgot to bump say the detector number somewhere in the copied section and do actually end up setting a parameter to the same value twice. However in this case this is an actual error since I really wanted to set two different parameters (say detecter_every[0] and detector_every[1]) to the identical values.

    So for, me the current behaviour while sometimes annoying, has been very helpful more often than that. A level 1 warning might be lost in the slew of initial output and warnings I fear.

  4. Log in to comment