Skip to content
Snippets Groups Projects

Options

Merged Michele Nottoli requested to merge options into main
2 files
+ 12
6
Compare changes
  • Side-by-side
  • Inline
Files
2
+ 10
5
"""Module which provides functionality to perform fitting."""
import abc
from typing import List
import numpy as np
import abc
class AbstractFitting(abc.ABC):
"""Base class for fitting schemes."""
def __init__(self, **kwargs):
self.set_options(**kwargs)
@@ -35,6 +37,7 @@ class LeastSquare(AbstractFitting):
}
def set_options(self, **kwargs):
"""Set options for least square minimization"""
self.options = {}
for key, value in kwargs.items():
if key in self.supported_options:
@@ -43,7 +46,7 @@ class LeastSquare(AbstractFitting):
raise ValueError(f"Unsupported option: {key}")
for option, default_value in self.supported_options.items():
if not option in self.options:
if option not in self.options:
self.options[option] = default_value
if self.options["regularization"] < 0 \
@@ -59,8 +62,10 @@ class LeastSquare(AbstractFitting):
class QuasiTimeReversible(AbstractFitting):
def set_options(**kwargs):
"""TODO"""
"""Quasi time reversible fitting scheme. Not yet implemented."""
def compute(self):
def set_options(self, **kwargs):
"""Set options for quasi time reversible fitting"""
def compute(self, vectors: List[np.ndarray], target: np.ndarray):
"""Time reversible least square minimization fitting."""
Loading