From ca48af6971274683347ca246ad25a877e74c41bd Mon Sep 17 00:00:00 2001 From: Andrei Punko Date: Fri, 18 Oct 2024 13:41:59 +0300 Subject: [PATCH] Make Interval.reborn(left,right,h/n) method private. Add reborn(h/n) instead --- src/main/java/by/andd3dfx/math/Interval.java | 12 ++++++++++-- .../java/by/andd3dfx/math/pde/equation/Equation.java | 4 ++-- src/test/java/by/andd3dfx/math/IntervalTest.java | 8 ++++---- 3 files changed, 16 insertions(+), 8 deletions(-) diff --git a/src/main/java/by/andd3dfx/math/Interval.java b/src/main/java/by/andd3dfx/math/Interval.java index aefeeb8..bd610e1 100644 --- a/src/main/java/by/andd3dfx/math/Interval.java +++ b/src/main/java/by/andd3dfx/math/Interval.java @@ -38,7 +38,7 @@ public int n() { return n; } - public void reborn(double left, double right, double h) { + private void reborn(double left, double right, double h) { assert (left < right && h > 0 && h <= right - left); this.left = left; @@ -47,7 +47,7 @@ public void reborn(double left, double right, double h) { this.n = (int) Math.floor((right - left) / h); // если необходимо, n будет на 1 больше } - public void reborn(double left, double right, int n) { + private void reborn(double left, double right, int n) { assert (left < right && n > 0); this.left = left; @@ -67,4 +67,12 @@ public int i(double x) { return (int) ((x - left) / h); } + + public void reborn(double h) { + reborn(left, right, h); + } + + public void reborn(int n) { + reborn(left, right, n); + } } diff --git a/src/main/java/by/andd3dfx/math/pde/equation/Equation.java b/src/main/java/by/andd3dfx/math/pde/equation/Equation.java index 0762f06..fde78a9 100644 --- a/src/main/java/by/andd3dfx/math/pde/equation/Equation.java +++ b/src/main/java/by/andd3dfx/math/pde/equation/Equation.java @@ -81,8 +81,8 @@ protected double gF(double x, double t, double U) { protected void prepare(double h, double tau) { assert (h > 0 && tau > 0); // установка шагов по пространственной и временной координатам - area.x().reborn(area.x().left(), area.x().right(), h); - area.t().reborn(area.t().left(), area.t().right(), tau); + area.x().reborn(h); + area.t().reborn(tau); arr = new Matrix(area.t().n() + 1, area.x().n() + 1); // Место для решения уравнения for (var i = 0; i <= area.x().n(); i++) { diff --git a/src/test/java/by/andd3dfx/math/IntervalTest.java b/src/test/java/by/andd3dfx/math/IntervalTest.java index 425e8d0..8896779 100644 --- a/src/test/java/by/andd3dfx/math/IntervalTest.java +++ b/src/test/java/by/andd3dfx/math/IntervalTest.java @@ -38,9 +38,9 @@ void paramsConstructorWithH() { @Test void rebornWithN() { - var interval = new Interval(2.5, 10.5, 10); + var interval = new Interval(5.0, 10.0, 10); - interval.reborn(5.0, 10.0, 100); + interval.reborn(100); assertThat(interval.left()).isEqualTo(5.0); assertThat(interval.right()).isEqualTo(10.0); @@ -50,9 +50,9 @@ void rebornWithN() { @Test void rebornWithH() { - var interval = new Interval(2.5, 10.5, 10); + var interval = new Interval(5.0, 10.0, 10); - interval.reborn(5.0, 10.0, 0.2); + interval.reborn(0.2); assertThat(interval.left()).isEqualTo(5.0); assertThat(interval.right()).isEqualTo(10.0);