Dophin написал:
но разбираться с файлом действительно лень, единственное что могу посоветовать - это начать изучать VBA там эти задачи решаются просто.
а формулы шикарные)
если можно будет обойтись в этом примере без применения пакета ВБА, то его изучение пока отложу. если же нет - придется осваивать, но это время =(
да формулы самые простые - всего-то 2 логических условия "если" :)
vikttur написал:
Наверное, подсказать можно, только зная процесс расчета, саму математику.
Вы проблему знаете - попробуйте смоделировать ее на небольшом примере, без сложных формул и расчетов, чтобы можно было понять саму суть.
ок, попробую проще объяснить поставленную проблемой задачу.
итак.
определние точек цикла (т.4, т.2 - как пример) определяется математическими уравнениями (найдены в одной зарубежной статье - достаточно согласуемы с табличными данными):
t4=f(p0, [фи]r) - температура кр. раствора после абсорбера (т.4);
t2=f(pк, [фи]а) - температура сл. раствора после генератора (т.2);
давление р0 и рк заданы в начале расчета и являются постоянными.
Допустим, как в моем примере, температура слабого раствора после генератора t2=120 oC. Соответственно, при этой температуре определенное значение имеет и мольная коцентрация [фи]а.
Согласно зависимостям (математическим уравнениям из зарубежной статьи) значения давления и мольной концентрации оказывают влияние на значение температуры, а не наоборот!
Главное: я не могу сразу знать какая концентрация сл. раствора, тем более с точностью до 5 знака :) поэтому и возникает необходимость применения итераций, т.е. по сути, использования метода последовательных приближений.
Пример.
если рк=1,169 Мпа и [фи]а=0,09187, то t2=160 oC;
если рк=1,169 Мпа и [фи]а=0,13068, то t2=150 oC;
если рк=1,169 Мпа и [фи]а=0,17147, то t2=140 oC;
если рк=1,169 Мпа и [фи]а=0,21381, то t2=130 oC;
если рк=1,169 Мпа и [фи]а=0,25749, то t2=140 oC.
все эти значения получены при ручной подстановке, которая быстро утомляет :)
поэтому и хотел автоматизировать этот процесс, ЧТОБЫ ПУТЕМ ПОСЛЕДОВАТЕЛЬНЫХ ПРИБЛИЖЕНИЙ (ИЗМЕНЕНИЕМ В ДАННОМ ПРИМЕРЕ [фи]а) ПРИХОДИТЬ К ЗАДАННОЙ ТЕМПЕРАТУРЕ.
кое-как это получилось. хоть михаил справделиво указал на ошибку в условии "если" (см. посты выше). реализовать это исправление не получилось, поскольку появляется на экране предупреждение:
Для функции введено аргументов: Слишком много.
Чтобы закрыть данное сообщение и получить справку по вводу аргументов функции, нажмите кнопку "ОК". Затем на строке формул щелкните кнопку знака равенства (слева от знака равенства в формуле).
теперь о проблеме при определении температуры слабого раствора после регенеративного теплообменника t3.
в данном случае t3=f(p, [фи]а) - здесь уже [фи]а=сonst, а изменяется p.
вся проблема в том, что и давление р, и мольная концентрация [фи] присутствуют в этих математических уравнениях, данных зарубежными "коллегами" :)
но вот незадача: давление р находится в знаменателе =(
я уже пробовал задавать начальное значение этого р при определении t3, результат - та же ошибка "ДЕЛ/0!".
Господа советующие, если у вас есть уточняющие вопросы, пожалуйста, задавайте!
Я прекрасно понимаю, что мое описание проблемы для вас малопонятно, собсна, как снег на голову :)