Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Лекция 8. Особенности формирования локального массива координат.
Массив координат узлов локальной КЭМ элемента продольного набора кессона крыла формируется путем копирования значений из массива координат узлов КЭМ отсека кессона, передаваемого в качестве исходных данных. Выбор данных производится по номерам узлов, содержащимся в таблице распределения номеров узлов. Одновременно формируется таблица соответствия номеров узлов, в которую подряд записываются номера копируемых узлов из таблицы распределения (рис.50). Поскольку таблица соответствия номеров заполняется одновременно с локальным массивом координат, порядковые номера ее ячеек соответствуют номерам узлов локальной КЭМ. Это дает возможность установить соответствие между номерами узлов временной копии КЭМ и номерами узлов локальной КЭМ.
Координаты узлов отсека и таблицы распределения узлов по сечениям КЭМ отсека кессона передаются через виртуальную структуру следующего формата:
short NodeCount; //––> К–во узлов в КЭМ отсека кессона double NodeCoord[…][3]; //––> Координаты узлов КЭМ отсека кессона
short PCount; //––> К–во сечений в КЭМ отсека кессона short PVNodeCount; //––> К–во узлов в строке таблицы распределения short PVNodeNumber[…][2][…]; //--> Таблица распределения // номеров узлов в сечениях
Для реализации метода формирования таблицы соответствия используются циклические алгоритмы следующего вида:
virtual _SkinBox Connect_1; //––> Виртуальная структура для обмена // данными с отсеком кессона
k = 0; PCount = Connect_1.PCount; PVNodeCount = Connect_1.PVNodeCount; for (i = 0; i < PCount; i++) { // Перебор сечений
for (j = 0; j < PVNodeCount; j++) { PVNodeNumber[i][j] = Connect_1.PVNodeNumber[i][0][j]; if (k == 0) { n0 = PVNodeNumber[i][j]; i1 = PVNodeNumber[i][j] - 1; NodeCoord[k][0] = Connect_1.NodeCoord[i1][0]; NodeCoord[k][1] = Connect_1.NodeCoord[i1][1]; NodeCoord[k][2] = Connect_1.NodeCoord[i1][2]; PairNodeNumber[k] = PVNodeNumber[i][j]; //–> Запол– // нение таблицы соответствия узлов k++; } else if (PVNodeNumber[i][j]!= n0) { n0 = PVNodeNumber[i][j]; i1 = PVNodeNumber[i][j] - 1; NodeCoord[k][0] = Connect_1.NodeCoord[i1][0]; NodeCoord[k][1] = Connect_1.NodeCoord[i1][1]; NodeCoord[k][2] = Connect_1.NodeCoord[i1][2]; PairNodeNumber[k] = PVNodeNumber[i][j]; //–> Запол– // нение таблицы соответствия узлов k++; } else continue; } }
NodeCount = k;
Локальная КЭМ элемента продольного набора формируется путем копирования временной копии КЭМ. При этом номера узлов, считанные из копии КЭМ, заменяются локальными номерами узлов (рис.51):
Метод корректировки номеров узлов в конечных элементах, в процессе синтеза локальной КЭМ элемента продольного набора также базируется на циклических алгоритмах: for (i = 0; i < ElCount; i++) { for (j = 2; j < 6; j++) { if (Element[i][j] == 0) continue; else for (i1 = 0; i1 < NodeCount; i1++) {// Поиск совпадающего номера узла в таблице соответствия
if (Element[i][j] == PairNodeNumber[i1]) { Element[i][j] = i1 + 1; break; } } } }
|
|||||||||||
Последнее изменение этой страницы: 2017-02-08; просмотров: 163; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.147.89.24 (0.004 с.) |