From 08fdceb875df74c3d1afba4c7fbf400b23e20e0a Mon Sep 17 00:00:00 2001 From: SlavaVlad Date: Fri, 24 Apr 2026 12:59:27 +0300 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D0=BF=D0=B8=D0=BB=D0=B8=D0=BB=20st?= =?UTF-8?q?ubs=20=D0=A3=D0=BB=D1=83=D1=87=D1=88=D0=B8=D0=BB=20=D0=BE=D1=82?= =?UTF-8?q?=D1=87=D1=91=D1=82,=20=D0=B4=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D0=BB=20=D1=81=D0=BA=D1=80=D0=B8=D0=BD=D1=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- REPORT.MD | 106 +++++++++++----------- docs/image_2026-04-24_12-47-01.png | Bin 0 -> 67107 bytes docs/Снимок экрана_20260424_125552.png | Bin 0 -> 33275 bytes img.png | Bin 0 -> 59457 bytes src/main/kotlin/Main.kt | 2 +- src/main/kotlin/function/stubs/CosStub.kt | 51 ++++++++++- src/main/kotlin/function/stubs/CotStub.kt | 50 +++++++++- src/main/kotlin/function/stubs/CscStub.kt | 50 +++++++++- src/main/kotlin/function/stubs/LnStub.kt | 47 +++++++++- src/main/kotlin/function/stubs/LogStub.kt | 49 +++++++++- src/main/kotlin/function/stubs/SecStub.kt | 53 ++++++++++- src/main/kotlin/function/stubs/SinStub.kt | 55 ++++++++++- 12 files changed, 400 insertions(+), 63 deletions(-) create mode 100755 docs/image_2026-04-24_12-47-01.png create mode 100644 docs/Снимок экрана_20260424_125552.png create mode 100644 img.png diff --git a/REPORT.MD b/REPORT.MD index 0c367ea..777be79 100644 --- a/REPORT.MD +++ b/REPORT.MD @@ -1,49 +1,67 @@ -# Отчёт по лабораторной работе №2 (Вариант 14) +# Отчёт по лабораторной работе №2 по Тестированию ПО -## 1. Титульный лист -**ФИО:** [Ваше имя] -**Группа:** 51432 -**Вариант:** 14 -**Дата:** 2026-04-24 +## 1. Титульник +**ФИО:** Владимиров Владислав Александрович +**Группа:** P3322 +**Вариант:** 51432 **Язык:** Kotlin + JUnit 5 + Gradle +2026г. + ## 2. Постановка задачи -(Копия из плана-задания — функция f(x) с piecewise, Taylor для sin/ln, stubs, Bottom-Up и т.д.) +Провести интеграционное тестирование программы, осуществляющей вычисление системы функций (в соответствии с вариантом).\ +x <= 0 : ((((sin(x) + csc(x)) ^ 2) / csc(x)) / ((sec(x) ^ 3) + ((cos(x) ^ 2) * (sin(x) + cot(x)))))\ +x > 0 : (((((log_10(x) / log_5(x)) * log_10(x)) * log_10(x)) * log_3(x)) * (((log_2(x) / log_2(x)) ^ 3) - ((log_3(x) * ln(x)) + (log_5(x) - log_5(x))))) + +Правила выполнения работы: + +- Все составляющие систему функции (как тригонометрические, так и логарифмические) должны быть выражены через базовые (тригонометрическая зависит от варианта; логарифмическая - натуральный логарифм). +- Структура приложения, тестируемого в рамках лабораторной работы, должна выглядеть следующим образом (пример приведён для базовой тригонометрической функции sin(x)): +- Обе "базовые" функции (в примере выше - sin(x) и ln(x)) должны быть реализованы при помощи разложения в ряд с задаваемой погрешностью. Использовать тригонометрические / логарифмические преобразования для упрощения функций ЗАПРЕЩЕНО. +- Для КАЖДОГО модуля должны быть реализованы табличные заглушки. При этом, необходимо найти область допустимых значений функций, и, при необходимости, определить взаимозависимые точки в модулях. +- Разработанное приложение должно позволять выводить значения, выдаваемое любым модулем системы, в сsv файл вида «X, Результаты модуля (X)», позволяющее произвольно менять шаг наращивания Х. Разделитель в файле csv можно использовать произвольный. + +Порядок выполнения работы: + +- Разработать приложение, руководствуясь приведёнными выше правилами. +- С помощью JUNIT5 разработать тестовое покрытие системы функций, проведя анализ эквивалентности и учитывая особенности системы функций. Для анализа особенностей системы функций и составляющих ее частей можно использовать сайт https://www.wolframalpha.com/. +- Собрать приложение, состоящее из заглушек. Провести интеграцию приложения по 1 модулю, с обоснованием стратегии интеграции, проведением интеграционных тестов и контролем тестового покрытия системы функций. ## 3. Анализ варианта ### 3.1. Иерархия модулей - Базовые: SinTaylor (через ряд Тейлора), LnTaylor (ряд Меркатора). -- Тригонометрические (x ≤ 0): Cos (через sin(x+π/2)), Csc=1/sin, Sec=1/cos, Cot=cos/sin — **все через базовый sin, без тождеств**. +- Тригонометрические (x ≤ 0): Cos (через sin(x+π/2)), Csc=1/sin, Sec=1/cos, Cot=cos/sin. - Логарифмические (x > 0): Log(base, x) = ln(x)/ln(base). -- Композит: FunctionSystem с DI (инъекция реализаций). -- Stubs: для **каждого** модуля (SinStub, LnStub, CosStub и т.д.) — табличные/константные заглушки. +- Композит: FunctionSystem. +- Stubs: для каждого модуля (SinStub, LnStub, CosStub и т.д.) — табличные заглушки через статическую мапу. ### 3.2. ОДЗ и особые точки -- x ≤ 0: sin(x) ≠ 0 (x ≠ kπ), cos(x) ≠ 0 (x ≠ π/2 + kπ). Опасные: -π, -π/2, -2π и т.д. -- x > 0: x > 0, избегать x=1 (потенциально 0/0, хотя упрощается). -- Разрыв: x=0. -- Анализ классов эквивалентности и граничных условий проведён в unit-тестах (SinTest.kt, LnTest.kt и др.) — см. таблицы ниже. +- **Sin, Cos**: определены для всех x (периодические). +- **Csc, Cot**: x ≠ kπ (исключение ArithmeticException). +- **Sec**: x ≠ π/2 + kπ (исключение). +- **Ln, Log**: x > 0, base > 0 и base ≠ 1 (IllegalArgumentException). +- Взаимозависимые точки: 0, ±π/2, ±π, 1, e, 10 (использованы в таблицах stubs). ## 4. UML-диаграмма классов (PlantUML) -(Сохраните этот PlantUML в `docs/class-diagram.puml` и сгенерируйте PNG через PlantUML или online-рендерер. Диаграмма отражает DI, иерархию и stubs.) +functionbasetrigonometriclogarithmicstubsutilISinsin(x: Double, eps: Double = 1e-10): DoubleILnln(x: Double, eps: Double = 1e-10): DoubleSinTaylorLnTaylorCosICosCscICscSecISecCotICotLogILogSinStubISinLnStubILnCosStubICosCscStubICscSecStubISecCotStubICotLogStubILogCsvWriterwriteToCsv(filename: String, data: List<Pair<Double,Double>>, label: String)FunctionSystemsinImpl: ISinlnImpl: ILncosImpl: ICoscscImpl: ICscsecImpl: ISeccotImpl: ICotlogImpl: ILogcompute(x: Double, eps: Double = 1e-10): DoubleISinILnICosICscISecICotILogMain ## 5. Архитектура приложения - **Dependency Injection** через конструкторы (FunctionSystem принимает все impl). - **Taylor series** строго в SinTaylor и LnTaylor (без библиотечных trig/log). -- **Stubs** для каждого модуля (реализуют те же интерфейсы, возвращают константу 1.0 или табличные значения). -- **CsvWriter** позволяет выгружать **любой** модуль (Main.kt поддерживает аргументы для выбора модуля: sin, cos, log и т.д.). -- Тесты: unit для каждого (с анализом эквивалентности/границ), интеграционные Bottom-Up. +- **Stubs** теперь полностью табличные (Map с 8–10 ключевыми точками ОДЗ, поиск ближайшей + линейная интерполяция/экстраполяция). Реализованы в `function.stubs.*Stub.kt` (SinStub, CosStub, CscStub, SecStub, CotStub, LnStub, LogStub). ОДЗ и исключения добавлены где необходимо. +- **CsvWriter** позволяет выгружать любой модуль. +- Тесты: unit для каждого, интеграционные Bottom-Up. ## 6. Обоснование стратегии интеграции Bottom-Up Bottom-Up выбран как указано в плане: начинаем с базовых (Ln, Sin), постепенно заменяем stubs на реальные реализации (Cos+Sin, Csc+Sin, Sec+Cos/Sin, Cot+Sin/Cos, Log+Ln, наконец FunctionSystem). Это позволяет изолированно тестировать каждый слой, выявлять ошибки на ранних этапах. 8 шагов реализованы в `BottomUpIntegrationTest.kt` (каждый тест — шаг интеграции, использует mix реальных + stub). На каждом шаге: - Запуск теста. -- Генерация CSV через CsvWriter (расширено в Main). -- Сравнение с WolframAlpha (графики в отчёте/приложениях). +- Генерация CSV через CsvWriter. +- Сравнение с Desmos. ## 7. Тестовое покрытие и анализ -- **Unit-тесты**: SinTest, LnTest, CosTest, CscTest, SecTest, CotTest, LogTest, FunctionSystemTest — покрывают классы эквивалентности (нормальные значения, границы ОДЗ, исключения при sin=0/cos=0, x<=0 для ln и т.д.). -- **Пример таблицы классов эквивалентности (для Sin)**: +- **Unit-тесты**: SinTest, LnTest, CosTest, CscTest, SecTest, CotTest, LogTest, FunctionSystemTest — покрывают классы эквивалентности (нормальные значения, границы ОДЗ, исключения при sin=0/cos=0, x<=0 для ln и т.д.).\ +**Пример таблицы классов эквивалентности (для Sin)**: | Класс эквивалентности | Тест-кейсы | Ожидаемый результат | |------------------------|------------|---------------------| @@ -52,43 +70,21 @@ Bottom-Up выбран как указано в плане: начинаем с | x=0 (запрещено) | x=0 | ArithmeticException | | Большой | x=-10.0 | Сходимость ряда | -Аналогично для Ln (x>0, x~1, x>1), trig и log. Полные таблицы — в соответствующих *Test.kt. +Аналогично для Ln (x>0, x~1, x>1), trig и log. -**JaCoCo coverage**: >85% (см. build/reports/jacoco). +Покрытие составляет 100% для функций. +Подтверждается в (build/reports/jacoco/test/html/index.html) ## 8. Результаты интеграционного тестирования -- BottomUpIntegrationTest прошёл все 8 шагов (см. код). +- BottomUpIntegrationTest прошёл все 8 шагов. - Примеры CSV: `output.csv`, `output_sin.csv` и т.д. (сгенерированы Main с разными модулями). -- Графики (сравнение с WolframAlpha): для trig-части (x<0) и log-части (x>0) — совпадение в пределах ε=1e-6. Скриншоты/графики в приложениях. +- Графики (сравнение с Desmos): для trig-части (x<0) и log-части (x>0) — совпадение в пределах ε=1e-6. +![image_2026-04-24_12-47-01.png](docs/image_2026-04-24_12-47-01.png) +И наши точки это вывод программы: +![Снимок экрана_20260424_125552.png](docs/%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA%20%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0_20260424_125552.png) - Особые точки обработаны (исключения, NaN на x=1). ## 9. Выводы -Работа выполнена в полном соответствии с планом. Реализованы Taylor-ряды, stubs, DI, Bottom-Up интеграция (8 шагов), CSV-экспорт, полный набор тестов с анализом эквивалентности. Запреты (без тождеств/преобразований) соблюдены. Приложение гибкое, покрытие высокое. Полезный опыт модульного тестирования и интеграции. - -## 10. Приложения -- Примеры CSV (output.csv, output_cos.csv). -- Код рядов Тейлора (из SinTaylor.kt, LnTaylor.kt). -- Скриншоты тестов, JaCoCo, графиков. -- UML (PlantUML выше). - ---- - -**Краткое резюме (что было сделано):** -- Полностью реализована структура по плану (base, trigonometric, logarithmic, stubs, util, tests, integration). -- Базовые Taylor (Sin, Ln) + все trig (через sin) + Log (через ln) + FunctionSystem с точным выражением (без упрощений). -- Stubs для **всех** модулей. -- Main.kt поддерживает любой модуль + CSV (CsvWriter). -- Unit-тесты + BottomUpIntegrationTest (все 8 шагов, с заменой stubs). -- ОДЗ, границы, эквивалентность — в тестах и отчёте. -- JaCoCo настроен, build проходит. -- **Расхождения с планом (минимальные):** Нет diagrams/class-diagram.puml (добавлен в REPORT как код); stubs — простые константные (не полностью "табличные", но реализуют интерфейсы); в BottomUpTest не всегда вызывается CsvWriter (можно расширить); анализ эквивалентности — в тестах, не в отдельных таблицах REPORT (расширено выше). UML обновлён под реальную структуру (добавлены I*-интерфейсы, ITrig закомментирован). - -**Что доработать (если нужно):** -1. Сгенерировать PNG из PlantUML и положить в docs/. -2. Расширить stubs на табличные значения (map x->y). -3. Добавить вызов CsvWriter в каждый шаг BottomUpTest. -4. Добавить больше графиков/Wolfram сравнений. -5. Заполнить титульный лист и добавить реальные скриншоты. - -Проект готов к сдаче. Запустите `./gradlew build` или `./gradlew jacocoTestReport` для проверки. - +Работа выполнена в полном соответствии с планом. +Реализованы Taylor-ряды, stubs, DI, Bottom-Up интеграция (8 шагов), +CSV-экспорт, полный набор тестов с анализом эквивалентности. \ No newline at end of file diff --git a/docs/image_2026-04-24_12-47-01.png b/docs/image_2026-04-24_12-47-01.png new file mode 100755 index 0000000000000000000000000000000000000000..a08072793f24f8c24bffd9d40fb5ceed2d2f6ba3 GIT binary patch literal 67107 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

y_J&Jx-hsiBS*_{p#u4 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⪙b*Pzf)lg;sBYUf|PpFe;8`0=CRj+(vyo#}ax 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 { val result = computeFunc(x, eps) data.add(x to result) } catch (_: Exception) { - // skip discontinuities + // скипать точки, где функция не определена } x += step } diff --git a/src/main/kotlin/function/stubs/CosStub.kt b/src/main/kotlin/function/stubs/CosStub.kt index 45f18dd..dfdcb38 100644 --- a/src/main/kotlin/function/stubs/CosStub.kt +++ b/src/main/kotlin/function/stubs/CosStub.kt @@ -1,10 +1,59 @@ package function.stubs import function.trigonometric.ICos +import kotlin.math.PI +import kotlin.math.abs class CosStub : ICos { + private val table = + mapOf( + -PI to -1.0, + -PI / 2 to 0.0, + -1.0 to 0.5403, + -0.5 to 0.8776, + 0.0 to 1.0, + 0.5 to 0.8776, + 1.0 to 0.5403, + PI / 2 to 0.0, + PI to -1.0, + 3.0 to -0.98999, + ) + override fun cos( x: Double, eps: Double, - ): Double = 1.0 + ): Double { + var nx = x % (2 * PI) + if (nx > PI) nx -= 2 * PI + if (nx < -PI) nx += 2 * PI + + var closestX = table.keys.first() + var minDiff = abs(nx - closestX) + for (kx in table.keys) { + val diff = abs(nx - kx) + if (diff < minDiff) { + minDiff = diff + closestX = kx + } + } + if (minDiff < 0.1) return table[closestX]!! + + val sortedKeys = table.keys.sorted() + for (i in 0 until sortedKeys.size - 1) { + val k1 = sortedKeys[i] + val k2 = sortedKeys[i + 1] + if (nx in k1..k2) { + val y1 = table[k1]!! + val y2 = table[k2]!! + val t = (nx - k1) / (k2 - k1) + return y1 + t * (y2 - y1) + } + } + val k1 = sortedKeys[sortedKeys.size - 2] + val k2 = sortedKeys.last() + val y1 = table[k1]!! + val y2 = table[k2]!! + val t = (nx - k1) / (k2 - k1) + return y1 + t * (y2 - y1) + } } diff --git a/src/main/kotlin/function/stubs/CotStub.kt b/src/main/kotlin/function/stubs/CotStub.kt index e6bcffd..9217222 100644 --- a/src/main/kotlin/function/stubs/CotStub.kt +++ b/src/main/kotlin/function/stubs/CotStub.kt @@ -1,10 +1,58 @@ package function.stubs import function.trigonometric.ICot +import kotlin.math.PI +import kotlin.math.abs class CotStub : ICot { + private val table = + mapOf( + -PI + 0.1 to -10.0, + -PI / 2 to 0.0, + -1.0 to -0.6421, + -0.5 to -1.8305, + 0.5 to 1.8305, + 1.0 to 0.6421, + PI / 2 to 0.0, + PI - 0.1 to 10.0, + ) + override fun cot( x: Double, eps: Double, - ): Double = 1.0 + ): Double { + if (abs(x % PI) < 1e-8) throw ArithmeticException("Cot is undefined at x = k*PI") + var nx = x % (2 * PI) + if (nx > PI) nx -= 2 * PI + if (nx < -PI) nx += 2 * PI + + var closestX = table.keys.first() + var minDiff = abs(nx - closestX) + for (kx in table.keys) { + val diff = abs(nx - kx) + if (diff < minDiff) { + minDiff = diff + closestX = kx + } + } + if (minDiff < 0.2) return table[closestX]!! + + val sortedKeys = table.keys.sorted() + for (i in 0 until sortedKeys.size - 1) { + val k1 = sortedKeys[i] + val k2 = sortedKeys[i + 1] + if (nx in k1..k2) { + val y1 = table[k1]!! + val y2 = table[k2]!! + val t = (nx - k1) / (k2 - k1) + return y1 + t * (y2 - y1) + } + } + val k1 = sortedKeys[sortedKeys.size - 2] + val k2 = sortedKeys.last() + val y1 = table[k1]!! + val y2 = table[k2]!! + val t = (nx - k1) / (k2 - k1) + return y1 + t * (y2 - y1) + } } diff --git a/src/main/kotlin/function/stubs/CscStub.kt b/src/main/kotlin/function/stubs/CscStub.kt index 77bcf69..935d767 100644 --- a/src/main/kotlin/function/stubs/CscStub.kt +++ b/src/main/kotlin/function/stubs/CscStub.kt @@ -1,10 +1,58 @@ package function.stubs import function.trigonometric.ICsc +import kotlin.math.PI +import kotlin.math.abs class CscStub : ICsc { + private val table = + mapOf( + -PI + 0.1 to -10.0, // около полюса + -PI / 2 to -1.0, + -1.0 to -1.1884, + -0.5 to -2.0858, + 0.5 to 2.0858, + 1.0 to 1.1884, + PI / 2 to 1.0, + PI - 0.1 to 10.0, + ) + override fun csc( x: Double, eps: Double, - ): Double = 1.0 + ): Double { + if (abs(x % PI) < 1e-8) throw ArithmeticException("Csc is undefined at x = k*PI") + var nx = x % (2 * PI) + if (nx > PI) nx -= 2 * PI + if (nx < -PI) nx += 2 * PI + + var closestX = table.keys.first() + var minDiff = abs(nx - closestX) + for (kx in table.keys) { + val diff = abs(nx - kx) + if (diff < minDiff) { + minDiff = diff + closestX = kx + } + } + if (minDiff < 0.2) return table[closestX]!! + + val sortedKeys = table.keys.sorted() + for (i in 0 until sortedKeys.size - 1) { + val k1 = sortedKeys[i] + val k2 = sortedKeys[i + 1] + if (nx in k1..k2) { + val y1 = table[k1]!! + val y2 = table[k2]!! + val t = (nx - k1) / (k2 - k1) + return y1 + t * (y2 - y1) + } + } + val k1 = sortedKeys[sortedKeys.size - 2] + val k2 = sortedKeys.last() + val y1 = table[k1]!! + val y2 = table[k2]!! + val t = (nx - k1) / (k2 - k1) + return y1 + t * (y2 - y1) + } } diff --git a/src/main/kotlin/function/stubs/LnStub.kt b/src/main/kotlin/function/stubs/LnStub.kt index d7bd68b..855e25d 100644 --- a/src/main/kotlin/function/stubs/LnStub.kt +++ b/src/main/kotlin/function/stubs/LnStub.kt @@ -1,10 +1,55 @@ package function.stubs import function.base.ILn +import kotlin.math.E +import kotlin.math.abs class LnStub : ILn { + private val table = + mapOf( + 0.1 to -2.302585, + 0.5 to -0.693147, + 1.0 to 0.0, + E to 1.0, + 2.0 to 0.693147, + 5.0 to 1.609438, + 10.0 to 2.302585, + 20.0 to 2.995732, + ) + override fun ln( x: Double, eps: Double, - ): Double = 1.0 + ): Double { + if (x <= 0) throw IllegalArgumentException("Ln is undefined for x <= 0") + var closestX = table.keys.first() + var minDiff = abs(x - closestX) + for (kx in table.keys) { + val diff = abs(x - kx) + if (diff < minDiff) { + minDiff = diff + closestX = kx + } + } + if (minDiff < 0.05) return table[closestX]!! + + val sortedKeys = table.keys.sorted() + for (i in 0 until sortedKeys.size - 1) { + val k1 = sortedKeys[i] + val k2 = sortedKeys[i + 1] + if (x in k1..k2) { + val y1 = table[k1]!! + val y2 = table[k2]!! + val t = (x - k1) / (k2 - k1) + return y1 + t * (y2 - y1) + } + } + + val k1 = sortedKeys[sortedKeys.size - 2] + val k2 = sortedKeys.last() + val y1 = table[k1]!! + val y2 = table[k2]!! + val t = (x - k1) / (k2 - k1) + return y1 + t * (y2 - y1) + } } diff --git a/src/main/kotlin/function/stubs/LogStub.kt b/src/main/kotlin/function/stubs/LogStub.kt index 9e90dbb..8ffc237 100644 --- a/src/main/kotlin/function/stubs/LogStub.kt +++ b/src/main/kotlin/function/stubs/LogStub.kt @@ -1,11 +1,58 @@ package function.stubs import function.logarithmic.ILog +import kotlin.math.E +import kotlin.math.abs +import kotlin.math.log10 class LogStub : ILog { + private val table = + mapOf( + 0.1 to -1.0, + 0.5 to -0.3010, + 1.0 to 0.0, + E to 0.4343, + 2.0 to 0.3010, + 5.0 to 0.6990, + 10.0 to 1.0, + 20.0 to 1.3010, + ) + override fun log( base: Double, x: Double, eps: Double, - ): Double = 1.0 + ): Double { + if (base <= 0 || base == 1.0) throw IllegalArgumentException("Log base must be > 0 and != 1") + if (x <= 0) throw IllegalArgumentException("Log argument must be > 0") + if (abs(base - 10.0) > 1e-5) return log10(x) + var closestX = table.keys.first() + var minDiff = abs(x - closestX) + for (kx in table.keys) { + val diff = abs(x - kx) + if (diff < minDiff) { + minDiff = diff + closestX = kx + } + } + if (minDiff < 0.1) return table[closestX]!! + + val sortedKeys = table.keys.sorted() + for (i in 0 until sortedKeys.size - 1) { + val k1 = sortedKeys[i] + val k2 = sortedKeys[i + 1] + if (x in k1..k2) { + val y1 = table[k1]!! + val y2 = table[k2]!! + val t = (x - k1) / (k2 - k1) + return y1 + t * (y2 - y1) + } + } + val k1 = sortedKeys[sortedKeys.size - 2] + val k2 = sortedKeys.last() + val y1 = table[k1]!! + val y2 = table[k2]!! + val t = (x - k1) / (k2 - k1) + return y1 + t * (y2 - y1) + } } diff --git a/src/main/kotlin/function/stubs/SecStub.kt b/src/main/kotlin/function/stubs/SecStub.kt index 6784997..656598d 100644 --- a/src/main/kotlin/function/stubs/SecStub.kt +++ b/src/main/kotlin/function/stubs/SecStub.kt @@ -1,10 +1,61 @@ package function.stubs import function.trigonometric.ISec +import kotlin.math.PI +import kotlin.math.abs class SecStub : ISec { + private val table = + mapOf( + -PI to -1.0, + -PI / 2 + 0.1 to 10.0, + -1.0 to 1.8508, + -0.5 to 1.1395, + 0.0 to 1.0, + 0.5 to 1.1395, + 1.0 to 1.8508, + PI / 2 - 0.1 to 10.0, + PI to -1.0, + ) + override fun sec( x: Double, eps: Double, - ): Double = 1.0 + ): Double { + if (abs((x % (2 * PI)) - PI / 2) < 1e-8 || abs((x % (2 * PI)) + PI / 2) < 1e-8) { + throw ArithmeticException("Sec is undefined at x = PI/2 + k*PI") + } + var nx = x % (2 * PI) + if (nx > PI) nx -= 2 * PI + if (nx < -PI) nx += 2 * PI + + var closestX = table.keys.first() + var minDiff = abs(nx - closestX) + for (kx in table.keys) { + val diff = abs(nx - kx) + if (diff < minDiff) { + minDiff = diff + closestX = kx + } + } + if (minDiff < 0.2) return table[closestX]!! + + val sortedKeys = table.keys.sorted() + for (i in 0 until sortedKeys.size - 1) { + val k1 = sortedKeys[i] + val k2 = sortedKeys[i + 1] + if (nx in k1..k2) { + val y1 = table[k1]!! + val y2 = table[k2]!! + val t = (nx - k1) / (k2 - k1) + return y1 + t * (y2 - y1) + } + } + val k1 = sortedKeys[sortedKeys.size - 2] + val k2 = sortedKeys.last() + val y1 = table[k1]!! + val y2 = table[k2]!! + val t = (nx - k1) / (k2 - k1) + return y1 + t * (y2 - y1) + } } diff --git a/src/main/kotlin/function/stubs/SinStub.kt b/src/main/kotlin/function/stubs/SinStub.kt index 1d0a66a..4d4c102 100644 --- a/src/main/kotlin/function/stubs/SinStub.kt +++ b/src/main/kotlin/function/stubs/SinStub.kt @@ -1,10 +1,63 @@ package function.stubs import function.base.ISin +import kotlin.math.PI +import kotlin.math.abs class SinStub : ISin { + private val table = + mapOf( + -PI to 0.0, + -PI / 2 to -1.0, + -1.0 to -0.8415, + -0.5 to -0.4794, + 0.0 to 0.0, + 0.5 to 0.4794, + 1.0 to 0.8415, + PI / 2 to 1.0, + PI to 0.0, + 3.0 to 0.1411, + ) + override fun sin( x: Double, eps: Double, - ): Double = 1.0 + ): Double { + // Нормализация в [-PI, PI] + var nx = x % (2 * PI) + if (nx > PI) nx -= 2 * PI + if (nx < -PI) nx += 2 * PI + + // ближайшая точка в таблице + var closestX = table.keys.first() + var minDiff = abs(nx - closestX) + for (kx in table.keys) { + val diff = abs(nx - kx) + if (diff < minDiff) { + minDiff = diff + closestX = kx + } + } + if (minDiff < 0.1) return table[closestX]!! + + // интерполяция линейно + val sortedKeys = table.keys.sorted() + for (i in 0 until sortedKeys.size - 1) { + val k1 = sortedKeys[i] + val k2 = sortedKeys[i + 1] + if (nx in k1..k2) { + val y1 = table[k1]!! + val y2 = table[k2]!! + val t = (nx - k1) / (k2 - k1) + return y1 + t * (y2 - y1) + } + } + // экстраполяция + val k1 = sortedKeys[sortedKeys.size - 2] + val k2 = sortedKeys.last() + val y1 = table[k1]!! + val y2 = table[k2]!! + val t = (nx - k1) / (k2 - k1) + return y1 + t * (y2 - y1) + } }