1 Commits

Author SHA1 Message Date
029815e4d7 task2 2026-01-07 15:20:25 +03:00
2 changed files with 6 additions and 11 deletions

View File

@@ -9,7 +9,6 @@
Область: [-3, 8]
"""
import shutil
import sys
from pathlib import Path
@@ -38,11 +37,11 @@ EPS_F = 0.001
MAX_ITERS = 100
# Шаг для константного метода (небольшой, чтобы было 3-4+ итерации)
CONSTANT_STEP = 12
CONSTANT_STEP = 0.5
# Параметры для правила Армихо
ARMIJO_PARAMS = {
"d_init": 12.0,
"d_init": 2.0,
"epsilon": 0.1,
"theta": 0.5,
}
@@ -302,9 +301,7 @@ def main():
print(f"Стартовая точка: x₀ = {X0}")
print(f"Параметры: eps_x = {EPS_X}, eps_f = {EPS_F}, max_iters = {MAX_ITERS}")
# Очищаем и создаём папку для графиков
if OUTPUT_DIR.exists():
shutil.rmtree(OUTPUT_DIR)
# Создаём папку для графиков
OUTPUT_DIR.mkdir(parents=True, exist_ok=True)
# 1. Константный шаг

View File

@@ -6,7 +6,6 @@
3. Правило Армихо
"""
import shutil
import sys
from pathlib import Path
@@ -41,9 +40,10 @@ EPS_X = 1e-2
EPS_F = 1e-2
MAX_ITERS = 200
# Шаг для константного метода (для оврага нужен маленький шаг!)
CONSTANT_STEPS = {
"himmelblau": 0.01,
"ravine": 0.01,
"ravine": 0.01, # Маленький шаг из-за большого градиента по y
}
# Параметры для правила Армихо
@@ -427,9 +427,7 @@ def main():
print(f"Стартовая точка: x₀ = ({x0[0]}, {x0[1]})")
print(f"Параметры: eps_x = {EPS_X}, eps_f = {EPS_F}, max_iters = {MAX_ITERS}")
# Очищаем и создаём папку для графиков
if OUTPUT_DIR.exists():
shutil.rmtree(OUTPUT_DIR)
# Создаём папку для графиков
OUTPUT_DIR.mkdir(parents=True, exist_ok=True)
# Создаём сетку для контурных графиков (один раз)