Не определена переменная. Что делать?

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

Модератор: Admin

NUCAR
Сообщения: 7
Зарегистрирован: Вс авг 12, 2012 1:46 pm

Не определена переменная. Что делать?

Сообщение NUCAR » Вс авг 12, 2012 2:29 pm

Hi, there!

Решаю задачу по линейному программированию. Составил простое условие - решается, чуть усложнил - получаю ошибку "переменная не определена". В обоих случаях использовал один и тот же метод задания неизвестной. Укажите, в чем моя ошибка.
Ссылка на скачивание:
https://dl.dropbox.com/u/3591994/math_error.rar

Изображение

Изображение

Прошу прощения, файлы не влезли в сообщение, внешняя ссылка.

Спасибо.

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

Re: Не определена переменная. Что делать?

Сообщение VFO » Вс авг 12, 2012 4:03 pm

NUCAR писал(а):Hi, there!

Решаю задачу по линейному программированию. Составил простое условие - решается, чуть усложнил - получаю ошибку "переменная не определена". В обоих случаях использовал один и тот же метод задания неизвестной. Укажите, в чем моя ошибка.
Ссылка на скачивание:
https://dl.dropbox.com/u/3591994/math_error.rar

Изображение

Изображение

Прошу прощения, файлы не влезли в сообщение, внешняя ссылка.

Спасибо.

Я не могу сейчас посмотреть на ваш файл, но могу предположить, что вы не задали первое приближение для новой переменной.
Попробуйте применить трассировку для поиска ошибки.

VSI
Сообщения: 305
Зарегистрирован: Вт мар 15, 2005 6:40 pm
Откуда: Мариуполь

Re: Не определена переменная. Что делать?

Сообщение VSI » Вс авг 12, 2012 4:50 pm

NUCAR писал(а):Решаю задачу по линейному программированию. Составил простое условие - решается, чуть усложнил - получаю ошибку "переменная не определена". В обоих случаях использовал один и тот же метод задания неизвестной. Укажите, в чем моя ошибка.

Я немного переделал Ваш файл, но содержание осталось... Надеюсь...
Есть пара замечаний:
1) у Вас дважды приведено условие для переменной x15 Одно из определений я "выключил"...
2) условие для x8 я вынес из решающего блока - в этом случае ошибки нет, а если его перенести внутрь решающего блока (по стрелке), то - ошибка... Возможно, у Вас какие-то неточности при определении ограничений
Изображение

NUCAR
Сообщения: 7
Зарегистрирован: Вс авг 12, 2012 1:46 pm

Re: Не определена переменная. Что делать?

Сообщение NUCAR » Пн авг 13, 2012 12:09 am

Спасибо, за подсказку. Поиграюсь тогда с условиями. Только за mathcad сел, думал что задал не то... Вообщем большое спасибо.

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

Re: Не определена переменная. Что делать?

Сообщение VFO » Пн авг 13, 2012 7:51 am

NUCAR писал(а):Спасибо, за подсказку. Поиграюсь тогда с условиями. Только за mathcad сел, думал что задал не то... Вообщем большое спасибо.

Такую задачу лучше записывать и решать матричной форме
http://twt.mpei.ac.ru/ochkov/Mathcad_12 ... er_Max.png

uni
Сообщения: 1817
Зарегистрирован: Сб ноя 13, 2004 3:06 pm
Откуда: п.г.т. Излучинск
Контактная информация:

Сообщение uni » Вт авг 14, 2012 8:35 pm

Такую задачу лучше записывать и решать матричной форме

Матрица 17 х 17 не так удобно описывать, я предложил промежуточный вариант:
https://dl.dropbox.com/u/68387680/Mathcad/comp2.xmcdz

NUCAR
Сообщения: 7
Зарегистрирован: Вс авг 12, 2012 1:46 pm

Сообщение NUCAR » Ср авг 15, 2012 9:52 am

Доброго времени суток,

скажите, почему одна переменная определена корректно а другая нет?

Изображение

Ссылка на скачивание файла https://dl.dropbox.com/u/3591994/question.xmcd

VSI
Сообщения: 305
Зарегистрирован: Вт мар 15, 2005 6:40 pm
Откуда: Мариуполь

Сообщение VSI » Ср авг 15, 2012 10:44 am

NUCAR писал(а):...скажите, почему одна переменная определена корректно а другая нет?

В решающем блоке Given...Find(), а также Given...Minerr(), Given...Minimize(), Given...Maximize() может присутствовать ТОЛЬКО ОДНА из функций (Find(), Minerr(), Minimize() или Maximize()), а у Вас целых ДВЕ! Чтобы все заработало, нужно просто "выключить" ненужную функцию из расчета. Для этого на "ненужной" функции Minimize() щелкните правой кнопкой мыши и из контекстного меню выберите команду Disable Evaluation. При этом в правом верхнем углу выражения, которое Вы собираетесь "выключить", появится небольшой черный квадратик. Все! Это выражение "выключено" из документа (но физически оно остается и не удаляется...). Чтобы "включить", те же действия, только команда Enable Evaluation. Удачи.
Изображение

NUCAR
Сообщения: 7
Зарегистрирован: Вс авг 12, 2012 1:46 pm

Сообщение NUCAR » Ср авг 15, 2012 11:02 am

VSI писал(а):Чтобы все заработало, нужно просто "выключить" ненужную функцию из расчета.


Спасибо, попробовал дублировать блок given сработало.

Можно ли сделать так, чтобы работало обе функции? Нужен динамический перерасчет, например меняем условия - выполняется расчет 2 функций. Потом на основе определенных критериев делаем выбор наилучшего варианта.

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

Сообщение VFO » Ср авг 15, 2012 12:47 pm

NUCAR писал(а):
VSI писал(а):Чтобы все заработало, нужно просто "выключить" ненужную функцию из расчета.


Спасибо, попробовал дублировать блок given сработало.

Можно ли сделать так, чтобы работало обе функции? Нужен динамический перерасчет, например меняем условия - выполняется расчет 2 функций. Потом на основе определенных критериев делаем выбор наилучшего варианта.

Казалось бы логичным вставить в расчетный блок функцию if, но это, увы, не работает - см. http://communities.ptc.com/message/187208