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 ca852af
Show file tree
Hide file tree
Showing 3 changed files with 19 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
1 change: 1 addition & 0 deletions tests/unit_tests/Objects/new_variable/test_parameter.py
Original file line number Diff line number Diff line change
Expand Up @@ -328,6 +328,7 @@ def test_as_data_dict(self, clear, parameter: Parameter):
"min": 0,
"max": 10,
"fixed": False,
"free": True,
"description": "description",
"url": "url",
"display_name": "display_name",
Expand Down

0 comments on commit ca852af

Please sign in to comment.