0 / 0 / 0
Регистрация: 11.03.2012
Сообщений: 28
|
|
1 | |
Расчет температурного состояния пластины методом Гаусса03.05.2012, 17:38. Показов 1552. Ответов 4
Метки нет (Все метки)
0
|
03.05.2012, 17:38 | |
Ответы с готовыми решениями:
4
Расчёт системы линейных уравнений методом Гаусса Расчёт переходного процесса методом переменных состояния Решение системы линейных уравнений методом Гаусса и Жордана-Гаусса Численное интегрирование методом Гаусса (Квадратурная формула Гаусса) |
105 / 104 / 29
Регистрация: 15.01.2011
Сообщений: 496
|
|
03.05.2012, 19:14 | 2 |
Вот пример, как можно расчертить пластину.
Цветные крайние квадратики показывают распределение температуры по краям. Температура квадратика внутри рассчитывается, как среднеарифметическое смежных квадратиков (см. пример с заштрихованными квадратиками). Количество неизвестных переменных равно количеству не залитых цветом квадратиков. Для данного примера - 40 шт. Значит и система будет состоять из 40 линейных уравнений типа: X[i,j] = (X[i+1,j] + X[i-1,j] + X[i,j+1] + X[i,j-1]) / 4 где i и j - номера строки и столбца элемента массива температур. Осталось решить СЛАУ методом Гаусса.
1
|
105 / 104 / 29
Регистрация: 15.01.2011
Сообщений: 496
|
|
04.05.2012, 09:06 | 3 |
Можно, конечно, вручную составить СЛАУ, но это не наш метод. Мы ведь не ищем легких путей?
Предлагаю составить матрицу температур Т, равную размерности фигуры, расчерченной на квадратики. В данном случае, это будет матрица 12х10 (12 строк, 10 столбцов). Теперь заполняем эту матрицу. 1. Так как фигура на рисунке не прямоугольник, то некоторые элементы прямоугольной матрицы не будут участвовать в расчетах (эти элементы соответствуют пустому пространству слева и справа от "ножки буквы Т"). Обозначим эти элементы числом "-1" (без кавычек). 2. Для закрашенных ячеек температура известна. Заносим эти числа в соответствующие ячейки матрицы Т. 3. Для пустых ячеек, где нужно определить температуру, назначаем нумерацию типа "Х1, Х2...Х40". Это уже будет строковый тип данных (string), а не числовой. Следовательно сам массив T (матрицы температур) будет типа variant. В результате получится вот это (см. рис.). Теперь нам надо подготовить матрицу СЛАУ, которую потом будем решать методом Гаусса. Матрица M будет иметь размерность 40x41 (40 строк, 41 столбец - 40 переменных + числовой столбец). Заполнение происходит следующим образом: - пробегаем по всем ячейкам матрицы Т; - если в ячейке число (-1 или конкретная температура) то ничего не делаем; - если в ячейке строка типа X1 (X2, X3...X40), смотрим смежные ячейки матрицы Т. 1. Определяем номер текущего неизвестного. Для этого в строке нужно отбросить "X", а оставшееся перевести в число. Этот номер указывает на строку в матрице M. В матрице M заполняем ячейку, с номером строки и столбца соответствующим найденому номеру, 1. 2. Если смежный элемент число, то суммируем его в 41-й столбец матрицы М (строку мы уже знаем из предыдущего пункта), предварительно поделив на 4. почему делим на 4? Потому, что если раскрыть скобки в выражении X[i,j] = (X[i+1,j] + X[i-1,j] + X[i,j+1] + X[i,j-1]) / 4, то получим, что каждый элемент по отдельности можно поделить на 4, а потом уже все сложить. 3. Если элемент строка (например, для Х1 смежными будут Х2 и Х9), то определяем номер неизвестного, записанного в этой строке. Для этого в строке нужно отбросить "X", а оставшееся перевести в число. Это число указывает на столбец, куда надо занести число 0,25. 4. После того, как все ячейки в матрице T просмотрели и заполнили по вышеприведенному алгоритму матрицу M, остальные ячейки матрицы M заполняем нулями. Итак, в результате получим матрицу M, где по главной диагонали будут стоять 1, а остальные ячейки (до 40 столбца включительно) будут вперемешку заполнены числами: 0 и 0.25. В столбце 41 матрицы М в каждой строке (для каждого неизвестного) будет сумма смежных элементов с заданной изначально температурой, поделенной на 4. Думаю, пока на этом остановимся. Второй частью будет решение полученной СЛАУ методом Гаусса. До сих пор все понятно? Попробуйте реализовать на Delphi до этого места. Если что не получится - спрашивайте.
1
|
0 / 0 / 0
Регистрация: 11.03.2012
Сообщений: 28
|
|
17.05.2012, 20:41 [ТС] | 5 |
, я разделил свою пластинку на меньшее кол-во узлов. и вот. а как программа должна вычислять по методу гаусса, вот там есть готовая программа я хочу прямо также оформить в лазарусе, а в бейсик вообще не понимаю, как составить программу?
0
|
17.05.2012, 20:41 | |
17.05.2012, 20:41 | |
Помогаю со студенческими работами здесь
5
Определить заряд и энергию поля внутри пластины, потенциал на поверхности пластины. Решить СЛАУ методом Крамера, методом Гаусса, с помощью обратной матрицы Решение системы линейных уравнений методом Гаусса и методом Крамера Решение систем линейных уравнений методом Гаусса и методом Крамера Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |