[MM] 3D график функции в Mathematica

pecados7

Такой вопрос. Можно ли в Mathematica нарисовать график функции f(x,y заданной не на прямоугольнике, а на какой-то области, ограниченной двумя кривыми?

svet_lana

да, если эту область можно задать параметрически

pecados7

Само собой, её можно задать в виде: a<x<b, f(x)<y<g(x). Какой функцией для рисования пользоваться? Plot3D не понимает переменных пределов.

iri3955

Plot3D[F(x, y * f(x) + (1 - y) * g(x {x, a, b}, {y, 0, 1}]
Правда он будет всё равно ратянут на прямоугольник

iri3955

А можно так построить график параметрической функции (не помню как это делается, почитай хелп, там даже пример есть)
(x, y * f(x) + (1 - y) * g(x F(x, y * f(x) + (1 - y) * g(x при тех же x,y.

slsf

Для начала надо эту функцию задать.
Затем можно пользоваться Plot3D.
Я надеюсь задать ее не представляет проблем, учитывая ваше условие выше?

slsf

Подозревая, что Вы усиленно заняты изучением чистой математики облегчу Вам работу.
Простейший грубый набросок того как это выглядит:
f[x_, y_] := If[0 < x < 1 && x^2 < y < x, Sin[x y], 0];
Plot3D[f[x, y], {x, 0, 1}, {y,0, 1}, PlotPoints -> 100, ViewPoint -> {-1.996, -1.455, 2.312}]
Презентабельность рисунка, конечно, не высока, но идею передает.
Это можно сделать и более грамотно (красиво владея более глубокими познаниями в Mathematica.

pecados7

Всем спасибо!
Для этого дела удобно использовать функцию ParametricPlot3D.
Например, если надо нарисовать функцию F[x,y] на области 0<y<f[x], 0<x<1, то сначала отображаем квадрат (0<x<1, 0<y<1) на эту область:
x = u, y = v*f[u].
Затем: ParametricPlot3D [ {u, v*f[u], F[u , v*f[u] ] } , {u, 0, 1}, {v, 0, 1} ];
Оставить комментарий
Имя или ник:
Комментарий: