Численные методы решения задачи нахождения температуры

Автор работы: Пользователь скрыл имя, 08 Сентября 2011 в 00:59, курсовая работа

Описание работы

Ставится задача о нахождении стационарного распределения температуры внутри многоугольника, если задано распределение температуры вдоль его сторон.
Одна из главных трудностей, возникающих при решении этой задачи, обусловлена сложной формой границы расчетной области. Аналитическое решение задачи Дирихле для уравнения (1) удается получить лишь в частных случаях для простейших областей (прямоугольник, круг сектор, шар). Основными методами решения поставленной задачи являются численные методы.

Содержание работы

1. Введение.......................................................................................................
2. Аналитические методы решения уравнений в частных производных...
3. Численные методы решения уравнений матфизики................................
3.1. Метод конечных разностей...............................................................
3.2. Метод конечных элементов..............................................................
4. Дискретизация расчетной области.............................................................
5. Формирование матрицы неизвестных температур системы линейных уравне-ний......................................................................................................................
6. Построение изотерм.....................................................................................
6.1. Нахождение температур в любой точке.............................................
6.2. Алгоритм построения изотерм............................................................
7. Характеристика программы........................................................................
8. Результаты программы................................................................................
9. Список используемой литературы.............................................................
10. Приложение..................................................................................................
10.1. Листинг программы...........................................................................

Файлы: 1 файл

курсовая.doc

— 814.50 Кб (Скачать файл)

      Для треугольных элементов

      Матрица коэффициентов  системы МКЭ для треугольного элемента будет иметь вид :

      Получим коэффициенты системы МКЭ для прямоугольного элемента. Пусть в вершинах 1, 2  и 3 равностороннего треугольника известны значения , и функции, удовлетворяющей условию Лапласа. Центр треугольника соединили с вершинами. Составим систему линейных уравнений МКЭ для этого узла.

      Если  , то внутри треугольника на прямой

 значение  функции  . Здесь

      МКЭ является одним из наиболее эффективных  численных методов решения краевых  задач. Но, как и любой метод, он имеет свои недостатки. Так, точность полученных значений зависит от триангуляции области. Количество выбранных треугольников, их вид и расположение могут влиять на точность полученных значений. Особенно это относится к решению краевых задач в областях с угловыми точками.

      Невозможно  дать общие рекомендации по триангуляции произвольной области. Существуют различные способы повышения точности при использовании МКЭ. Один из них – использование нелинейных конечных элементов и элементов специального вида для более точной аппроксимации границы области расчета и искомой функции.

      При решении трехмерной задачи Дирихле  для уравнения Лапласа

МКЭ область  обычно делятся на элементы с линейными  базисными функциями (тетраэдры) (рис.7).

Рис.7 Тетраэдр

(i=1,2,3,4)

      Неизвестные коэффициенты , , и определяется из условия , если m=n и , если .

      Коэффициенты  системы линейных уравнений МКЭ определяется по формуле

      Даже  с умеренным числом элементов  система МКЭ может иметь несколько  тысяч неизвестных. Иногда бывает трудно разделить область только на элементы такого типа. Из-за этого тетраэдральные элементы часто смешивают с шестигранными элементами (“кирпичиками”). Для этих элементов базисные функции имеют вид:

 (i=1, 2,…, 8) 

4. ДИСКРЕТИЗАЦИЯ РАСЧЕНТНОЙ ОБЛАСТИ 

      В моей курсовой дано решить задачу Дирихле для уравнения Лапласа с координатами области. А(-3,0), B(0,3), C(3,3), D (5,-2).(рис. 8) Решить эту задачу можно используя метод сеток, заключающихся в том, чтобы область покрыть сеткой, и написать уравнение Лапласа для него – сеточное  уравнение.

Рис.8 Расчетная область

      Для того чтобы применить сеточный метод  на области, необходимо построить её дискретизацию, обрисовать область  базисной фигурой (в нашем случае, это прямоугольник) (рис. 9).

Рис.9 Дискретизация расчетной области прямоугольной сеткой

      Для того чтобы применить сеточный метод, необходимо обрезать внешние края области (рис. 10).

Рис.10 Дискретизация  расчетной области прямоугольной сеткой

      Согласно  сеточному методу, после её дискретизацию,  необходимо пронумеровать область с целью создания системы линейных уравнений. По моему мнению, нумерацию удобно применить так: сперва, пронумеровать внутренние точки (области пересечения фигур, покрывающих данную область, внутри него), затем – граничные  точки, с целью упрощения алгоритма построения программы на ЭВМ (рис. 11).

Рис.11 Нумерация  расчетной области

5. ФОРМИРОВАНИЕ МАТРИЦЫ НЕИЗВЕСТНЫХ ТЕМПЕРАТУР СИСТЕМЫ ЛИНЕЙНЫХ УРАВНЕНИЙ 

      После нумерации сетки области перейдем к следующему этапу в методе сеток – формирование системы линейных уравнений с неизвестными температурами.

      Так как нам ставится задача найти  температуру во внутренней точки  области, то её решение кроется в  том, чтобы составить эту систему. Каждая внутренняя точка области имеет рядом стоящие точки, которые сформирует её.

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

(рис.  12):

Рис.12  Сетка с разными длинами шага

,

где - неизвестные температуры.

      Общее уравнение для внутреннего узла будет иметь вид

      Так как у нас пронумерована область (см. пред. раздел), то для составления матрицы необходимо занести в основную матрицу коэффициенты внутренних точек, с которыми граничат эти точки, и 0, если внутренняя точка не граничит с ней.

В другую матрицу размерности 1 на количество свободных элементов переносятся значения свободных элементов – элементов внутренней области. И получившиеся 2 матрицы решаются методом Гаусса.

      Метод Гаусса состоит в том, чтобы матрицы системы привести к треугольному виду. Это достигается последовательностью исключением неизвестных из уравнений системы. Сначала с первого исключаем второе неизвестное, затес со второго – третье, и т.д. Это процесс называется прямым ходом Гаусса, и он продолжается пока исключится последний элемент системы , то есть приведётся к треугольному виду.

      Другой  процесс – обратный ход метода Гаусса состоит в последовательном вычислении искомых неизвестных: решая последнее уравнение, находим значении последнего элемента системы. Далее находим значение предпоследнего элемента. Последним найдем 1 неизвестный элемент.

      Точность  при этом очень высока, так как метод Гаусса – прямой метод. Но возникает проблема в том, что матрица покрыта 0, и эта система считается другими методами, но точность желает знать наилучшего результата. Поэтому выбирается оптимальное количество неизвестных (в нашем случае, температур), при котором достигается более высокая точность нахождения температур в любой точке. 
 
 
 
 
 
 
 
 
 
 
 
 

6. ПОСТРОЕНИЕ ИЗОТЕРМ 

6.1. НАХОЖДЕНИЕ ТЕМПЕРАТУР В ЛЮБОЙ ТОЧКЕ 

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

      Рассмотрим  алгоритм нахождения температуры в треугольнике. Для того чтобы решить задачу (принадлежит ли данная точка треугольнику?), надо сосчитать общую площадь треугольника, и затем площади треугольников, получившихся после соединения каждой вершины с заданной точкой. Если площади треугольника и треугольников, полученных после объединения, совпадают с заданной точностью, то точка принадлежит этому треугольнику, иначе – нет.

      Зная  координаты трех вершин (x1, y1), (x2, y2), (x3, y3) и их температуры, мы можем вычислить следующую систему:

      После её решения мы получим коэффициенты a, b и с  – полином.  Записывая координаты точки в него, мы найдем температуру в этой точке.

      Другим  методом решения задачи нахождения неизвестной температуры в треугольнике является написание коэффициента .

      Строятся  базисные функции (рис. 13):

Рис.13 Треугольник  с площадью для расчета температуры в любой его точке 

,

где S – площадь треугольника, и его можно вычислить следующим образом:

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

      Рассмотрим  алгоритм нахождения температуры в прямоугольнике. Для того чтобы решить задачу (принадлежит ли данная точка прямоугольнику?), нужно знать координаты 4-x вершин (x1,y1), (x2,y2), (x3,y3), (x4,y4) , если

x>=x1, y>=y1, y<=y3, x<=x3                 (3)

(рис. 14). Точка (x,y) принадлежит прямоугольнику, если выполняется условие (3), иначе – нет.

Рис.14 Прямоугольник  для расчета температуры в  любой его точке

      Для того чтобы вычислить температуру в точке нужно вычислить по следующей формуле:

 
 
 
 
 

6.2. АЛГОРИТМ ПОСТРОЕНИЯ ИЗОТЕРМ 

      Нам дана область и разбита сетка  на узлы, мы можем построить изотерму. Каждый узел в моей сетки состоит  из отрезков. И эти отрезки будут нас интересовать.

      Пусть даны 2 узла (x1,y1), (x2,y2) и их температуры. Для того чтобы решить задачу (принадлежит ли данная температура отрезку?), надо сравнить их температуры, если данная температура находится ,то найдется точка с этой данной температурой T (рис. 15).

                              Рис. 15 Вычисление температуры на отрезке

      Наша  T (температура) изменяется по линейному закону .

      Для того чтобы определить координату точки  для данной температуры необходимо воспользоваться следующими формулами:

      Проходя все отрезки области, мы получим  таблицу значений координат данной области для заданной температуры. По этой таблице построим точки, соединим прямой линией и получим теоретическую изотерму. 
 
 
 
 
 
 
 

7. ХАРАКТЕРИСТИКА ПРОГРАММЫ 

      Представленная  программа служит для решения  задачи Дирихле для уравнения Лапласа. Она написана на языке Турбо Паскаль, работает на платформе DOS, требует аппаратной поддержки видеостандарта EGAVGA (640х480х16 цветов), около 2,25 Мб оперативной памяти.

      Её  возможности – для данной курсовой  работы представить графическую интепритацию дискретизации; составления таблиц полученных значений температур во внутренних и внешних узлах данной области; для удобства создана папка DATA, в которой содержится текстовый документ Result.txt (при сохранении документов возникает вероятность запутаться в нахождении файла, а здесь – папка, которая выделяется на общем фоне); удобным выставлением информации о полученных температурах в любой точке области; графической инициализацией и отсортированным по координате X значений, определяющих теоретическую изотерму, с возможностью графического сравнения её с реальной.

Информация о работе Численные методы решения задачи нахождения температуры