Сюжет Mathematica, исключить конечные точки? - PullRequest
1 голос
/ 12 октября 2010

Почему следующее дает мне ошибки при делении на 0?

ParametricPlot[{1/Sin[t], t}, {t, 0, 3 Pi}, Exclusions -> Sin[t] == 0]
Power::infy: Infinite expression 1/0 encountered.

Он успешно исключает точки на пи и 2 пи, но не точки на 0 и 3 пи Если я исключу конечные точки, изменив интервал ...

ParametricPlot[{1/Sin[t], t}, {t, 0.001, 2.999 Pi}, Exclusions -> Sin[t] == 0]

Я не получаю ошибок.

Как исключить конечные точки сюжета?

спасибо,
Rob

1 Ответ

3 голосов
/ 12 октября 2010

В данном конкретном случае вы можете переформулировать сюжет с помощью Csc[t] вместо 1/Sin[t], и кажется, что все работает:

ParametricPlot[{Csc[t], t}, {t, 0, 3 Pi}, Exclusions -> {Sin[t] == 0}]

Mathematica graphics

Я подозреваю, что поведение с 1/Sin[t] просто ошибка и сообщит об этом как таковой.

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

Quiet[ParametricPlot[{1/Sin[t], t}, {t, 0, 3 Pi}, 
    Exclusions -> Sin[t] == 0], Power::infy]
...