Skip to content

Commit

Permalink
Add a free alias for parameters that are not fixed
Browse files Browse the repository at this point in the history
  • Loading branch information
AndrewSazonov committed Oct 29, 2024
1 parent 6c44d07 commit f61d090
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 0 deletions.
9 changes: 9 additions & 0 deletions src/easyscience/Objects/Variable.py
Original file line number Diff line number Diff line change
Expand Up @@ -503,6 +503,7 @@ def __init__(
min: Optional[numbers.Number] = -np.inf,
max: Optional[numbers.Number] = np.inf,
fixed: Optional[bool] = False,
free: Optional[bool] = True,
**kwargs,
):
"""
Expand Down Expand Up @@ -721,6 +722,14 @@ def fixed(self, value: bool):
raise ValueError
self._fixed = value

@property
def free(self) -> bool:
return not self.fixed

@free.setter
def free(self, value: bool) -> None:
self.fixed = not value

@property
def error(self) -> float:
"""
Expand Down
9 changes: 9 additions & 0 deletions src/easyscience/Objects/new_variable/parameter.py
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@ def __init__(
min: Optional[numbers.Number] = -np.inf,
max: Optional[numbers.Number] = np.inf,
fixed: Optional[bool] = False,
free: Optional[bool] = True,
unique_name: Optional[str] = None,
description: Optional[str] = None,
url: Optional[str] = None,
Expand Down Expand Up @@ -301,6 +302,14 @@ def fixed(self, fixed: bool) -> None:
raise ValueError(f'{fixed=} must be a boolean. Got {type(fixed)}')
self._fixed = fixed

@property
def free(self) -> bool:
return not self.fixed

@free.setter
def free(self, value: bool) -> None:
self.fixed = not value

@property
def bounds(self) -> Tuple[numbers.Number, numbers.Number]:
"""
Expand Down

0 comments on commit f61d090

Please sign in to comment.