Реклама / ООО «ИЗОЛПРОЕКТ» / ИНН: 7725566484 | ERID: 2VtzqucPabn
IPB IPB
Проектирование, монтаж, наладка, сервис

Здравствуйте, гость ( Вход | Регистрация )

- Рекомендации АВОК 5.5.1-2023
«Системы противодымной вентиляции жилых и общественный зданий»

- Рекомендации АВОК 7.8.3-2023
«Проектирование инженерных систем лабораторий»

- Рекомендации АВОК 7.10-2023
«Здания жилые и общественные. Защита от шума и вибрации инженерного оборудования»

АВОК в соц. сетях
ИНН: 7714824045

> Excel for HVAC

Данный раздел создан по просьбам участников Форума для сбора на сайте коллекции таблиц Excel на русском языке для расчётов по разным специальностям.

При присоединении файла, пожалуйста, указывайте следующую информацию:
Автор (Информация об авторе.)
Размер файла (максимальный размер присоединяемого файла 15 Мб)
Описание

Вся информация принимается и распространяется бесплатно.
Выполняет исключительно информационную функцию.
Администрация не несет ответственности за содержание представленной документации.
При обнаружении ошибок или неточностей просим вас прислать свои замечания на e-mail: ibforum@abok.ru.

 
Добавить ответ в эту темуОткрыть тему
> ошибка при итерационных вычислениях в Excel
shadow
сообщение 19.4.2016, 9:55
Сообщение #1





Группа: Участники форума
Сообщений: 1492
Регистрация: 23.6.2008
Из: г. Магнитогорск
Пользователь №: 19983



Сделал для себя небольшой теплотехнический расчет футеровки. Хотел чтобы коэффициент теплоотдачи ап (от наружной поверхности к окружающему воздуху) рассчитывался методом итерации. Но при изменении материала слоя или изменении толщины слоя появляется какая-то ошибка в вычислениях. Ошибка происходит не всегда, могу несколько раз поменять толщины слоев, материалы и всё работает. Можно конечно задавать коэффициент ап вручную и методом подбора за несколько проходов получить результат, но хотелось бы автоматизировать это процесс.
Прикрепленный файл  _____________1.jpg ( 283,4 килобайт ) Кол-во скачиваний: 42


Самостоятельно не могу разобраться с этим вопросом, не хватает знания Excel.

Прикрепленный файл  Futerovka.xlsx ( 619,24 килобайт ) Кол-во скачиваний: 20
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
borm
сообщение 19.4.2016, 11:04
Сообщение #2





Группа: Участники форума
Сообщений: 614
Регистрация: 28.6.2006
Пользователь №: 3267



У вас там замкнутый круг какой-то?
Ак, Ал, зависят от Тн(G17), а в свою очередь Тн(G17) зависит от R0(С23), в свою очередь R0(С23) зависит от Q22(который должен считаться) но он зависит от Р21, который равен Альфа(С26), которая равна Ак+Ал.
Круг замкнулся.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
shadow
сообщение 19.4.2016, 12:49
Сообщение #3





Группа: Участники форума
Сообщений: 1492
Регистрация: 23.6.2008
Из: г. Магнитогорск
Пользователь №: 19983



Цитата(borm @ 19.4.2016, 13:04) *
У вас там замкнутый круг какой-то?
Ак, Ал, зависят от Тн(G17), а в свою очередь Тн(G17) зависит от R0(С23), в свою очередь R0(С23) зависит от Q22(который должен считаться) но он зависит от Р21, который равен Альфа(С26), которая равна Ак+Ал.
Круг замкнулся.


Да понятно, что замкнутый круг. Если я вручную альфа в ячейке Р21 указываю, то за несколько проходов(подстановок) подбираю его равным альфа в ячейке С26. А если ставлю Р21=С26, то по началу вроде бы всё считается, но в какой-то момент при изменении толщины или материала происходит сбой. По этапам вычислений непонятно, что происходит.

Сообщение отредактировал shadow - 19.4.2016, 12:51
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
shadow
сообщение 19.4.2016, 13:31
Сообщение #4





Группа: Участники форума
Сообщений: 1492
Регистрация: 23.6.2008
Из: г. Магнитогорск
Пользователь №: 19983



По какой-то причине в результате итерационных вычислений ячейке Р21 не присваивается конечно значение альфа из ячейки С26
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
borm
сообщение 19.4.2016, 13:51
Сообщение #5





Группа: Участники форума
Сообщений: 614
Регистрация: 28.6.2006
Пользователь №: 3267



При обновлении получается вот что:
Прикрепленный файл  __________.png ( 50,45 килобайт ) Кол-во скачиваний: 30
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Composter
сообщение 19.4.2016, 14:56
Сообщение #6





Группа: Участники форума
Сообщений: 3501
Регистрация: 5.3.2009
Из: Газ-Ачака
Пользователь №: 30120



а зачем вручную итерировать? я обычно для этого вбиваю число приблизитетльное, потом столбец расчетов , следующий столбец ссылается на предыдущий, копирую второй столбец раз 20 , а конечную цифру уже вставляю расчет для оформления , столбцы для итерации выношу за область печати/скрываю/выношу на другой лист.

Сообщение отредактировал Composter - 19.4.2016, 14:57
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
tiptop
сообщение 19.4.2016, 15:41
Сообщение #7


сам себе Sapiens


Группа: Участники форума
Сообщений: 11095
Регистрация: 21.5.2005
Из: г. Владимир
Пользователь №: 797



Цитата(Composter @ 19.4.2016, 14:56) *
я обычно для этого вбиваю число приблизитетльное, потом столбец расчетов , следующий столбец ссылается на предыдущий,


А я чтобы уйти от "ошибки" вставляю что-нибудь подобное:
=ЕСЛИ(D15>1;1;B30)
=ТИП(B30)
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
v-david
сообщение 19.4.2016, 19:01
Сообщение #8





Группа: Участники форума
Сообщений: 4344
Регистрация: 10.3.2010
Из: Зеленоград
Пользователь №: 48108



Функцию "подбор параметра" использовал?
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
shadow
сообщение 19.4.2016, 19:54
Сообщение #9





Группа: Участники форума
Сообщений: 1492
Регистрация: 23.6.2008
Из: г. Магнитогорск
Пользователь №: 19983



Цитата(v-david @ 19.4.2016, 22:01) *
Функцию "подбор параметра" использовал?


Если вопрос ко мне, то нет. Я вообще профан :-)
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
v-david
сообщение 20.4.2016, 1:25
Сообщение #10





Группа: Участники форума
Сообщений: 4344
Регистрация: 10.3.2010
Из: Зеленоград
Пользователь №: 48108



итерации реализованы в эксель вот здесь
Прикрепленные файлы
Прикрепленный файл  ________________.PNG ( 74,1 килобайт ) Кол-во скачиваний: 58
 
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
tiptop
сообщение 20.4.2016, 6:34
Сообщение #11


сам себе Sapiens


Группа: Участники форума
Сообщений: 11095
Регистрация: 21.5.2005
Из: г. Владимир
Пользователь №: 797



Цитата(v-david @ 20.4.2016, 1:25) *
итерации реализованы в эксель вот здесь

Кажется, это называется "подбор". smile.gif
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
tiptop
сообщение 20.4.2016, 6:50
Сообщение #12


сам себе Sapiens


Группа: Участники форума
Сообщений: 11095
Регистрация: 21.5.2005
Из: г. Владимир
Пользователь №: 797



(полуручная операция)
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
shadow
сообщение 20.4.2016, 7:06
Сообщение #13





Группа: Участники форума
Сообщений: 1492
Регистрация: 23.6.2008
Из: г. Магнитогорск
Пользователь №: 19983



Цитата(v-david @ 20.4.2016, 4:25) *
итерации реализованы в эксель вот здесь


Понятно, но не то что я хочу добиться
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
shadow
сообщение 20.4.2016, 9:06
Сообщение #14





Группа: Участники форума
Сообщений: 1492
Регистрация: 23.6.2008
Из: г. Магнитогорск
Пользователь №: 19983



Цитата(tiptop @ 19.4.2016, 18:41) *
А я чтобы уйти от "ошибки" вставляю что-нибудь подобное:
=ЕСЛИ(D15>1;1;B30)
=ТИП(B30)


Экхе... не понял.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Valiko
сообщение 20.4.2016, 12:01
Сообщение #15





Группа: Участники форума
Сообщений: 1455
Регистрация: 22.10.2009
Из: Харьков
Пользователь №: 39945



в 2003 экселе в меню сервис-параметры -вычисления можно установить (изменить) число иттераций и погрешность.
Я уже выкладывал маленький макрос с использованием функции "Подбор параметра"

Сообщение отредактировал Valiko - 20.4.2016, 12:02
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
shadow
сообщение 20.4.2016, 13:45
Сообщение #16





Группа: Участники форума
Сообщений: 1492
Регистрация: 23.6.2008
Из: г. Магнитогорск
Пользователь №: 19983



Цитата(Valiko @ 20.4.2016, 15:01) *
в 2003 экселе в меню сервис-параметры -вычисления можно установить (изменить) число иттераций и погрешность.
Я уже выкладывал маленький макрос с использованием функции "Подбор параметра"


Я пробовал менять и количество итераций и точность
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Ernestas
сообщение 20.4.2016, 15:06
Сообщение #17





Группа: Участники форума
Сообщений: 4373
Регистрация: 4.12.2006
Из: Klaipeda
Пользователь №: 5034



Вроде все работает smile.gif



Прикрепленные файлы
Прикрепленный файл  Futerovka_01.xlsx ( 632,52 килобайт ) Кол-во скачиваний: 15
Прикрепленный файл  0011.jpg ( 154 килобайт ) Кол-во скачиваний: 23
 
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
shadow
сообщение 20.4.2016, 20:58
Сообщение #18





Группа: Участники форума
Сообщений: 1492
Регистрация: 23.6.2008
Из: г. Магнитогорск
Пользователь №: 19983



Цитата(Ernestas @ 20.4.2016, 18:06) *
Вроде все работает smile.gif


Что это?
Прикрепленный файл  _____________1.jpg ( 14,79 килобайт ) Кол-во скачиваний: 31
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Ernestas
сообщение 20.4.2016, 21:38
Сообщение #19





Группа: Участники форума
Сообщений: 4373
Регистрация: 4.12.2006
Из: Klaipeda
Пользователь №: 5034



Цитата(shadow @ 20.4.2016, 20:58) *
Что это?
Прикрепленный файл  _____________1.jpg ( 14,79 килобайт ) Кол-во скачиваний: 31

Сумневаетесь?

Файлик то ваш. Я с ним ничего не делал, почти. )
Насколько я понял, экселька во время итераций пробует подставить ноль в знаменатель. После этого выдает на горА ошибку.
Лечил так: стер "закольцовку", написал в ячейку(P21) значение больше нуля (0,5), экселька всё посчитала, потом в эту же ячейку вбиваем формулу (=C26) и все работает.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
shadow
сообщение 21.4.2016, 6:29
Сообщение #20





Группа: Участники форума
Сообщений: 1492
Регистрация: 23.6.2008
Из: г. Магнитогорск
Пользователь №: 19983



Цитата(Ernestas @ 21.4.2016, 0:38) *
Сумневаетесь?

Файлик то ваш. Я с ним ничего не делал, почти. )
Насколько я понял, экселька во время итераций пробует подставить ноль в знаменатель. После этого выдает на горА ошибку.
Лечил так: стер "закольцовку", написал в ячейку(P21) значение больше нуля (0,5), экселька всё посчитала, потом в эту же ячейку вбиваем формулу (=C26) и все работает.



Ну я в принципе так и делал
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Ernestas
сообщение 21.4.2016, 7:39
Сообщение #21





Группа: Участники форума
Сообщений: 4373
Регистрация: 4.12.2006
Из: Klaipeda
Пользователь №: 5034



Цитата(shadow @ 21.4.2016, 6:29) *
Ну я в принципе так и делал

Проблемка.
Тогда предлагаю так

А макрос напишите сами. Ибо не даёт загрузить на форум такие файлы. )

Sub Restartik()
'
' Restartik Макрос
'
' Сочетание клавиш: Ctrl+r
'
Range("P21").Select
ActiveCell.FormulaR1C1 = "1"
Range("P21").Select
ActiveCell.FormulaR1C1 = "=R[5]C[-13]"
Range("P22").Select
End Sub



Прикрепленные файлы
Прикрепленный файл  0012.JPG ( 145,8 килобайт ) Кол-во скачиваний: 21
 
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
shadow
сообщение 22.4.2016, 9:22
Сообщение #22





Группа: Участники форума
Сообщений: 1492
Регистрация: 23.6.2008
Из: г. Магнитогорск
Пользователь №: 19983



Цитата(Ernestas @ 21.4.2016, 9:39) *
Проблемка.
Тогда предлагаю так

А макрос напишите сами. Ибо не даёт загрузить на форум такие файлы. )

Sub Restartik()
'
' Restartik Макрос
'
' Сочетание клавиш: Ctrl+r
'
Range("P21").Select
ActiveCell.FormulaR1C1 = "1"
Range("P21").Select
ActiveCell.FormulaR1C1 = "=R[5]C[-13]"
Range("P22").Select
End Sub


Спасибо. С этим всё получилось.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
shadow
сообщение 5.5.2016, 8:53
Сообщение #23





Группа: Участники форума
Сообщений: 1492
Регистрация: 23.6.2008
Из: г. Магнитогорск
Пользователь №: 19983



Если меняю значение температуры в печи на к конкретном листе расчета для цил. обечайки, свода, и т.д., то всё работает нормально, но если пытаюсь задать эту же температуру на листе "Данные" (ячйка связана с каждым листом) происходит сбой.
Прикрепленные файлы
Прикрепленный файл  ____________________________.zip ( 789,6 килобайт ) Кол-во скачиваний: 2
 
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
v-david
сообщение 5.5.2016, 12:38
Сообщение #24





Группа: Участники форума
Сообщений: 4344
Регистрация: 10.3.2010
Из: Зеленоград
Пользователь №: 48108



старт лучше сделать не по Ctrl+r, а по событию изменения содержимого ячейки...Почитайте, например здесь
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
shadow
сообщение 5.5.2016, 19:58
Сообщение #25





Группа: Участники форума
Сообщений: 1492
Регистрация: 23.6.2008
Из: г. Магнитогорск
Пользователь №: 19983



Цитата(v-david @ 5.5.2016, 15:38) *
старт лучше сделать не по Ctrl+r, а по событию изменения содержимого ячейки...Почитайте, например здесь


Круто! Спасибо, не придется тыкать кнопки :-)!

Дело в том, что макрос не помогает, но мне вроде удалось победить это проблему
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения

Добавить ответ в эту темуОткрыть тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

Реклама
ООО «Арктика групп» ИНН: 7713634274


ООО «УНИСПЛИТ» ИНН: 6453155081 erid:2VtzqvE2vr3

Последние сообщения Форума





Rambler's Top100 Rambler's Top100

RSS Текстовая версия Сейчас: 16.4.2024, 23:17