3-D график функции типа 1/x+1/y

Форум пользователей пакета Mathcad

Модератор: Admin

OlegVR
Сообщения: 35
Зарегистрирован: Ср янв 17, 2007 11:32 am
Откуда: Казань, КГАСУ

3-D график функции типа 1/x+1/y

Сообщение OlegVR » Вт янв 23, 2007 4:42 pm

Здравствуйте. Никак не получается построить график функции f(x,y)=1/x+1/y. Пишет, что "деление на ноль и не строит. Хотя в двумерном случае f(x)=1/x, строится без проблем. Подскажите пожалуйста, как справится с этим затруднением.
Последний раз редактировалось OlegVR Ср янв 24, 2007 2:50 pm, всего редактировалось 1 раз.

OlegVR
Сообщения: 35
Зарегистрирован: Ср янв 17, 2007 11:32 am
Откуда: Казань, КГАСУ

Сообщение OlegVR » Ср янв 24, 2007 8:01 am

Или хотябы подскажите как задать интервалы изменения функции или её аргумента, чтобы не получалась сингулярность.

VFO
Сообщения: 4227
Зарегистрирован: Ср фев 27, 2002 8:03 pm

Сообщение VFO » Ср янв 24, 2007 12:05 pm

Попробуйте построить график f(x,y)=if(x=0 or y=0, 0, 1/x+1/y). Т.е. обойдите точки, где деление на ноль. Двумерные графики это делают сами, а трехмерные - нет.

OlegVR
Сообщения: 35
Зарегистрирован: Ср янв 17, 2007 11:32 am
Откуда: Казань, КГАСУ

Сообщение OlegVR » Ср янв 24, 2007 2:45 pm

Большое спасибо. Я подозревал, что будет именно так. И у меня получилось.
Только еще один вопрос, почему мы функцию приравниваем нулю, можно ведь числу - тогда график меняется. Как это объясняется?
Вот:
Изображение

OlegVR
Сообщения: 35
Зарегистрирован: Ср янв 17, 2007 11:32 am
Откуда: Казань, КГАСУ

Сообщение OlegVR » Ср янв 24, 2007 3:09 pm

И, кстати, подскажите, как обойти такой момент:
Если дана функция f(x,y)=(1/x)^k+1/y)^k, 1<k<2 - при построение пишет ошибку: значение функции вне области вещественных чисел.

уни
Сообщения: 227
Зарегистрирован: Сб дек 16, 2006 9:26 pm

Сообщение уни » Ср янв 24, 2007 3:29 pm

Посмотрите тут примеры. Там есть документы, где описывается функция implicitplot3d(), с её помощью можно удовлетворить оба ваших пожелания.

http://forum.exponenta.ru/viewtopic.php?t=4127

OlegVR
Сообщения: 35
Зарегистрирован: Ср янв 17, 2007 11:32 am
Откуда: Казань, КГАСУ

Сообщение OlegVR » Ср янв 24, 2007 3:36 pm

Спасибо.

Heinzz
Сообщения: 60
Зарегистрирован: Пт июл 07, 2006 6:27 pm
Откуда: Altay

Сообщение Heinzz » Ср янв 24, 2007 11:31 pm

OlegVR писал(а):И, кстати, подскажите, как обойти такой момент:
Если дана функция f(x,y)=(1/x)^k+1/y)^k, 1<k<2 - при построение пишет ошибку: значение функции вне области вещественных чисел.

1/x может принимать отрицательные значения, а вы корень извлекать пытаетесь ;)

BAT
Сообщения: 621
Зарегистрирован: Пн окт 25, 2004 5:16 pm

Сообщение BAT » Чт янв 25, 2007 9:56 am

OlegVR писал(а):Или хотябы подскажите как задать интервалы изменения функции или её аргумента, чтобы не получалась сингулярность.

Для обхода сингулярности можно поступить совсем просто. В свойствах "Данные Quick Plot" (по умолчанию там стоят диапазоны от -5 до +5 и сетка 20) сделайте диапазон несимметричным или (и) несимметричное разбиение сеткой. К примеру, установите оба диапазона от -5 до 5.1 (или 5.001). Так же сетку вместо 20 к примеру 21 (или27). Для большей презентабельности графика можно для оси z убрать галочку автомасштабирование и установить диапазон, к примеру, от -5 до 5.При этом график (особенно контурный) получается более реалистичным в сравнении с вариантом использования прохождения через ноль.
Heinzz писал(а):
OlegVR писал(а):И, кстати, подскажите, как обойти такой момент:
Если дана функция f(x,y)=(1/x)^k+1/y)^k, 1<k<2 - при построение пишет ошибку: значение функции вне области вещественных чисел.

1/x может принимать отрицательные значения, а вы корень извлекать пытаетесь ;)

Да это, наверное, спрашивающий и отвечающие в курсе. Но обойти комплексность всё же можно. Дополнительно к ссылке приведенной уни можно глянуть и здесь http://forum.exponenta.ru/viewtopic.php ... &start=330 .
To уни.
Вячеслав обе пользовательскиее dll у меня сразу заработали. Но тестирование на половине "кубика" и на графике решений квадратного уравнения (в том виде как я их задавал) показывает плохие результаты. Для большинства случаев результаты хорошие!

OlegVR
Сообщения: 35
Зарегистрирован: Ср янв 17, 2007 11:32 am
Откуда: Казань, КГАСУ

Сообщение OlegVR » Чт янв 25, 2007 11:26 am

Heinzz писал(а):1/x может принимать отрицательные значения, а вы корень извлекать пытаетесь ;)

Аааа... "Это элементарно, Ватсон!" :D Как я сразу об этом не подумал. Аяй... Спасибо, Heinzz.

Спасибо, BAT, пробую ...

OlegVR
Сообщения: 35
Зарегистрирован: Ср янв 17, 2007 11:32 am
Откуда: Казань, КГАСУ

Сообщение OlegVR » Чт янв 25, 2007 3:07 pm

Возник вопрос, а как проставить (установить) значение изолиний на Coutour Plot (проекции поверхности на плоскость Oxy) с заданным (возможно не целое число) шагом изменения апликаты z?

OlegVR
Сообщения: 35
Зарегистрирован: Ср янв 17, 2007 11:32 am
Откуда: Казань, КГАСУ

Сообщение OlegVR » Чт янв 25, 2007 4:58 pm

И ещё вопрос. Как на одном графике построить две и более поверхности?

VFO
Сообщения: 4227
Зарегистрирован: Ср фев 27, 2002 8:03 pm

Сообщение VFO » Чт янв 25, 2007 5:57 pm

См. один из вариантов:
http://twt.mpei.ac.ru/ochkov/Mathcad_12 ... e_Mech.png

OlegVR
Сообщения: 35
Зарегистрирован: Ср янв 17, 2007 11:32 am
Откуда: Казань, КГАСУ

Сообщение OlegVR » Чт янв 25, 2007 7:42 pm

Спасибо. Хотя мне нужно было немножко другое, но я уже разобрался.
Но вопрос о шаге изолиний еще актуален.
Изображение