Skip to content

Commit d69b9eb

Browse files
committed
v2: Remove parameter scale
parameterScale no longer exists in PEtab v2.
1 parent 153f2bd commit d69b9eb

File tree

2 files changed

+3
-125
lines changed

2 files changed

+3
-125
lines changed

petab/v2/C.py

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -69,8 +69,6 @@
6969
PARAMETER_ID = "parameterId"
7070
#: Parameter name column in the parameter table
7171
PARAMETER_NAME = "parameterName"
72-
#: Parameter scale column in the parameter table
73-
PARAMETER_SCALE = "parameterScale"
7472
#: Lower bound column in the parameter table
7573
LOWER_BOUND = "lowerBound"
7674
#: Upper bound column in the parameter table
@@ -87,7 +85,6 @@
8785
#: Mandatory columns of parameter table
8886
PARAMETER_DF_REQUIRED_COLS = [
8987
PARAMETER_ID,
90-
PARAMETER_SCALE,
9188
LOWER_BOUND,
9289
UPPER_BOUND,
9390
ESTIMATE,

petab/v2/problem.py

Lines changed: 3 additions & 122 deletions
Original file line numberDiff line numberDiff line change
@@ -466,15 +466,6 @@ def get_optimization_parameters(self) -> list[str]:
466466
"""
467467
return [p.id for p in self.parameter_table.parameters if p.estimate]
468468

469-
def get_optimization_parameter_scales(self) -> dict[str, str]:
470-
"""
471-
Return list of optimization parameter scaling strings.
472-
473-
See :py:func:`petab.parameters.get_optimization_parameters`.
474-
"""
475-
# TODO: to be removed in v2?
476-
return parameters.get_optimization_parameter_scaling(self.parameter_df)
477-
478469
def get_observable_ids(self) -> list[str]:
479470
"""
480471
Returns dictionary of observable ids.
@@ -539,9 +530,7 @@ def x_fixed_ids(self) -> list[str]:
539530
"""Parameter table parameter IDs, for fixed parameters."""
540531
return self.get_x_ids(free=False)
541532

542-
def get_x_nominal(
543-
self, free: bool = True, fixed: bool = True, scaled: bool = False
544-
) -> list:
533+
def get_x_nominal(self, free: bool = True, fixed: bool = True) -> list:
545534
"""Generic function to get parameter nominal values.
546535
547536
Parameters
@@ -551,9 +540,6 @@ def get_x_nominal(
551540
fixed:
552541
Whether to return fixed parameters, i.e. parameters not to
553542
estimate.
554-
scaled:
555-
Whether to scale the values according to the parameter scale,
556-
or return them on linear scale.
557543
558544
Returns
559545
-------
@@ -564,10 +550,6 @@ def get_x_nominal(
564550
for p in self.parameter_table.parameters
565551
]
566552

567-
if scaled:
568-
v = list(
569-
parameters.map_scale(v, self.parameter_df[PARAMETER_SCALE])
570-
)
571553
return self._apply_mask(v, free=free, fixed=fixed)
572554

573555
@property
@@ -585,28 +567,7 @@ def x_nominal_fixed(self) -> list:
585567
"""Parameter table nominal values, for fixed parameters."""
586568
return self.get_x_nominal(free=False)
587569

588-
@property
589-
def x_nominal_scaled(self) -> list:
590-
"""Parameter table nominal values with applied parameter scaling"""
591-
return self.get_x_nominal(scaled=True)
592-
593-
@property
594-
def x_nominal_free_scaled(self) -> list:
595-
"""Parameter table nominal values with applied parameter scaling,
596-
for free parameters.
597-
"""
598-
return self.get_x_nominal(fixed=False, scaled=True)
599-
600-
@property
601-
def x_nominal_fixed_scaled(self) -> list:
602-
"""Parameter table nominal values with applied parameter scaling,
603-
for fixed parameters.
604-
"""
605-
return self.get_x_nominal(free=False, scaled=True)
606-
607-
def get_lb(
608-
self, free: bool = True, fixed: bool = True, scaled: bool = False
609-
):
570+
def get_lb(self, free: bool = True, fixed: bool = True):
610571
"""Generic function to get lower parameter bounds.
611572
612573
Parameters
@@ -616,9 +577,6 @@ def get_lb(
616577
fixed:
617578
Whether to return fixed parameters, i.e. parameters not to
618579
estimate.
619-
scaled:
620-
Whether to scale the values according to the parameter scale,
621-
or return them on linear scale.
622580
623581
Returns
624582
-------
@@ -628,25 +586,14 @@ def get_lb(
628586
p.lb if p.lb is not None else nan
629587
for p in self.parameter_table.parameters
630588
]
631-
if scaled:
632-
v = list(
633-
parameters.map_scale(v, self.parameter_df[PARAMETER_SCALE])
634-
)
635589
return self._apply_mask(v, free=free, fixed=fixed)
636590

637591
@property
638592
def lb(self) -> list:
639593
"""Parameter table lower bounds."""
640594
return self.get_lb()
641595

642-
@property
643-
def lb_scaled(self) -> list:
644-
"""Parameter table lower bounds with applied parameter scaling"""
645-
return self.get_lb(scaled=True)
646-
647-
def get_ub(
648-
self, free: bool = True, fixed: bool = True, scaled: bool = False
649-
):
596+
def get_ub(self, free: bool = True, fixed: bool = True):
650597
"""Generic function to get upper parameter bounds.
651598
652599
Parameters
@@ -656,9 +603,6 @@ def get_ub(
656603
fixed:
657604
Whether to return fixed parameters, i.e. parameters not to
658605
estimate.
659-
scaled:
660-
Whether to scale the values according to the parameter scale,
661-
or return them on linear scale.
662606
663607
Returns
664608
-------
@@ -668,22 +612,13 @@ def get_ub(
668612
p.ub if p.ub is not None else nan
669613
for p in self.parameter_table.parameters
670614
]
671-
if scaled:
672-
v = list(
673-
parameters.map_scale(v, self.parameter_df[PARAMETER_SCALE])
674-
)
675615
return self._apply_mask(v, free=free, fixed=fixed)
676616

677617
@property
678618
def ub(self) -> list:
679619
"""Parameter table upper bounds"""
680620
return self.get_ub()
681621

682-
@property
683-
def ub_scaled(self) -> list:
684-
"""Parameter table upper bounds with applied parameter scaling"""
685-
return self.get_ub(scaled=True)
686-
687622
@property
688623
def x_free_indices(self) -> list[int]:
689624
"""Parameter table estimated parameter indices."""
@@ -752,56 +687,6 @@ def sample_parameter_startpoints_dict(
752687
)
753688
]
754689

755-
# TODO: remove in v2?
756-
def unscale_parameters(
757-
self,
758-
x_dict: dict[str, float],
759-
) -> dict[str, float]:
760-
"""Unscale parameter values.
761-
762-
Parameters
763-
----------
764-
x_dict:
765-
Keys are parameter IDs in the PEtab problem, values are scaled
766-
parameter values.
767-
768-
Returns
769-
-------
770-
The unscaled parameter values.
771-
"""
772-
return {
773-
parameter_id: parameters.unscale(
774-
parameter_value,
775-
self.parameter_df[PARAMETER_SCALE][parameter_id],
776-
)
777-
for parameter_id, parameter_value in x_dict.items()
778-
}
779-
780-
# TODO: remove in v2?
781-
def scale_parameters(
782-
self,
783-
x_dict: dict[str, float],
784-
) -> dict[str, float]:
785-
"""Scale parameter values.
786-
787-
Parameters
788-
----------
789-
x_dict:
790-
Keys are parameter IDs in the PEtab problem, values are unscaled
791-
parameter values.
792-
793-
Returns
794-
-------
795-
The scaled parameter values.
796-
"""
797-
return {
798-
parameter_id: parameters.scale(
799-
parameter_value,
800-
self.parameter_df[PARAMETER_SCALE][parameter_id],
801-
)
802-
for parameter_id, parameter_value in x_dict.items()
803-
}
804-
805690
@property
806691
def n_estimated(self) -> int:
807692
"""The number of estimated parameters."""
@@ -943,7 +828,6 @@ def add_parameter(
943828
id_: str,
944829
estimate: bool | str = True,
945830
nominal_value: Number | None = None,
946-
scale: str = None,
947831
lb: Number = None,
948832
ub: Number = None,
949833
prior_dist: str = None,
@@ -956,7 +840,6 @@ def add_parameter(
956840
id_: The parameter id
957841
estimate: Whether the parameter is estimated
958842
nominal_value: The nominal value of the parameter
959-
scale: The parameter scale
960843
lb: The lower bound of the parameter
961844
ub: The upper bound of the parameter
962845
prior_dist: The type of the prior distribution
@@ -970,8 +853,6 @@ def add_parameter(
970853
record[ESTIMATE] = estimate
971854
if nominal_value is not None:
972855
record[NOMINAL_VALUE] = nominal_value
973-
if scale is not None:
974-
record[PARAMETER_SCALE] = scale
975856
if lb is not None:
976857
record[LOWER_BOUND] = lb
977858
if ub is not None:

0 commit comments

Comments
 (0)