Постройте сложную функцию в системе Mathematica

Как я могу создать графику Mathematica, которая копирует поведение complex_plot в sage? т.е.

... принимает сложную функцию от одного переменная, и график вывода функция в указанном диапазоне x и yrange, как показано ниже. В указывается величина выхода по яркости (при нуле черный и бесконечность белый) в то время как аргумент представлен оттенком (красный - положительный, реальный, а увеличивается через оранжевый, желтый, ... по мере увеличения аргумента).

Вот пример (украденный у М. Хэмптона из Neutral Drifts ) дзета-функции с наложенными контурами абсолютного значения:

zeta function complex_plot

На странице документации Mathematica Функции комплексных переменных говорится, что вы можете визуализировать сложные функции, используя ContourPlot и DensityPlot , «потенциально раскрашивая по фазе». Но проблема заключается в обоих типах графиков, ColorFunction принимает только одну переменную, равную контуру или плотности в точке, поэтому кажется невозможным заставить ее раскрасить фазу / аргумент при построении абсолютного значения. Обратите внимание, что это не проблема Plot3D , где все 3 параметра (x, y, z) передаются в ColorFunction .

Я знаю, что есть и другие способы визуализации сложных функций - например, «аккуратный пример» в документах Plot3D , но это не то, что мне нужно.

Кроме того, у меня есть ] одно решение ниже (которое фактически использовалось для создания некоторой графики, используемой в Википедии), но оно определяет функцию довольно низкого уровня, и я думаю, что это должно быть возможно с функцией высокого уровня, такой как ContourPlot или График плотности . Не то чтобы это должно помешать вам предложить свой любимый подход, использующий конструкцию нижнего уровня!


Изменить: В журнале Mathematica было несколько хороших статей Майкла Тротта на:
но это не то, что я хочу.

Кроме того, у меня есть одно решение ниже (которое фактически использовалось для генерации некоторой графики, используемой в Википедии), но оно определяет функцию довольно низкого уровня, и я думаю, что это должно быть возможно с помощью функции высокого уровня, такой как ContourPlot или DensityPlot . Не то чтобы это должно помешать вам предложить свой любимый подход, использующий конструкцию нижнего уровня!


Изменить: В журнале Mathematica было несколько хороших статей Майкла Тротта на:
но это не то, что я хочу.

Кроме того, у меня есть одно решение ниже (которое фактически использовалось для создания некоторой графики, используемой в Википедии), но оно определяет функцию довольно низкого уровня, и я думаю, что это должно быть возможно с помощью функции высокого уровня, такой как ContourPlot или DensityPlot . Не то чтобы это должно помешать вам предложить свой любимый подход, использующий конструкцию нижнего уровня!


Изменить: В журнале Mathematica было несколько хороших статей Майкла Тротта на:
и я думаю, что это должно быть возможно с помощью функции высокого уровня, такой как ContourPlot или DensityPlot . Не то чтобы это должно помешать вам предложить свой любимый подход, использующий конструкцию нижнего уровня!


Изменить: В журнале Mathematica было несколько хороших статей Майкла Тротта на:
и я думаю, что это должно быть возможно с помощью функции высокого уровня, такой как ContourPlot или DensityPlot . Не то чтобы это должно помешать вам предложить свой любимый подход, использующий конструкцию нижнего уровня!


Изменить: В журнале Mathematica было несколько хороших статей Майкла Тротта на:
Визуализация римановых поверхностей алгебраических функций , IIa , IIb , IIc , IId .
Демонстрация визуализации римановых поверхностей .
Возвращение римановых поверхностей (обновления для Mma v6)

Конечно, Майкл Тротт написал справочники по Mathematica , которые содержат много прекрасной графики , но, похоже, отстает от ускоренного графика выпуска Mathematica!

22
задан Community 23 May 2017 в 12:24
поделиться