FractalPark
Композиция функций

jm_18

0109434e-e9cc-5d80-ad3f-d25ec62cbfda

Обзор материала

jm_18 изучается по закреплённому определению FRM-like/1: вы прослеживаете z = pixel; t = p1 + 4; затем z = fn1(z) * pixel * fn2(fn3(z) * pixel), не считая изображение гарантированным. Закреплённый профиль задаёт лишь одну конкретную настройку наблюдения.

Разбор исходного кода

  1. frm-v1:41794347e36147808476dcb16e41d7bdbf24b94327ce2f0bf13fd67a1cf1901f:init/0

    В jm_18, этот узел выполняет z = pixel.

  2. frm-v1:41794347e36147808476dcb16e41d7bdbf24b94327ce2f0bf13fd67a1cf1901f:init/1

    В jm_18, этот узел выполняет t = p1 + 4.

  3. frm-v1:41794347e36147808476dcb16e41d7bdbf24b94327ce2f0bf13fd67a1cf1901f:loop/0

    В jm_18, этот узел выполняет z = fn1(z) * pixel * fn2(fn3(z) * pixel).

  4. frm-v1:41794347e36147808476dcb16e41d7bdbf24b94327ce2f0bf13fd67a1cf1901f:bailout

    В jm_18, этот узел выполняет |z| <= t.

Синтаксические особенности

state-flow

Конкретный поток состояния: z инициализируется значением pixel, а t — значением p1 + 4, после чего выполняется вложенное функциональное обновление.

stopping-test

Проверка остановки оценивает только |z| <= t; она не присваивает состояние.

Эксперимент с параметрами

parameter1function1function2function3

Шаги

  1. Запустите jm_18 с закреплённым профилем и запишите результат.
  2. Измените только parameter1, оставьте остальные слоты выполнения и настройки профиля неизменными, снова запустите и запишите, есть ли различие.
  3. Измените только function1, оставьте остальные слоты выполнения и настройки профиля неизменными, снова запустите и запишите, есть ли различие.
  4. Измените только function2, оставьте остальные слоты выполнения и настройки профиля неизменными, снова запустите и запишите, есть ли различие.
  5. Измените только function3, оставьте остальные слоты выполнения и настройки профиля неизменными, снова запустите и запишите, есть ли различие.

Что наблюдать

Запишите, меняет ли z = pixel; t = p1 + 4; затем z = fn1(z) * pixel * fn2(fn3(z) * pixel) видимый результат или проверку остановки |z| <= t относительно базового запуска; определение не гарантирует различие.

Упражнение

Проследите аннотации jm_18 и объясните, как z = pixel; t = p1 + 4; затем z = fn1(z) * pixel * fn2(fn3(z) * pixel) выполняется в отмеченных операциях.

Проверка выполнения

Ваш ответ объясняет все 4 аннотации, указывает z = pixel; t = p1 + 4; затем z = fn1(z) * pixel * fn2(fn3(z) * pixel) и отличает |z| <= t как проверку остановки от присваивания.

Подсказка

Поток состояния последовательно выполняет z = pixel → t = p1 + 4 → z = fn1(z) * pixel * fn2(fn3(z) * pixel) и передаёт результат следующему шагу.

Источники и права

Источник: закреплённое определение выполнения и решение о публикации.

Сведения о правах следуют закреплённому решению в английском разделе.

Карточка формулы

jm_18

Эта каноническая реализация FractalPark опубликована и готова к запуску.

Детерминированный предпросмотр jm_18

Канонический исходный код

Язык
frm-like/1
Стандартная библиотека
1
Режим профиля
parameter-plane
Центр профиля
-0.5, 0
Масштаб профиля
0.4
Итерации профиля
96
Основание профиля
mechanical

Параметры

  • parameter1: complex
  • function1: function
  • function2: function
  • function3: function

Канонический исходный код

Эта проверенная каноническая ревизия доступна только для чтения. Remix создаёт отдельную редактируемую копию.

Загрузка канонического кода…

Источник и текущая реализация

ID формулы
0109434e-e9cc-5d80-ad3f-d25ec62cbfda
Каноническое имя
jm_18
Исходное имя
jm_18
Исторический источник
Fractint
Текущая реализация
Прямая адаптация

Текущая реализация FractalPark следует проверенной семантике связанной формулы Fractint. Для исходного файла сохраняются его собственные условия прав.

Есть вопрос о правах или атрибуции?

Отправьте ID формулы и подтверждающие материалы. На время проверки сопровождающий может приостановить или отозвать реализацию. contact@fractalpark.com