Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 0 additions & 4 deletions Docs/source/ode_integrators.rst
Original file line number Diff line number Diff line change
Expand Up @@ -70,10 +70,6 @@ Presently, allowed integrators are:

* ``3`` : ROS2S method, a 2nd order, stiff-accurate method :cite:`ros2s`.

* ``4`` : ROS2 method, a 2nd order, L-stable method :cite:`ros2`.

* ``5`` : Rosenbrock-Euler, a first-order method.

Here the "P" suffix refers to methods developed to satisfy the stiff
accuracy conditions of :cite:`Prothero1974` (ROS2S also satisfies
these).
Expand Down
4 changes: 1 addition & 3 deletions integration/Rosenbrock/_parameters
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,7 @@ X_reject_buffer real 1.0
# 0 = Rodas5P 8-stage method from DifferentialEquations.jl
# 1 = Rodas4P 6-stage method from DifferentialEquations.jl
# 2 = Rodas3P 5-stage method from DifferentialEquations.jl
# 3 = existing 3-stage ROS2S tableau
# 4 = Verwer et al. (1999) 2-stage ROS2 tableau
# 5 = Rosenbrock-Euler 1-stage method
# 3 = ROS2S 3-stage method from Hamkar et al. (2012)
rosenbrock_tableau int 0

# H211b timestep controller parameters
Expand Down
6 changes: 0 additions & 6 deletions integration/Rosenbrock/rosenbrock_integrator.H
Original file line number Diff line number Diff line change
Expand Up @@ -597,12 +597,6 @@ int rosenbrock_integrator (BurnT& state, rosenbrock_t<integrator_neqs<BurnT>()>&
if (integrator_rp::rosenbrock_tableau == 3) {
return rosenbrock_integrator<BurnT, rosenbrock::ros2s_tableau>(state, rstate);
}
if (integrator_rp::rosenbrock_tableau == 4) {
return rosenbrock_integrator<BurnT, rosenbrock::ros2_tableau>(state, rstate);
}
if (integrator_rp::rosenbrock_tableau == 5) {
return rosenbrock_integrator<BurnT, rosenbrock::rosenbrock_euler_tableau>(state, rstate);
}

return rosenbrock_integrator<BurnT, rosenbrock::rodas5p_tableau>(state, rstate);
}
Expand Down
78 changes: 0 additions & 78 deletions integration/Rosenbrock/rosenbrock_tableau.H
Original file line number Diff line number Diff line change
Expand Up @@ -66,47 +66,6 @@ struct ros2s_tableau {
}
};

struct ros2_tableau {
static constexpr int stages = 2;
static constexpr amrex::Real gamma = 1.7071067811865475_rt;

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
static constexpr amrex::Real ct (const int i) {
(void) i;
return 1.0_rt;
}

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
static constexpr amrex::Real a (const int i, const int j) {
if (i == 2 && j == 1) {
return 0.585786437626905_rt;
}
return 0.0_rt;
}

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
static constexpr amrex::Real c (const int i, const int j) {
if (i == 2 && j == 1) {
return -1.1715728752538102_rt;
}
return 0.0_rt;
}

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
static constexpr amrex::Real b (const int i) {
if (i == 1) {
return 0.8786796564403575_rt;
}
return 0.2928932188134525_rt;
}

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
static constexpr amrex::Real e (const int i) {
(void) i;
return 0.2928932188134525_rt;
}
};

struct rodas3p_tableau {
static constexpr int stages = 5;
static constexpr amrex::Real gamma = 1.0_rt / 3.0_rt;
Expand Down Expand Up @@ -530,43 +489,6 @@ struct rodas4p_tableau {
}
};

struct rosenbrock_euler_tableau {
static constexpr int stages = 1;
static constexpr amrex::Real gamma = 1.0_rt;

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
static constexpr amrex::Real ct (const int i) {
(void) i;
return 0.0_rt;
}

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
static constexpr amrex::Real a (const int i, const int j) {
(void) i;
(void) j;
return 0.0_rt;
}

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
static constexpr amrex::Real c (const int i, const int j) {
(void) i;
(void) j;
return 0.0_rt;
}

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
static constexpr amrex::Real b (const int i) {
(void) i;
return 1.0_rt;
}

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
static constexpr amrex::Real e (const int i) {
(void) i;
return 1.0_rt;
}
};

using coefficients = rodas5p_tableau;

}
Expand Down
Loading