Source code for lpspline.penalties.base

import abc
from typing import List
from ..spline import Spline
from cvxpy import Expression

[docs] class Penalty(abc.ABC): """ Abstract base class defining the algorithmic penalty interface. """
[docs] @abc.abstractmethod def build_penalty(self, s: Spline) -> List[Expression]: """ Builds CVXPY objective cost penalty combinations given the current spline. Parameters ---------- s : Spline The Spline instance determining optimization variables. Returns ------- List[Expression] A list containing numeric cost formulations. """ pass