CLIMADA-Return Period outputs do not match impact exceedance curve

84 Views Asked by At

I'm calculating return period impacts for a single line of exposure in CLIMADA. I got the below output. enter image description here

For the same data set, I tried to output the Exceedanc frequency curve ,which should normaly match the return period data. But there is no match.

enter image description here

I tried to manipulate the return period inputs by changing the range. But nothing happened. I tried to go over codes used to output the return period showb below;

def local_exceedance_imp(self, return_periods=(25, 50, 100, 250)): """Compute exceedance impact map for given return periods. Requires attribute imp_mat.

    Parameters
    ----------
    return_periods : Any, optional
        return periods to consider
        Dafault is (25, 50, 100, 250)

    Returns
    -------
    np.array
    """
    LOGGER.info('Computing exceedance impact map for return periods: %s',
                return_periods)
    if self.imp_mat.size == 0:
        raise ValueError('Attribute imp_mat is empty. Recalculate Impact'
                         'instance with parameter save_mat=True')
    num_cen = self.imp_mat.shape[1]
    imp_stats = np.zeros((len(return_periods), num_cen))
    cen_step = CONFIG.max_matrix_size.int() // self.imp_mat.shape[0]
    if not cen_step:
        raise ValueError('Increase max_matrix_size configuration parameter to > '
                         f'{self.imp_mat.shape[0]}')
    # separte in chunks
    chk = -1
    for chk in range(int(num_cen / cen_step)):
        self._loc_return_imp(np.array(return_periods),
                             self.imp_mat[:, chk * cen_step:(chk + 1) * cen_step].toarray(),
                             imp_stats[:, chk * cen_step:(chk + 1) * cen_step])
    self._loc_return_imp(np.array(return_periods),
                         self.imp_mat[:, (chk + 1) * cen_step:].toarray(),
                         imp_stats[:, (chk + 1) * cen_step:])

    return imp_stats
1

There are 1 best solutions below

0
On

In the second picture you did recompute the return period curve for the default values of (25, 50, 100, 250). This is different from your first picture with values of (100, 200, 300, 500).