Skip to content

Consider providing more information for the error condition in regenerate_with_check #1004

@lcrippa

Description

@lcrippa

Summary

In a simulation I was running I repeatedly ran, on some cores, into the TRIQS_RUNTIME_ERROR "ERROR in det_manip regenerate: Determinant is singular" at line 1164 of det_mainp.hpp. This was the combined effect of the expansion order being rather large (~100) and the magnitude of the elements being small (10^-3). It was simply fixed by rescaling beta and energy units in my simulation, but I wouldn't have realized that if I didn't patch the code to print the value of the determinant.

Motivation

The code correctly exits with error, but the information on the origin of the error could be more exhaustive

Implementation

I would suggest to, at least, print the value of the determinant in the error message. This would give the user a hint as to whether the error comes from numerical over/underflow or a more fundamental issue.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions