Skip to content

Commit 961fb86

Browse files
Apply suggestions from code review
Co-authored-by: Joshua Lampert <51029046+JoshuaLampert@users.noreply.github.com>
1 parent 51fd725 commit 961fb86

1 file changed

Lines changed: 5 additions & 5 deletions

File tree

paper/paper.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ Unfortunately, positivity is a property that almost all standard time integratio
3939
In particular, higher-order general linear methods cannot preserve positivity unconditionally [@bolley1978conservation].
4040
The only standard scheme with which unconditional positivity can be achieved is the implicit Euler method
4141
(assuming that the nonlinear systems are solved exactly). However, this is only first-order accurate and, in addition, the preservation of positivity within the nonlinear iteration process poses a problem.
42-
Another strategy for preserving positivity used in existing open source or commercial packages (like MATLAB) is to set negative solution components that are accepted by the step size control to zero. Unfortunately, this can have a negative impact on possible conservation properties. Further approaches in the literature include projections in between time steps [@sandu2001positive; @nusslein2021positivity], if a negative solution was computed, or it is tried to reduce the time step size as long as a non-negative solution is calculated. Finally, strong stability preserving (SSP) methods can also be used to preserve positivity, but this is again subject to step size limitations [@gottlieb2011strong].
42+
Another strategy for preserving positivity used in existing open source or commercial packages (like MATLAB) is to set negative solution components that are accepted by the step size control to zero. Unfortunately, this can have a negative impact on possible conservation properties. Further approaches in the literature include projections in between time steps [@sandu2001positive; @nusslein2021positivity], if a negative solution was computed, or it is tried to reduce the time step size as long as a nonnegative solution is calculated. Finally, strong stability preserving (SSP) methods can also be used to preserve positivity, but this is again subject to step size limitations [@gottlieb2011strong].
4343

4444
Consequently, various new, unconditionally positive schemes have been introduced in recent years, see @burchard2003, @Bruggeman2007, @Broekhuizen2008, @Formaggia2011, @Ortleb2017, @kopeczmeister2018order2, @kopeczmeister2018order3, @huang2019order2, @huang2019order3, @OeffnerTorlo2020, @Martiradonna2020, @Avila2020, @Avila2021, @Blanes2022, @Zhu2024, @Izzo2025, and @Izgin2025. Among these, most of the literature is devoted to modified Patankar--Runge--Kutta (MPRK) methods.
4545

@@ -56,7 +56,7 @@ The package offers implementations of conservative as well as non-conservative p
5656
Currently, the package contains the following methods:
5757

5858
- The MPRK methods `MPE`, `MPRK22`, `MPRK43I`, and `MPRK43II` of @kopeczmeister2018order2 and @kopeczmeister2018order3 are based on the classical formulation of Runge--Kutta schemes and have accuracies from first to third order.
59-
- The MPRK methods `SSPMPRK22` and `SSPMPRK43` of @huang2019order2 and @huang2019order3 are based on the SSP formulation of Runge--Kutta schemes and are of second or third order.
59+
- The MPRK methods `SSPMPRK22` and `SSPMPRK43` of @huang2019order2 and @huang2019order3 are based on the SSP formulation of Runge--Kutta schemes and are of second and third order, respectively.
6060
- The `MPDeC` methods of @OeffnerTorlo2020 combine the deferred correction approach with the idea of MPRK schemes to obtain schemes of arbitrary order. In the package methods from second up to 10th order are implemented.
6161

6262
In addition, all implemented methods have been extended so that non-conservative and non-autonomous PDS can be solved as well. Furthermore, adaptive step size control is available for almost all schemes.
@@ -71,11 +71,11 @@ Starting from a low-order method, the deferred correction approach can be used t
7171

7272
The implemented methods were originally introduced for conservative production-destruction systems only. An extension to non-conservative production-destruction systems was presented by @benzmeister2015. We implemented a modification of this algorithm, by treating the non-conservative production and destruction terms separately, weighting the destruction terms and leaving the production terms unweighted.
7373

74-
Readers interested in additional theoretical background, further properties of the implemented schemes, and some applications are referred to the publications of @kopeczmeister2019, @izgin2022stability1, @izgin2022stability2, @huang2023, @torlo2022, @izginoeffner2023, and @bartel2024structure.
74+
Readers interested in additional theoretical background, further properties of the implemented schemes, and some applications are referred to the publications of @kopeczmeister2019, @izgin2022stability1, @izgin2022stability2, @huang2023, @torlo2022, and @izginoeffner2023. PositiveIntegrators.jl was successfully applied in the work of @bartel2024structure to solve Fokker-Planck equations, ensuring the positivity of the unknown quantities.
7575

7676
Existing software libraries do not have a strong focus on unconditional positivity and, to the authors' knowledge, there is no other software library which offers MPRK schemes.
77-
A common strategy to obtain nonnegative solutions used in the `PositiveDomain` callback of Differentialequtions.jl or the commercial package MATLAB is described by @Shampine2005. In this approach negative components of approximate solutions that have been accepted by the adaptive time stepping algorithm are set to zero.
78-
Another possibility is to reduce the chosen time step size beyond accuracy considerations until a non-negative approximation is calculated. This can be achieved in DifferentialEquations.jl using the solver option `isoutofdomain`.
77+
A common strategy to obtain nonnegative solutions used in the `PositiveDomain` callback of DifferentialEquations.jl or the commercial package MATLAB is described by @Shampine2005. In this approach negative components of approximate solutions that have been accepted by the adaptive time stepping algorithm are set to zero.
78+
Another possibility is to reduce the chosen time step size beyond accuracy considerations until a nonnegative approximation is calculated. This can be achieved in DifferentialEquations.jl using the solver option `isoutofdomain`.
7979

8080
We also mention that some papers on MPRK schemes offer supplementary codes. However, these are mainly small scripts for the reproduction of results shown in the papers and are not intended as software libraries.
8181

0 commit comments

Comments
 (0)