Найти в Дзене

Численные методы и их фракталы - программа на чистом JavaScript для исследования и рисования.

Что такое чистый JavaScript (или, по-другому, «ванильный JavaScript»)? Термин «ванильный JavaScript» (Vanilla JavaScript) подразумевает использование чистого JavaScript без каких-либо дополнительных библиотек или фреймворков. Он стал популярным после того, как Эрик Вастл в 2012 году в шутку создал сайт Vanilla JS. Сайт призван привлечь внимание к тому факту, что во многих случаях можно использовать просто чистый JavaScript. Численные (вычислительные) методы — методы решения математических задач в численном виде, если точная формула для решения в общем виде неизвестна или очень сложна. Численный анализ — это изучение алгоритмов для задач непрерывной математики . Эти алгоритмы включают действительные или комплексные переменные и обычно используют численное приближение в дополнение к символическим преобразованиям . Основная цель области численного анализа — разработка и анализ методов, позволяющих получать приблизительные, но точные решения широкого спектра сложных задач, многие из котор
Оглавление

Вступление.

Чистый JavaScript.

Что такое чистый JavaScript (или, по-другому, «ванильный JavaScript»)?

Термин «ванильный JavaScript» (Vanilla JavaScript) подразумевает использование чистого JavaScript без каких-либо дополнительных библиотек или фреймворков. Он стал популярным после того, как Эрик Вастл в 2012 году в шутку создал сайт Vanilla JS. Сайт призван привлечь внимание к тому факту, что во многих случаях можно использовать просто чистый JavaScript.

Численные методы.

Численные (вычислительные) методы — методы решения математических задач в численном виде, если точная формула для решения в общем виде неизвестна или очень сложна.

Численный анализ — это изучение алгоритмов для задач непрерывной математики . Эти алгоритмы включают действительные или комплексные переменные и обычно используют численное приближение в дополнение к символическим преобразованиям .

Основная цель области численного анализа — разработка и анализ методов, позволяющих получать приблизительные, но точные решения широкого спектра сложных задач, многие из которых невыполнимы символическим методом.

Описание программы.

Я, наконец-то, завершил свою программу для построения фракталов на основе применения некоторых численных методов для решения уравнения многочлена 7-й степени для комплексной переменной.

Многочлен и методы.
Многочлен и методы.

Вот методы, которые добавлены в программу:

  • Метод Ньютона
  • Рациональный метод Галлея
  • Иррациональный метод Галлея (два варианта)
  • Метод одной касательной
  • Метод секущих (пять вариантов)
  • Метод хорд (четыре варианта)
  • Метод Мюллера (семь вариантов)

Каждый из методов имеет в программе краткое описание (кнопка [i]), а также несколько заранее настроенных примеров:

Пять примеров для метода Мюллера, вариант ZY.
Пять примеров для метода Мюллера, вариант ZY.

При нажатии кнопки с любым примером фрактал автоматически выводится на холст.

По умолчанию все параметры установлены для получение аналога бассейна Ньютона в каждом методе:

Исходные параметры по умолчанию.
Исходные параметры по умолчанию.

уравнение Z**5 - 1 = 0, максимальное число итераций 40 и точность 1e-9.

Конечно, параметры и цветовые схемы можно и нужно менять для получения новых сюжетов.

Кроме того, можно увеличить интересующий фрагмент:

Увеличить фрагмент просто.
Увеличить фрагмент просто.

Сохранить понравившийся фрагмент можно с помощью стандартной функциональности холста:

Правой кнопкой мышки.
Правой кнопкой мышки.

При этом, чтобы не потерять параметры сюжета, программа позволяет их также сохранить в виде имени файла:

Основные параметры в имени файла.
Основные параметры в имени файла.

Строка внизу выводится для информации, при нажатии кнопки в клипборде создаётся строка - имя файла (с расширением ".png", по желанию) - его можно использовать при "Save_image_as..."

Остальные кнопки и возможности программы, я надеюсь, объясняют себя сами и не представляют каких-то затруднений.

Надеюсь, программа будет интересна любителям математики, фракталов и компьютерного искусства, а также чистого языка JavaScript.

Благодарю за внимание.∎