Перейти к публикации

"Рождение" и "смерть" элементов


Рекомендованные сообщения

А мне больше по душе первый вариант. Непонятки снимутся, когда начнете пробовать.

Ссылка на сообщение
Поделиться на других сайтах


Сделал решение по LS файлам. Почему то мне казалось, что в итоге должно получиться "общее" решение, т.е. решения для каждого лоад степа объединятся. Однако на выходе я имею просто несвязное решение для каждого лоад степа. В итоге, насколько я понимаю, мне все таки нужно как то вытягивать номера элементов, в которых напряжения превышают допустимый предел, и потом просто их все удалять. Или может быть есть способ как то объединять результаты для разных лоад степов?

Так вот не могу все никак разобраться, как записать номера элементов в массив. Подскажите пожалуйста, очень надо :surrender:

Забегая вперед сразу спрошу: как добиться того, чтобы в этом массиве не было одинаковых номеров элементов (на случай, если в определенном элементе напряжения превышают допустимый предел для нескольких лоад степов).

Ссылка на сообщение
Поделиться на других сайтах

Получить номер элемента, предполагаю, можно через команду *GET, через нее, вообще, почти что угодно получить можно. Ну а исключить из массива одинаковые элементы - задачка по информатике для девятого класса. Для начала, к примеру, можно сделать сортировку массива. В принципе, так или иначе хотя бы частично сортировочные алгоритмы будут задействованы.

Ссылка на сообщение
Поделиться на других сайтах

Получить номер элемента, предполагаю, можно через команду *GET, через нее, вообще, почти что угодно получить можно. Ну а исключить из массива одинаковые элементы - задачка по информатике для девятого класса. Для начала, к примеру, можно сделать сортировку массива. В принципе, так или иначе хотя бы частично сортировочные алгоритмы будут задействованы.

Я в принципе понимаю что как то через *GET, но как ? :smile: Причем как правило *GET работает для одного элемента, а как взять номера всех выделенных элементов?
Ссылка на сообщение
Поделиться на других сайтах

Причем как правило *GET работает для одного элемента, а как взять номера всех выделенных элементов?

Циклы и условные переходы. Ничего нового.
Ссылка на сообщение
Поделиться на других сайтах

Я понимаю, что все это можно как-то сделать с помощью get, do, if и т.д. Но так как сам не могу дойти до этого, поэтому и спрашиваю здесь :smile:

Ссылка на сообщение
Поделиться на других сайтах

Итак, после долгого сиденья в хелпе немного разобрался.

Формирую таблицу элементов с эквивалентными напряжениями в них (1-й столбец - номера элементов, 2-столбец - напряжения):

ETABLE,MaxStr,S,EQV

*DIM,T,ARRAY,110,2,1, , ,

*do,i,1,110,1

t(i,1)=i

*enddo

*VGET,t(1,2),ELEM,1,ETAB,MAXSTR, , ,2

Далее выбираю только те строки таблицы, в которых напряжения превышают определенную величину, и копирую их в новую таблицу:

*do,i,1,110

*if,t(i,2),gt,70,then

t1(i,2)=t(i,2)

t1(i,1)=t(i,1)

*else

*endif

*enddo

В результате получаю новую таблицу, в которой находятся все нужные мне номера элементов со значениями напряжений в них + строки с нулями, которые соответствуют строкам в таблице "t", где напряжения не выходили за предел.

Вопросы:

1. Как мне удалить строки с нулями (по-моему их нельзя удалить вообще) или записывать в новую таблицу "t1" только нужные строки? Возможно нужно как то цикл в цикле сделать или типа того, но не могу додумать.

2. Как удалить элементы? Пишет, что элементы привязаны к поверхности :unsure: Как их можно отвязать?

Ссылка на сообщение
Поделиться на других сайтах

Так надо размер массива устанавливать такой какой нужен, из таблицы можно узнать. Где-то здесь пример кода размещал для раскраски с нужными величинами :unsure:

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

Ссылка на сообщение
Поделиться на других сайтах

Так надо размер массива устанавливать такой какой нужен, из таблицы можно узнать. Где-то здесь пример кода размещал для раскраски с нужными величинами :unsure:

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

Что то я не совсем понял ответ, можете пояснить?

Что значит устанавливать размер массива такой какой нужен? Т.е. задать его таким, сколько ненулевых строк?

По поводу отвязки элементов от геометрии. Как это сделать? Можете дать ссылку на тему топика в которой это обсуждается?

Ссылка на сообщение
Поделиться на других сайтах

Да тут где-то приводил код как это делать.

Кто бы из строителей любителей новизны с актуальностью использовал бы технологию рождения и смерти элементов для решения задачек о шаге между трещинами и их раскрытию при различном армировании и толщинах. Навел бы порядок в этом бардаке по простому, по постмодернистски :unsure:

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

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

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

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.




×
×
  • Создать...