1+ from __future__ import annotations
2+
13from abc import abstractmethod
24
3- from typing import Union , List , Optional
5+ from typing import Union , List
46
57import numpy as np
68
@@ -25,14 +27,11 @@ def fix_all_parameters(self):
2527 """Fix all parameters in the model component."""
2628
2729 pars = self .get_parameters ()
28- if pars is None or len (pars ) == 0 :
29- raise ValueError ("No parameters found to fix." )
30- else :
31- for p in pars :
32- p .fixed = True
30+ for p in pars :
31+ p .fixed = True
3332
34- def fit_all_parameters (self ):
35- """Fit all parameters in the model component."""
33+ def free_all_parameters (self ):
34+ """Free all parameters in the model component."""
3635 for p in self .get_parameters ():
3736 p .fixed = False
3837
@@ -66,49 +65,6 @@ def get_parameter(self, parameter_name: str) -> Parameter:
6665 else :
6766 raise ValueError (f"Parameter '{ parameter_name } ' not found." )
6867
69- def set_parameter_value (
70- self , parameter_name : str , value : float , unit : Optional [str ] = None
71- ):
72- """
73- Set the value of a specific parameter by name.
74- """
75- param = self .get_parameter (parameter_name )
76- if unit is not None :
77- param .convert_unit (unit )
78- param .value = value
79-
80- def set_parameter_bounds (
81- self ,
82- parameter_name : str ,
83- min : Union [float , None ] = None ,
84- max : Union [float , None ] = None ,
85- unit : Optional [str ] = None ,
86- ):
87- """
88- Set the bounds of a specific parameter by name.
89- """
90- param = self .get_parameter (parameter_name )
91- if unit is not None :
92- param .convert_unit (unit )
93- if min is not None :
94- param .min = min
95- if max is not None :
96- param .max = max
97-
98- def fix_parameter (self , parameter_name : str ):
99- """
100- Fix a specific parameter by name.
101- """
102- param = self .get_parameter (parameter_name )
103- param .fixed = True
104-
105- def free_parameter (self , parameter_name : str ):
106- """
107- Free a specific parameter by name.
108- """
109- param = self .get_parameter (parameter_name )
110- param .fixed = False
111-
11268 @abstractmethod
11369 def evaluate (self , x : Union [Numeric , sc .Variable ]) -> np .ndarray :
11470 """
@@ -135,7 +91,7 @@ def get_parameters(self) -> List[Parameter]:
13591 pass
13692
13793 @abstractmethod
138- def copy (self ) -> " ModelComponent" :
94+ def copy (self ) -> ModelComponent :
13995 """
14096 Return a deep copy of this component with independent parameters.
14197 """
0 commit comments