Как StreamPlot, используя существующие сетки и массивы скорости - PullRequest
0 голосов
/ 26 августа 2018

Я хотел бы нарисовать двухмерный график в Mathematica на основе существующих сеток, массивов скоростей и начальных точек, которые были рассчитаны с использованием кода Matlab / Python.

Сетки - это два вектора размером M и N, содержащие равномерно расположенные x_i и y_j. Массивы скоростей представляют собой две матрицы M-by-N, содержащие градиенты dot_x и dot(y) на каждой (x_i,y_j) плоскости 2D. Начальными точками является массив L-by-2, содержащий точки, которые должны пройти линии тока. В python я бы напрямую вызвал streamplot(x, y, dot_x, dot_y, startpoints=startpoints) из пакета matplotlib.pyplot, но это не дает хорошей цифры, как это делает Mathematica.

Однако примеры, которые я нашел в Интернете, относятся к аналитическим функциям, например,

data = Table[{{x, y}, {y, x-x^2}}, {x,-1.5,1.5,0.2}, {y,-2,2,0.2}];
ListStreamPlot[data]

Я новичок в Mathematica и не знаю, как перевести код Matlab / Python в Mathematica. Кроме того, код на Matlab довольно трудоемкий, поэтому я бы не хотел снова запускать полевые функции на Mathematica.

Есть ли способ нарисовать обтекаемый график, используя существующие массивы? Большое спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...