Skip to content

Releases: Open-Systems-Pharmacology/OSPSuite-R

ospsuite 12.4.3

Choose a tag to compare

@Felixmil Felixmil released this 02 Jun 15:00
315014f

Major changes

  • Computational core libraries updated to match OSPS Version 12 update 3 release.

Minor improvements and bug fixes

  • plotPredictedVsObserved() and plotResidualsVsCovariate() gain a showLegendPerDataset argument ("none", "observed", "all", default "all") to differentiate observed datasets within a group by point shape, consistent with plotTimeProfile() (#1839).
  • plotResidualsVsCovariate(), plotResidualsAsHistogram(), and plotQuantileQuantilePlot() now compute residuals consistently with calculateResiduals(), producing NaN with a warning for zero or negative values on the log scale instead of extreme values (#1713).
  • plotTimeProfile() now defaults to showLegendPerDataset = "all", showing individual dataset names for both observed and simulated data by default (#1844).
  • DataSet$setValues() and plotting functions (plotTimeProfile(), plotPredictedVsObserved(), plotResidualsVsCovariate(), plotResidualsAsHistogram(), plotQuantileQuantilePlot()) now warn and replace negative yErrorValues with NA instead of silently accepting them (#1756).
  • Fixed plotPredictedVsObserved() error bar mapping: when predictedAxis = "x", error bars are now correctly placed on the y-axis (#1715).

ospsuite 12.4.2

Choose a tag to compare

@rengelke rengelke released this 08 Apr 09:39

Major changes

  • Added five new plotting functions powered by {ospsuite.plots}: plotTimeProfile(), plotPredictedVsObserved(), plotResidualsVsCovariate(), plotResidualsAsHistogram(), and plotQuantileQuantilePlot(). These functions accept DataCombined objects or data frames and handle mixed error types and unit conversion directly, without requiring data preprocessing (#1652).
  • The {tlf}-based plotting functions plotIndividualTimeProfile(), plotPopulationTimeProfile(), plotObservedVsSimulated(), plotResidualsVsTime(), and plotResidualsVsSimulated() are now soft-deprecated in favor of the {ospsuite.plots}-based equivalents and will be removed in version 14.0. (#1739)

Minor improvements and bug fixes

  • Fixed validateDimension() error message not showing the actual dimension name (#1822).
  • Plotting functions based on {ospsuite.plots} now produce a warning and return NULL when DataCombined has no plottable entries (#1709).
  • Updated {ospsuite.plots} option key references to match camelCase naming convention (e.g., watermarkEnabled, defaultPercentiles) (#1818).
  • Added addResidualColumn() to unify residual computation across calculateResiduals() and the residual plot functions. Supports "log", "linear" (or "lin"), and "ratio" scaling. For log scaling, zero or negative values now produce NaN with a warning instead of an epsilon-based approximation (#1713).
  • Plotting functions now document all passable ... arguments via @inheritDotParams, improving IDE autocompletion for plotPredictedVsObserved() and plotResidualsAsHistogram() (#1817).
  • Added dataSetsFromDataFrame() function that creates a list of DataSet objects from a data.frame with the same structure as returned by dataSetToDataFrame(). This is the inverse operation of dataSetToDataFrame() and allows creating DataSet objects from data frames without requiring an Excel file. (#1495)
  • Added populationFromDataFrame() function to create a Population object from a data.frame, the reverse of populationToDataFrame(). If no IndividualId column is present, sequential IDs are automatically generated. (#1807)
  • loadDataSetsFromExcel() now accepts a sheets parameter to specify which sheets to load. When sheets = NULL (default), the function uses sheets defined in the importer configuration. If the configuration has no sheets defined, all sheets are loaded. When sheets is a character vector, those specific sheets are loaded, overriding any sheets in the configuration. The importAllSheets parameter is now deprecated and will be removed in version 14 (#1760).
  • toDisplayUnit() now accepts an optional unit parameter to specify the source unit of the values, consistent with toUnit() and toBaseUnit() functions. When not specified, values are assumed to be in base unit (maintaining backward compatibility). (#1762)
  • addOutputs() and setOutputs() now throw an error by default when the provided path is not found. This behavior can be disabled by setting stopIfNotFound = FALSE (#1734).
  • ospUnits$Dimensionless$Unitless and ospUnits$Fraction$Unitless now return an empty string "" instead of the literal string "Unitless" (#1754).
  • Added read-only valueOrigin property to Quantity class (including Parameter and other derived classes) to access the value origin from the underlying .NET object. This is useful for generating automated reports that track parameter value provenance (#1751).
  • createImporterConfigurationForFile() now automatically sets the sheets attribute when a sheet parameter is provided, eliminating the need to manually set it before using loadDataSetsFromExcel() (#1755).
  • Fixed getSteadyState() to correctly apply lowerThreshold for both positive and negative values. The threshold now filters values in the interval [-lowerThreshold, lowerThreshold] instead of only values below the threshold (#1792).
  • runSimulations() now throws an error if any simulation has no output selections defined, instead of silently returning empty results. (#1404)
  • exportResultsToCSV() now validates that the input is a single SimulationResults object and rejects lists of results, preventing downstream .NET interop failures (#1752).

ospsuite 12.4.1

Choose a tag to compare

@PavelBal PavelBal released this 15 Jan 14:15

Breaking changes

  • R version >=4.4 is required
  • ospsuite.utils version >=1.10.0 is required
  • This package no longer re-exports %||%. ospsuite::%||% will not work.

Major changes

  • Computational core libraries updated to match OSPS Version 12 update 2 release.

Minor changes

  • Using native operator %||% instead of importing from the ospsuite.utils package.

ospsuite 12.4.0

Choose a tag to compare

@Felixmil Felixmil released this 21 Nov 13:23

Major changes

  • Added support for macOS (both Intel and Apple Silicon architectures). (#1621)

Minor improvements and bug fixes

  • Added optional names parameter to dataSetToTibble() function to support custom naming of datasets.
    This is particularly useful when multiple datasets have the same original name.
    The naming logic has been moved from the private .dataSetToDataFrame() method in DataCombined
    to dataSetToTibble() for better code reuse and maintainability. (#1627)

ospsuite 12.3.2

Choose a tag to compare

@Felixmil Felixmil released this 23 Sep 14:48
3d8287b

Minor improvements and bug fixes

  • OSPSuite binaries were updated to match OSPSuite v12.1 release.

ospsuite 12.3.1

Choose a tag to compare

@Felixmil Felixmil released this 07 Aug 14:41
b83b753

Minor improvements and bug fixes

ospsuite 12.3.0

Choose a tag to compare

@Felixmil Felixmil released this 24 Jul 09:46
4316f24

Breaking changes

  • {ospsuite} now requires {ospsuite.utils} version >= 1.7.0.
  • Classes SimulationBatchRunValues and SimulationBatchOptions are not exported any more.
    They should not be used directly.

Major changes

  • DataImporterConfiguration now supports getting and setting of the Lower Limit
    of Quantification (LLOQ) column name via
    a new field lloqColumn. If the column name is not set (value NULL), LLOQ values
    will be imported from the measurement column if values are written in the form '< xxx' (e.g., '<0.001').
    Otherwise, the values will be imported from the specified column (#722)

Minor improvements and bug fixes

  • Added showLegendPerDataset parameter to plotIndividualTimeProfile() and
    plotPupulationTimeProfile() to optionally display separate legend entries for
    each dataset. This is experimental.
  • Improved print outputs for all classes
  • Classes do not inherit from the deprecated Printable class from the {ospsuite.utils} package.
  • Print methods for all classes are now implemented using the ospPrint\* functions
    introduced in version 1.6.2. of the {ospsuite.utils} package.
  • ParameterRange$printValue() is deprecated. Use getPrintValue() in conjunction with a print method of your choice.
  • Private method Quantity$printQuantity() removed. Quantity$printValue() and Quantity$printQuantityValue() are
    deprecated. Use getPrintValue() in conjunction with a print method of your choice.
  • SnapshotParameter$printValue() is deprecated. Use getPrintValue() in conjunction with a print method of your choice.
  • Added snapshot tests for all print methods.
  • calculateResiduals() for DataCombined now supports full pairwise residual
    computation between multiple observed and simulated datasets within a group.
  • The name property of a Simulation can now be changed (#1245)
  • calculateResiduals now handles single-point simulated datasets via direct
    x-value matching instead of interpolation. Unmatched observed x-values return
    NA (#1559).

Built Packages (R 4.5.1)

ospsuite 12.2.0

Choose a tag to compare

@PavelBal PavelBal released this 10 Feb 11:53
e38a4dc

Note

If you are upgrading from version 11 of the package, read the release notes 12.1 for the full list of changes.

Major Changes

  • New runSimulationsFromSnapshot() to run simulations from .json snapshots files,
  • New convertSnapshot() to convert project snapshots between .json and .pksim5 files.
  • New getMolWeightFor() to retrieve molecular weight for molecule of Quantity.

ospsuite 12.1.0

Choose a tag to compare

@Felixmil Felixmil released this 26 Jul 12:40
3b49493

Warning: Simulations saved with this pre-release (and all versions >=12) with saveSimulation() cannot be opened with MoBi versions >12! Currently, only a non-qualified development version 12 of MoBi is available.

Major Changes

  • The package fully supports Linux.
  • The package loses dependency {rClr} and gains {rSharp}.
  • The package does not require a local installation of PK-Sim any more. All required
    dependencies are shipped with the package.

ospsuite 12.0.0

Breaking Changes

  • Based on the Open Systems Pharmacology Suite v12
  • The single argument of the getBaseUnit() function is now named
    quantityOrDimension (was dimension previously). It can now use objects
    of class Quantity as inputs, to be consistent with the toBaseUnit()
    function.

Major Changes

  • The package gains {openxlsx} and {lifecyle} dependencies.
  • Added a function getSteadyState() to calculate steady state values for
    simulations. This function is of particular use for models of endogenous
    substrates, where changing a parameter value (e.g., the production rate)
    will change the steady-state values of the substrate. The steady-state is
    considered to be the last values of the molecules amounts and state variable
    parameters in the simulation with sufficiently long simulation time, i.e.,
    where the rates of the processes do not (significantly) change. The
    steady-state is NOT analytically calculated or estimated in any other way
    than simulating for the given time.
  • Added a function exportSteadyStateToXLS() to export steady state values
    calculated for one simulation using the getSteadyState() to an Excel file
    that can be imported in MoBi.
  • Lower limit of quantification (LLOQ) is plotted as dotted lines for
    plotIndividualTimeProfile() and plotPopulationTimeProfile().
  • plotPopulationTimeProfile() provides two new aggregations methods:
    arithmetic and geometric average and the ability to chose the number of
    standard deviations to display around the mean through the nsd argument.
  • Function calculateResiduals() uses natural logarithm (log()) when
    calculating residuals with scaling = "log" as opposed to log10() as it
    was done before. This also affects figures created by
    plotObservedVsSimulated(), plotResidualsVsSimulated(), and
    plotResidualsVsTime(). (#1091, #1087).
  • plotPopulationTimeProfile() has a new aggregation argument that allow
    the user to choose between quantiles, arithmetic and geometric aggregations
    of y.

Minor improvements and bug fixes

  • Named Simulation lists can be passed to runSimulations() so that the
    results are returned as a named list using the same names instead of the
    simulation id. If no name is provided, the simulation id is used as before.
    (#1383)
  • The order of columns of the data frame returned by
    DataCombined$toDataFrame() has changed.
  • DataCombined$toDataFrame()
    shows the data in the order as the data sets were added and not
    alphabetically sorted.
  • DataCombined$removeGroupAssignment() does not show a warning if specified name is
    not present in the DataCombined.
  • DataCombined$removeGroupAssignment()
    does not produce an error if specified names are not unique.
  • Fixed Passing font size options from plotConfiguration objects to tlf
    objects (#1198)
  • Legend now have transparent background by default and can be customized
    through new DefaultPlotConfiguration fields (#1216)
  • plotObsVsPred() now have foldDistance argument set to NULL by default
    (previously 2). The function will not add any fold lines on the plot by
    default but display identity line. Set this argument to FALSE to not draw
    any lines.
  • DefaultPlotConfiguration has a new setting: displayLLOQ (default TRUE)
    to control plotting of LLOQ lines.
  • DefaultPlotConfiguration's xLimits and yLimits arguments are
    deprecated and replaced by xAxisLimits and yAxisLimits. Use them to zoom
    in the plot while preserving all data points. Use xValuesLimits and
    yValuesLimits to filter out data point outside of these range. More
    detailed explanations
    here.
  • addSimulationResults and addDataSets methods of the DataCombined class
    now support an optional silent argument which silences the checks for data
    set names. If you expect to replace data sets in DataCombined objects
    repeatedly, consider switching the parameter from the default FALSE value
    to TRUE.
  • simulationResultsToDataFrame() is faster than before (#1317, @Felixmil).
  • DataCombined gets a new method setDataTypes() to change data types
    (observed or simulated) for existing data sets. This method is useful when
    you want to enforce a certain data type, e.g., for adding artificial data
    set as simulated results.
  • New function setOutputs() to change outputs of SimulationBatch objects.
    It combines clearOutputs() and setOutputs() in one function.
  • New simulations life cycle flowcharts in the
    vignette("efficient-calculations") vignette.
  • New internal function .setEndSimulationTime() to set the end time of the
    simulation. The function will either extend or shorten the simulation time to the specified end time.
  • Using runSimulation() is now soft deprecated in favor of runSimulations().

Version 11.3.520

Choose a tag to compare

@Yuri05 Yuri05 released this 11 Apr 17:05
50944cc

Installation

Documentation

https://www.open-systems-pharmacology.org/OSPSuite-R/

What's Changed

Full Changelog: v11.2.251...v11.3.520