Skip to content

Add Lp-norms as errors #1744

Description

@MichaelClerx

Now have MSE and RMSE, but not L2-norm

class L2Error(pints.ProblemErrorMeasure):
    def __call__(self, x):
        return np.sqrt(np.sum(np.sum((
            self._problem.evaluate(x) - self._values)**2, axis=0), axis=0))

or general version

class LpError(pints.ProblemErrorMeasure):
    def __call__(self, x):
        return np.sum(np.sum((
            self._problem.evaluate(x) - self._values)**p, axis=0), axis=0)**(1/p)

or inf version

class LInfError(pints.ProblemErrorMeasure):
    def __call__(self, x):
        return np.max(np.abs(self._problem.evaluate(x) - self._values))

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions